Agent Skills
返回列表
💻

pdfme:开源 PDF 生成库

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/pdfme-typescript-pdf-generation-library。

技能介绍

生成 PDF 为什么麻烦

在业务系统里,PDF 输出往往很别扭。报表、发票、证书这类文档格式固定,但数据千变万化:用代码手写排版逻辑既难维护,改一个边距就要动一遍代码;让设计师用专业排版软件出图,又和代码里的动态数据接不上。结果要么是模板散落各处,要么是每次改格式都得开发重新改一遍。pdfme 要解决的问题很明确:把「文档长什么样」从代码里抽出来,变成一份谁都看得懂的 JSON 模板。

它是怎么工作的

pdfme 的核心思路是模板驱动:你不用写一堆坐标和画布操作代码,而是用内置的所见即所得(WYSIWYG)设计器把模板画出来。关键能力包括:

  • WYSIWYG 模板设计器:在浏览器里可视化排版,所见即所得,不需要了解排版引擎的 API
  • 模板即 JSON:模板就是一份 JSON 数据,结构直白,方便版本管理、评审和复用
  • PDF 预览:内置 PDF viewer,可以即时查看生成效果
  • CLI 工具:提供校验(validation)与生成命令,浏览器端和 Node.js 环境都能跑
  • 示例资产:通过 pdfme examples --withInputs 可导出官方示例,当成一个可编辑、可重新生成的任务来改

整体流程大致是:在设计器里画模板 → 模板存成 JSON → 运行时注入数据 → 生成 PDF。

适用边界

上游文档明确提到,它面向的是「用模板生成 PDF」这类场景,不需要复杂操作。也就是说,它适合格式固定、数据变化的结构化文档。如果你的需求是任意像素级操控 PDF、动态增删页面结构,那它未必合适,更适合交给专门的 PDF 处理库。另外,模板的表达能力和设计器、JSON 结构直接相关,复杂版式仍需要在真实模板里验证效果。

使用场景

  • 后端要交付固定版式的发票、报告或证书,并把用户数据填进同一份模板输出 PDF。
  • 前端想在浏览器里直接预览 PDF 生成结果,快速确认模板布局是否符合预期。
  • 团队用设计器调整模板后导出 JSON,再把同一份模板交给 Node.js 做批量生成。
  • 开发者需要用 CLI 校验模板结构,并在本地或 CI 流程中重新生成样例 PDF 验证输出。

适合人员

  • 负责生成发票、报告或证书 PDF 的 Web 后端工程师,需要模板化替换固定版式。
  • 搭建文档生成流程的全栈开发者,希望浏览器和 Node.js 共用同一套模板与 CLI。
  • 维护 PDF 模板的产品或研发成员,需要用设计器和 JSON 模板降低改动成本。
  • 需要批量校验并重新生成 PDF 的工程团队,依赖 CLI 验证模板并验证输出结果。