name: file-to-pdf description: "将各类文件批量转换为 PDF 格式。支持 Office 文档(Word/Excel/PowerPoint)、图片(JPG/PNG/BMP/GIF/WebP/TIFF)、HTML 网页、Markdown 文件和纯文本文件。当用户要求将文件转为 PDF、导出 PDF、把图片合并成 PDF、或批量转换文档格式时触发此技能。This skill should be used when users ask to convert files to PDF, export to PDF, merge images into a PDF, or batch convert documents to PDF format." agent_created: true
将多种格式的文件转换为 PDF。支持 Office 文档、图片、HTML、Markdown 和纯文本,支持单文件和批量转换,支持将多张图片合并为单个 PDF 文件。
| 类别 | 扩展名 | 转换工具 |
|---|---|---|
| Office 文档 | .docx .doc .xlsx .xls .pptx .ppt .odt .ods .odp .rtf .csv | LibreOffice |
| 图片 | .jpg .jpeg .png .bmp .gif .webp .tiff .tif | Pillow |
| HTML | .html .htm | LibreOffice |
| Markdown | .md .markdown | markdown + LibreOffice |
| 纯文本 | .txt | LibreOffice (via HTML) |
用于转换 Office 文档、HTML、Markdown 和纯文本。安装地址:https://www.libreoffice.org/
自动检测路径:
- Windows: C:\Program Files\LibreOffice\program\soffice.exe
- macOS: /Applications/LibreOffice.app/Contents/MacOS/soffice
- Linux/PATH: soffice 或 libreoffice
可通过 --soffice <path> 参数指定自定义路径。
用于将图片转为 PDF。如未安装,脚本会自动通过 pip 安装到 managed venv。
用于将 Markdown 转为 HTML。如未安装,脚本会自动通过 pip 安装。
使用 managed Python 运行脚本。脚本会自动将 managed venv 的 site-packages 路径注入 sys.path,因此 Pillow 和 markdown 库可直接使用。
# Managed Python 路径(Windows)
C:\Users\fenhua\.workbuddy\binaries\python\versions\3.13.12\python.exe
scripts/convert_to_pdf.py
# 转换单个文件
python scripts/convert_to_pdf.py input.docx
# 转换多个文件
python scripts/convert_to_pdf.py file1.docx file2.xlsx file3.pptx
# 转换整个目录(不递归)
python scripts/convert_to_pdf.py ./documents/
# 递归转换目录
python scripts/convert_to_pdf.py ./documents/ --recursive
# 指定输出目录
python scripts/convert_to_pdf.py input.docx --output ./pdf_output/
# 多张图片合并为一个 PDF
python scripts/convert_to_pdf.py ./images/ --merge
# 覆盖已有 PDF 文件
python scripts/convert_to_pdf.py input.docx --overwrite
# 指定 LibreOffice 路径
python scripts/convert_to_pdf.py input.docx --soffice "C:\Program Files\LibreOffice\program\soffice.exe"
| 参数 | 简写 | 说明 |
|---|---|---|
inputs |
- | 要转换的文件或目录路径(至少一个) |
--output |
-o |
输出目录(默认与源文件同目录) |
--merge |
-m |
将多张图片合并为单个 PDF |
--recursive |
-r |
递归处理子目录 |
--overwrite |
- | 覆盖已有的 PDF 文件 |
--soffice |
- | 自定义 LibreOffice 可执行文件路径 |
| 退出码 | 含义 |
|---|---|
| 0 | 所有文件转换成功 |
| 1 | 部分文件转换失败 |
| 2 | 未找到支持的文件 |
--overwrite 参数强制覆盖7w4.net收录了海量优质技能插件。
这个 Skill 质量较好,能可靠地将各种文档和图片转为 PDF,功能覆盖全面。文档说明详细清楚,命令行参数设计合理,使用起来比较顺手。自动处理依赖安装这点很贴心。主要不足是依赖外部软件 LibreOffice(未安装时无法转换部分格式),且图片合并功能比较简单。对于日常文件转换需求来说,这是一个实用且完成度较高的工具。