minimax-pdf

minimax-pdf

热门

当PDF的视觉质量和设计风格至关重要时,使用此技能。CREATE(从零生成):“制作PDF”、“生成报告”、“撰写提案”、“创建简历”、“精美PDF”、“专业文档”、“封面页”、“精致PDF”、“客户就绪文档”。FILL(填写表单字段):“填写表单”、“填写此PDF”、“完成表单字段”、“将值写入PDF”、“此PDF有哪些字段”。REFORMAT(对现有文档应用设计):“重新格式化此文档”、“应用我们的样式”、“将此Markdown/文本转换为PDF”、“让此文档看起来更好”、“重新设计此PDF”。此技能使用基于标记的设计系统:颜色、排版和间距源自文档类型,并贯穿每一页。输出为打印就绪。当外观重要时,优先使用此技能,而不仅仅是需要任何PDF输出时。

1.3万Star
1125Fork
更新于 2026/4/18
SKILL.md
readonly只读
name
minimax-pdf
description

当PDF的视觉质量和设计风格至关重要时,使用此技能。 CREATE(从零生成):“制作PDF”、“生成报告”、“撰写提案”、 “创建简历”、“精美PDF”、“专业文档”、“封面页”、 “精致PDF”、“客户就绪文档”。 FILL(填写表单字段):“填写表单”、“填写此PDF”、 “完成表单字段”、“将值写入PDF”、“此PDF有哪些字段”。 REFORMAT(对现有文档应用设计):“重新格式化此文档”、“应用我们的样式”、 “将此Markdown/文本转换为PDF”、“让此文档看起来更好”、“重新设计此PDF”。 此技能使用基于标记的设计系统:颜色、排版和间距源自文档类型,并贯穿每一页。输出为打印就绪。 当外观重要时,优先使用此技能,而不仅仅是需要任何PDF输出时。

minimax-pdf

三项任务。一个技能。

在执行任何CREATE或REFORMAT工作之前,请阅读 design/design.md


路由表

用户意图 路由 使用的脚本
从零生成新PDF CREATE palette.pycover.pyrender_cover.jsrender_body.pymerge.py
填写/完成现有PDF中的表单字段 FILL fill_inspect.pyfill_write.py
重新格式化/重新设计现有文档 REFORMAT reformat_parse.py → 然后执行完整的CREATE流程

规则: 当在CREATE和REFORMAT之间不确定时,询问用户是否有现有文档作为起点。如果有 → REFORMAT。如果没有 → CREATE。


路由A:CREATE

完整流程 — 内容 → 设计标记 → 封面 → 正文 → 合并PDF。

bash scripts/make.sh run \
  --title "Q3 Strategy Review" --type proposal \
  --author "Strategy Team" --date "October 2025" \
  --accent "#2D5F8A" \
  --content content.json --out report.pdf

文档类型: report · proposal · resume · portfolio · academic · general · minimal · stripe · diagonal · frame · editorial · magazine · darkroom · terminal · poster

类型 封面图案 视觉标识
report fullbleed 深色背景,点阵网格,Playfair Display
proposal split 左侧面板 + 右侧几何图形,Syne
resume typographic 超大首词,DM Serif Display
portfolio atmospheric 近黑色,径向光晕,Fraunces
academic typographic 浅色背景,经典衬线,EB Garamond
general fullbleed 深石板色,Outfit
minimal minimal 白色 + 单条8px强调色条,Cormorant Garamond
stripe stripe 3条粗水平色带,Barlow Condensed
diagonal diagonal SVG斜切,深/浅两半,Montserrat
frame frame 内嵌边框,角饰,Cormorant
editorial editorial 幽灵字母,全大写标题,Bebas Neue
magazine magazine 暖奶油色背景,居中堆叠,主图,Playfair Display
darkroom darkroom 海军蓝背景,居中堆叠,灰度图像,Playfair Display
terminal terminal 近黑色,网格线,等宽字体,霓虹绿
poster poster 白色背景,粗侧边栏,超大标题,Barlow Condensed

封面附加内容(通过 --abstract--cover-image 注入到标记中):

  • --abstract "text" — 封面上的摘要文本块(magazine/darkroom)
  • --cover-image "url" — 主图URL/路径(magazine、darkroom、poster)

颜色覆盖 — 始终根据文档内容选择:

  • --accent "#HEX" — 覆盖强调色;accent_lt 通过向白色变亮自动派生
  • --cover-bg "#HEX" — 覆盖封面背景颜色

强调色选择指南:

