Typora导出PDF完全指南:从设置到排版优化一站式教程
为什么导出PDF会“丢失”格式
很多用户反馈:Typora里看着很好看,导出PDF后字体变了、行距乱了、代码块没颜色、表格被截断。这是所见即所得的局限性——屏幕上CSS和工作PDF渲染引擎不同。
导出PDF实际上是用Chromium引擎渲染再打印,本质是把HTML转PDF。所以让Typora里和PDF里都漂亮,需要配置 打印CSS 和 导出选项。
Typora导出PDF的基本流程
- 完成Markdown文档
文件 → 导出 → PDF- 选择保存位置
- 等待几秒到几十秒(取决于图片数量)
- 完成
但这只是「裸导」,想要专业效果还需要做以下配置。
关键导出设置详解
打开 文件 → 偏好设置 → 导出:
通用设置
| 设置项 | 推荐值 | 说明 |
|---|---|---|
| 页面大小 | A4(默认) | 美式Letter适合美国用户 |
| 页面方向 | 纵向 | 横屏选横向 |
| 缩放 | 100% | 视觉无损 |
| 边距 | 默认或自定义 | 论文常用上3cm/下2cm/左右2.5cm |
| 装订边 | 0(一般不需要) | 打印小册子用 |
高清图片选项
| 选项 | 效果 | 文件大小 |
|---|---|---|
| 不缩放 | 等像素清晰 | 最大 |
| 2倍清晰度 | Retina兼容 | 较小 |
| 3倍清晰度 | 4K屏幕无损 | 中等 |
| 自动缩放 | 1.3倍 | 最小 |
字体嵌入
| 字体策略 | 兼容性 | 文件大小 |
|---|---|---|
| 嵌入完整字体 | 全设备一致 | +500KB-1MB/字 |
| 嵌入子集 | 主流设备可用 | +50-200KB/字 |
| 不嵌入 | 依赖系统字体 | 0 |
论文/简历推荐嵌入完整字体,确保审稿人在任何系统打开都一致。
自定义打印CSS
这是专业PDF导出的灵魂。打开 文件 → 偏好设置 → 外观 → 打开主题文件夹,复制一个主题文件夹,例如 github 改名为 print-pdf,编辑 github.css(实际是你的 print-pdf.css)添加打印规则:
@media print {
/* 页面边距 */
@page {
margin: 2.5cm 2cm;
size: A4;
}
/* 标题不另起页 */
h1, h2, h3, h4 {
page-break-after: avoid;
page-break-before: auto;
}
/* 表格不跨页 */
table {
page-break-inside: avoid;
}
/* 代码块不拆 */
pre, code {
page-break-inside: avoid;
white-space: pre-wrap;
word-wrap: break-word;
}
/* 隐藏屏幕元素 */
.md-toc, .md-sidebar-toc, .md-sidebar {
display: none;
}
/* 链接URL写在注释里 */
a[href^="http"]:after {
content: " (" attr(href) ")";
font-size: 0.8em;
color: #666;
}
}
也可以把上述样式保存为独立的CSS文件,然后在PDF导出时手动指定。
三大场景优化配置
场景一:学术论文
要求:
- 标题居中、中文摘要、英文摘要、关键词
- 正文宋体小四、行距1.5倍
- 图表不拆页、引用规范
@media print {
body {
font-family: "SimSun", "宋体", serif;
font-size: 12pt;
line-height: 1.6;
}
/* 段前段后 */
p, h1, h2, h3 {
margin: 0.6em 0;
text-indent: 2em;
}
/* 居中 */
.abstract h2, .title {
text-align: center;
text-indent: 0;
}
/* 图表全局不拆 */
figure, table, pre {
page-break-inside: avoid;
}
/* 图表标题 */
figcaption, .caption {
text-align: center;
font-weight: bold;
}
}
场景二:简历/简历生成
要求:
- 一页纸内容、不浪费空间
- 重点突出、模块清晰
@media print {
@page {
size: A4;
margin: 1.5cm 1.8cm;
}
h1 {
font-size: 20pt;
margin: 0;
text-align: center;
}
h2 {
font-size: 13pt;
border-bottom: 1pt solid #333;
padding-bottom: 0.2em;
margin-top: 0.8em;
}
/* 简历紧凑 */
ul, ol {
margin: 0.3em 0;
padding-left: 1.2em;
}
li {
margin: 0.1em 0;
}
}
场景三:长文/电子书
要求:
- 多级标题清晰
- 自动页眉页脚
- 横向图表单独成页
/* 页码 */
@page {
@bottom-right {
content: counter(page) " / " counter(pages);
}
}
/* 页眉 */
@page :first {
@top-right {
content: "文章标题";
}
}
h1 { font-size: 22pt; }
h2 { font-size: 18pt; page-break-before: always; }
h3 { font-size: 14pt; }
/* 横向页 */
.landscape {
page: landscape-page;
}
@page landscape-page {
size: A4 landscape;
}
图片处理优化
图片模糊问题
PDF导出后的图片看起来糊:
- 检查
导出 → 缩放是否设为「不缩放」 - 在Markdown里用
时,path用本地高清图,不要用云端URL - 高清Retina屏幕导出设2-3倍清晰度
图片溢出页面
横向图或长截图:
- 改用
{:width=100%} - 或者把图片旋转90度
- 或者在图片前后加
\newpage让它独享一页
图片位置
- 原
:文本流中,文字环绕 - 加
.center类(如{.center}):居中显示 - 浮在右边用
float: rightCSS
解决常见问题
中文乱码
原因:PDF里没有嵌入对应中文字体 解决:
- 设为「嵌入完整字体」
- 或者在CSS显式指定字体:
font-family: "SimSun", "Heiti SC"
代码块没颜色
原因:导出PDF时未带主题色 解决:
- 主题中启用 Code Highlighting 颜色
- 导出前设
Markdown扩展 → 代码块 → 启用语法高亮 - 必要时手动添加类:
pre code.hljs { /* 高亮背景 */ }
表格超出页面
原因:表格列太多 解决:
table {
font-size: 9pt;
}
table th, table td {
padding: 0.2em 0.5em;
}
链接变成蓝下划线
PDF中蓝色下划线视觉上不优雅:
a {
color: inherit;
text-decoration: none;
}
/* 也可显示在脚注 */
a[href^="http"]:after {
content: "(" attr(href) ")";
font-size: 0.7em;
color: #888;
}
多文档合并PDF
用系统打印另存
如果需要把多个文章合并成一个PDF:
- 分别导出每个为PDF
- 用 PDF 工具(Adobe Acrobat、PDFsam、Foxit)合并
用Typora直接做
Typora 1.7+ 在 文件 → 导出 时可以选择多个打开的文件一次性导出合并。
添加页眉、页脚、水印
页眉页脚
Typora 1.6.x 自带:
Preferences → PDF → Header contentFooter content- 变量支持:
${title}${author}${date}${pageNum}${totalPages}
水印
CSS方式:
@media print {
body::before {
content: "机密";
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) rotate(-30deg);
font-size: 60pt;
color: rgba(0, 0, 0, 0.1);
z-index: -1;
}
}
自动归档
导出选项 Append PDF Version 让Typera自动加版本信息到PDF元数据。
减小PDF文件大小
| 方法 | 压缩比 | 画质损失 |
|---|---|---|
| 嵌入字体子集 | -30% | 无 |
| 降低图片分辨率 | -50-70% | 略微 |
| 移除隐藏内容 | -10-20% | 无 |
| 用pngquant缩图 | -40-60% | 几乎无 |
| 输出灰度 | -10% | 仅黑白文字 |
在Typora中:
Markdown扩展 → 图片缩放给大图加自动压缩- 导出时
缩放 → 1.0(不要加倍)
与其他工具配合
导出PDF + Pandoc
有时候需要Pandoc的强大模板:
pandoc input.md -o output.pdf --pdf-engine=xelatex -V mainfont="SimSun" --toc --toc-depth=2
Typora优势是所见即所得,Pandoc优势是论文级控制。组合使用:
- Typora快速写
- Pandoc出专业版本
导出PDF + Word
先用Typora导出HTML,再用Word打开HTML另存为PDF。
# 命令行转HTML再转PDF
typocli --input input.md --output output.html
word-html-to-pdf output.html
导出PDF + GitBook
GitBook需要Markdown源文件,PDF导出GitBook自动处理,不依赖Typora。
实战工作流
个人博客归档
- Typora写好文章
- 嵌入所有图片本地化
- 导出PDF前用 print CSS 主题
- 导出高质量PDF存档
- 上传到NAS备份
技术分享讲稿
- Typora写带代码块的稿子
- 启用代码块语法高亮
- 导出PDF
- 配合PDF阅读器演示(演示模式)
论文最终稿
- Typora写初稿
- 中文学术 CSS 主题
- 嵌入完整字体
- 导出PDF
- 查重系统提交
总结
Typora导出的PDF要专业可控,关键是:
- 配置 print CSS 主题——核心动作
- 嵌入字体——保证一致
- 合理页面尺寸——A4 是国内通用
- 图片优化——影响最大
- 针对场景调节——论文/简历/电子书各有侧重
掌握CSS打印样式后,Typora能输出接近LaTeX专业度的PDF,同时保留Markdown的便捷写作体验。
这篇教程有帮助吗?立即下载Typora 中文下载站试试吧!
全平台支持 · 安全无毒 · 官方最新版