基板作りチェックリストその20
今回はヘッダー部分に基板名、少し間隔をあけて作成年月日
フッター部分に右端に基板の分類名
ガーバーデータの注意事項、担当者がチェックした日付を
記入出来る記入日欄をつけるのが目標1とし
PyPDF2というライブラリを利用して
"既存PDFに日本語のテキストを書き込むのを目標2とする
まずはヘッダー部分に基板名、少し間隔をあけて作成年月を入れる
#ヘッダー部分を矩形で描画する #塗りつぶしの色の設定方法は 描画前にCanvasに対して設定する #描画した時にfill=Trueと設定していないと塗りつぶしが実行されないので注意する #教訓:ヘッダー部分を色付けして文字を描画すると #文字自体が塗りつぶされるので色付けを無くした #動作確認日:2021-12-28 from reportlab.pdfgen import canvas from reportlab.lib.pagesizes import A4, portrait from reportlab.lib.units import mm #特定のフォントを指定する為に from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.cidfonts import UnicodeCIDFont #色を指定する為 from reportlab.lib.colors import lightgreen # 縦型A4のCanvasを準備 cv = canvas.Canvas('Header and Text.pdf', pagesize=portrait(A4), bottomup=False) ### フォント、サイズを設定 ### pdfmetrics.registerFont(UnicodeCIDFont('HeiseiKakuGo-W5')) cv.setFont('HeiseiKakuGo-W5', 12) ### 文字を描画 (左からの位置、下からの位置、入れたい文字列) cv.drawString(20*mm, 35*mm, '基板名:__________________ 作成年月日: 年 月 日') #矩形で描画(始点x, 始点y, 幅、高さ) cv.rect(10*mm, 20*mm, 190*mm, 20*mm) # 保存 cv.showPage() cv.save()
上記のコードから出来たのがこちらのキャプチャ画像
(はてなブログだとpdfが掲載できない
仕様の為)
今度はフッター部分に右端に基板の分類名
ガーバーデータの注意事項、担当者がチェックした日付を
記入出来る記入日欄をつける
#フッター部分を矩形で描画する #教訓:ヘッダー部分を色付けして文字を描画すると #文字自体が塗りつぶされるので色付けを無くした #フッターの位置がズレてはいるが、無事文字を描画出来た、あとは位置の微調整のみ #動作確認日:2021-12-2??? from reportlab.pdfgen import canvas from reportlab.lib.pagesizes import A4, portrait from reportlab.lib.units import mm #mm単位で座標を指定 #特定のフォントを指定する為に from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.cidfonts import UnicodeCIDFont #色を指定する為 from reportlab.lib.colors import lightgreen # 縦型A4のCanvasを準備 cv = canvas.Canvas('Footer and Text.pdf', pagesize=portrait(A4), bottomup=True) ### フォント、サイズを設定 ### pdfmetrics.registerFont(UnicodeCIDFont('HeiseiKakuGo-W5')) cv.setFont('HeiseiKakuGo-W5', 12) ### 文字を描画 (左からの位置、下からの位置、入れたい文字列) cv.drawString(20*mm, 175*mm, '分類名:___________基板 担当者確認年月日: 年 月 日') cv.drawString(20*mm, 145*mm, 'ガーバーデータを外注時には作成日より日を空けて確認する事!!!') #矩形で描画(始点x, 始点y, 幅、高さ) cv.rect(10*mm, 155*mm, 190*mm, 20*mm) # 保存 cv.showPage() cv.save()
コメントにも書いたが、フッター位置がまだズレているので
微調整さえ出来れば、きちんとしたフッターに文字を描画出来る
おいおい修正をかけていく
次回は目標2であるPyPDF2というライブラリを利用して
"既存PDFに日本語のテキストを書き込むを作成するので
その為のフローチャートを掲載して実際に動作確認をする