如何使用pdf.js从pdf文档中获取元数据

use*_*445 4 javascript pdf.js

有没有办法使用pdf.js从作者或标题等pdf文档中获取元数据?

在此示例中:http://mozilla.github.io/pdf.js/web/viewer.html?file = compress.tracemonkey-pldi-09.pdf

<div class="row">
<span data-l10n-id="document_properties_author">
    Autor:
</span>
<p id="authorField">
    -
</p>
Run Code Online (Sandbox Code Playgroud)

而authorField是空的.有什么方法可以获得这些信息吗?

Kim*_*y W 9

仅使用没有第三方查看器的PDF.js库,您可以使用promises获取这样的元数据.

PDFJS.getDocument(url).then(function (pdfDoc_) {
        pdfDoc = pdfDoc_;   
        pdfDoc.getMetadata().then(function(stuff) {
            console.log(stuff); // Metadata object here
        }).catch(function(err) {
           console.log('Error getting meta data');
           console.log(err);
        });

       // Render the first page or whatever here
       // More code . . . 
    }).catch(function(err) {
        console.log('Error getting PDF from ' + url);
        console.log(err);
    });
Run Code Online (Sandbox Code Playgroud)

在将pdfDoc对象转储到控制台并查看其功能和属性后,我发现了这一点.我在原型中找到了这个方法,并决定试一试.瞧,看起来有效!


小智 2

您可以从 PDFViewerApplication.documentInfo 对象获取文档基本元数据信息。例如:要获取作者,请使用 PDFViewerApplication.documentInfo.Author