Filigranele sunt o modalitate clară, dar subtilă de a identifica proprietarul unui anumit fișier. În timp ce oamenii le pot găsi enervante, își servesc scopul cu grație.
Cu un filigran, puteți nu numai să vă protejați fișierele, ci și să adăugați text descriptiv, locația, timpul de generare și multe altele. Deci, data viitoare când vă predați temele sau lucrarea de jurnal, asigurați-vă că adăugați un filigran folosind acest program simplu Python.
Ce este modulul ReportLab?
Pentru a adăuga un filigran la un fișier PDF, veți avea nevoie de o bibliotecă bună, cum ar fi modulul ReportLab. Este o bibliotecă open-source care vă permite să creați PDF-uri, precum și să adăugați diagrame, date și grafice la acestea. Acest modul vă ajută să generați fișiere PDF dinamice, să convertiți fișiere XML în fișiere PDF și să generați rapoarte. Pentru a instala ReportLab pe sistemul dvs., deschideți un terminal și tastați:
pip instalare raportlab
Aceasta instalează ReportLab în mediul dumneavoastră Python.
Ce este modulul PyPDF2?
PyPDF2 este o bibliotecă populară pe care o puteți folosi pentru a efectua o varietate de operațiuni PDF utile. Acestea includ decuparea, îmbinarea, împărțirea, rotirea, transformarea, adăugarea de date, ștampilarea și marcarea cu apă. De asemenea, puteți cripta și decripta, extrage text, imagini și metadate și puteți citi sau adăuga adnotări PDF. Pentru a instala PyPDF2 în sistemul dvs., deschideți un terminal și tastați:
pip instalare PyPDF2
Aceasta instalează PyPDF2 în mediul dumneavoastră Python.
Cum să adăugați filigranul dorit la PDF folosind Python
Adăugarea unui filigran la un fișier PDF folosind Python este destul de simplă. Veți crea o pânză și veți desena filigranul textului folosind culoarea și direcția preferate, apoi veți salva ca PDF.
După generarea acestui design de filigran de o pagină, puteți deschide ambele PDF-uri și le puteți îmbina pagină cu pagină. Voilà, PDF-ul tău cu filigran este atunci gata.
Începeți programul prin import pânză din pdfgen, situat în raportlab modul. Interfața pdfgen acționează la cel mai de jos nivel pentru a genera PDF-uri. Îl puteți vizualiza ca pictând un design și o structură a unui document pe o pagină. Clasa canvas oferă operațiunile necesare pentru a face acest lucru.
Vă puteți gândi la pânză ca la o foaie de hârtie simplă cu coordonate carteziene. Punctul de origine (0,0) este în colțul din stânga jos. Valorile coordonatelor x și y cresc pe măsură ce punctele se îndepărtează de origine, în sus și la dreapta.
Din biblioteca ReportLab, importați inch, culoare, și mărimea paginii. Programul va folosi inchi ca unitate de măsură. Există două formate de culoare disponibile în ReportLab: the RGB modelul, iar cel CYMK model. RGB este de preferat, dar dacă doriți mai mult control asupra nivelului de culori care apar atunci când imprimați PDF-ul, puteți opta pentru CYMK.
După cum sugerează și numele, dimensiunea paginii este setată la A4. În plus, importați PdfFileReader și PdfFileWriter din PyPDF2 pentru a efectua operațiuni de citire și scriere pe fișiere PDF.
din reportlab.pdfgen import pânză
din reportlab.lib.units import inch
din reportlab.lib import culorile
din reportlab.lib.pagesizes import A4
din PyPDF2 import PdfFileReader, PdfFileWriter
Definiți o funcție numită makeWatermark() pentru a crea fișierul PDF cu filigran de o pagină pe care îl veți folosi ulterior pentru a-l aplica pe paginile documentului dorit. Cereți utilizatorului să introducă textul filigranului folosind instrucțiunea de intrare.
Utilizați pânza pentru a genera o zonă de desen cu numele filigran.pdf și dimensiunea paginii A4. The Traduceți() funcția mută originea în colțul din stânga sus.
Setați fișierul textului la gri cu o opacitate de 0,6; pe o scară de la 0-1, 0 este cel mai transparent și 1 este cel mai opac. Setați stilul fontului la Helvetica cu o dimensiune de 50. Aplicați o rotație de 45 de grade în sens invers acelor de ceasornic. Treceți coordonatele x și y împreună cu textul pentru a-l desena peste pânză și salvați-l folosind funcția save().
defmakeWatermark():
text = input(„Introduceți aici textul filigranului:”)
pdf = pânză. pânză(„filigran.pdf”, dimensiunea paginii=A4)
pdf.Traduceți(inch, inch)
pdf.setFillColor (colors.grey, alpha=0,6)
pdf.setFont("Helvetica", 50)
pdf.roti(45)
pdf.drawCentredString(400, 100, text)
pdf.Salvați()
Fișierul PDF cu filigran pe care îl generează funcția de mai sus arată astfel:
Definiți o funcție numită makepdf() pentru a filigrana paginile PDF-ului. Introduceți numele fișierului pe care doriți să îl filigranați, inclusiv orice .pdf extensie. Inițializați o variabilă pentru a stoca numele PDF-ului cu filigran. Deschideți ambele fișiere în modul binar de citire.
Folosește PdfFileReader() pentru a instanția un obiect care reprezintă fiecare PDF. Folosește getPage() pentru a obține prima și singura pagină a PDF-ului cu filigran.
defmakepdf():
pdf_file = input("Fișier PDF: ")
filigran = „filigran.pdf”
fuzionat = „Watermarked.pdf”
cudeschis(fișier_pdf, "rb") la fel de fișier de intrare, deschis(filigran, "rb") la fel de watermark_file:
input_pdf = PdfFileReader (fișier_input)
watermark_pdf = PdfFileReader (fișier_watermark)
watermark_page = watermark_pdf.getPage (0)
Acum este timpul să îmbinați pagina de filigran cu fiecare pagină din PDF-ul țintă.
Creați un obiect din clasa PdfFileWriter pe care să îl utilizați pentru generarea PDF-ului de ieșire. Definiți o buclă care iterează peste fiecare pagină din PDF-ul dorit. Funcția getNumPages() returnează numărul total de pagini dintr-un PDF. Utilizați funcția getPage() pentru a obține pagina și pentru a o îmbina cu pagina de filigran stocată mai devreme.
Utilizați obiectul PdfFileWriter pentru a adăuga fiecare pagină îmbinată la PDF-ul final. Odată ce ați creat PDF-ul de ieșire, deschideți fișierul de ieșire în modul binar de scriere și utilizați funcția write() pentru a salva pdf-ul cu filigran în acest fișier.
ieșire = PdfFileWriter()
pentruiîngamă(input_pdf.getNumPages()):
pdf_page = input_pdf.getPage (i)
pdf_page.mergePage(watermark_page)
ieșire.adauga pagina(pdf_page)
cudeschis(combinat, "wb") la fel de fişier_fusionat:
ieșire.scrie(fişier_fusionat)
În cele din urmă, apelați ambele funcții—makeWatermark() și makepdf()—pentru a crea fișierul PDF cu filigran:
makeWatermark()
makepdf()
PDF-ul cu filigran text generat folosind programul Python de mai sus arată astfel:
În plus, puteți urma această metodă în cinci pași creați și adăugați un filigran la orice imagine folosind Canva. De asemenea, puteți utiliza tehnici de filigranare a videoclipurilor dvs în doar câteva minute.
Este posibil să existe momente în care ați adăugat un filigran din greșeală și doriți să-l eliminați. Puteți utiliza gratuit instrumente online precum Soda PDF, Microsoft Word, Google Docs și PDF Zorro. Pentru imagini, puteți explora instrumente precum Wondershare PixCut, Inpaint, Aiseesoft, Apowersoft și Cutout.pro.
Pentru eliminarea gratuită a filigranului din videoclipuri, utilizați Apowersoft, 123apps, PickFrom Blur și BeeCut.
Cu toate acestea, nu uitați să nu utilizați niciun material protejat de drepturi de autor fără permisiunea proprietarului.