Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Tanda air adalah cara yang jelas namun halus untuk mengidentifikasi pemilik file tertentu. Sementara orang mungkin menganggap mereka menjengkelkan, mereka melayani tujuan mereka dengan anggun.

Dengan tanda air, Anda tidak hanya dapat melindungi file Anda, tetapi juga menambahkan teks deskriptif, lokasi, waktu pembuatan, dan banyak lagi. Jadi, lain kali Anda menyerahkan tugas atau makalah jurnal Anda, pastikan untuk menambahkan tanda air menggunakan program Python sederhana ini.

Apa itu Modul ReportLab?

Untuk menambahkan tanda air ke file PDF, Anda memerlukan pustaka yang bagus seperti modul ReportLab. Ini adalah pustaka sumber terbuka yang memungkinkan Anda membuat PDF, serta menambahkan bagan, data, dan grafik ke dalamnya. Modul ini membantu Anda membuat PDF dinamis, mengonversi file XML ke PDF, dan membuat laporan. Untuk menginstal ReportLab di sistem Anda, buka terminal dan ketik:

instagram viewer
pip Install reportlab

Ini menginstal ReportLab di lingkungan Python Anda.

Apa Itu Modul PyPDF2?

PyPDF2 adalah perpustakaan populer yang dapat Anda gunakan untuk melakukan berbagai operasi PDF yang bermanfaat. Ini termasuk memotong, menggabungkan, memisahkan, memutar, mengubah, menambahkan data, stamping, dan watermarking. Anda juga dapat mengenkripsi dan mendekripsi, mengekstrak teks, gambar, dan metadata, serta membaca atau menambahkan anotasi PDF. Untuk menginstal PyPDF2 ke sistem Anda, buka terminal dan ketik:

pip Install PyPDF2

Ini menginstal PyPDF2 di lingkungan Python Anda.

Cara Menambahkan Tanda Air yang Diinginkan ke PDF Menggunakan Python

Menambahkan tanda air ke file PDF menggunakan Python cukup sederhana. Anda akan membuat kanvas dan menggambar tanda air teks menggunakan warna dan arah favorit Anda, lalu menyimpannya sebagai PDF.

Setelah pembuatan desain tanda air satu halaman ini, Anda dapat membuka kedua PDF dan menggabungkannya halaman demi halaman. Voila, PDF watermark Anda sudah siap.

Mulailah program Anda dengan mengimpor kanvas dari pdfgen, terletak di reportlab modul. Antarmuka pdfgen bertindak pada level terendah untuk menghasilkan PDF. Anda dapat memvisualisasikannya sebagai melukis desain dan struktur dokumen pada sebuah halaman. Kelas kanvas menyediakan operasi yang diperlukan untuk melakukannya.

Anda dapat menganggap kanvas sebagai selembar kertas biasa dengan koordinat Cartesian. Titik asal (0,0) ada di pojok kiri bawah. Nilai koordinat x dan y meningkat saat titik menjauh dari titik asal, ke atas dan ke kanan.

Dari pustaka ReportLab, impor inci, warna, Dan ukuran halaman. Program akan menggunakan inci sebagai satuan pengukuran. Ada dua format warna yang tersedia di bawah ReportLab: the RGB model, dan CYMK model. RGB lebih disukai, tetapi jika Anda ingin lebih mengontrol tingkat warna yang muncul saat Anda mencetak PDF, Anda dapat memilih CYMK.

Seperti namanya, ukuran halaman diatur ke A4. Selain itu, impor file PdfFileReader Dan PdfFileWriter dari PyPDF2 untuk melakukan operasi baca dan tulis pada file PDF.

dari reportlab.pdfgen impor kanvas
dari reportlab.lib.units impor inci
dari reportlab.lib impor warna
dari reportlab.lib.pagesizes impor A4
dari PyPDF2 impor PdfFileReader, PdfFileWriter

Tentukan fungsi yang dipanggil makeWatermark() untuk membuat file PDF watermark satu halaman yang nantinya akan Anda gunakan untuk diterapkan pada halaman dokumen yang diinginkan. Minta pengguna untuk memasukkan teks tanda air menggunakan pernyataan input.

Gunakan kanvas untuk menghasilkan area gambar dengan nama watermark.pdf dan ukuran halaman A4. Itu menerjemahkan() fungsi memindahkan asal ke sudut kiri atas.

