Pythonで日本語PDFをつくる短いサンプル
まずReportLab - Open Source Softwareで公開されているReportLab Toolkitをダウンロードしてインストールします。
下の13行でちゃんと日本語で「こんにちは世界!」と書かれたPDFが出力されます。
これは「位置を指定してそこに文字列を書く」というお絵かき的な方法ですが、 reportlab.platypusを使うと長文を折り返して表示するような書類的な方法も可能です。
# -*- coding: cp932 -*-
from reportlab.pdfgen import canvas
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.cidfonts import UnicodeCIDFont
fontname = "HeiseiKakuGo-W5" # or "HeiseiMin-W3"
pdfmetrics.registerFont(UnicodeCIDFont(fontname))
c = canvas.Canvas("hello.pdf")
c.setFont(fontname, 30)
c.drawString(100, 675, u"こんにちは世界!")
c.showPage()
c.save()
print "ok."