有什么直接的方法可以通过python从markdown文件生成pdf

gui*_* 桂林 25 python markdown pdf-generation

作为标题,我想使用markdown作为我的主要写入格式,我需要使用纯python从markdown生成PDF文件.

Jas*_*uit 18

我已经完成并将分两步完成.首先,我使用python-markdown从我的Markdown中制作HTML,然后我使用xhtml2pdf制作PDF文件.

编辑(2014):

如果我现在这样做,我可能会选择WeasyPrint作为我的HTML-to-PDF工具; 它做得很漂亮,最近我在几个项目中使用过它.

  • 你的原始答案对于这个问题更好,因为WeasyPrint虽然可能更优秀,但并不是"纯粹的Python".或者,完全准确; WeasyPrint本身可能是纯python,但它依赖于其他模块. (2认同)

Fli*_*rPA 9

2015年更新:

我会结合使用pdfkitPython-Markdown.虽然这不是一个纯粹的Python解决方案,但我发现它最有效,特别是如果你使用的是Python 3.

首先,安装一个先决条件(或在这里下载:http://wkhtmltopdf.org/downloads.html ):

# Ubuntu
apt-get install wkhtmltopdf
Run Code Online (Sandbox Code Playgroud)

然后,必要的Python包:

pip install pdfkit
pip install markdown
Run Code Online (Sandbox Code Playgroud)

那真的很简单:

from markdown import markdown
import pdfkit

input_filename = 'README.md'
output_filename = 'README.pdf'

with open(input_filename, 'r') as f:
    html_text = markdown(f.read(), output_format='html4')

pdfkit.from_string(html_text, output_filename)
Run Code Online (Sandbox Code Playgroud)