繁体   English   中英

使用C#/ VB.NET打开具有打开参数的PDF

[英]Open a PDF with Open Parameters Using C# / VB.NET

总之,关于如何使用C#将PDF打开到特定页面的问题的公认答案是:

Process myProcess = new Process();    
myProcess.StartInfo.FileName = "acroRd32.exe"; //not the full application path
myProcess.StartInfo.Arguments = "/A \"page=2=OpenActions\" C:\\example.pdf";
myProcess.Start();

但是,此答案似乎不完整。 它的伟大工程,如果ADOBE READER(acroRd32.exe) 尚未运行,但如果读者正在运行,这个代码将不会做任何事情(至少我的Windows 8.1的PC上)。 那么,你怎么能在PDF打开使用C#(或VB.NET), 无论 ADOBE READER是否已经运行指定的页面?

事实证明,诀窍是将“ / n”开关添加到PDF路径之前的参数字符串中,如下所示:

myProcess.StartInfo.Arguments = String.Format("/A ""zoom={0}&page={1}=OpenActions"" /n ""{2}", strZoom, strPage, strPath)

根据Acrobat开发人员的常见问题解答 ,/ n开关“启动一个单独的Acrobat或Adobe Reader实例,即使当前处于打开状态。” 我无法想象您希望使用此开关的情况(如OP中所述打开PDF时),因此令人惊讶的是,在该主题的数十种建议解决方案中几乎没有提及此开关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM