如何使用 ExecWB 命令将页面打印为 pdf

Posted

技术标签:

【中文标题】如何使用 ExecWB 命令将页面打印为 pdf【英文标题】:How to use ExecWB command for printing pages as pdf 【发布时间】:2019-09-30 11:57:58 【问题描述】:

我正在尝试使用以下代码将网页打印为 pdf

 IE.ExecWB 6, 2, "U:\Translations", Null

我不确定如何在上述语法中指定路径名。 参数如下:

object.ExecWB nCmdID, nCmdExecOpt, [pvaIn], [pvaOut]

【问题讨论】:

检查***.com/questions/46559063/… 【参考方案1】:

browser.ExecWB 方法没有任何参数来传递文件路径

object.ExecWB nCmdID, nCmdExecOpt, [pvaIn], [pvaOut]

ExecWB 方法需要传入一个 OLE 命令 ID 来标识要执行的命令。此值 nCmdID 的类型为 Long。 nCmdExecOpt 参数表示命令执行选项的值。这些值共同指示控件执行哪些受支持的命令以及应该出现何种程度的用户提示。

最后两个参数 pvaIn 和 paOut 是可选的,通常设置为 NULL 或空字符串。

这是第一个参数的完整列表

OLECMDID_OPEN                   1   Open
OLECMDID_NEW                    2   Create a new document
OLECMDID_SAVE                   3    Preservation
OLECMDID_SAVEAS                 4    Save as
OLECMDID_SAVECOPYAS             5    
OLECMDID_PRINT                  6   Print
OLECMDID_PRINTPREVIEW           7   Print preview
OLECMDID_PAGESETUP              8   Page setup
OLECMDID_SPELL                  9   The spelling check
OLECMDID_PROPERTIES             10  Attribute
OLECMDID_CUT                    11  Shear
OLECMDID_COPY                   12  Replication
OLECMDID_PASTE                  13  Paste
OLECMDID_PASTESPECIAL           14  Paste special
OLECMDID_UNDO                   15  Revoke
OLECMDID_REDO                   16  Repeat
OLECMDID_SELECTALL              17  Select all
OLECMDID_CLEARSELECTION         18  Clear selection
OLECMDID_ZOOM                   19  
OLECMDID_GETZOOMRANGE           20  
OLECMDID_UPDATECOMMANDS         21  The update command
OLECMDID_REFRESH                22  Refresh
OLECMDID_STOP                   23  Stop it
OLECMDID_HIDETOOLBARS           24  Hide toolbar
OLECMDID_SETPROGRESSMAX         25  Progress bar maximum
OLECMDID_SETPROGRESSPOS         26  Progress bar position
OLECMDID_SETPROGRESSTEXT        27  Progress bar text
OLECMDID_SETTITLE               28  Set the title
OLECMDID_SETDOWNLOADSTATE       29  Set download status
OLECMDID_STOPDOWNLOAD           30  Stop downloading
OLECMDID_ONTOOLBARACTIVATED     31  
OLECMDID_FIND                   32  Search
OLECMDID_DELETE                 33  Delete
OLECMDID_HTTPEQUIV              34  
OLECMDID_HTTPEQUIV_DONE         35  
OLECMDID_ENABLE_INTERACTION     36  Allow the interaction
OLECMDID_ONUNLOAD               37  When uninstall
OLECMDID_PROPERTYBAG2           38  
OLECMDID_PREREFRESH             39  
OLECMDID_SHOWSCRIPTERROR        40  
OLECMDID_SHOWMESSAGE            41  Display a message
OLECMDID_SHOWFIND               42  Display search
OLECMDID_SHOWPAGESETUP          43  Display page setup
OLECMDID_SHOWPRINT              44  Display and printing
OLECMDID_CLOSE                  45  Close
OLECMDID_ALLOWUILESSSAVEAS      46  
OLECMDID_DONTDOWNLOADCSS        47  
OLECMDID_UPDATEPAGESTATUS       48  
OLECMDID_PRINT2                 49  Print 2
OLECMDID_PRINTPREVIEW2          50  Print preview
OLECMDID_SETPRINTTEMPLATE       51  Set the print template
OLECMDID_GETPRINTTEMPLATE       52  Get a print template
OLECMDID_PAGEACTIONBLOCKED      55  
OLECMDID_PAGEACTIONUIQUERY      56  
OLECMDID_FOCUSVIEWCONTROLS      57  
OLECMDID_FOCUSVIEWCONTROLSQUERY 58  
OLECMDID_SHOWPAGEACTIONMENU     59  
OLECMDID_ADDTRAVELENTRY         60  
OLECMDID_UPDATETRAVELENTRY      61  
OLECMDID_UPDATEBACKFORWARDSTATE 62  
OLECMDID_OPTICAL_ZOOM           63  
OLECMDID_OPTICAL_GETZOOMRANGE   64  
OLECMDID_WINDOWSTATECHANGED     65  windows status change

这是第二个参数的完整列表

OLECMDEXECOPT_DODEFAULT         0   Default parameters
OLECMDEXECOPT_PROMPTUSER        1   Prompt the user, namely the pop-up dialog box
LECMDEXECOPT_DONTPROMPTUSER     2   User is not prompted
OLECMDEXECOPT_SHOWHELP          3   displays help

IE.ExecWB方法可用于将网页打印为PDF,但它会提示用户选择文件夹并询问文件名以保存它。

此方法没有任何参数来传递文件路径。因此,如果您正在寻找使用代码中编写的路径,那么您需要更改逻辑并基于此修改代码。

参考资料:

(1)ExecWB method

(2)Microsoft Internet Controls

【讨论】:

以上是关于如何使用 ExecWB 命令将页面打印为 pdf的主要内容,如果未能解决你的问题,请参考以下文章

如何将html文件转成pdf 在线转换

js如何实现页面打印

将 OpenOffice Calc 文件导出为 PDF 时如何处理打印区域?

如何使用 jquery 将打印结果作为 PDF 结果

自动将网页打印为 pdf

怎么将html转换为pdf