相关疑难解决方法(0)

如何从浏览器打印PDF

在Web应用程序中,是否可以强制在客户端上打印PDF文件?如果浏览器配置为在窗口内打开PDF,我想调用window.print()会起作用,但是某些浏览器(比如我的)被配置为在外部打开PDF.

html javascript pdf

26
推荐指数
2
解决办法
8万
查看次数

无声打印嵌入式PDF

我有一个带有嵌入式PDF的网页.我的代码看起来像这样:

<embed
    type="application/pdf"
    src="path_to_pdf_document.pdf"
    id="pdfDocument"
    width="100%"
    height="100%">
</embed>
Run Code Online (Sandbox Code Playgroud)

我有这个javascript代码用于打印我的PDF:

function printDocument(documentId) {

    //Wait until PDF is ready to print    
    if (typeof document.getElementById(documentId).print == 'undefined') {

        setTimeout(function(){printDocument(documentId);}, 1000);

    } else {

        var x = document.getElementById(documentId);
        x.print();
    }
}
Run Code Online (Sandbox Code Playgroud)

执行此代码时,Acrobat插件将打开众所周知的打印对话框.像这样的东西:

PrintDialog类

两个问题:

  • 如何改进检测PDF已加载并准备打印的方法?
  • 如何避免显示打印对话框?

关于我的系统的更多信息:

操作系统: Windows XP

浏览器: Internet Explorer 7

PDF插件: Acrobat Reader 9

html javascript pdf acrobat

24
推荐指数
2
解决办法
9万
查看次数

PDF.js如何打印多页pdf?

我正在尝试将打印功能添加到嵌入在使用PDF.js库的网页中的多页 PDF.这是有问题的,因为我只有一个页面在用户正在查看它时呈现,并且页面实际上呈现为画布元素中的图像.

在这种情况下,这个问题没有用,因为它适用于单页PDF,可以接受打印画布的当前内容.与这个问题相同.我还想避免在另一个选项卡/窗口中打开PDF并告诉用户自己打印,这会将其嵌入到页面中.

浏览Mozilla的文档,我没有找到任何只打印PDF的本机函数,但是,我将开始玩renderingIntent它似乎可以设置为'print'.

编辑: redingIntent似乎没有任何影响,PDF静止图像呈现为"显示"或"打印"的方式相同.

javascript printing pdf pdf.js

6
推荐指数
1
解决办法
2870
查看次数

使用PDF.js打印PDF文件

我正在使用Mozilla的PDF.js预览pdf文件。我用于预览的代码如下:

function previewPDF(url,canvasName){

    PDFJS.workerSrc = 'js/pdfJS/pdf.worker.js';

    PDFJS.getDocument(url).then(function getPdf(pdf) {
        pdf.getPage(1).then(function getPage(page) {
            var scale = 1.5;
            var viewport = page.getViewport(scale);

            var canvas = document.getElementById(canvasName);
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;

            var renderContext = {
                canvasContext: context,
                viewport: viewport
            };
            page.render(renderContext);
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

但是,现在我只需要一个打印按钮就可以打印pdf文件。我已经尝试了很多次,window.print()但是似乎没有用。您有任何想法我该怎么做吗?

先感谢您!!!

javascript pdf pdf.js

5
推荐指数
0
解决办法
2389
查看次数

标签 统计

javascript ×4

pdf ×4

html ×2

pdf.js ×2

acrobat ×1

printing ×1