mcpField
L
latex-document

latex-document

github.com/ndpvt-web文档处理803317 次安装今天更新
代码仓库

关于 latex-document

面向学生、研究人员和文档作者的 LaTeX 文档技能,可创建、编译及转换 LaTeX 与 PDF 文档,并支持模板、批量合并和 PDF 表单处理。

主要功能

  1. 01创建并编译 LaTeX 文档
  2. 02生成 PDF 页面预览
  3. 03转换 PDF 和文档格式
  4. 04批量生成个性化文档
  5. 05填写及处理 PDF 表单

适用场景

  1. 01制作报告、论文、海报或简历
  2. 02将现有 PDF 转换为 LaTeX
  3. 03依据 CSV 或 JSON 批量生成信件
  4. 04填写现有 PDF 表单

安装

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

$npx skills add https://github.com/ndpvt-web/latex-document-skill --skill latex-document

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.chktexrc
README.md
assets/templates/
academic-cv.tex
academic-paper.tex
book.tex
cheatsheet-code.tex
cheatsheet-exam.tex
cheatsheet.tex
conditional-document.tex
cover-letter.tex
exam.tex
fillable-form.tex
homework.tex
invoice.tex
lab-report.tex
lecture-notes.tex
letter.tex
mail-merge-letter.tex
poster-landscape.tex
poster.tex
presentation.tex
references.bib
report.tex
resume-classic-ats.tex
resume-entry-level.tex
resume-executive.tex
resume-modern-professional.tex
resume-technical.tex
resume.tex
thesis.tex

详细介绍

LaTeX 文档技能

创建任意 LaTeX 文档、编译为 PDF,并生成 PNG 预览。将任意类型的 PDF 转换为 LaTeX。

工作流:创建文档

  1. 确定文档类型(简历、报告、信函、发票、文章、论文、学术 CV、演示文稿、海报、考试材料、书籍、速查表)
  2. 如果目标是 IEEE 期刊/Transactions/IEEE 双栏论文: 选择模板前,先阅读 references/ieee-journal-twocolumn-guide.md。从 examples/ieee-twocolumn-sample.tex 开始,使用可运行的 IEEEtran 基础模板,并将 examples/ieee-twocolumn.png/examples/ieee-twocolumn-p1.png/examples/ieee-twocolumn-p2.png 作为视觉参考。
  3. 如果是海报: 运行海报子工作流(见下方的 海报子工作流),然后跳至第 5 步。
  4. 如果是速查表/参考卡片: 运行速查表子工作流(见下方的 速查表/参考卡片子工作流),然后跳至第 5 步。
  5. 询问用户希望添加哪些丰富元素(使用 AskUserQuestion 工具并启用 multiSelect)。根据文档类型提供相关选项:
    • AI 生成图像——定制插图、图表、照片(使用 generate-image 技能)
    • 图表/曲线图——柱状图、折线图、饼图、散点图、热力图(pgfplots 或 matplotlib)
    • 流程图/示意图——流程、架构、决策树(TikZ 或 Mermaid)
    • 引文/参考文献——学术参考文献、脚注、引用作品(BibTeX/biblatex)
    • 数据表格——对比矩阵、财务数据、统计数据(booktabs)
    • 水印——DRAFT、CONFIDENTIAL 或公司徽标背景
    • 简单文档(求职信、发票)或用户已明确说明具体需求时,跳过此步骤。
  6. 从 assets/templates/ 复制合适的模板,或从头编写
  7. 根据用户需求定制内容
  8. 根据用户选择的元素生成外部资源:
    • AI 图像:python3 <skill_path>/../generate-image/scripts/generate_image.py "prompt" --output ./outputs/figure.png
    • matplotlib 图表:python3 <skill_path>/scripts/generate_chart.py <type> --data '<json>' --output chart.png
    • Mermaid 示意图:bash <skill_path>/scripts/mermaid_to_image.sh diagram.mmd output.png
  9. 对于 5 页及以上的文档: 编译前阅读长篇文档反模式部分,并运行内容生成检查清单。关键规则:优先使用叙述而非项目符号,统一压缩列表,在文本模式下转义 </>,调整各节格式,限制 \newpage 的使用,将图片尺寸设为文本宽度的 0.75–0.85 倍。
  10. 使用 scripts/compile_latex.sh 编译(自动检测适用于 CJK/RTL、术语表和参考文献的 XeLaTeX)
  11. 向用户展示 PNG 预览,并交付 PDF
