检测 PDF.js 上的放大和缩小

detect zooming in and out on pdf.js

提问人:dizad87 提问时间:8/13/2018 更新时间:11/18/2023 访问量:392

问:

我想检测用户何时放大或缩小在 iframe 上使用 pdf.js 库打开的文档。我几乎在下面的代码中寻找“whatGoesHere”一词。等同于“pagechange”或“pagesloaded”,仅用于缩放。

innerDoc.addEventListener('whatGoesHere', function(e) 
    {console.log("zoom changed!");});
事件 addeventlistener 缩放 PDF.js

评论


答:

0赞 dizad87 8/15/2018 #1

我发现“pagerendered”确实在每次缩放后触发,但它也会在页面移动时触发。如果有一个严格用于缩放的事件,那将是理想的。

0赞 Ahlam Ibrahim 11/13/2022 #2

缩放有 3 个事件:

zoomIn
zoomOut
zoomReset
0赞 Matt Thomas 11/18/2023 #3

如果您使用的是 pdf.js 查看器,则可以绑定到事件:scalechanged

document.addEventListener('webviewerloaded', function () {
    console.log('web viewer loaded');

    // Wait for the PDFViewerApplication to initialize
    PDFViewerApplication.initializedPromise.then(function () {
        PDFViewerApplication.eventBus.on('scalechanged', function(e) {
           console.log("Do stuff here.");
        });
    )};
});

参考: https://github.com/mozilla/pdf.js/blob/ffbfd680ec418c05afdcafb6b3e6e962f978f8b0/web/app.js#L1884