1. 从豆包到Word,这条链路到底卡在哪
用豆包生成教案或者数学题,体验其实挺顺的——你把需求描述清楚,它哗哗给你输出一大段结构完整的内容,标题、正文、公式、表格都有。但问题往往出在下一步:你想把这段内容拿到Word里继续改,结果发现复制粘贴过去之后,排版全乱了。
公式变成了乱码或者图片,标题层级全丢了,表格挤成一团,原本清晰的Markdown结构在Word里变成了一锅粥。尤其是数学题里的公式,豆包输出的是LaTeX格式,直接粘到Word里就是一堆反斜杠和花括号,根本没法看。
这个问题的本质是什么?是格式转换链路的断裂。豆包输出的内容本质上是Markdown格式(或者至少是类Markdown的结构化文本),而Word用的是完全不同的排版体系。两者之间需要一个靠谱的“翻译层”,把Markdown的结构化标记、LaTeX的数学公式,准确地转换成Word能识别的格式。
我试过很多种方案,踩了不少坑,最后总结出一套比较稳定的工作流。这篇文章就把整条链路拆开讲清楚:从豆包输出内容的预处理,到Markdown格式的规范化,再到LaTeX公式的处理,最后用Pandoc完成转换,生成一个可以继续编辑的Word文档。整套流程不需要你懂编程,但需要你理解每一步在干什么,这样才能在出问题的时候知道去哪里排查。
适合谁看?如果你是用豆包辅助备课的老师、做教研的资料整理者、或者经常需要把AI生成内容转成正式文档的人,这套方法可以直接抄作业。如果你只是想偶尔转一次,也有更简单的替代方案,后面会一并说到。
2. 整条转换链路的设计思路
2.1 为什么不能直接复制粘贴
很多人第一反应是:豆包生成的内容,我直接全选复制,粘贴到Word里不就行了?
短期来看,确实能凑合。但问题在于,豆包网页版输出的内容带有自己的HTML样式,复制到Word里会带入一堆冗余的格式信息。具体表现就是:字体忽大忽小、行间距不一致、代码块变成灰色底纹但缩进全乱、公式直接变成纯文本。
更关键的是,直接粘贴丢失了结构语义。Word不知道哪个是一级标题、哪个是二级标题,它只看到一堆不同字号的文字。你后续想用Word的“导航窗格”跳转章节,或者自动生成目录,全都做不到。
所以核心思路是:先把豆包的内容转成干净的Markdown,再用Pandoc把Markdown转成Word。中间多了一步,但这一步恰恰是保证质量的关键。
2.2 为什么选Pandoc作为转换引擎
Markdown转Word的工具不少,有在线网站、有Word插件、有Python库。我最终选Pandoc,原因有三个:
第一,Pandoc对LaTeX公式的支持是最好的。它能把Markdown里的行内公式$...$和块级公式$$...$$直接转成Word原生的公式对象(OMML格式),这意味着你在Word里双击公式还能继续编辑,不是一张死图片。
第二,Pandoc支持自定义Word模板。你可以做一个符合学校或机构格式要求的模板文件(比如标题用几号字、正文用什么字体、页边距多少),转换的时候直接套用,出来的文档直接就是合规的。
第三,Pandoc是命令行工具,可以批量化。如果你一次要转十几份教案,写个脚本批量处理,比一个个手动操作快得多。
当然,Pandoc不是没有缺点。它的学习曲线比在线工具陡一些,需要你装软件、敲命令。但一旦跑通一次,后面就是重复劳动,边际成本极低。
2.3 整体流程拆解
把整条链路拆开,大概是这么几步:
- 豆包生成内容:在豆包网页版或客户端里生成教案/数学题,输出格式尽量选Markdown(如果豆包支持的话),或者手动整理成Markdown。
- 内容预处理:检查公式格式、标题层级、表格结构,把豆包可能输出的“伪Markdown”修正为标准Markdown。
- 保存为.md文件:用任意文本编辑器保存,注意编码用UTF-8。
- 准备Word模板:做一个符合格式要求的reference.docx,定义好样式。
- Pandoc转换:一行命令完成转换,生成可编辑的Word文档。
- 后期微调:在Word里检查公式、表格、页码等细节,做最后调整。
每一步都有坑,下面逐个拆。
3. 豆包输出内容的预处理与格式规范化
3.1 豆包输出的格式特点与常见问题
豆包生成教案或数学题时,输出格式其实不太稳定。有时候它给你标准的Markdown,标题用#,公式用$...$;有时候它用的是自己的富文本格式,复制出来就变样。
我实测下来,豆包网页版输出数学公式时,大概率会用LaTeX语法,但包裹方式不统一。有的用$...$,有的用\(...\),还有的直接把公式放在代码块里。这三种写法在Pandoc里的处理方式完全不同,需要统一。
另一个常见问题是标题层级混乱。豆包可能把“一、教学目标”输出为**一、教学目标**(加粗),而不是## 教学目标。加粗在Markdown里只是强调,不是标题,Pandoc转换后Word不会把它识别为标题样式,导航窗格里看不到。
表格也是重灾区。豆包输出的表格有时候是标准Markdown表格,有时候是用空格对齐的纯文本,还有时候直接给你一段HTML表格代码。标准Markdown表格Pandoc能完美转换,纯文本表格就废了。
3.2 把豆包内容整理成标准Markdown的实操步骤
我的做法是:在豆包里生成内容后,先让它自己输出Markdown格式。你可以在提示词里加一句“请用Markdown格式输出,公式用LaTeX语法,标题用#号表示层级”。这样豆包输出的内容会规范很多。
如果已经生成了内容,来不及重新生成,那就手动整理。具体操作:
第一步,把豆包输出的内容全选复制,粘贴到一个纯文本编辑器里(推荐VS Code、Typora或者Notepad++)。不要用Word,Word会自动加格式。
第二步,检查标题。把所有应该是一级标题的行前面加#,二级标题加##,以此类推。注意#和文字之间要有一个空格,这是Markdown的硬性要求。
第三步,检查公式。行内公式统一改成$公式$,块级公式统一改成$$公式$$。如果豆包用的是\(...\)和\[...\],批量替换一下。
第四步,检查表格。确保表格是标准的Markdown表格格式,即用|分隔列,用---分隔表头和数据。
第五步,检查列表。有序列表用1.,无序列表用-,注意符号和文字之间要有空格。
第六步,保存文件。文件名用英文或拼音,扩展名用.md,编码选UTF-8。这一步很重要,Pandoc对文件名和编码敏感,中文文件名有时候会出问题。
提示:如果你用的是Typora,它可以直接显示Markdown的渲染效果,方便你边改边看。但注意Typora的公式渲染和Pandoc的转换结果可能有细微差异,最终以Word里的效果为准。
3.3 公式格式的统一处理技巧
数学题里的公式是最容易出问题的部分。豆包输出的LaTeX公式,常见的有这么几种写法:
- 行内公式:
\(x^2 + y^2 = z^2\)或$x^2 + y^2 = z^2$ - 块级公式:
\[x^2 + y^2 = z^2\]或$$x^2 + y^2 = z^2$$ - 多行公式:用
align环境或者cases环境
Pandoc对$...$和$$...$$的支持最好,所以我建议统一成这种写法。批量替换的方法:在VS Code里按Ctrl+H,把\(替换成$,把\)替换成$,把\[替换成$$,把\]替换成$$。注意替换顺序,先替换块级的,再替换行内的,避免误伤。
还有一个坑:豆包有时候会在公式里用中文标点,比如逗号、句号。LaTeX公式里必须用英文标点,否则Pandoc会报错。这个需要手动检查,没有特别好的批量替换方法,因为中文标点在正文里是正常的,不能全局替换。
另外,如果公式里有%符号,LaTeX里%是注释符,需要转义成\%。这个也容易漏。
3.4 标题层级和列表的规范化
标题层级的问题前面说了,核心就是确保用#而不是加粗来表示标题。但还有一个细节:标题层级不要跳级。比如从#直接跳到###,中间没有##,Pandoc转换后Word的样式会乱。正确的做法是逐级递增。
列表的规范化相对简单,但要注意嵌套列表的缩进。Markdown的嵌套列表用两个空格或四个空格缩进,Pandoc都能识别,但混用会出问题。建议统一用两个空格。
还有一个容易被忽略的点:列表项和上下段之间要空行。如果列表紧贴着上一段文字,Pandoc有时候会把列表识别为普通段落。空一行最保险。
表格的规范化,重点是确保列数一致。Markdown表格的每一行列数必须相同,否则Pandoc会报错或者输出错乱的表格。如果豆包输出的表格列数不一致,手动补齐。
4. Pandoc安装与Word模板配置
4.1 Pandoc的下载安装与验证
Pandoc的安装很简单,去官网(pandoc.org)下载对应系统的安装包。Windows用户下载.msi文件,双击安装,一路下一步就行。Mac用户可以用Homebrew安装,命令是brew install pandoc。Linux用户用包管理器安装,比如Ubuntu下sudo apt install pandoc。
安装完成后,打开终端(Windows下是PowerShell或CMD),输入pandoc --version,如果能看到版本号,说明安装成功。
注意:Windows下如果提示“pandoc不是内部或外部命令”,说明环境变量没配好。重新安装一次,安装时勾选“Add to PATH”选项。或者手动把Pandoc的安装目录添加到系统环境变量里。
Pandoc的版本建议用最新的稳定版。老版本对LaTeX公式的支持有bug,转换出来的公式可能会丢符号。我目前用的是3.x版本,实测很稳。
4.2 制作符合格式要求的Word模板
Pandoc转换Word时,默认会用一个内置的模板。这个模板的样式很朴素,标题是蓝色的,正文是Calibri字体,不符合国内教案的常见格式要求。所以我们需要自定义一个模板。
制作方法:先用Pandoc生成一个默认的模板文件,命令是:
pandoc --print-default-data-file reference.docx > custom-reference.docx这个命令会把默认模板导出为custom-reference.docx。然后用Word打开这个文件,修改里面的样式。具体改什么:
- 标题1到标题6:设置字体、字号、颜色、行距。教案一般要求标题用黑体,一级标题三号字,二级标题四号字,以此类推。
- 正文:设置字体(宋体或仿宋)、字号(小四或五号)、行距(1.5倍或固定值)、首行缩进(2字符)。
- 表格:设置表格样式,比如网格线、表头底纹、单元格对齐方式。
- 代码块:设置等宽字体(Consolas或Courier New),加灰色底纹。
- 页边距:在“布局”选项卡里设置,教案一般要求上下左右各2.54厘米,或者按学校要求调整。
改完之后保存文件,这个custom-reference.docx就是你的模板。以后每次转换都指定这个模板,出来的Word文档就直接符合格式要求。
提示:修改模板时,不要直接改正文内容,只改样式。Pandoc只读取模板里的样式定义,不读取内容。如果你在模板里写了文字,转换后的文档里也会出现这些文字,那就乱了。
4.3 模板样式的关键参数设置
模板里最关键的几个样式参数,我列一下我常用的配置,你可以根据实际要求调整:
| 样式名称 | 字体 | 字号 | 行距 | 其他 |
|---|---|---|---|---|
| 标题1 | 黑体 | 三号(16pt) | 1.5倍 | 段前段后各12pt |
| 标题2 | 黑体 | 四号(14pt) | 1.5倍 | 段前段后各6pt |
| 标题3 | 黑体 | 小四(12pt) | 1.5倍 | 段前段后各6pt |
| 正文 | 宋体 | 小四(12pt) | 1.5倍 | 首行缩进2字符 |
| 表格文字 | 宋体 | 五号(10.5pt) | 单倍 | 居中对齐 |
| 代码块 | Consolas | 五号(10.5pt) | 单倍 | 灰色底纹 |
这些参数不是死的,你按自己单位的格式要求来。关键是在模板里定义好,而不是转换完再手动调。手动调一次两次还行,多了就是浪费时间。
还有一个细节:Word的样式名称必须是英文的,Pandoc才能识别。比如“标题1”在样式面板里显示为“标题1”,但实际样式名是“Heading 1”。修改的时候注意别改错了。
5. 用Pandoc完成Markdown到Word的转换
5.1 基础转换命令与参数解读
最基础的转换命令长这样:
pandoc input.md -o output.docx --reference-doc=custom-reference.docx拆开看每个部分:
pandoc:调用Pandoc程序。input.md:输入的Markdown文件路径。-o output.docx:指定输出文件为Word格式。--reference-doc=custom-reference.docx:指定自定义模板文件。
如果Markdown文件里有LaTeX公式,Pandoc默认会自动处理,不需要额外加参数。但如果你发现公式转换有问题,可以加--mathml参数,强制用MathML格式输出。不过实测下来,默认的OMML格式在Word里编辑体验更好。
还有一个常用参数是--toc,自动生成目录。教案一般需要目录,加上这个参数,Pandoc会在文档开头插入一个目录。但注意,这个目录是静态的,不会自动更新页码。你需要在Word里右键目录,选择“更新域”来刷新页码。
如果源文件里有中文,建议加--pdf-engine=xelatex参数(虽然输出的是Word不是PDF,但这个参数会影响字体处理)。不过实测下来,Word输出不太需要这个,主要是PDF输出时用。
5.2 公式转换的核心参数与效果验证
公式转换是整条链路里最关键的环节。Pandoc把LaTeX公式转成Word的OMML格式,这个过程大部分时候是靠谱的,但有几个坑:
第一个坑:公式里的中文。LaTeX公式里如果混了中文,比如$速度 = 距离 / 时间$,Pandoc转换后中文可能会变成乱码或者方框。解决办法是在公式里用\text{}包裹中文,比如$\text{速度} = \text{距离} / \text{时间}$。但更好的做法是,公式里尽量只用英文和符号,中文说明放在公式外面。
第二个坑:多行公式的对齐。用align环境写的多行公式,Pandoc转换后可能会丢失对齐。解决办法是用aligned环境代替align,或者在Word里手动调整。
第三个坑:公式编号。LaTeX里用\begin{equation}写的带编号公式,Pandoc转换后编号会丢失。如果你需要公式编号,得在Word里手动加,或者用Word的公式编号功能。
验证公式转换效果的方法:转换完成后,打开Word文档,双击任意一个公式,如果能看到公式编辑器打开,并且公式内容可编辑,说明转换成功。如果双击没反应,或者公式变成了一张图片,说明转换有问题,需要检查源文件的公式格式。
5.3 批量转换的脚本化思路
如果你需要转换多个文件,一个个敲命令太慢。可以写一个简单的脚本批量处理。
Windows下用PowerShell:
Get-ChildItem -Filter *.md | ForEach-Object { pandoc $_.FullName -o ($_.BaseName + ".docx") --reference-doc=custom-reference.docx }Mac或Linux下用Bash:
for f in *.md; do pandoc "$f" -o "${f%.md}.docx" --reference-doc=custom-reference.docx done这两段脚本的逻辑是一样的:遍历当前目录下所有.md文件,逐个用Pandoc转换,输出文件名和源文件名相同,只是扩展名变成.docx。
注意:批量转换前,先确保所有Markdown文件的格式都规范了。如果有一个文件格式有问题,转换可能会中断。建议先拿一个文件测试,跑通了再批量处理。
5.4 转换后的Word文档检查清单
转换完成后,别急着交差,先检查一遍。我一般按这个清单过:
- 标题层级:打开Word的“导航窗格”,看标题结构是否完整,层级是否正确。
- 公式:随机双击几个公式,确认能编辑,符号没丢。
- 表格:检查表格是否完整,列数是否正确,表头是否加粗。
- 列表:检查有序列表的编号是否连续,无序列表的符号是否统一。
- 代码块:检查代码块的字体和底纹是否正常。
- 页码:如果模板里设置了页码,检查页码是否从第一页开始,格式是否正确。
- 目录:如果有目录,右键更新域,检查页码是否准确。
这个清单看起来繁琐,但过一遍也就两三分钟。比起交上去被打回来重做,这点时间花得值。
6. 常见问题排查与避坑经验
6.1 公式转换失败的典型场景与修复
公式转换失败是最常见的问题,表现有好几种:
场景一:公式变成纯文本。Word里看到的是一堆$x^2$这样的字符,没有被渲染成公式。原因通常是Markdown文件里的公式没有被正确识别。检查方法:确认公式前后有$符号,且$和公式内容之间没有空格。另外,如果公式跨行了,Pandoc可能识别不了,需要把公式放在同一行。
场景二:公式里的符号丢失。比如\frac{1}{2}转换后变成了12,分数线没了。这通常是Pandoc版本太老导致的,升级到最新版一般能解决。如果升级后还有问题,尝试用--mathml参数。
场景三:公式变成图片。双击公式没反应,说明它是一张图片而不是可编辑的公式对象。这种情况通常是因为源文件里公式被包裹在代码块里了,Pandoc把代码块里的内容当纯文本处理,没有解析LaTeX。解决办法是把公式从代码块里移出来。
场景四:中文公式乱码。前面说过,公式里混中文容易出问题。解决办法是用\text{}包裹中文,或者把中文移到公式外面。
6.2 标题和表格格式错乱的排查
标题格式错乱的表现是:Word导航窗格里看不到标题,或者标题层级不对。原因通常是Markdown里的标题写法不规范。检查这几点:
#和标题文字之间有没有空格?没有空格的话,Markdown不认。- 标题层级有没有跳级?从
#跳到###会导致样式映射失败。 - 标题是不是用加粗代替的?加粗不是标题,Pandoc不会把它转成Word的标题样式。
表格格式错乱的表现是:表格列数不对、内容错位、表头没加粗。原因通常是Markdown表格的列数不一致。检查方法:数一下每行的|数量,确保所有行的列数相同。另外,表头和数据之间的---分隔行不能少,否则Pandoc不认这是表格。
还有一个隐蔽的坑:表格单元格里的内容有换行。Markdown表格的单元格里不能直接换行,如果需要换行,用<br>标签。但Pandoc对<br>的支持不太稳定,有时候会忽略。更好的做法是避免在表格单元格里换行,把内容精简。
6.3 中文字体和编码问题的处理
中文编码问题主要表现为:转换后的Word文档里中文变成乱码。原因通常是Markdown文件的编码不是UTF-8。解决办法:用VS Code或Notepad++打开Markdown文件,另存为UTF-8编码。
中文字体问题表现为:Word文档里的中文显示为方框或者默认字体,不是模板里设置的宋体。原因通常是模板里的字体设置没有覆盖到所有样式。检查方法:在Word里选中中文文字,看“字体”下拉框里显示的是什么。如果是“+中文正文”之类的,说明样式没继承对。解决办法是在模板里明确指定中文字体,而不是用默认的“正文”样式。
还有一个坑:Pandoc在Windows下默认用系统的字体配置,如果系统里没有模板里指定的字体,Word会用替代字体渲染。所以模板里用的字体,确保你的电脑上装了。
6.4 常见问题速查表
| 问题现象 | 可能原因 | 解决办法 |
|---|---|---|
| 公式变成纯文本 | 公式没被$包裹,或$和内容之间有空格 | 检查公式格式,确保$紧贴内容 |
| 公式符号丢失 | Pandoc版本太老 | 升级到最新版,或加--mathml参数 |
| 公式变成图片 | 公式在代码块里 | 把公式移出代码块 |
| 中文公式乱码 | 公式里混了中文 | 用\text{}包裹中文,或移出公式 |
| 导航窗格看不到标题 | 标题用加粗代替,或#后没空格 | 改用#标题,加空格 |
| 表格列数错乱 | 每行列数不一致 | 补齐 ` |
| 中文乱码 | 文件编码不是UTF-8 | 另存为UTF-8编码 |
| 中文字体不对 | 模板里没指定中文字体 | 在模板里明确设置中文字体 |
| 目录页码不更新 | 目录是静态的 | 右键目录,选择“更新域” |
| 批量转换中断 | 某个文件格式有问题 | 先单个测试,再批量处理 |
7. 替代方案与工具选型对比
7.1 在线转换工具的适用场景与局限
如果你只是偶尔转一次,不想装Pandoc,在线转换工具是最省事的。比较常用的有CloudConvert、Convertio这些,上传Markdown文件,选择输出格式为Word,等几秒钟就能下载。
但在线工具有几个硬伤:第一,公式支持差。大部分在线工具只能处理纯文本Markdown,LaTeX公式要么丢失,要么变成图片。第二,隐私问题。你的教案内容上传到别人的服务器,如果涉及敏感信息就不合适。第三,模板不可控。在线工具一般不支持自定义Word模板,出来的文档格式是固定的,不符合你的格式要求。
所以在线工具适合:内容不含公式、格式要求不高、偶尔用一次的场景。如果你经常用,或者公式多、格式要求严,还是老老实实装Pandoc。
7.2 Word插件方案的可行性分析
Word有一些插件可以导入Markdown,比如Writage、Markdown Viewer这些。Writage是付费的,但功能比较完整,支持Markdown和Word的双向转换。Markdown Viewer是免费的,但功能有限。
Word插件的优势是直接在Word里操作,不用切换软件。但劣势也很明显:第一,公式支持参差不齐。Writage对LaTeX公式的支持还行,但Markdown Viewer基本不支持。第二,批量处理能力弱。插件一般只能一个个文件处理,没法批量。第三,依赖Word版本。不同版本的Word,插件兼容性不一样,有时候升级Word后插件就挂了。
我的建议是:如果你只是偶尔用,而且公式不多,可以试试Writage。但如果你要批量处理,或者公式很多,还是Pandoc更靠谱。
7.3 不同方案的对比与选型建议
| 方案 | 公式支持 | 模板自定义 | 批量处理 | 隐私性 | 学习成本 |
|---|---|---|---|---|---|
| Pandoc | 优秀 | 支持 | 支持 | 本地处理 | 中等 |
| 在线工具 | 差 | 不支持 | 不支持 | 上传服务器 | 低 |
| Word插件 | 一般 | 部分支持 | 弱 | 本地处理 | 低 |
| 手动复制粘贴 | 差 | 不支持 | 不支持 | 本地处理 | 极低 |
选型建议:如果你每周都要转好几份教案,直接上Pandoc,一次学会终身受益。如果你一个月才转一次,而且公式不多,在线工具凑合用。如果你对格式要求极高,而且愿意花时间调模板,Pandoc加自定义模板是唯一的选择。
7.4 什么情况下值得上Pandoc
判断标准很简单:如果你在“复制粘贴后手动调格式”这件事上花的时间,超过了你学习Pandoc的时间,那就值得上Pandoc。
学习Pandoc的成本大概是:装软件10分钟,学基本命令20分钟,做模板30分钟,总共一个小时左右。之后每次转换就是一行命令的事。如果你每次手动调格式要花15分钟,转4次就回本了。
另外,如果你的文档里有大量公式,Pandoc几乎是唯一能保证公式可编辑的方案。在线工具和Word插件在公式处理上都不如Pandoc靠谱。
8. 我踩过的坑和最后分享几个技巧
8.1 豆包输出格式不稳定的应对
豆包输出格式不稳定这件事,我一开始很头疼。同样的提示词,有时候输出标准Markdown,有时候输出富文本。后来我发现一个规律:在提示词里明确要求输出格式,并且给出示例,豆包会稳定很多。
比如你可以这样写提示词:“请用Markdown格式输出,标题用#号表示层级,公式用LaTeX语法并用$包裹,表格用标准Markdown表格格式。示例:## 教学目标\n1. 知识与技能:$a^2 + b^2 = c^2$”。
给出示例之后,豆包输出的格式规范多了。但还是会有意外,所以预处理这一步不能省。
8.2 公式编号和引用的处理技巧
教案里的公式有时候需要编号,比如“根据公式(1)”。Pandoc转换后公式编号会丢失,需要手动加。我的做法是:在Markdown里用\tag{1}给公式加编号,Pandoc会把它转成Word公式的一部分。但实测下来,\tag{}在Word里的显示效果不太稳定,有时候编号会跑到公式下面。
更靠谱的做法是:在Word里用“插入题注”功能给公式加编号。虽然手动,但编号格式规范,而且可以自动更新。如果公式不多,手动加也就几分钟的事。
公式引用的话,Word里可以用“交叉引用”功能,引用公式的编号。这样公式编号变了,引用也会自动更新。
8.3 模板复用的长期价值
做一次模板,后面每次转换都省事。我现在的做法是:把模板文件放在一个固定目录,转换命令写成脚本,每次只要把Markdown文件丢到指定目录,运行脚本,Word文档就出来了。
模板还有一个好处:格式统一。同一个模板出来的文档,标题样式、正文字体、行距、页边距全都一致。如果你要给多个文档做合集,格式统一看起来就专业很多。
模板不是做一次就完了,可以根据实际使用中的问题不断微调。比如我发现标题1的段前距不够,就在模板里调大一点。下次转换就生效了。
8.4 几个提升效率的小习惯
第一个习惯:Markdown文件按章节拆分。如果教案很长,不要写在一个文件里,按章节拆成多个文件。转换的时候可以分别转,也可以合并转。Pandoc支持合并多个文件,命令是pandoc chapter1.md chapter2.md -o output.docx。
第二个习惯:用Git管理Markdown文件。每次修改都有记录,改错了可以回滚。而且Git可以对比不同版本的差异,方便你追踪修改内容。
第三个习惯:转换前先预览。Pandoc有一个-s参数可以生成独立HTML文件,你可以在浏览器里预览转换效果,确认没问题再转Word。命令是pandoc input.md -s -o preview.html。
第四个习惯:保留一份纯文本备份。Word文档虽然方便编辑,但格式复杂,有时候会出问题。保留一份Markdown源文件,万一Word文档坏了,可以重新转换。
8.5 后续可以扩展的方向
这套流程跑通之后,还可以做一些扩展。比如:
- 自动化脚本:用Python写一个脚本,监控某个目录,发现有新的Markdown文件就自动转换。适合需要频繁转换的场景。
- 云端同步:把Markdown文件和模板放在云盘里,换电脑也能用。但注意隐私,敏感内容不要放云端。
- 版本对比:用Git的diff功能对比不同版本的教案,看看改了哪些地方。
- 批量加水印:如果教案需要加水印,可以在Word模板里设置,或者用Pandoc的
--include-in-header参数插入水印代码。
这些扩展不是必须的,但如果你经常用,可以逐步加上去。核心还是那句话:先把基础流程跑通,再考虑优化。基础流程没跑通,加再多花哨的功能也是白搭。
我个人在实际操作中的体会是,这套流程最大的价值不是省了多少时间,而是让格式问题不再成为负担。以前每次转Word都要花大量时间调格式,现在转换完基本就能用,精力可以放在内容本身。这才是工具应该起的作用。