Skip to content

页面标签

页面标签(Page Labels)用于为 PDF 页面提供显示用页码,例如前言使用 iii,正文从 1 开始。页面标签不同于页面索引:页面索引始终从 0 开始,页面标签是面向用户显示和定位的文本。

福昕 PDF SDK(Web)可通过 PDFDoc.getPageLabels() 读取文档中的页面标签。 该接口可按指定页面索引读取标签,也可以一次性读取全部页面标签。

读取页面标签

PDFDoc.getPageLabels(pageIndexes) 用于读取指定页面的标签。如果不传 pageIndexes,则返回全部页面标签。

javascript
const pdfDoc = pdfViewer.getCurrentPDFDoc();

const allLabels = await pdfDoc.getPageLabels();
const labels = await pdfDoc.getPageLabels([0, 1, 2]);

返回值是页面标签字符串数组,顺序与传入的页面索引一致。

根据标签定位页面

如果需要根据标签文本定位页面,可以先读取全部页面标签,再在业务代码中查找对应页面索引。

javascript
const labels = await pdfDoc.getPageLabels();
const pageIndex = labels.findIndex(label => label === 'A-1');

if (pageIndex >= 0) {
    const docRender = pdfViewer.getPDFDocRender();
    await docRender.goToPage(pageIndex);
}

与页面组织的关系

插入、删除、移动页面后,SDK 内部会根据页面组织操作更新页面标签信息。业务侧如果需要在页面组织后刷新目录、缩略图或页码输入框,应在操作完成后重新读取页面标签。

注意事项

  • 页面标签用于显示和定位,不等同于页面索引。
  • 页面索引从 0 开始,页面标签可能从 1iA-1 等任意文本开始。