markdown-to-html-to-pdf

平时习惯用markdown写些文档,偶尔需要转成pdf文件。
故此文档根据自身习惯,记录了一套从markdownhtml文件,再转pdf的流程。

Markdown转HTML

平时编辑markdown文件更多是使用vscode,所以安装插件:

1
2
# 在vscode里Ctrl+P输入如下内容
ext install shd101wyy.markdown-preview-enhanced

接下来是该插件的配置:

1
2
3
4
"markdown-preview-enhanced.previewTheme": "vue.css",
"markdown-preview-enhanced.codeBlockTheme": "vue.css",
"markdown-preview-enhanced.printBackground": true,
"markdown-preview-enhanced.enableExtendedTableSyntax": true,

使用的是vue样式。
编辑markdown文件时打开预览->预览窗口右键->HTML->HTML(offline),即可生成html文件。

HTML转PDF

直接使用该仓库,按照README.md的说明:

1
./convert.py test.html test.pdf

该仓库使用了weasyprint模块,内部已经添加了开源的Noto Sans CJK SC中文字体。
尝试过其他库或谷歌浏览器直接转pdf文件的方式,目前发现只有weasyprint转出来的效果最接近原来的html文件。