2

倉庫の端末で Firefox で実行するアプリケーションを構築しています。このアプリケーションは PDF を印刷する必要があります。

Javascript から PDF を印刷することに関する多くの質問と回答を見つけましたが、うまくいきません。

これが私の現在のコードです。

$(document).ready(function() {
    $(document.body).append('<IFRAME id="pdfLabel" ... >');
    $('iframe#pdfLabel').attr('src', 'testlabel.pdf');

    $('iframe#pdfLabel').load(function() {
        document.getElementById('pdfLabel').focus();
        document.getElementById('pdfLabel').contentWindow.print();
    });
});

iFrame の通常の HTML ページでは、このコードは問題なく動作します。PDF の場合、PDF は iFrame に表示されますが、印刷されません。PDFレンダラーに組み込まれたFirefoxと、組み込みのAdobeアクロバットリーダーを使用して印刷を試みました。私も試しました

document.getElementById('pdfLabel').print();

しかし、それはスローします TypeError: window.frames.pdfLabel.print is not a function

4

1 に答える 1

5

。。残念ながら、Firefox 19に同梱されているPDF.jsバージョンは、ドキュメントを自己印刷するための組み込みのJavaScriptをサポートしておらず、PDFウィンドウ内のすべて(印刷方法を含む)にアクセスすることもできません。

。。彼らは問題を認識しており、修正はFirefoxのバージョン21に同梱される予定です。

于 2013-03-01T21:21:04.497 に答える