ryotankの備考録日記

趣味の電子工作についての備考録などなど

基板作りチェックリストその28

ヘッダーとフッター混合描画テストを試す

テスト1ではヘッダーとフッターに長方形を描画し、
テスト2ではヘッダーとフッターに文字を描画する


#混合描画テスト2
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import A4, portrait
from reportlab.lib.units import cm

#特定のフォントを指定する為に
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.cidfonts import UnicodeCIDFont

file_name = '基板作りチェックヘッダーフッター混合描画テスト2.pdf'  #ファイル名を設定
pdf = canvas.Canvas(file_name, pagesize=portrait(A4))  #pdfを生成、A4サイズ縦に設定
pdf.saveState() #セーブ

#PDFのファイル情報を作成する
pdf.setAuthor('python_checktest')  #作成者情報
pdf.setTitle('ヘッダーフッター混合描画テスト2')  #タイトル情報
pdf.setSubject('Footer_and_Header_TEST2')  #件名情報

### フォント、サイズを設定 ###
pdfmetrics.registerFont(UnicodeCIDFont('HeiseiKakuGo-W5'))
pdf.setFont('HeiseiKakuGo-W5', 14)

### 文字を描画 (左からの位置、下からの位置、入れたい文字列)
pdf.drawString(2.2*cm, 26*cm, '基板名:____________  リスト作成年月日:   年   月   日') #ヘッダー部分文字

pdf.drawString(2*cm, 5.5*cm, '分類名:___________基板  担当者確認年月日:   年   月   日') #フッター部分文字
pdf.drawString(2*cm, 4.5*cm, 'ガーバーデータを外注時には作成日より日を空けて確認する事!!!') #フッター部分文字

#図形の描画
pdf.rect(2*cm, 25*cm, 17*cm, 2*cm)  #ヘッダー部分の長方形を描画する

pdf.rect(1*cm, 4*cm, 19*cm, 2*cm)  #フッター部分の長方形を描画する

#保存
pdf.restoreState()
pdf.save()


混合描画テスト1はこんな感じに

ヘッダーとフッター混合テスト1

混合描画テスト2はこのような感じになった

ヘッダーフッター混合描画テスト2


文字を描画出来たのでチェックリストの本体をPDF化に挑戦する