Atur file teks menjadi abu-abu dengan opacity 0,6; pada skala 0-1, 0 adalah yang paling transparan dan 1 adalah yang paling buram. Atur gaya font menjadi Helvetica dengan ukuran 50. Terapkan rotasi 45 derajat berlawanan arah jarum jam. Lewati koordinat x dan y bersama dengan teks untuk menggambarnya di atas kanvas dan simpan menggunakan fungsi save() .

defmakeWatermark():
teks = masukan("Masukkan teks tanda air di sini:")
pdf = kanvas. Kanvas("watermark.pdf", ukuran halaman=A4)
pdf.menerjemahkan(inci, inci)
pdf.setFillColor (colors.grey, alpha=0.6)
pdf.setFont("Helvetica", 50)
pdf.memutar(45)
pdf.drawCentredString(400, 100, teks)
pdf.menyimpan()

File PDF tanda air yang dihasilkan oleh fungsi di atas terlihat seperti ini:

Tentukan fungsi bernama makepdf() untuk memberi tanda air pada halaman PDF. Masukkan nama file yang ingin diberi watermark, termasuk apa saja .pdf perpanjangan. Inisialisasi variabel untuk menyimpan nama PDF bertanda air. Buka kedua file dalam mode biner baca.

Menggunakan PdfFileReader() untuk membuat instance objek yang mewakili setiap PDF. Menggunakan getPage() berfungsi untuk mendapatkan halaman pertama dan satu-satunya dari PDF yang diberi watermark.

defmakepdf():
pdf_file = masukan("File pdf: ")
tanda air = 'watermark.pdf'
digabung = "Bertanda Air.pdf"

denganmembuka(File pdf, "rb") sebagai file_input, membuka(tanda air, "rb") sebagai watermark_file:
input_pdf = PdfFileReader (file_input)
watermark_pdf = PdfFileReader (file_watermark)
watermark_page = watermark_pdf.getPage (0)

Sekarang saatnya menggabungkan halaman tanda air dengan setiap halaman di PDF target.

Buat objek kelas PdfFileWriter yang akan digunakan untuk menghasilkan output PDF. Tentukan lingkaran yang berulang pada setiap halaman dalam PDF yang diinginkan. Fungsi getNumPages() mengembalikan jumlah total halaman dalam PDF. Gunakan fungsi getPage() untuk mendapatkan halaman dan menggabungkannya dengan halaman watermark yang disimpan sebelumnya.

Gunakan objek PdfFileWriter untuk menambahkan setiap halaman gabungan ke PDF akhir. Setelah Anda membuat output PDF, buka file output dalam mode biner tulis dan gunakan fungsi write() untuk menyimpan pdf yang diberi watermark ke file ini.

 keluaran = PdfFileWriter()

untukSayadi dalamjangkauan(masukan_pdf.getNumPages()):
pdf_page = input_pdf.getPage (i)
pdf_page.mergePage(watermark_page)
keluaran.tambah halaman(pdf_page)

denganmembuka(digabung, "wb") sebagai file_gabungan:
keluaran.menulis(file_gabungan)

Terakhir, panggil kedua fungsi—makeWatermark() dan makepdf()—untuk membuat file PDF dengan watermark:

makeWatermark()
makepdf()

Teks PDF bertanda air yang dihasilkan menggunakan program Python di atas terlihat seperti ini:

Selain itu, Anda dapat mengikuti metode lima langkah ini untuk buat dan tambahkan tanda air ke gambar apa pun menggunakan Canva. Anda juga bisa menggunakan teknik untuk menandai video Anda hanya dalam beberapa menit.

Mungkin ada saatnya Anda menambahkan tanda air secara tidak sengaja dan ingin menghapusnya. Anda dapat menggunakan alat online seperti Soda PDF, Microsoft Word, Google Docs, dan PDF Zorro secara gratis. Untuk gambar, Anda dapat menjelajahi alat seperti Wondershare PixCut, Inpaint, Aiseesoft, Apowersoft, dan Cutout.pro.

Untuk penghapusan watermark gratis di video, gunakan Apowersoft, 123apps, PickFrom Blur, dan BeeCut.

Namun, ingatlah untuk tidak menggunakan materi berhak cipta apa pun tanpa izin pemiliknya.