目录
2.3、VS Code + Markdown Preview Enhanced
1、前言
最近在整理整套的《Java体系》相关的电子书籍,面试题集,基础知识,进阶知识以及AI相关的学习手册。整理过程中发现,需要进行Markdown文件转PDF文件。于是乎顺便水一篇文章好了。
2、主流工具对比
网上其实也有了很多现成可用的工具。这里顺便整理了一下。但是大部分都存在一些通病:
当然这里仅限于个人观点,可能找的工具不全;也可能自己不知道有这些好用的工具。
- 无法批量生成文章,很多只能一篇一篇传,就算可以批量上传,也不能批量下载
- 生成的PDF都带有广告水印,有洁癖的人果断选择不要
- 大小限制
2.1、Pandoc + LaTeX
- 核心能力:支持多格式互转(Markdown、PDF、HTML等),通过 LaTeX 模板实现高度自定义排版(如页眉页脚、数学公式)。
- 中文支持:需搭配 XeLaTeX 引擎和 TinyTeX 等轻量级 TeX 发行版,并配置中文字体(如 SimSun)。
- 适用场景:学术文档、批量转换(需结合 Python 脚本)。
- 示例命令:
pandoc input.md -o output.pdf --pdf-engine=xelatex -V mainfont="SimSun"
但是也存在一定的局限性,无法提供友好的页眉页脚生成方式,需要编写复杂的LaTeX模板实现页眉页脚。WTF?我就转换个文档,还得多学一门语言?
2.2、Typora
这款工具在1.0版本版本以前是免费使用的,现在是属于买不起系列了。起初给人的感觉确实是挺惊艳的一款产品,收费后,用户量也下降了好多。
- 核心能力:所见即所得编辑,一键导出 PDF,支持基础页眉页脚(静态文本)。
- 局限:高级排版需付费版本,无法通过命令行批量处理。
- 适用场景:个人用户快速生成简单 PDF。

2.3、VS Code + Markdown Preview Enhanced
- 核心能力:通过浏览器打印功能生成 PDF,支持自定义 CSS 调整打印样式(如页边距、分页控制)。
- 扩展性:需熟悉 CSS 打印媒体查询语法,复杂排版需手动调试。
- 示例代码:
@page { @top-center { content: "页眉内容"; } }
局限性是需要一定的CSS基础,对于复杂排版需要手动调试。更多的是面对开发者使用。
2.4、在线转换工具
当然除了上述一些以外,还有一些在线转换工具。如易转换,Dillinger / StackEdit 等。在线网站转换的普遍会有几个通病,比如大小限制,水印,注册会员,关注公众号等等。
3、自己撸一个
找了一圈,发现大多数都不满足自己的使用需求。于是乎,突发奇想,要不自己生一个?生一个吧。