海报子工作流

用户要求制作海报时,阅读 references/poster-design-guide.md,了解完整工作流,包括会议尺寸预设(NeurIPS/ICML/CVPR/ICLR 尺寸)、布局类型(传统型/BetterPoster/视觉优先型)、配色方案和排版标准。使用 poster.tex(纵向)或 poster-landscape.tex(横向)。使用 AskUserQuestion 询问用户的会议/方向、布局风格和配色方案,然后继续第 5 步。

速查表/参考卡片子工作流

用户要求制作速查表、参考卡片或公式表时:

  1. 阅读 references/cheatsheet-guide.md,了解完整工作流,包括模板选择、内容篇幅限制、排版规则以及 PDF 转速查表流程。
  2. 选择模板:cheatsheet.tex(通用,横向 3 栏)、cheatsheet-exam.tex(考试公式,纵向 2 栏)或 cheatsheet-code.tex(编程,横向 4 栏)。
  3. 按照指南中的工作流步骤操作,然后返回主工作流第 5 步。

工作流:邮件合并(批量生成个性化文档)

使用 LaTeX 模板和 CSV/JSON 数据源,通过 scripts/mail_merge.py 生成 N 份个性化文档。模板语法:使用 {{variable}} 进行简单替换,使用 Jinja2(<< >>、<% %>)处理条件和循环。示例请参阅 assets/templates/mail-merge-letter.tex。完整指南:references/interactive-features.md。

工作流:版本差异比较(latexdiff)

使用 scripts/latex_diff.sh 生成突出显示修订内容的 PDF。支持文件间差异比较、Git 修订版本差异比较、多文件合并以及自定义标记样式。完整指南:references/interactive-features.md。

工作流:转换文档格式

使用 scripts/convert_document.sh 在 Markdown、DOCX、HTML 和 LaTeX 之间进行转换。完整指南:references/format-conversion.md。

工作流:将 PDF 转换为 LaTeX

将现有 PDF(手写笔记、印刷报告、法律文件)转换为 LaTeX。完整流程:references/pdf-conversion.md。

快速步骤:将 PDF 拆分为页面图像(scripts/pdf_to_images.sh),选择转换配置文件,创建共享导言区,应用缩放策略,使用 scripts/validate_latex.py 验证,合并并编译。

缩放策略:1-10 页 = 单个 Agent;11-20 页 = 对半拆分(2 个 Agent);21 页及以上 = batch-7 流水线(ceil(N/7) 个 Agent,设置 run_in_background: true)。

转换配置文件(位于 references/profiles/):math-notes.md(方程、定理——包含精美模式)、business-document.md(报告、备忘录)、legal-document.md(合同、法规)、general-notes.md(手写内容、混合内容)。

工作流:填写 PDF 表单

填写现有 PDF 表单——包括可填写表单(带有表单字段)和不可填写表单(基于图像)。完整指南:references/pdf-operations.md。

第 1 步:检查表单类型:

python3 <skill_path>/scripts/pdf_check_form.py form.pdf

如果可填写(带有表单字段):

# Extract field metadata
python3 <skill_path>/scripts/pdf_extract_fields.py form.pdf field_info.json
# Create field_values.json with values for each field, then fill
python3 <skill_path>/scripts/pdf_fill_form.py form.pdf field_values.json output.pdf

如果不可填写(不带表单字段):

# Convert to images for visual analysis
bash <skill_path>/scripts/pdf_to_images.sh form.pdf ./tmp/pages
# Visually identify fields, create fields.json with bounding boxes
# Validate bounding boxes (+ optional validation image)
python3 <skill_path>/scripts/pdf_validate_boxes.py fields.json --image page_1.png --output validation.png --page 1
# Fill with text annotations
python3 <skill_path>/scripts/pdf_fill_annotations.py form.pdf fields.json output.pdf

工作流:高级 PDF 操作

有关文本/表格提取(pdfplumber)、OCR(pytesseract)、以编程方式创建 PDF(reportlab)、添加水印、旋转/裁剪页面、提取元数据、JavaScript 库(pdf-lib、pdfjs-dist)和批处理,请参阅 references/pdf-operations.md。

编译脚本

