最近忙于驾校的事,好久没更新了,都长草了!周末来水一篇
推荐用https://www.zybuluo.com/mdeditor# 这玩意儿有很多坑,太多bug了。
# 起因
之前用Markdown写了点东西,但是想转换成PDF文件。
# 解决方案
- 利用(在线)Markdown编辑器输出PDF,或者输出html,然后用chrome 打印成PDF
- 一些国外网站转换成PDF
但是第一种,略麻烦;第二种中文出现乱码。
想了想,其实很简单,何尝不自己做一个呢。
# 思路
思路很简单:第一步md2html,第二步,html2pdf
so,借助misaka,xhtml2pdf这个包即可。
# 中文
xhtml2pdf是一款Python实现的开源软件,用于将Html文件转换为Pdf文件;但是不自带中文字体,so,我们需要自定义字体。这里我参考xhtml2pdf 解决中文乱码解决
#解决中文字体
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
pdfmetrics.registerFont(TTFont('msyh', './msyh.ttf'))
from xhtml2pdf import default
default.DEFAULT_FONT["helvetica"]="msyh"
再结合Tornado轻轻松松的就构建好了。
前端这里我直接抄袭<www.markdowntopdf.com>
# Demo
PS:Raspberry Pi 能力有限,限制了文件大小5KB。
# 源码
https://github.com/vi5i0n/md2pdf
参考地址: