From 4db49669ef1a3656a8434c8d74db6e3bcc75852e Mon Sep 17 00:00:00 2001 From: eliseo papa Date: Thu, 11 Oct 2012 16:34:47 +0100 Subject: created a conversion script and a first draft of a style --- md2pdf.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 md2pdf.py (limited to 'md2pdf.py') diff --git a/md2pdf.py b/md2pdf.py new file mode 100755 index 0000000..08f5698 --- /dev/null +++ b/md2pdf.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +""" +md2pdf +converts markdown file to PDF using a given CSS style sheet + +usage: +Outputs a PDF file, using the given CSS style sheet +> md2pdf input.md --css input.css +""" + +import markdown +import codecs +from subprocess import call + +import argparse +parser = argparse.ArgumentParser(description='converts markdown file to PDF using a given CSS style sheet') + +parser.add_argument('mdsource') +parser.add_argument('--css', dest="css") + +args = parser.parse_args() +filename = args.mdsource.split('.')[0] + + +if args.css: + head = """ + + + + +""" % args.css +else: + head = """ + + + +""" + +# convert the markdown file to html +mdsourcef = codecs.open(args.mdsource, mode="r", encoding="utf8") +body = markdown.markdown(mdsourcef.read()) +html = ''.join([head, body]) + +output_file = codecs.open("%s.html" % filename, "w", encoding="utf8") +output_file.write(html) +print ">>> first writing out %s.html" % filename +print ">>> calling wkthmltopdf" % filename +call(["wkhtmltopdf", "%s.html" % filename, "%s.pdf" % filename]) -- cgit v1.2.3