# Basic compile (auto-detects engine)
bash <skill_path>/scripts/compile_latex.sh document.tex

# Compile + generate PNG previews
bash <skill_path>/scripts/compile_latex.sh document.tex --preview

# Compile + PNG in specific directory
bash <skill_path>/scripts/compile_latex.sh document.tex --preview --preview-dir ./outputs

# Force a specific engine
bash <skill_path>/scripts/compile_latex.sh document.tex --engine xelatex
bash <skill_path>/scripts/compile_latex.sh document.tex --engine lualatex

# Use latexmk for automatic multi-pass (recommended for complex documents)
bash <skill_path>/scripts/compile_latex.sh document.tex --use-latexmk --preview

# PDF/A output for thesis submissions and archival compliance
bash <skill_path>/scripts/compile_latex.sh document.tex --pdfa

# Verbose output for debugging compilation issues
bash <skill_path>/scripts/compile_latex.sh document.tex --verbose

# Quiet mode for batch/CI jobs (only errors shown)
bash <skill_path>/scripts/compile_latex.sh document.tex --quiet

# Clean auxiliary files only (no compilation)
bash <skill_path>/scripts/compile_latex.sh document.tex --clean
编译标志
标志说明
--preview编译后生成每页的 PNG 预览
--preview-dir DIRPNG 输出目录(默认:与 .tex 文件相同的目录)
--engine ENGINE指定引擎:pdflatex、xelatex 或 lualatex
--use-latexmk使用 latexmk 作为编译后端(自动多轮编译、处理参考文献和索引)
--verbose显示完整编译输出(所有引擎日志)
--quiet禁止显示所有非错误输出
--clean删除辅助文件(.aux、.log、.bbl、.fdb_latexmk 等)并退出
--pdfa生成符合 PDF/A-2b 标准的输出(自动注入 pdfx 包)
--auto-fix自动修复常见编译错误(浮动体位置、编码)
编译后端

**手动多轮编译(默认):**根据需要多次运行引擎,并处理参考文献、索引和术语表。此传统方式无需安装 latexmk 即可使用。

**latexmk(--use-latexmk):**使用 latexmk 根据依赖关系自动编译。对于包含参考文献、索引、术语表或交叉引用的复杂文档,推荐使用此方式——latexmk 会自动确定正确的编译轮数。需要安装 latexmk(TeX Live 附带)。

日志过滤(texfot)

安装 texfot(包含在 TeX Live 中)后,编译输出会自动过滤,仅显示相关警告和错误,并抑制嘈杂的软件包加载消息。这适用于默认详细程度模式。使用 --verbose 查看未经筛选的输出,或使用 --quiet 隐藏所有非错误输出。

引擎自动检测:如果 .tex 文件使用 fontspec、xeCJK 或 polyglossia,脚本会自动使用 xelatex。如果使用 luacode 或 luatextra,则使用 lualatex。否则默认使用 pdflatex。使用 --engine 可覆盖此设置。

如果缺少依赖项,脚本会自动安装 texlive(包括 texlive-science、texlive-xetex、texlive-luatex、biber)和 poppler-utils。脚本会自动检测 \bibliography{}(运行 bibtex)、\addbibresource{}(运行 biber)、\makeindex(运行 makeindex)、\makeglossaries(运行 makeglossaries),运行正确次数的编译,使用 pdftoppm 生成 PNG 预览,并清理辅助文件。

脚本与工具参考

有关 PDF 工具(加密、合并、优化、提取页面、PDF 转图像)、LaTeX 质量工具(lint、字数统计、分析、软件包检查、引用)、编译自动修复、文献获取和图表脚本(Mermaid、Graphviz、PlantUML),请参阅 references/script-tools.md。

模板

从 assets/templates/ 复制并自定义。

简历模板(5 种兼容 ATS 的选项)

根据经验水平、行业和 ATS 要求进行选择。完整的 ATS 指南请参阅 references/resume-ats-guide.md。

模板最适合主要特点ATS 评分
resume-classic-ats.tex金融、法律、政府部门,以及任何 ATS 门户无图形元素,仅纯文本,最大程度确保解析安全10/10
resume-modern-professional.tex科技、企业、通用专业岗位柔和的色彩点缀、简洁设计,兼顾 ATS 兼容性与人工阅读体验9/10
resume-executive.texVP、总监、高管层(5-15 年以上经验)两页版、执行摘要、董事会职位、侧重损益9/10
resume-technical.tex软件、数据、工程岗位技能优先的混合布局、项目部分、突出技术栈9/10
resume-entry-level.tex应届毕业生、职业生涯起步者教育经历优先、单页版、课程作业、活动经历9/10

