私は生成されたpdfに問題があります。生成されたpdfファイルは4ページあり、2ページの既存のpdfを使用しています。私はpyPD2
とreportlab
を使ってテキストを書く必要があります。テキストは同じページに2回印刷されます
私はgetPage()
メソッドを使用すると、マージ前にページコピーを作成すると思っていましたが、何らかの理由で同じページが使用され、何度かテキストが印刷されました。
どうすれば避けることができますか?
私のコード:
packet = io.BytesIO()
can = canvas.Canvas(packet)
can.drawString(0,0, "Print on page 1")
can.showPage()
can.drawString(200,200, "Print on page 2")
can.showPage()
can.drawString(0,0, "Print on page 3")
can.showPage()
can.drawString(200,200, "Print on page 4")
can.save()
new_pdf = PdfFileReader(packet)
path_of_two_page_pdf = 'overview.pdf'
existing_pdf = PdfFileReader(file(path_of_two_page_pdf, "rb"))
output = PdfFileWriter()
for pi in range(4):
page = existing_pdf.getPage(pi % 2)
page.mergePage(new_pdf.getPage(pi))
output.addPage(page)
outputStream = file("NEW_PDF.pdf", "wb")
output.write(outputStream)
outputStream.close()
私は詳細を見ることができるように入力ファイルにリンクできますか? –
@ B8vrede私はなぜこのdownvoteが表示されません。 2ページのPDFがあれば良いでしょう(各ページに異なる文字列を描きます)。 – Zety
しかし、私はその部分を修正したので、私はdownvoteを削除しました – B8vrede