技能版本 1.0.0

pdfkit-py

Pure-Python PDF toolkit with 50 commands covering reading, editing, conversion, forms, encryption, OCR, and IR. Trigger on: PDF 阅读, 编辑, 转换, 合并, 拆分, 加密, 签名, OCR, 表单, 水印, 书签, 压缩, 裁剪, 旋转, pdfkit.

价格

免费

  • 安装:免费

在组织开通时一次性收取;再次读取清单或下载不重复收费。

以上为公开标价。你的组织可能有协议价,以控制台显示的价格为准。

如何使用

  1. 为组织安装

    开通即安装:组织固定使用开通时的版本(当前为 1.0.0)。升级到新版本需要取消后重新开通。

  2. 创建凭证

    客户端使用组织凭证读取;绑定到数字人后,数字人使用绑定凭证按需加载。请求中携带:

    Authorization: Bearer $ZGI_MARKET_KEY

  3. 读取清单与安装包

    清单列出版本、文件和校验值;安装包是一个 zip 文件。

    读取清单
    curl "https://market-api.zgi.im/v1/market/skills/pdfkit-py/manifest" \
      -H "Authorization: Bearer $ZGI_MARKET_KEY"
    下载安装包
    curl "https://market-api.zgi.im/v1/market/skills/pdfkit-py/package" \
      -H "Authorization: Bearer $ZGI_MARKET_KEY" \
      -o pdfkit-py.zip

    读取清单和下载安装包不计入用量。下载后请用响应头中的 SHA-256 校验文件。

技能说明

名称
pdfkit-py
说明
Pure-Python PDF toolkit with 50 commands covering reading, editing, conversion, forms, encryption, OCR, and IR. Trigger on: PDF 阅读, 编辑, 转换, 合并, 拆分, 加密, 签名, OCR, 表单, 水印, 书签, 压缩, 裁剪, 旋转, pdfkit.
会运行代码PythonShell

技能包内含脚本文件,加载技能的运行时可能会执行它们,安装前请先阅读。

SKILL.md 节选

# pdfkit — AI 原生 PDF 处理工具

你是 pdfkit 的使用专家。用户描述 PDF 处理需求时,你负责选择正确的命令、参数并执行。

## ⚠️ 环境初始化(看到本段请立即执行)

**立即运行以下命令完成环境初始化,不要跳过,不要先检查。**

根据操作系统选择:

- **macOS / Linux**:
  ```bash
  bash ./scripts/setup.sh
  ```
- **Windows**(PowerShell):
  ```powershell
  cmd /c ".\scripts\setup.bat"
  ```

脚本会自动检测 Python 3.10+,如果系统未安装会自动下载独立 Python 运行时(无需管理员权限)。
如果失败,向用户报告错误。成功后本段会被自动删除。

<!-- END_SETUP -->

## 定位 CLI

skill 加载时会提供 base directory,CLI 入口在 `./scripts/pdfkit.py`。

根据操作系统,venv 中的 Python 路径不同:

- **macOS / Linux**:`<basedir>/scripts/venv/bin/python3`
- **Windows**:`<basedir>\scripts\venv\Scripts\python.exe`

```bash
# macOS / Linux
/path/to/pdfkit-py/scripts/venv/bin/python3 /path/to/pdfkit-py/scripts/pdfkit.py help

# Windows(PowerShell)—— 必须用 & 调用运算符
& "\path\to\pdfkit-py\scripts\venv\Scripts\python.exe" "\path\to\pdfkit-py\scripts\pdfkit.py" help
```

所有命令用 base directory 拼上对应平台的 venv python 路径和 `scripts/pdfkit.py` 的绝对路径调用。
简写为 `pdfkit.py <command>` 时,实际执行的是上述完整路径。

### Windows PowerShell 注意事项

1. **必须使用 `&`(调用运算符)**:PowerShell 中执行带引号路径的程序时,必须在最前面加 `&`,否则会报 `UnexpectedToken` 错误。
2. **JSON 参数中的引号**:PowerShell 中 JSON 参数**不能用单引号包裹**(单引号在 PowerShell 中是字面字符串,但嵌套双引号仍需转义)。推荐将复杂 JSON 写入文件后用 `--config` 传入。
3. **如果 venv 不存在**:先运行 `.\scripts\setup.bat` 初始化环境。

```powershell
# ✅ 正确的 Windows PowerShell 调用方式
& "C:\Users\xxx\.codebuddy\skills\pdfkit-py\scripts\venv\Scripts\python.exe" "C:\Users\xxx\.codebuddy\skills\pdfkit-py\scripts\pdfkit.py" split --input "D:\docs\file.pdf" --output_dir "D:\docs\output" --mode ranges --ranges "[[0,2]]"

# ❌ 错误:没有 & 运算符
"C:\...\python.exe" "C:\...\pdfkit.py" split ...
```

**参数不确定时**:运行 `pdfkit.py <command> help` 查看完整参数说明。

## 字体

字体由 `font_manager` 模块自动管理,**无需手动指定**:

- 内置 NotoSansSC-Regular 字体,在 setup 时自动从 CDN 下载到 `<basedir>/fonts/`
- 内置字体主要覆盖简体中文 + 常用 CJK,**不要假设它能覆盖所有语言、emoji、特殊符号或罕见字形**
- 内置字体不存在时,自动搜索本机系统字体(macOS: PingFang/STHeiti, Linux: NotoSansCJK/wqy, Windows: 微软雅黑/宋体)
- 搜索结果缓存,不会重复扫描
- 用户通过 `--font_path` 指定时,使用用户指定的

### 字体处理规则

