Pythonで日本語のMarkdownファイルをPDFに吐き出すコードを書いてるのですが日本語ファイルだと文字化けしてしまってうまく行きません誰かおしえてもらえると嬉しいです。
ソールコードはこれです。

#coding utf-8
import markdown
import sys
import os
from PyQt4.QtCore import QUrl
from PyQt4.QtGui import QApplication, QPrinter
from PyQt4.QtWebKit import QWebView

app = QApplication(sys.argv)
web = QWebView()
printer = QPrinter()

def load_finished():
    global web
    global printer

    web.print_(printer)
    QApplication.exit()

def md2html(_fileName):
    md=markdown.Markdown()
    tmpText = u'<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"></head><body>' 
    text=""
    for i in open(_fileName,"r"):
         text+=unicode(i,'utf-8')

    text=md.convert(text)
    tmpText+=text+u"</body></html>"
    fn=open("test.html","w")
    fn.write(text.encode("utf-8"))
    fn.close()

def html2pdf():
    global app
    printer.setOutputFormat(QPrinter.PdfFormat)
    printer.setOrientation(QPrinter.Landscape)
    printer.setPageSize(QPrinter.A4)
    printer.setResolution(QPrinter.HighResolution)
    printer.setOutputFileName('test.pdf')

    web.loadFinished.connect(load_finished)
    web.load(QUrl.fromLocalFile(os.path.abspath('test.html')))

    sys.exit(app.exec_())




md2html("aaa.md")
html2pdf()

まだ文字コードらへんについてわかってない点も多いのでアドバイスいただけるとありがたいです。

画像の説明をここに入力
PDFはこんな感じです。
実際には「テスト」と表示させたいです。