【发布时间】:2017-05-17 15:40:59
【问题描述】:
我正在研究是否可以提供指向 PDF 等文件的外部链接。
我是否需要将此 .pdf 文件包含在 [Files] 部分下的 .hpp 文件中?
最好的方法是什么?
【问题讨论】:
-
提问前请先搜索一下。
标签: html pdf chm html-help-workshop
我正在研究是否可以提供指向 PDF 等文件的外部链接。
我是否需要将此 .pdf 文件包含在 [Files] 部分下的 .hpp 文件中?
最好的方法是什么?
【问题讨论】:
标签: html pdf chm html-help-workshop
这取决于您想要实现的目标。由于 *.CHM 文件方面的一些安全问题,在独立的 PC/笔记本电脑上工作与在公司网络中工作不同。
首先请按照Including a PDF file in SHFB generated .chm (Html Helpfile 1)中描述的步骤操作。
您会找到一些用于自学帮助创作的文件。当然,PDF 示例也被集成为 HTML 帮助示例。请注意,主题本身和 PDF 文件包含特定信息。
例如嵌入式 PDF:
确保将您的 *.PDF 文件添加到 **.HHP 文件的 [FILES] 部分,如下所示:
[FILES]
design.css
index.htm
embedded_files\example_embedded.pdf
并从 HTML (CHM) 链接:
<p><a href="../embedded_files/example-embedded.pdf">Link relative to PDF</a></p>
从目录 (TOC) 链接到 PDF 的示例:
这是避免再次编译 CHM 的解决方案(请参阅上面屏幕截图中的 TOC)。您可能希望在用户 PC 上保存更新的 PDF,例如通过安装程序。请注意,这仅适用于 Windows 和 Internet Explorer。
这是从目录 (TOC) 启动 Acrobat Reader 的 PDF 示例。您可以在 HTMLHelp 文件 (CHM) 的主题窗口中查看如何显示 PDF 文件。 PDF 文档不会编译到 CHM 文件中。您无需重新编译 CHM 文件即可更新此文件。
PDF 文件必须位于本地 CHM 文件下的子文件夹中,例如external_files/example-external-pdf.pdf.
要从 TOC 链接到“external_files/example-external-pdf.pdf”,请在 HTMLHelp 目录文件 (HHC) 中添加以下行:
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="How to link to PDF file (not embedded)">
<param name="Local" value="HTMLHelp_Examples/example-external-pdf.htm">
</OBJECT>
此 HTML example-external-pdf.htm 具有以下代码:
<html>
<head>
<title>Example load PDF from TOC</title>
<SCRIPT Language="JScript">
function parser(fn) {
var X, Y, sl, a, ra, link;
ra = /:/;
a = location.href.search(ra);
if (a == 2)
X = 14;
else
X = 7;
sl = "\\";
Y = location.href.lastIndexOf(sl) + 1;
link = 'file:///' + location.href.substring(X, Y) + fn;
location.href = link;
}
parser('external_files/example-external-pdf.pdf');
</SCRIPT>
</head>
<body>
</body>
</html>
您需要了解有关 Acrobat Reader 和 Internet Explorer 的更多信息:
https://helpx.adobe.com/acrobat/using/display-pdf-in-browser.html
您可以根据需要下载示例:Project with all files and tricky examples
【讨论】:
<script language="JScript" src="script.js"></script> 放在 HEAD 中。一件事,寿;如果您希望文件在新窗口中而不是在帮助对象中打开,请使用windows.open(link) 而不是location.href = link。页面中的链接如下所示:<a onclick="parser('Documentation.pdf')" style="cursor: hand">documentation</a>.