Menambah Teks pada PDF Sedia Ada dengan Python
Soalan:
Bagaimana saya boleh memasukkan tambahan teks ke dalam fail PDF sedia ada menggunakan Python? Perpustakaan luaran manakah yang diperlukan untuk tugas ini?
Jawapan:
Untuk mencapai matlamat ini, gabungan perpustakaan PyPDF2 dan ReportLab boleh digunakan, membenarkan kedua-dua Windows dan Linux keserasian. Begini caranya:
Contoh Python 2.7:
<code class="python">from pyPdf import PdfFileWriter, PdfFileReader import StringIO from reportlab.pdfgen import canvas from reportlab.lib.pagesizes import letter packet = StringIO.StringIO() can = canvas.Canvas(packet, pagesize=letter) can.drawString(10, 100, "Hello world") can.save() packet.seek(0) new_pdf = PdfFileReader(packet) existing_pdf = PdfFileReader(file("original.pdf", "rb")) output = PdfFileWriter() page = existing_pdf.getPage(0) page.mergePage(new_pdf.getPage(0)) output.addPage(page) outputStream = file("destination.pdf", "wb") output.write(outputStream) outputStream.close()</code>
Contoh Python 3.x:
<code class="python">from PyPDF2 import PdfFileWriter, PdfFileReader import io from reportlab.pdfgen import canvas from reportlab.lib.pagesizes import letter packet = io.BytesIO() can = canvas.Canvas(packet, pagesize=letter) can.drawString(10, 100, "Hello world") can.save() packet.seek(0) new_pdf = PdfFileReader(packet) existing_pdf = PdfFileReader(open("original.pdf", "rb")) output = PdfFileWriter() page = existing_pdf.pages[0] page.merge_page(new_pdf.pages[0]) output.add_page(page) output_stream = open("destination.pdf", "wb") output.write(output_stream) output_stream.close()</code>
Oleh menggunakan perpustakaan ini, anda boleh menambah teks dengan mudah pada dokumen PDF sedia ada dalam persekitaran Python 2.7 dan Python 3.x pada kedua-dua platform Windows dan Linux.
Atas ialah kandungan terperinci Cara Menambah Teks pada PDF Sedia Ada Menggunakan Python: Keperluan Perpustakaan dan Pelaksanaan Kod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!