这 5 个模板均遵循 ATS 规则:单栏布局、不使用图形或图像、不用表格排版、使用标准的部分标题,联系信息置于正文中(而非页眉或页脚)。

STEM 学生模板
  • homework.tex -- 作业/习题提交模板(article 类,11pt),支持切换是否显示解答(\showsolutionstrue/\showsolutionsfalse),包含自定义题目/解答环境、诚信守则部分、fancyhdr 页眉、用于数学的 amsmath+amssymb+amsthm、代码高亮 listings(Python、Java、C++、Matlab 样式)、用于 (a)、(b)、(c) 子题的 enumitem、hyperref。可通过 \coursename、\assignmentnumber、\studentname、\studentid、\duedate 自定义。示例题目:微积分、数学归纳法证明、Python 编程、矩阵代数、运动学、Java 面向对象编程。
  • lab-report.tex -- STEM 实验报告模板(article 类,11pt),使用 siunitx 表示不确定度和 SI 单位,使用 pgfplots 可视化数据,使用 booktabs 制作专业表格,使用 amsmath 编写方程,使用 fancyhdr 设置页眉,使用 caption+subcaption 排版图表。结构化部分包括:摘要、理论、实验步骤、数据/结果(含不确定度表格)、分析(pgfplots 图表)、讨论(误差分析)、结论、参考文献、附录。示例:通过误差传播测量摆的周期。
