|
摘要
只需一个 Python 脚本,3 秒完成:从任意 md.md 文件一键生成 A4 打印完美适配的 PDF,支持中文、表格、代码块防截断,自动添加 带分隔线的页眉页脚 + 动态页码,无需手动调格式、写 HTML、调 CSS。 适合技术文档、教程、报告、培训资料,直接打印分发,专业感拉满! 零依赖配置,运行即得,告别 Word 排版痛苦,解放生产力!
一、功能概览
本脚本实现 从 Markdown 文件一键生成专业级 A4 打印友好 PDF,具备以下完整功能:
| 功能 | 实现方式 |
|---|
| 中文支持 | 使用 Microsoft YaHei + SimSun 字体 | | 表格美观 | 边框、表头灰底、自动分页 | | 代码块防截断 | page-break-inside: avoid | | 页眉(带下划线) | 自定义 header.html | | 页脚(带上划线 + 动态页码) | 自定义 footer.html + JavaScript | | 自动生成临时文件 | tempfile.mkdtemp() | | 一键运行 | 无需手动创建 HTML 文件 |
二、使用方法(3步搞定)
1. 准备文件结构
项目文件夹/
├── md.md ← 你的 Markdown 文档 ├── md_to_a4_pdf.py ← 本脚本
2. 安装依赖
pip install markdown pdfkit
3. 安装 wkhtmltopdf
安装后 修改脚本第 15 行路径:
wkhtmltopdf_path = r"C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe"
4. 运行脚本
三、运行效果
四、源代码
# -*- coding: utf-8 -*-
"""
A4 打印友好版 PDF 一键生成脚本(完整版)
功能:
1. 从 md.md 自动生成 PDF
2. 支持中文字体、表格、代码块
3. 带页眉(标题 + 下划线)、页脚(页码 + 上划线)
4. 自动适应 A4 页面,不裁切尾部
5. 自动生成 header.html 和 footer.html
"""
import os
import markdown
import pdfkit
import tempfile
# -------------------------------
# 配置参数(请修改这里)
# -------------------------------
source_md_file = "md.md" # 源 Markdown 文件
output_pdf_file = "output_a4.pdf" # 输出 PDF 文件名
wkhtmltopdf_path = r"C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe" # 修改为你的路径
# 页眉页脚内容
header_title = "Hive的安装和配置" # 页眉标题
footer_text = "第 |