我将pdfobject与forcePDFJS一起使用,forcePDFJS使用pdfjs viewer.js来呈现pdf。一旦呈现,我需要能够跳转到页面而无需重新加载文档。文档可能非常大
我已经看到有关使用PDFApplicationViewer.pdfview.currentPageNumber的一些提及。但我还没有看到如何正确使用它的好例子
我已经看到了两个使用PDFApplicationViewer的示例 1. PDFApplicationViewer.pdfview.currentPageNumber = pagNum; 2. document.getElementById('mycanvas')。contentWindow.PDFApplicationViewer.pdfview.currentPageNumber = pagNum;
虽然认为第二个更有意义,但我不确定该元素的contentWindow对象来自何处。我以为pdfobject嵌入了一些我也可以访问的东西,但我不知道。.
而且,因为我真的找不到很多..这甚至有可能..
出于时间限制的原因,我不想使用pdfjs组装新的查看器。我喜欢viewer.html附带的内容。我只需要跳过页面而无需重新加载
答案 0 :(得分:0)
PDFObject.embed没有返回任何引用,所以我调查了pdfObject代码以了解其如何嵌入pdf ..
要使其正常工作,必须有一个iframe。因此,当使用pdfobject Im进行渲染时,使用如下配置:
通知forcePDFJS = true
if(!pageNum)
pageNum=1;
var options = {
pdfOpenParams: {
view: "FitV",
page: pageNum
},
forcePDFJS: true,
PDFJS_URL: "../pdfjs/web/viewer.html"
};
这是有效的代码
var pdfviewer = document.getElementById('pdfviewer');//get the viewer element
var contenttag = pdfviewer.getElementsByTagName("iframe")[0]//got this from pdfobject code
contenttag.contentWindow.PDFViewerApplication.pdfViewer.currentPageNumber = parseInt(pageNum);//change the page
答案 1 :(得分:0)