其他模板
  • lecture-notes.tex — 精美讲义(scrartcl KOMA-Script 类),采用 Palatino 字体、microtype 排版、彩色 tcolorbox 定理环境(蓝色定理、绿色定义、橙色示例、紫色备注)、TikZ 图论图形样式和宏(\CompleteGraph、\CycleGraph、\PathGraph)、使用 titlesec 设置的样式化章节标题、fancyhdr 页眉,以及 hyperref + cleveref 导航。适合将手写数学/科学笔记转换为精美 PDF。包含图论自定义命令(\V、\E、\deg、\chr)。数学笔记转换配置文件的精美模式会使用此模板。
  • thesis.tex — 学位论文/毕业论文(book 类),包含标题页、声明、摘要、致谢、目录、插图目录/表格目录、章节、附录和参考文献。前置部分使用罗马数字编号,正文部分使用阿拉伯数字编号。包含定理环境。
  • academic-cv.tex — 多页学术简历,包含出版物(期刊/会议/预印本部分)、资助项目与经费、教学、指导(在读/已毕业学生)、奖项、专业服务和受邀演讲。包含 ORCID 和 Google Scholar 链接。
  • book.tex — 完整图书(book 类),包含半标题页、标题页、版权页、献词、序言、致谢、目录、插图目录/表格目录、篇、章节、附录、参考文献和索引。包含自定义章节标题、题词、fancyhdr 和 microtype。
  • poster.tex — 会议海报(tikzposter 类,A0 纵向),采用双栏布局,包含二维码、5 种配色方案、tikzfigure 图表、表格和高亮彩色框。包含以注释形式提供的 #BetterPoster 布局变体(中央展示区 + 侧栏)。纵向版式适用于大多数会议。会议尺寸预设请参见海报设计指南。
  • poster-landscape.tex — 横向会议海报(tikzposter 类,A0 横向),采用三栏(30/40/30)布局,包含二维码和科技紫配色方案。适用于计算机科学/机器学习会议(NeurIPS、ICML、CVPR、ICLR)。包含以注释形式提供的 \geometry{} 预设,适用于 CVPR/NeurIPS 自定义尺寸。
  • cheatsheet.tex — 通用速查卡(extarticle 类,A4 横向,基础字号 7pt),采用 multicols 三栏布局、tcolorbox 彩色分节框和紧凑间距。适用于命令参考、概念摘要和快速参考指南。支持正反面打印。
  • cheatsheet-exam.tex — 考试公式表(extarticle 类,A4 纵向,基础字号 6pt),采用双栏布局,内容密度最高,并适合黑白打印机打印。适用于大学考试中允许携带的公式表,包含公式、定理和定义。针对单面打印进行了优化。
  • cheatsheet-code.tex — 编程速查卡(extarticle 类,A4 横向,基础字号 7pt),采用四栏布局、minted 语法高亮和等宽字体强调。适用于语言语法、API 参考、CLI 命令和键盘快捷键。
  • letter.tex — 正式商务信函,包含彩色信头栏、TikZ 标志占位符、公司信息、收件人信息栏、日期、主题行和签名。呈现专业的企业风格。
  • exam.tex — 考试/测验(exam 类),包含评分表、多种题型(单选题、判断题、填空题、配对题、简答题、论述题)、分值,以及通过 \printanswers 切换答案显示。
  • report.tex — 商务报告,包含目录、页眉/页脚、数据表格、柱状图(pgfplots)、流程图(TikZ)和建议
  • cover-letter.tex — 专业求职信,包含寄件人/收件人信息栏
  • invoice.tex — 发票,包含公司抬头、明细表、小计/税额/总计
  • academic-paper.tex — 研究论文,包含摘要、章节、参考文献和插图。包含用于 BibTeX 引用的示例 .bib 文件(references.bib)。
  • examples/ieee-twocolumn-sample.tex — IEEE Transactions/期刊示例,使用 \documentclass[journal,10pt]{IEEEtran},包含摘要、关键词、单栏插图、单栏表格、通栏表格和数字编号的参考文献。请与 references/ieee-journal-twocolumn-guide.md 配合使用。PNG 预览:examples/ieee-twocolumn.png、examples/ieee-twocolumn-p1.png、examples/ieee-twocolumn-p2.png。
  • presentation.tex — Beamer 演示文稿,包含标题页、内容页和分栏
  • fillable-form.tex — 可填写 PDF 表单(article 类),通过 hyperref 表单字段提供文本输入框、复选框、单选按钮、下拉菜单和按钮。使用 tabularx 实现双栏布局。包含自定义辅助命令 \FormField、\FormCheck、\FormDropdown。完整表单功能需要 Adobe Reader 支持(浏览器中的 PDF 查看器对表单功能的支持有限)。
  • conditional-document.tex — 可配置文档(article 类),使用 etoolbox 开关系统控制目录、附录、水印、草稿模式、保密标记和摘要的显示/隐藏。通过 \providecommand 设置模板变量(标题、作者、机构、版本)。提供三种视觉配置(企业、学术、极简)。支持通过命令行传递变量,以用于 CI/CD。
  • mail-merge-letter.tex — 邮件合并信函模板,包含供 scripts/mail_merge.py 使用的 {{variable}} 占位符。包含公司品牌信头、收件人地址栏,以及基于数据个性化的正文。可配合 CSV/JSON 数据源使用。
  • resume.tex — 旧版简历模板(包含照片区域和表格,不针对 ATS 优化) 用法:
cp <skill_path>/assets/templates/resume-classic-ats.tex ./outputs/my_resume.tex
# Edit content, then compile
bash <skill_path>/scripts/compile_latex.sh ./outputs/my_resume.tex --preview --preview-dir ./outputs

文档类型选择

用户请求模板文档类
简历、CV(兼容 ATS)resume-classic-ats.texarticle
简历(现代风格)resume-modern-professional.texarticle
简历(资深人士/高管)resume-executive.texarticle
简历(技术/工程)resume-technical.texarticle
简历(应届毕业生)resume-entry-level.texarticle
作业、课题、习题集homework.texarticle
实验报告、实验记录lab-report.texarticle
讲义、数学笔记(精美版)lecture-notes.texscrartcl
论文、学位论文thesis.texbook
学术 CV(出版物、资助项目)academic-cv.texarticle
报告、分析report.texarticle
求职信cover-letter.texarticle
发票invoice.texarticle
学术论文academic-paper.tex + references.bibarticle
IEEE 期刊、IEEE Transactions、IEEE 双栏论文examples/ieee-twocolumn-sample.tex + ieee-journal-twocolumn-guide.mdIEEEtran
书籍book.texbook
科学海报(纵向)poster.textikzposter
科学海报(横向)poster-landscape.textikzposter
速查表、参考卡cheatsheet.texextarticle
考试公式表、备忘单cheatsheet-exam.texextarticle
编程参考卡cheatsheet-code.texextarticle
正式商务信函letter.texarticle
考试、测验、测试exam.texexam
幻灯片、演示文稿presentation.texbeamer
可填写 PDF 表单fillable-form.texarticle
条件式/可配置文档conditional-document.texarticle
邮件合并、批量信函mail-merge-letter.tex + scripts/mail_merge.pyarticle
版本差异(latexdiff)使用 scripts/latex_diff.sh + 参阅 interactive-features.md各不相同
将 PDF 转换为 LaTeX选择配置文件 + 参阅 pdf-conversion.md各不相同
转换格式使用 scripts/convert_document.sh + 参阅 format-conversion.md各不相同
从 CSV/JSON 进行邮件合并使用 scripts/mail_merge.py + 参阅 interactive-features.md各不相同

