最近、またpythonにハマリだしたので、プログラムを作りました。
PDF 1ページに一文字を出力するプログラムです。
店舗の窓に並べて貼れば、横断幕のできあがりです。
以下のコードでは、"みらさまのなぐりがき"が 1ページに一文字ずつ出力されます。
実行には、reportlabというモジュールが必要です。
# -*- coding: utf-8 -*-
from reportlab.pdfgen import canvas
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.cidfonts import UnicodeCIDFont
from reportlab.lib.units import cm
pdfFile = canvas.Canvas('./みらさま.pdf')
pdfFile.saveState()
pdfFile.setAuthor('みらさま')
pdfFile.setTitle('みらさまのなぐりがき')
pdfFile.setSubject('横断幕')
# A4
pdfFile.setPageSize((21.0*cm, 29.7*cm))
# B5
# pdfFile.setPageSize((18.2*cm, 25.7*cm))
pdfmetrics.registerFont(UnicodeCIDFont('HeiseiKakuGo-W5'))
pdfFile.setFont('HeiseiKakuGo-W5', 21.0*cm)
title='みらさまのなぐりがき' #書きたい文字
h=(29.7-21.0)/2.0*cm
for moji in title:
pdfFile.setFont('HeiseiKakuGo-W5', 21.0*cm)
pdfFile.setFillColorRGB(1.0,0.5,0.3) #文字色の指定
pdfFile.drawString(0*cm, h, moji)
pdfFile.showPage()
pdfFile.save()