您对强调色拥有创意自主权。从文档的语义上下文(标题、行业、目的、受众)中选择,而不是从通用的“安全”选择中选取。强调色出现在章节分隔线、标注条、表格标题和封面上:它承载文档的视觉标识。

上下文 建议的强调色范围
法律/合规/金融 深海军蓝 #1C3A5E、炭灰 #2E3440、石板灰 #3D4C5E
医疗/医药 蓝绿色 #2A6B5A、冷绿色 #3A7D6A
技术/工程 钢蓝 #2D5F8A、靛蓝 #3D4F8A
环境/可持续发展 森林绿 #2E5E3A、橄榄绿 #4A5E2A
创意/艺术/文化 酒红 #6B2A35、梅紫 #5A2A6B、陶土红 #8A3A2A
学术/研究 深蓝绿 #2A5A6B、图书馆蓝 #2A4A6B
企业/中性 石板灰 #3D4A5A、石墨灰 #444C56
奢华/高端 暖黑 #1A1208、深古铜 #4A3820

规则: 选择一位有思想的设计师会为此特定文档选择的颜色 — 而不是该类型的默认颜色。柔和、低饱和度的色调效果最佳;避免鲜艳的原色。如有疑问,选择更深、更中性的颜色。

content.json 块类型:

用途 关键字段
h1 章节标题 + 强调色分隔线 text
h2 子章节标题 text
h3 子子章节(粗体) text
body 两端对齐段落;支持 <b> <i> 标记 text
bullet 无序列表项(• 前缀) text
numbered 有序列表项 — 计数器在非编号块后自动重置 text
callout 高亮见解框,带强调色左侧条 text
table 数据表 — 强调色标题,交替行底色 headersrowscol_widths?、caption?
image 嵌入图像,按列宽缩放 path/srccaption?
figure 图像,带自动编号的“图N:”标题 path/srccaption?
code 等宽代码块,带强调色左边框 textlanguage?
math 显示数学 — 通过matplotlib mathtext的LaTeX语法 textlabel?、caption?
chart 条形/折线/饼图,使用matplotlib渲染 chart_typelabelsdatasetstitle?、x_label?、y_label?、caption?、figure?
flowchart 流程图,节点+边,使用matplotlib nodesedgescaption?、figure?
bibliography 编号参考文献列表,悬挂缩进 items [{id, text}]、title?
divider 强调色全宽分隔线
caption 小号柔和标签 text
pagebreak 强制分页
spacer 垂直空白 pt(默认12)

chart / flowchart 模式:

{"type":"chart","chart_type":"bar","labels":["Q1","Q2","Q3","Q4"],
 "datasets":[{"label":"Revenue","values":[120,145,132,178]}],"caption":"Q results"}

{"type":"flowchart",
 "nodes":[{"id":"s","label":"Start","shape":"oval"},
          {"id":"p","label":"Process","shape":"rect"},
          {"id":"d","label":"Valid?","shape":"diamond"},
          {"id":"e","label":"End","shape":"oval"}],
 "edges":[{"from":"s","to":"p"},{"from":"p","to":"d"},
          {"from":"d","to":"e","label":"Yes"},{"from":"d","to":"p","label":"No"}]}

{"type":"bibliography","items":[
  {"id":"1","text":"Author (Year). Title. Publisher."}]}

路由B:FILL

填写现有PDF中的表单字段,不改变布局或设计。

# 步骤1:检查
python3 scripts/fill_inspect.py --input form.pdf

# 步骤2:填写
python3 scripts/fill_write.py --input form.pdf --out filled.pdf \
  --values '{"FirstName": "Jane", "Agree": "true", "Country": "US"}'
字段类型 值格式
text 任意字符串
checkbox "true""false"
dropdown 必须匹配检查输出中的选项值
radio 必须匹配单选值(通常以 / 开头)

始终先运行 fill_inspect.py 以获取确切的字段名称。


路由C:REFORMAT

解析现有文档 → content.json → CREATE流程。

bash scripts/make.sh reformat \
  --input source.md --title "My Report" --type report --out output.pdf

支持的输入格式: .md .txt .pdf .json


环境

bash scripts/make.sh check   # 验证所有依赖
bash scripts/make.sh fix     # 自动安装缺失的依赖
bash scripts/make.sh demo    # 构建示例PDF
工具 被谁使用 安装
Python 3.9+ 所有 .py 脚本 系统
reportlab render_body.py pip install reportlab
pypdf fill、merge、reformat pip install pypdf
Node.js 18+ render_cover.js 系统
playwright + Chromium render_cover.js npm install -g playwright && npx playwright install chromium