mcpField
M
md-to-pdf

md-to-pdf

github.com/steveclarke文档处理36221 次安装今天更新
代码仓库

关于 md-to-pdf

md-to-pdf 是将 Markdown 文件转换为 PDF 的技能,面向需要生成可打印或分享文档的人。它通过 crossnote 和 Chrome/Puppeteer 渲染图表、数学公式及代码,并加入页码。

主要功能

  1. 01转换 Markdown 文件为 PDF
  2. 02渲染 Mermaid 图表
  3. 03渲染 KaTeX 数学公式
  4. 04GitHub 风格代码高亮
  5. 05自动添加页码

适用场景

  1. 01将 README 转为 PDF
  2. 02生成用于分享的规格文档
  3. 03批量转换 docs 中的 Markdown 文件

安装

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

$npx skills add https://github.com/steveclarke/dotfiles --skill md-to-pdf

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

包含的文件

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

.gitignore
package.json
scripts/
md-to-pdf
md-to-pdf.cjs

详细介绍

Markdown 转 PDF

使用 crossnote(与 mcp-printer 使用相同的引擎)将 Markdown 文件转换为排版精美的 PDF。

功能

  • Mermaid 图表 — 流程图、时序图等
  • 数学公式 — KaTeX 渲染
  • 语法高亮 — GitHub 主题
  • 页码 — 页脚自动显示第 X / Y 页
  • GitHub-light 主题 — 简洁且针对打印优化的样式

用法

~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs input.md              # Creates input.pdf
~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs input.md output.pdf   # Custom output name

选项

标志描述
-o FILE指定输出文件名

要求

  • Chrome 或 Chromium — 在 macOS/Linux 上自动检测
  • Node.js — 用于运行脚本
  • 依赖项 — 在技能目录中运行一次 npm install

工作原理

  1. 使用 crossnote(Markdown Preview Enhanced 引擎)
  2. 将页码配置注入 front-matter
  3. 通过 Chrome/Puppeteer 渲染
  4. 开箱即支持 Mermaid、数学公式和代码高亮

示例

# Quick conversion
~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs README.md

# Spec document for sharing
~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs spec.md spec-v2.pdf

# Multiple files
for f in docs/*.md; do ~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs "$f"; done

Mermaid 示例

在 Markdown 中添加:

```mermaid
graph TD
    A[Start] --> B{Decision}
    B -->|Yes| C[Do something]
    B -->|No| D[Do something else]
```

图表会在 PDF 中渲染为图形。

打印

如果用户想打印 PDF,请在生成后使用 /print 技能。

工作流决策:

用户意图操作
“转换为 PDF”保留 PDF
“打印这份 Markdown”生成 PDF → 使用 /print 打印 → 删除 PDF
“创建 PDF 并打印”保留 PDF,同时打印

如果目标是打印(而不是 PDF 文件本身),请在打印后删除 PDF:

# Generate, print, cleanup
~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs doc.md
~/.claude/skills/print/scripts/print doc.pdf
rm doc.pdf

/print 技能会自动处理双面打印和黑白打印的默认设置。

别名(可选)

添加到 shell 配置文件中:

alias md-to-pdf='~/.claude/skills/md-to-pdf/scripts/md-to-pdf.cjs'

评论

支持 Markdown