LaTeX 关键模式

特殊字符转义

始终转义:% → \%、$ → \$、& → \&、# → \#、_ → \_

文本模式中的尖括号: 在 T1 编码下,< 和 > 在 LaTeX 文本模式中无效。它们会显示为倒置问号(¡ 或 ¿)。务必使用数学模式或文本命令:

  • <5% → $<$5\% 或 \textless 5\%
  • >50 → $>$50 或 \textgreater 50
  • <$300 → $<$\$300
  • >= → $\geq$、<= → $\leq$

这是生成的 LaTeX 中最常见的静默错误之一——文档可以无错误地编译,但 PDF 中会显示乱码。

日期范围使用 en dash:2019--2025(两个连字符)。

标准导言区
\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{hyperref}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{tabularx}
\usepackage{colortbl}
\usepackage{enumitem}
\usepackage{titlesec}
代码模式(按需加载)

如需可直接使用的 LaTeX 代码片段(表格、图表、流程图、参考文献、浮水印、横向页面、多语言、图片、Mermaid 图表、matplotlib 图表、CSV 表格、AI 图片、可填写表单、条件式内容、邮件合并、版本差异),请阅读 references/code-patterns.md。

报告中的视觉元素

创建报告时,请使用用户在第 4 步中选择的增强元素。视觉元素工具(图表、流程图、AI 图片、表格、时间线)和尺寸指南的速查表,请参阅 references/advanced-features.md。使用 \begin{figure}[H](来自 float 宏包)防止图形浮动。TikZ 示意图的尺寸设为 width=0.8\textwidth 或更小。

参考指南(按需加载)

如果不确定 LaTeX 模式、编译问题或文档质量,请查阅此表并加载相关文件。