- 如果用户明确提到字体、字形、乱码、缺字、显示不对、英文/其他语言不显示、emoji/符号显示异常等问题,**不要默认继续使用内置字体**
- 这类场景下,优先去本机系统里搜索能覆盖目标文本的字体,再用该字体重试
- 如果自动选择的字体显示仍异常,继续换本机其他候选字体,而不是直接告诉用户“字体不支持”
- 只有在本机确实找不到可用字体时,才向用户说明缺少对应字形覆盖

## 用户输入

$ARGUMENTS

如果用户未提供具体参数,先问:需要处理哪个 PDF 文件?要做什么操作?

## 全局选项

| Flag | 说明 |
|------|------|
| `--config <file.json>` | 从 JSON 文件加载复杂参数(CLI 参数优先级高于 config 文件) |

输出格式统一为 JSON:`{"ok": true, "data": {...}}` / `{"ok": false, "error": "..."}`

**页码从 0 开始**:用户说"第 1 页"→ 参数 `0`。

## 坐标系规范

**所有命令统一使用 PyMuPDF 坐标系**:

SKILL.md 不止这些内容,安装后可阅读全文。

技能包内容

共 62 个文件,合计 479.9 KiB

  • SKILL.md36.5 KiB
  • scripts/pdfkit.py9.9 KiB
  • scripts/pdfkit/__init__.py40 B
  • scripts/pdfkit/__main__.py67 B
  • scripts/pdfkit/base.py7.6 KiB
  • scripts/pdfkit/cli.py4.4 KiB
  • scripts/pdfkit/commands/__init__.py179 B
  • scripts/pdfkit/commands/add_page_numbers.py6.4 KiB
  • scripts/pdfkit/commands/ai_edit.py1.4 KiB
  • scripts/pdfkit/commands/bookmarks.py3.5 KiB
  • scripts/pdfkit/commands/chat_pdf.py3.4 KiB
  • scripts/pdfkit/commands/chunk_pdf.py8.9 KiB
  • scripts/pdfkit/commands/compress.py4.9 KiB
  • scripts/pdfkit/commands/convert.py15.7 KiB
  • scripts/pdfkit/commands/crop.py3.7 KiB
  • scripts/pdfkit/commands/decrypt.py1.7 KiB
  • scripts/pdfkit/commands/detect_type.py3.5 KiB
  • scripts/pdfkit/commands/edit_scanned.py4.9 KiB
  • scripts/pdfkit/commands/encrypt.py3.3 KiB
  • scripts/pdfkit/commands/exec_python.py7.8 KiB
  • scripts/pdfkit/commands/extract_images.py2.9 KiB
  • scripts/pdfkit/commands/extract_table.py7.4 KiB
  • scripts/pdfkit/commands/extract_text.py6.9 KiB
  • scripts/pdfkit/commands/flatten.py4.0 KiB
  • scripts/pdfkit/commands/form_detect.py11.1 KiB
  • scripts/pdfkit/commands/form_fill.py7.4 KiB
  • scripts/pdfkit/commands/form_fill_annotation.py9.5 KiB
  • scripts/pdfkit/commands/form_validate.py9.8 KiB
  • scripts/pdfkit/commands/formula_detect.py4.6 KiB
  • scripts/pdfkit/commands/ir_diff.py5.9 KiB
  • scripts/pdfkit/commands/ir_export.py6.5 KiB
  • scripts/pdfkit/commands/ir_import.py5.1 KiB
  • scripts/pdfkit/commands/ir_inspect.py3.8 KiB
  • scripts/pdfkit/commands/ir_modify.py7.0 KiB
  • scripts/pdfkit/commands/layout_analyze.py6.4 KiB
  • scripts/pdfkit/commands/layout_engine.py8.5 KiB
  • scripts/pdfkit/commands/long_image.py2.8 KiB
  • scripts/pdfkit/commands/merge.py1.6 KiB
  • scripts/pdfkit/commands/ocr_locate.py6.3 KiB
  • scripts/pdfkit/commands/overlay_text.py10.2 KiB
  • scripts/pdfkit/commands/page_count.py874 B
  • scripts/pdfkit/commands/page_ops.py4.6 KiB
  • scripts/pdfkit/commands/pdf_create.py33.9 KiB
  • scripts/pdfkit/commands/pdf_security.py4.1 KiB
  • scripts/pdfkit/commands/pdf_to_word.py14.0 KiB
  • scripts/pdfkit/commands/pymupdf_edit.py5.2 KiB
  • scripts/pdfkit/commands/reading_order.py4.7 KiB
  • scripts/pdfkit/commands/redact.py5.8 KiB
  • scripts/pdfkit/commands/remove_headers_footers.py6.0 KiB
  • scripts/pdfkit/commands/rotate.py2.1 KiB
  • scripts/pdfkit/commands/schema_extract.py6.4 KiB
  • scripts/pdfkit/commands/search_text.py8.8 KiB
  • scripts/pdfkit/commands/sign_pdf.py5.0 KiB
  • scripts/pdfkit/commands/smart_edit.py73.0 KiB
  • scripts/pdfkit/commands/split.py2.9 KiB
  • scripts/pdfkit/commands/to_images.py2.3 KiB
  • scripts/pdfkit/commands/watermark_enhanced.py14.0 KiB
  • scripts/pdfkit/font_manager.py12.2 KiB
  • scripts/requirements-optional.txt407 B
  • scripts/requirements.txt389 B
  • scripts/setup.bat7.8 KiB
  • scripts/setup.sh9.9 KiB

来源与审核

审核状态
尚未审核,内容来自上游来源
许可证
未说明

审核状态是平台对上架信息的记录,不构成对上游服务质量或可用性的担保。