mcpField
P
pdf-skill

pdf-skill

github.com/404kidwiz文档处理103 次安装
代码仓库

关于 pdf-skill

pdf-skill 提供以编程方式生成、解析和编辑 PDF 的指导,帮助开发者创建文档、提取内容、处理页面与表单,以及将 HTML 转为 PDF。

主要功能

  1. 01以编程方式生成 PDF
  2. 02提取文本和数据
  3. 03合并、拆分和编辑 PDF
  4. 04处理 PDF 表单
  5. 05将 HTML 转换为 PDF

适用场景

  1. 01根据数据生成报告
  2. 02提取 PDF 文件内容
  3. 03合并或拆分文档
  4. 04以编程方式填写 PDF 表单

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill pdf-skill

安装后在 Claude Code 中输入/pdf-skill确认已加载。

详细介绍

PDF 技能

目的

提供程序化 PDF 生成、解析和处理方面的专业知识。专注于从头创建 PDF、提取内容、合并/拆分文档,以及使用 PDFKit、PDF.js、Puppeteer 和类似工具处理表单。

适用场景

  • 以编程方式生成 PDF
  • 从 PDF 中提取文本或数据
  • 合并或拆分 PDF 文档
  • 以编程方式填写 PDF 表单
  • 将 HTML 转换为 PDF
  • 添加水印或批注
  • 解析 PDF 结构和元数据
  • 构建 PDF 报告生成器

快速开始

在以下情况下调用此技能:

  • 根据代码或数据生成 PDF
  • 从 PDF 文件中提取内容
  • 合并、拆分或处理 PDF
  • 填写或创建 PDF 表单
  • 将 HTML/网页转换为 PDF

请勿在以下情况下调用:

  • 创建 Word 文档 → 使用 /docx-skill
  • Excel/电子表格工作 → 使用 /xlsx-skill
  • 创建 PowerPoint → 使用 /pptx-skill
  • 常规文件操作 → 使用 Bash 或文件工具

决策框架

PDF Operation?
├── Generate from scratch
│   ├── Simple → PDFKit (Node) / ReportLab (Python)
│   └── Complex layouts → Puppeteer/Playwright + HTML
├── Parse/Extract
│   ├── Text extraction → pdf-parse / PyPDF2
│   └── Table extraction → Camelot / Tabula
├── Manipulate
│   └── pdf-lib (merge, split, edit)
└── Forms
    └── pdf-lib (fill) / PDFtk (advanced)

核心工作流

1. 使用 PDFKit 生成 PDF
  1. 安装 PDFKit(npm install pdfkit)
  2. 创建新的 PDDocument
  3. 添加内容(文本、图像、图形)
  4. 设置字体和颜色样式
  5. 根据需要添加页面
  6. 写入文件或响应流
2. 将 HTML 转换为 PDF
  1. 配置 Puppeteer/Playwright
  2. 跳转至 HTML 内容或 URL
  3. 设置页面尺寸和边距
  4. 设置打印选项(页眉、页脚)
  5. 生成 PDF 缓冲区
  6. 保存或传输结果
3. PDF 解析和提取
  1. 选择解析器(pdf-parse、PyPDF2、pdfplumber)
  2. 加载 PDF 文件
  3. 提取文本或结构化数据
  4. 处理多页文档
  5. 清理并规范化提取的文本
  6. 按所需格式输出

最佳实践

  • 尽可能使用矢量图形,而非栅格图像
  • 嵌入字体以确保渲染一致
  • 在不同阅读器中测试 PDF 输出
  • 使用流式处理大型 PDF
  • 根据任务复杂度选择合适的库
  • 考虑无障碍访问(带标签的 PDF)

反模式

反模式问题正确做法
仅包含图像的 PDF无法搜索/访问使用带字体的文本
未嵌入字体渲染问题嵌入所需字体
将大型 PDF 全部加载到内存崩溃使用流式处理
忽略加密安全/访问问题处理加密 PDF
工具选错过度设计根据复杂度匹配工具

评论

支持 Markdown