主题文件阅读时机
长文档最佳实践long-form-best-practices.md5 页及以上的文档必须阅读:9 种反模式、报告前言、内容生成检查清单
代码模式(LaTeX 代码片段)code-patterns.md可直接使用的 LaTeX 代码:表格、图表、流程图、参考文献、浮水印、横向页面、多语言、图片、表单、邮件合并、差异对比
脚本和工具参考script-tools.mdPDF 实用工具(加密、合并、优化、提取)、LaTeX 质量工具(lint、字数统计、分析)、编译自动修复、参考文献、图表
参考文献/引用bibliography-guide.mdBibTeX/biblatex、引用样式、.bib 格式
高级功能和视觉元素advanced-features.md浮水印、横向页面、多语言、代码、算法、tcolorbox、siunitx、高级图表、AI 图片、视觉元素参考表
Mermaid 图表mermaid-diagrams.md流程图、时序图、类图、ER 图、甘特图、饼图、思维导图
Python 图表(matplotlib)python-charts.md柱状图、折线图、散点图、饼图、热力图、箱线图、直方图、面积图、雷达图
格式转换(Pandoc)format-conversion.mdMarkdown/DOCX/HTML 与 LaTeX 之间的转换
表格和图片tables-and-images.md彩色行、多行/多列、booktabs、长表格、图片、TikZ
图表和曲线图(pgfplots)charts-and-graphs.mdpgfplots 中的折线图、柱状图、散点图、饼图
IEEE 期刊双栏排版ieee-journal-twocolumn-guide.mdIEEEtran 期刊版式、浮动体规则、XeLaTeX 与 pdfLaTeX、参考文献、Markdown 到 IEEE 的工作流、examples/ieee-twocolumn*.png 中的示例 PNG
LaTeX 宏包packages.md常用宏包参考
海报设计指南poster-design-guide.md会议尺寸预设、排版、配色方案、布局原型、内容指南
简历 ATS 指南resume-ats-guide.mdATS 规则、LaTeX 易错点、关键词
PDF 到 LaTeX 流程pdf-conversion.md完整转换流程、缩放策略、工作 Agent、验证
交互功能interactive-features.md可填写 PDF 表单、条件内容、从 CSV/JSON 邮件合并、latexdiff 版本跟踪
速查表设计cheatsheet-guide.md模板选择、排版、密度优化、PDF 到速查表流程
PDF 到速查表的提示词pdf-extraction-prompts.md用于提取阶段的大模型提示词:结构分析、特定主题提取、压缩、格式整理
视觉宏包(TikZ)visual-packages.md24 个已安装的 TikZ/可视化宏包及可运行示例
Graphviz 和 PlantUMLgraphviz-plantuml.md.dot 转 PDF/PNG、.puml 转 PDF/PNG、LaTeX 集成
调试和错误debugging-guide.md阅读 LaTeX 错误、20 种常见错误、.log 分析、静默失败
无障碍和 PDF/Aaccessibility-guide.md论文用 PDF/A、屏幕阅读器用 PDF/UA、带标签的 PDF、替代文本
Beamer 演示文稿beamer-guide.md主题、叠加/动画、代码幻灯片、讲义、演讲者备注
字体选择font-guide.md字体系列、fontspec、数学字体、fontawesome5、microtype、CJK
协作和 CI/CDcollaboration-guide.mdLaTeX 的 Git、GitHub Actions、Docker、多作者工作流
PDF 操作pdf-operations.md表单填写(可填写和不可填写)、文本/表格提取(pdfplumber)、OCR(pytesseract)、程序化创建 PDF(reportlab)、添加浮水印、旋转/裁剪、元数据、JavaScript(pdf-lib、pdfjs-dist)、批量处理、性能提示

关键提示和常见错误

编译与输出
  • 从包含 .tex 文件的目录运行编译脚本,或使用绝对路径
  • 将输出 .tex 文件放在 ./outputs/ 中,方便用户查看
  • 编译后,阅读 PNG 预览文件,向用户展示文档效果
  • PNG 预览需要 poppler-utils(脚本会自动安装)
软件包依赖错误(必须阅读)

这些错误会导致 Undefined control sequence——务必包含所需的软件包:

如果使用……必须包含未包含时的错误
\rowcolor{}\usepackage{colortbl}未定义的控制序列 \rowcolor
在 .bib 中与 natbib 一起使用 \url{}\usepackage{url}未定义的控制序列 \url
\checkmark\usepackage{amssymb}未定义的控制序列 \checkmark
\begin{figure}[H]\usepackage{float}未知的浮动体选项 H
\rowcolors{}{}{}\usepackage[table]{xcolor} 或 \usepackage{colortbl}未定义的控制序列
hyperref 软件包
  • 对于普通文档,使用 hyperref 没问题(大多数模板都会使用它)。
  • 仅在带有定理环境的 PDF 转 LaTeX 文档中避免使用,因为它会导致 \set@color 错误。
编译环境
  • 如果尚未安装 texlive,编译脚本会自动安装。安装 texlive 前,不要并行运行多个编译命令——它们都会尝试同时安装,从而导致 dpkg 锁竞争。请先安装一次,或按顺序运行编译。
  • 编译脚本使用 -interaction=nonstopmode(而非 -halt-on-error),确保即使存在警告也能生成 PDF。这是有意为之——许多文档首次编译时会产生警告,在后续编译中会消除。
  • latexmk 和 texfot 已包含在 TeX Live 中。设置脚本(setup.sh)会验证它们是否可用。传入 --use-latexmk 时会使用 latexmk;texfot 则会在可用时自动使用(默认详细程度模式)。
  • 技能根目录中包含 .chktexrc 配置文件,用于抑制检查生成的 LaTeX 文档时常见的误报。latex_lint.sh 脚本会自动使用该文件。

长篇文档反模式

对于 5 页及以上的文档(报告、论文、书籍),请阅读 references/long-form-best-practices.md,了解 9 个关键反模式、报告导言区的最佳实践,以及内容生成检查清单。生成任何长篇文档前,必须阅读这些材料。

评论

支持 Markdown