我创建了一个 html 文件,内容如下索引.html
<html>
<head>
<script type="text/javascript" src="./pdf.js"></script>
<script type="text/javascript" src="./hello.js"></script>
</head>
<body>
<canvas id="the-canvas" style="border:1px solid black;"/>
</body>
</html>
hello.js有内容
PDFJS.disableWorker = true;
var pf = PDFJS.getDocument('./helloworld.pdf')
pf.then(function(pdf) {
pdf.getPage(1).then(function(page) {
var scale = 1.5;
var viewport = page.getViewport(scale);
//
// Prepare canvas using PDF page dimensions
//
var canvas = document.getElementById('the-canvas');
var context = canvas.getContext('2d');
canvas.height = viewport.height;
canvas.width = viewport.width;
//
// Render PDF page into canvas context
//
var renderContext = {
canvasContext: context,
viewport: viewport
};
page.render(renderContext);
});
});
但是当我将浏览器指向index.html 时,pdf 未正确显示。
我希望用户能够在他的计算机上选择一个 pdf 文件并在浏览器窗口中显示该 pdf 文件。
看起来您在使用时遇到了这个问题file:
协议而不是http:
or https:
。不同协议之间存在不同的安全考虑。
Here's 关于使用的博客文章XMLHttpRequest与本地文件 http://ejohn.org/blog/tightened-local-file-security/, and a 关于 Mozilla Firefox 票证的讨论 https://bugzilla.mozilla.org/show_bug.cgi?id=230606.
门票有几张(包括this one https://github.com/mozilla/pdf.js/issues/2354 and this one https://github.com/mozilla/pdf.js/issues/3134)关于可能提供指点的项目。来自的评论这张票 https://github.com/mozilla/pdf.js/issues/1913 says:
典型的 pdf.js 用例需要使用 Web 服务器和现代 HTML5 浏览器。
我建议解决你的问题你只需通过网络服务器运行它即可使用http
协议。 Nginx 和 Apache 易于安装和设置。
如果这不起作用,请使用以下命令为您的系统生成 pdf.js 和 pdf.worker.jsthis https://github.com/mozilla/pdf.js#building-pdfjs如果上述步骤不起作用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)