我正在研究提供PDF文件等外部链接的可能性。
我是否需要将此.pdf文件包含在[Files]
部分下的.hpp文件中?
最好的方法是什么?
答案 0 :(得分:1)
这取决于你想要达到的目标。在独立的PC /笔记本电脑上工作与在公司网络中工作不同,因为* .CHM文件存在一些安全问题。
首先,请按照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 /示例-外部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