0

pdf.js を使用して非常に基本的な例を試しています。私がやりたいことは、github からの hello-world コードを含む jade テンプレートをレンダリングして表示することだけです。ノードアプリケーション内でこれを実行しています。pdf.js ファイルは、~node make 汎用コマンドの結果です。

テンプレートは次のとおりです。

body
  canvas(id='the-canvas')
  script(type="text/javascript", src="/scripts/dependencies/pdf.js")
  script(type="text/javascript", src="/scripts/dependencies/compatibility.js")
  script(type="text/javascript")
    'use strict';
    PDFJS.disableWorker = true;

    PDFJS.getDocument('/tmp/util_ac.pdf').then(function(data){
      var pdf = new PDFJS.PDFDoc(data);
      var page = pdf.getPage(1);
      var scale = 1.5;
      var canvas = document.getElementById('the-canvas');
      var context = canvas.getContext('2d');
      canvas.height = page.height * scale;
      canvas.width = page.width * scale;

      page.startRendering(context);
    });

私のエラーメッセージはこれです

注: .workerSrc エラーが発生するため、disableWorker=true を設定します。

    Warning: Setting up fake worker. pdf.js:1418
TypeError: undefined is not a function
    at http://localhost:8000/docs/viewer:51:13
    at Object.Promise_resolve [as resolve].transportDoc 
4

1 に答える 1

0

disableWorker=trueそれ以外の場合は promise が呼び出されず、プロジェクト (によって生成された他のファイル) に pdf.worker.js も含まれているため、 .workerSrc エラー(正確には何でしたか?) がnode make generic発生しません。また、コンストラクターは、私が使用しているpdf.jsのバージョン-0.8.0では廃止されているようです。これらの変更を行うと、PDF が正常に読み込まれます。PDFDoc

于 2014-02-06T12:50:15.753 に答える