首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何跳转到本地pdf中的页面?

如何跳转到本地pdf中的页面?
EN

Stack Overflow用户
提问于 2009-04-08 15:34:27
回答 1查看 1.1K关注 0票数 1

我的问题类似于"How can I programmaticly open a pdf at a certain point?",但它是本地的,而不是在web服务器上。

我需要一种方法来跳转到用户计算机上的PDF中的给定页面,这是跨Acrobat的版本(或使用一个替代的PDF阅读器,如Foxit阅读器)。PDF将从Java应用程序中调用(它只在Windows上使用,所以跨平台不是必须的),现在它可以与:

代码语言:javascript
运行
复制
int pageNum = 24;
String manualPath = "C:\\Program Files\\Foo\\Bar\\Docs\\RefMan.pdf";
String acrordPath = "C:\\Program Files\\Adobe\\Reader 8.0\\Reader\\AcroRd32.exe";
String cmdString = "\"" + acrordPath + \" /A \"page=" + pageNum + 
    "=OpenActions\" \"" + manualPath + \"";
Process p = Runtime.getRuntime().exec(cmdString);

显然,只有当最终用户使用32位的Acrobat 8,并将其安装在默认位置时,这才能起作用。接下来,我尝试使用:

代码语言:javascript
运行
复制
rundll32 url.dll,FileProtocolHandler file:///C:/Program%20Files/Foo/Bar/Docs/RefMan.pdf#page=24

以为这会打开用户浏览器并跳转到该页面,但它只是在页面1上打开了Acrobat。

所以我被难住了,并寻求帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-04-08 21:45:02

最后,我通过使用this code调用reg.exe并解析来自HKLM\SOFTWARE\Classes.pdf的输出以查看它是否是AcroExch类来实现这一点,然后从call获取命令行

虽然有点老生常谈,但还是行得通。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/730554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档