Web 浏览器打印预览命令

本文关键字:命令 打印 浏览器 Web | 更新日期: 2023-09-27 17:56:56

我只是想获取 Web 浏览器控件中包含的 html 文档的打印预览。我能够使用以下代码成功打印正在显示的文档:

IHTMLDocument2 doc = WebBrowser.Document as IHTMLDocument2; doc.execCommand("Print", false, null);

我意识到还有其他方法可以打印文档,例如创建xps文档,然后将其交给分页器,但是此解决方案似乎非常好。

现在我只是想知道为什么没有类似的命令来执行相同的操作来显示打印预览。我查看了命令标识符列表:https://msdn.microsoft.com/en-us/library/ms533049(v=vs.85).aspx但没有设法找到打印预览命令...或者打印命令哈哈,这让我觉得我找错了地方,尽管该列表似乎与我正在使用的对象相对应,因为这些是 execCommand 函数的命令标识符。

这个问题的最高答案:在没有DocumentViewer的情况下显示HTML文档的打印预览对我有用,我成功地能够显示打印预览。但是,代码令人困惑并且似乎臃肿。

有没有办法使用上述方法显示打印预览?另外,execCommand 函数的实际命令列表在哪里?

谢谢。

Web 浏览器打印预览命令

MSDN 上记录了支持的命令标识符的完整列表。

记录不佳的一点是,这是命令标识符的列表,而不是execCommand使用的字符串。 您正在调用 IDM_EXECPRINT ,它别名为字符串,简称为 "Print" 。 大多数其他字符串映射到命令标识符,只是没有标识符的"IDM_"部分。

正如您从该列表中看到的那样,没有版本的打印预览,因此恐怕您需要找到另一种解决方案。