超链接从Word 2013 PDF文件页面

问题描述 投票:1回答:5

根据不同的来源之一,应该能够通过追加后缀为超链接到其他应用程序的PDF文件中的特定页面:#页=,例如:

C:\Temp\Examplefile.pdf#page=5

这不是从Word 2013年工作,我已阅读,这取决于所安装的客户端和文件扩展名关联PDF文件阅读器是什么应用程序和版本,但我认为这是与Word 2013年时发生问题,我可以在同一台计算机通过使用下面的HTML代码成功超到PDF页面从一个HTML文件,然后单击例如Internet Explorer中的链接:

<HTML><BODY><A HREF="C:\Temp\Examplefile.pdf#page=5" TARGET="_TOP"> PDF-File </A></BODY></HTML>

我已经使用Adobe阅读器XI和Adobe Acrobat 9 Pro作为PDF文件阅读器尝试过,但没有成功。 PDF文件打开,但它显示的第一页,不是第五。

有谁知道如何成功地超链接到一个特定的页面的PDF文件从Word 2013?我也开到涉及VBA代码解决方案。

pdf ms-word word-vba
5个回答
1
投票

看来,“创建一个Word文档中的超链接到一个特定的页面或目的地在一个PDF的唯一途径是,如果PDF文件是一个Web服务器和您创建链接指的是PDF URL”,引用的answer在AcrobatUsers.com。所以,你会使用与像http://unicode.org/charts/PDF/U0080.pdf#page=5一个URL链接(取任意工作示例)。

那么,任何HTTP服务器应该做的,它并不需要是在网络上,但可能是内部网服务器,甚至本地的,其中的Word文档被打开了电脑。但问题是,当你链接到http://地址,链接将在Web浏览器,它可以在一个网址的结尾处理片段部分像#page=5打开。


2
投票

