As the title, I want to use markdown as my main write format and I need to generate PDF files from markdown using pure python.
问题:
回答1:
I have done and would do it in two steps. First, I'd use python-markdown to make HTML out of my Markdown, and then I'd use xhtml2pdf to make a PDF file.
Edit (2014):
If I were doing this now, I might choose WeasyPrint as my HTML-to-PDF tool; it does a beautiful job, and I've used it on a couple projects recently.
回答2:
Update for 2015:
I would use a combination of pdfkit and Python-Markdown. While this isn't a pure Python solution, but I've found it works best, especially if you're using Python 3.
First, install a prereq (or download here: http://wkhtmltopdf.org/downloads.html):
# Ubuntu
apt-get install wkhtmltopdf
Then, the necessary Python packages:
pip install pdfkit
pip install markdown
Then it is really simple:
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)
回答3:
For anybody like me trying to find an answer in 2018:
I have not tested it but Markdown2PDF seems to be an option https://pypi.org/project/Markdown2PDF/