Adobe Reader 命令行参考

106

有没有适用于不同版本的Adobe(前身为Acrobat)Reader的官方命令行参考(开关)?

我在Adobe Developer Connection上没有找到任何相关信息。

尤其是我想要:

  • 启动Reader并打开文件
  • 在特定位置(页面)打开文件
  • 关闭Reader(或单个文件)

1
你也可以在PDF文档内部保存,指定查看者打开的页面。这样,无论使用哪个PDF查看器打开,文档都会始终打开在那个页面上。 - PatrickF
7个回答

140

您可以在Adobe开发者常见问题解答中找到相关内容。(这是一个PDF文档而不是网页,在这种特殊情况下,我想这并不奇怪。)

常见问题解答指出,不支持使用命令行开关。

要打开一个文件,可以使用以下命令:

AcroRd32.exe <filename>

以下开关可用:
  • /n - 即使已经打开了一个实例,也启动一个新的Reader实例。
  • /s - 不显示闪屏。
  • /o - 不显示打开文件对话框。
  • /h - 以最小化窗口打开。
  • /p <filename> - 打开并直接进入打印对话框。
  • /t <filename> <printername> <drivername> <portname> - 将文件打印到指定的打印机。

7
路径似乎已经改变。谷歌搜索出了以下两个版本:http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/Acrobat_SDK_developer_faq.pdf 和 http://partners.adobe.com/public/developer/en/acrobat/sdk/pdf/intro_to_sdk/DeveloperFAQ.pdf。 - user288299
4
从命令行打印后,Adobe至少会留下一个窗口开着,可能会挂起你的脚本。 打开一个不相关的PDF或Adobe窗口,这将使你的脚本继续运行。 - Pete Brumm
3
对于 /t 开关,<drivername> 和 <portname> 不是必需的。如果省略它们,打印机将使用默认设置。 - stharward
1
看起来Acrobat的最新版本不再支持参数了。 - Anton Prokofiev
1
实际包含参数列表的文档名为“AcrobatDC_pdf_open_parameters.pdf”,截至2021年5月,它会随着Adobe网站的重新排列而移动位置。 - charles ross
显示剩余8条评论

20

17

要在第100页打开PDF,可以使用以下方法:

<path to Adobe Reader> /A "page=100" "<Path To PDF file>"

如果你需要多个参数,请用&分隔它们。

我在一个批处理文件中使用以下命令打开我正在阅读的书籍,并跳转到我之前读到的页面。

C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe /A "page=149&pagemode=none" "D:\books\MCTS(70-562) ASP.Net 3.5 Development.pdf"

我发现这是最佳的Adobe Reader命令行参数列表,可以在这里找到。
http://partners.adobe.com/public/developer/en/acrobat/PDFOpenParameters.pdf

虽然这是针对版本7的,但我试过的所有参数都有效。

至于关闭文件,我认为您需要使用SDK,或者如果您从代码中打开文件,则可以在完成后通过代码关闭文件。


这个链接已经失效了。 - Dongdong Kong

2
在打印作业返回后调用此函数:
oShell.AppActivate "Adobe Reader"
oShell.SendKeys "%FX"

这个是哪个包/系统的? - Alexej Magura

2

最容易获取/AURL.pdf#命令行开关的来源是2007年版本8,目前可从以下链接获取:

https://pdfobject.com/pdf/pdf_open_parameters_acro8.pdfhttps://web.archive.org/web/20210413084849/https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/pdf_open_parameters.pdf

该版本在2015年被重新标记为DC版1.0,但内容似乎未更改,然而,您目前可以从https://corpora.tika.apache.org/base/docs/bug_trackers/pdf.js/pdf.js-LINK-2843-0.pdf获取一份拷贝。

虽然没有“关闭读取器”命令,但可以使用包装函数来终止任务,但最好通过发送键调用干净的关闭F4,如其他答案所述。这是最新的命令行开关源代码。

我该如何使用Windows命令行?

如上所述,使用#page = 52的下面链接在FireFox中有效,但具有Acrobat启用的Edge中对我并非总是有效!

https://opensource.adobe.com/dc-acrobat-sdk-docs/acrobatsdk/pdfs/acrobatsdk_overview.pdf#page=52


1

对我来说,仅使用文件名而没有其他参数的 /A 没有起作用,但是以下代码在加上 /n 后可以正常工作

string sfile = @".\help\delta-pqca-400-100-300-fc4-user-manual.pdf";
Process myProcess = new Process();
myProcess.StartInfo.FileName = "AcroRd32.exe"; 
myProcess.StartInfo.Arguments = " /n " + "\"" + sfile + "\"";
myProcess.Start();

0

sumatrapdfreader 的外部查看器

[ CommandLine = "C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe" /A "page=%p" "%1" Name = Acrobat DC Filter = *.pdf ]


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接