在 PDFTron PrintModal 中取消默认包含注释复选框

Untick Include Annotation Checkbox by default in PDFTron PrintModal

据我所知,pdftron 中没有给出明确的属性来取消选中默认选中的“包括注释复选框”。 您可以转到 https://www.pdftron.com/webviewer/demo/ 并按 ctrl+P 查看打印模式:

所以我正在 javascript 中寻找解决方法,以使其禁用,具有 ID“include-annotations”。问题是当代码运行时,dom 对象是 'NULL',然后一段时间后相同的代码在控制台上运行。

如何在加载打印模式 dom 时触发此事件。

document.addEventListener("keydown", (e) => {
                if (e.ctrlKey && e.code === "KeyP") {
const annotationUncheck = document.getElementById(
                         "include-annotations"
                    ) as HTMLElement;
                    annotationUncheck.click(); 
}
            });

之所以 document.getElementById("include-annotations") 出现 null,是因为 Webviewer 在 iframe 中运行,其组件不会成为主要 DOM 的一部分。要从 iFrame 中获取复选框并取消选中它,您可以使用此代码:

WebViewer({...}, viewerElement).then(function (instance) {
  const { UI } = instance;
  UI.iframeWindow.document.getElementById("include-annotations").click();
});

这是获取 iFrame window 的相关 API。 https://www.pdftron.com/api/web/UI.html#.iframeWindow