这个问题是一个我与搏斗多年,我终于得到它的工作。我的旧杂志PDF格式的集合,我想在Word中创建与针对每个索引条目,我都可以转换成PDF文件的超链接,索引使得点击针对在PDF文件中的任何索引条目的链接会打开正确的杂志PDF文件在正确的页面。有几个问题。

  1. 使用超链接的格式“C:\ TEMP \ Examplefile.pdf#页= 5”如上在Word将工作当文件转换为PDF如果PDF文件在网络浏览器中打开,或者,如果该文件是直接打开在Adobe Reader中,有一个名为“页=#”一个PDF目的地(其中#=页码)您的目的地PDF文件的每一页上设置。通常情况下一个希望的那种工作我想到这第二个选项。
  2. 我知道一些字,以使PDF是Adobe阅读器,而不是一个Web浏览器中打开,这将正确创建链接的PDF转换程序。 LibreOffice的5做它正确如果配置正确,所不同的是它改变页面= 5'至“page3D5”。曾经有一个叫做Windows XP下其正确地做所有的转换大白鲨PDF程序,但我相信这不是现在市场上。所以我当时就知道的最好的选择是使用的LibreOffice从Word文件转换为PDF文件,并使用格式“C:\ TEMP \ Examplefile.pdf#第5页”的超链接,以避免问题的等号。我没有测试最新版本的Word。
  3. 这使得如何创建PDF目的地的问题。您可以使用Adobe Acrobat或硝基临例如PDF手动这一点,但不必手动创建一个PDF目的地为一个文件,每一页是不是一个任务,我会希望任何人。我做了它的方式是使用Adobe Acrobat一个叫自动收藏(https://www.evermap.com/autobookmark.asp)插件,它可以让你自动为PDF文件的每一页创建目标。顺便说一下,也有使用这个插件编辑所有超链接,使他们在特定页面打开PDF文件,而无需创建任何PDF目的地的方式,但它是相当复杂的,我还没有看到任何Adobe文献中记载的方法,所以我一直在使用它可以避免的。
  4. 最后,如果你正在考虑做什么我做了,超链接使用绝对地址如上可能不是非常有用的。不过,我可以报告说,使用相对地址,例如像” .. \杂志\ 1985.pdf#20' 条应该也行。

我希望其他任何详细信息,任何人都可以在这个问题上给它采取了我很多时间,在过去8年左右。


2
投票

我已经成功地测试了这种短期和简单的宏,打开第4页保存的PDF文件,将是:

Sub macro_name()
     App_Path = "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe"
     File_Path = "C:\Documents\test.pdf"
     Page_Num = 4
     Shell App_Path & " /A Page=" & Page_Num & ""&File_Path,vbMaximizedFocus
End Sub

如果代码是不能工作,检查Acrobat Reader的路径, 如果Acrobat Reader软件是开放而不是文件,然后PAGE_NUM和FILE_PATH的“”之间添加空间。

积分:迈克尔·阿维丹


1
投票

你可以使用一个宏脚本来帮助解决这个问题,但是你必须指定一个快捷键,同时选择超链接运行的宏脚本。

此链接应该有所帮助:Create hyperlink to a specific PDF page in Microsoft Word for Windows

编辑:如果上面的链接不起作用,或者您有以下从网站的步骤或宏脚本的问题,然后按照下面的步骤:

  1. 如果你能看到Developer标签,你可以跳过第2步,否则进行到第2步
  2. 为了使开发人员选项卡中看到您需要导航到qazxsw POI> qazxsw POI> qazxsw POI

并勾选File

  1. 导航到Options并点击Customize Ribbon
  2. 输入下Developer check box文本框中的宏脚本的名称:,然后点击按钮Developer tab,该名称可以是任何你想要的
  3. 一个Macros button应该出现,你需要输入以下代码:

下面的代码去Macros name(其中[脚本名称]替换为你给脚本的名称)和Create之间

new window

接下来的一段代码去Sub [name of script]()

End Sub

整个代码应该是这样的:

Dim targetLink As String
Dim targetName As String
Dim pageNumber As Integer
Dim pathPDF As String
targetName = Selection.Hyperlinks(1).Name
parts = Split(targetName, "page=")
pageNumber = parts(1)
pathPDF = Selection.Hyperlinks(1).Address
Call OpenPagePDF(pathPDF, pageNumber)

请注意,这是行不通的直线距离,因为你需要给Acrobat Reader软件的路径,这是在步骤6回答

  1. 为了找到Acrobat Reader软件,你需要找到该文件夹​​的“Adobe”(通常在End SubPublic Function OpenPagePDF(sMyPDFPath As String, iMyPageNumber As Integer) Dim RtnCode, AdobePath As String AdobePath = "Path to Acrobat Reader" RtnCode = Shell(AdobePath & " /a " & Chr(34) & "page=" & iMyPageNumber & "=OpenActions" & Chr(34) & " " & Chr(34) & sMyPDFPath & Chr(34), 1) End Function 找到)

当你发现你的文件夹需要导航通过对Sub [Name Of Script]() Dim targetLink As String Dim targetName As String Dim pageNumber As Integer Dim pathPDF As String targetName = Selection.Hyperlinks(1).Name parts = Split(targetName, "page=") pageNumber = parts(1) pathPDF = Selection.Hyperlinks(1).Address Call OpenPagePDF(pathPDF, pageNumber) End Sub Public Function OpenPagePDF(sMyPDFPath As String, iMyPageNumber As Integer) Dim RtnCode, AdobePath As String AdobePath = "Path to Acrobat Reader" RtnCode = Shell(AdobePath & " /a " & Chr(34) & "page=" & iMyPageNumber & "=OpenActions" & Chr(34) & " " & Chr(34) & sMyPDFPath & Chr(34), 1) End Function > Program Files

你应该会看到一个可执行文件名称类似Program Files (x86)Reader 11.0

的Acrobat Reader的位置是在Windows资源管理器的顶部,并且在该地址,其中,[可执行文件名称]被替换为可执行文件的名称的末尾Reader [可执行文件名称]发现AcroRd32.exe,该位置的一个例子是AcroRd64.exe

  1. 一旦你已经取代了与Acrobat Reader的位置“路径Acrobat Reader软件”,该脚本应该工作
  2. 之前运行脚本,你首先需要将光标放置到超链接
  3. 有两种方法来运行脚本,你可以设置一个快捷键来运行它(这是从步骤11中说明),也可以手动访问的宏脚本来运行它(这在下一步中进行解释)
  4. 要手动运行该address脚本点击,点击\并选择您的宏脚本,然后单击C:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe
  5. 要设置一个快捷键来运行该脚本导航到Developer tab> Macros button> Run,点击名为File旁边的文字按钮“键盘快捷键”
  6. 使用列表下的文本“类别:”选择Options并使用右侧列表,选择你的脚本
  7. 单击文本下Customize Ribbon“请按新快捷键”,然后键入组合键将运行该脚本
  8. 点击按钮Customize并关闭两个窗口
  9. 现在,每当你使用快捷键,光标被放置在超链接的时候,它应该加载了PDF正确的网页上

1
投票

所有引号是必需的。

  1. 打开MS PowerPoint文件
  2. 选择文本或图形用于超链接到PDF。
  3. 从主菜单中,选择插入,然后单击操作。
  4. 在动作设置窗口中,鼠标单击选项卡上,使运行程序。
  5. 包括引号,键入或粘贴 Macros textbox例子: “C:\ Program Files文件(x86)的\的Adobe \ Acrobat中2017年\ Acrobat中\ Acrobat.exe” “C:\ Program Files文件(x86)的\的Adobe \ Acrobat Reader软件2017年\读卡器\ AcroRd32.exe” Assign例如在205页中打开PDF: “页= 205OpenActions” "Path to PDF exe/exe file"/A"page=#OpenActions" "path to PDF/PDF file"例如: “C:\用户\理查德\桌面\大Help.pdf”

完整的例子:

"Path to PDF exe/exe file"

请注意,如果您转换MS Word或PowerPoint文件为PDF,链接不携带到PDF转换。

© www.soinside.com 2019 - 2024. All rights reserved.