2

Adobe PDF Embed似乎总是重新加载 pdf,而不是仅仅导航到正确的页面(就像更改 iframe 中的页码一样)。有没有解决的办法?

正在使用的代码:previewFilePromise.then(adobeViewer => {

    adobeViewer.getAPIs().then(apis => {
            apis.gotoLocation(n)
                    .then(() => console.log("Success"))
                    .catch(error => console.log(error));
     });

});

4

1 回答 1

1

我没有看到这种行为,但我处理问题的方式有点不同。我只获得一次 API,然后重用该对象,如下所示。代码片段后面是一个运行示例的链接。

 var viewerAPI = null;
 function showPDF(urlToPDF) {
      var adobeDCView = new AdobeDC.View({
           clientId: clientId,
           divId: "embeddedView"
      });
      previewFilePromise = adobeDCView.previewFile(
           {
                content: { promise: fetchPDF(urlToPDF) },
                metaData: { fileName: urlToPDF.split("/").slice(-1)[0] }
           },
           viewerOptions
      );
      previewFilePromise.then((adobeViewer) => {
           adobeViewer.getAPIs().then((apis) => {
                viewerAPI = apis;
           });
      });
 }

 function goToPage(pageNum) {
      viewerAPI.gotoLocation(parseInt(pageNum));
 }

完整的代码笔

于 2021-11-30T20:02:11.750 回答