安装 Pages 扩展

按照本指南安装并配置 Pages 扩展。

安装 Pages 及其配套包

Pages 扩展自带 node 和 mark schema。要使用它,您还需要安装:

  • @tiptap-pro/extension-convert-kit — 适用于任何 Pages 或 Conversion 工作流的标准编辑器套件。ConvertKit 注册了一个支持 DOCX 的 schema(段落、标题、列表、图片、marks),可同时渲染手动创建的内容以及通过 Tiptap Conversion 导入的内容。
  • @tiptap-pro/extension-pages-tablekit — 支持分页安全的表格。之所以需要它,是因为 ConvertKit 内置的表格并不适合分页;在 Pages 中使用它们会导致布局断裂。

请从私有注册表安装这三个 Pro 包:

npm install @tiptap-pro/extension-convert-kit \
            @tiptap-pro/extension-pages-tablekit \
            @tiptap-pro/extension-pages

为什么 ConvertKit 和 TableKit 是分开安装的

@tiptap-pro/extension-pages@tiptap-pro/extension-pages-pagekit 都不会重新导出 ConvertKit。它们是可以组合在一起的独立包。如果您之后采用 PageKit,ConvertKit 仍然需要作为单独的安装项与之一起使用。

集成 Pages 扩展

在编辑器中注册这三个扩展,并禁用 ConvertKit 的表格栈,让 PagesTableKit 的 TableKit 接管:

import { Editor } from '@tiptap/core'
import { ConvertKit } from '@tiptap-pro/extension-convert-kit'
import { TableKit } from '@tiptap-pro/extension-pages-tablekit'
import { Pages } from '@tiptap-pro/extension-pages'

const editor = new Editor({
  extensions: [
    ConvertKit.configure({ table: false }),
    TableKit,
    Pages.configure({
      pageFormat: 'A4',
      header: '我的文档',
      footer: '第 {page} 页,共 {total} 页',
    }),
  ],
})

pageFormatheaderfooter 这三个选项是您最先会接触到的。完整列表请参见 API 参考,或者查看页面页眉和页脚,了解首页、奇偶页以及富内容页眉/页脚的设置方式。

身份验证

Pages 本身不会发起任何网络请求,也不需要任何凭证。一旦您在 Pages 之上再添加 Tiptap Conversion(DOCX 导入、PDF 导出等),就需要 JWT 和 App ID。有关凭证设置,请参见 Conversion 安装指南;其中的配置可直接沿用,无需修改。

后续步骤