一些 PDF.js 代码提到了“注释层”,例如此处的 AnnotationLayerBuilder:
还有
pdfDocument.annotationStorage
和 pdfjsLib.AnnotationLayer
,在我尝试过的所有文档中,它们都是空的,即使在确实有文本注释的文档中也是如此。
我找不到有关注释层以及如何使用它的任何示例或文档,但听起来确实很有趣:)
什么是注释层?这是在谈论标准 PDF 注释吗,如 https://pspdfkit.com/blog/2018/what-are-annotations/ 或 https://www.adobe.com/content/dam/acom/en 中所述/devnet/acrobat/pdfs/pdf_reference_1-7.pdf 第 8.4 节注释?或者,它是 PDF.js 内部的东西吗?
如何获取注释将取决于您的情况。我正在构建一个视图层来替换 PDF.js 团队构建的查看器。基本想法就是你:
const doc = getDocument(url)
获取对 PDFDocumentProxy 对象的引用
const page = await doc.getPage(num)
获取对 PDFPageProxy 对象的引用
await page.getAnnotations()
获取注释
我在
PDF.js
版本
4.1
Web 查看器进行了测试
var serializedMap = pdfPage._transport.annotationStorage.serializable.map);
console.log(serializedMap);