Windows 使用命令行打印特定的PDF页面
我在Windows平台上工作 可以在特定页面打开PDF文件:Windows 使用命令行打印特定的PDF页面,windows,shell,pdf,command-line,printing,Windows,Shell,Pdf,Command Line,Printing,我在Windows平台上工作 可以在特定页面打开PDF文件: AcroRd32.exe /A "page=3" "file.pdf" 打印特定页面是否有类似的解决方案?比如: AcroRd32.exe /P "page=3" "file.pdf" 打印特定页面是否有类似的解决方案? 比如: 否。没有打印特定页面的选项 您可以使用/p选项和VBS(或类似)脚本来操作打印对话框并选择要打印的页面: AcroRd32.exe/p路径名-执行Adobe Reader并显示打印对话框 有关可能的命令行
AcroRd32.exe /A "page=3" "file.pdf"
打印特定页面是否有类似的解决方案?比如:
AcroRd32.exe /P "page=3" "file.pdf"
打印特定页面是否有类似的解决方案?
比如:
否。没有打印特定页面的选项
您可以使用/p
选项和VBS(或类似)脚本来操作打印对话框并选择要打印的页面:
AcroRd32.exe/p路径名
-执行Adobe Reader并显示打印对话框
有关可能的命令行选项的列表,请参见下文
如何在Windows上使用Acrobat和Adobe Reader的命令行? 这些是不受支持的命令行,但对某些开发人员有效 除了下面列出的以外,没有关于这些命令的文档。您可以从命令行使用Acrobat和Adobe Reader显示和打印PDF文件 注意:下面的所有示例都使用Adobe Reader,但也适用于Acrobat 如果使用的是Acrobat,请在命令行中将Acrobat.exe替换为AcroRd32.exe
AcroRd32.exe路径名
-执行Adobe Reader并显示文件,必须提供其完整路径
命令行的其他选项包括:
启动Acrobat或Adobe Reader的单独实例,即使有 目前正在开放/n
打开Acrobat或Adobe Reader,抑制启动屏幕/s
打开Acrobat或Adobe Reader,抑制“打开文件”对话框/o
在最小化窗口中打开Acrobat或Adobe Reader/h
AcroRd32.exe/p路径名
-执行Adobe Reader并显示
“打印”对话框
AcroRd32.exe/t路径“printername”“drivername”“portname”
-
启动Adobe Reader并打印一个文件,该文件的路径必须完全正确
指定,但不显示“打印”对话框
/t
选项的四个参数计算为路径
,打印名称
,
drivername
和portname
(所有字符串)
printername
-打印机的名称
drivername
-打印机驱动程序的名称,显示在打印机属性中
portname
-打印机的端口portname
不能包含任何/
字符;如果是,输出将路由到该端口的默认端口
打印机
来源我是这样做的:
pdf\u print\u sendkeys.vbs:
Dim ObjArgs
Set ObjArgs = wscript.arguments
cmd = objargs(0) & " /P " & objargs(1)
Set objShell = WScript.CreateObject ("WScript.shell")
objshell.exec(cmd)
WScript.Sleep 5000
objShell.AppActivate "Print"
objShell.SendKeys "%g", TRUE ' Alt + g [Pages]
objShell.SendKeys "{TAB}", TRUE ' Input Pages
objShell.SendKeys objargs(2), TRUE ' Start and End Page
objShell.SendKeys "{ENTER}", TRUE ' Print!
Set objShell = Nothing
wscript "C:\tmp\pdf_print_sendkeys.vbs" "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" "C:\tmp\test.pdf" "2-3"
测试:
Dim ObjArgs
Set ObjArgs = wscript.arguments
cmd = objargs(0) & " /P " & objargs(1)
Set objShell = WScript.CreateObject ("WScript.shell")
objshell.exec(cmd)
WScript.Sleep 5000
objShell.AppActivate "Print"
objShell.SendKeys "%g", TRUE ' Alt + g [Pages]
objShell.SendKeys "{TAB}", TRUE ' Input Pages
objShell.SendKeys objargs(2), TRUE ' Start and End Page
objShell.SendKeys "{ENTER}", TRUE ' Print!
Set objShell = Nothing
wscript "C:\tmp\pdf_print_sendkeys.vbs" "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" "C:\tmp\test.pdf" "2-3"
请参阅此处,了解我的完整记录和进一步利用情况等
ImageMagick可以将PDF文档的特定页面提取为图像,因此如果要打印第3页,可以使用以下命令(请记住,它从第0页开始计数):
或者,如果你“喜欢”一句台词:
magick file.pdf[2] page.bmp && mspaint /pt page.bmp
如果分辨率太低/块状,请使用:
magick -density 144 file.pdf[2] page.bmp
如果您不喜欢MS Paint,或者出于某种原因更喜欢PNG文件:
magick file.pdf[2] page.png
rundll32 C:\WINDOWS\system32\shimgvw.dll,ImageView_PrintTo "page.png" "Fictional HP Printer"
@伊尼安,更新了我的问题,@Blobonat,它有什么帮助?