使用pdf.js访问PDF超链接

时间:2017-10-24 17:22:38

标签: google-apps-script google-docs pdf.js

我正在使用pdf.js来解析使用Google Scripts从Google Doc生成的PDF。我需要最终在pdf的给定页面上生成一个超链接列表。

我需要一个等同于pdf.js函数PDFpage.getTextContent,但它包含超链接信息,而不仅仅是文本信息。 pdf.js中输出超链接信息的任何函数都是一个开始,但我似乎找不到任何东西。

我不需要显示PDF,只需从中提取最少的信息。

我当前的代码,只记录页面的文本内容:

function numbersLinks(blob) {
    PDFJS.getDocument({data: blob}).then(function (PDFdoc) {
      for (var i=1; i<=PDFdoc.numPages; i++) {
        PDFdoc.getPage(i).then(function (PDFpage) {
        var page_number = PDFpage.pageIndex + 1;
          PDFpage.getTextContent().then(function (text) {
            for (var j in text.items) {
              var item = text.items[j]
              console.log(item)
            }
          })
        })
      }
    })
  }

1 个答案:

答案 0 :(得分:1)

这对你有用吗?

您可以使用url annotationData获取的getAnnotations()密钥来获取网址。

function numbersLinks(blob) {
  PDFJS.getDocument({data: blob}).then(function (PDFdoc) {
    for (var i=1; i<=PDFdoc.numPages; i++) {
      PDFdoc.getPage(i).then(function (PDFpage) {
        PDFpage.getAnnotations().then(function (annotationData) {
          for (var j=0; j<annotationData.length; j++) {
            console.log(annotationData[j].url);
          }
        })
      })
    }
  })
}