PDFTron可以选择提供一个自定义Javascript文件来修改查看器,但是我不确定该文件中应该包含什么内容,因此我在网络上找不到任何示例。

该网站有以下描述:


  查看器选项-默认情况下,PWS Cloud文档加载在WebViewer的基本托管版本中。您可以通过加载外部JavaScript配置文件来自定义查看器的外观,品牌和自定义功能。


当我提供此文件时,window.WebViewerUniversalInstance为null,document.getElementById('DocumentViewer')也返回一个null对象。

有人可以在这里指出正确的方向,我迷路了。

谢谢

最佳答案

此JavaScript文件在查看器的内部html页面(ReaderControl.html)的上下文中运行,允许您直接在查看器中修改内容,因此WebViewerUniversalInstance将为null(因为不在内部页面中)。但是我用var ele = document.getElementById('DocumentViewer');创建了一个小的测试文件,而ele不是null,所以我不确定为什么它不适合您。

无论如何,您可以做一些事例。对于自定义操作,您可能需要在“ viewerLoaded”或“ documentLoaded”事件中运行代码。对于UI更改,您在两个事件中都不需要代码。

因此,例如,如果您想隐藏打印按钮,则可以将其放入文件中:

$('#printButton').hide();


对于修改与UI相关的事物,我建议右键单击“检查元素”以找到要修改的事物的ID /类。或者,您可以下载WebViewer并查看ReaderControl.html。

这是在viewerLoaded事件中执行操作的示例:

$(document).on('viewerLoaded', function() {
    readerControl.docViewer.SetMargin(0);
});


这是在documentLoaded事件中执行操作的示例:

$(document).on('documentLoaded', function() {
    readerControl.setCurrentPageNumber(2);
    readerControl.rotateClockwise();
    readerControl.setZoomLevel(2);
});


您可以做很多很多事情,您可以在这里查看文档:http://www.pdftron.com/webviewer/demo/lib/html5/doc/

您可能感兴趣的一些对象:


readerControl:viewerLoaded之后可用
DocumentViewer:加载查看器后可用(readerControl.docViewer)
Document:在documentLoaded之后可用(docViewer.GetDocument())


如果您还有其他问题,可以随时在WebViewer论坛上提问:https://groups.google.com/forum/#!forum/pdfnet-webviewer

关于javascript - PDFTron自定义脚本应包含哪些内容?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26590091/

10-09 21:12