Vodoznaky sú jasným, no zároveň jemným spôsobom identifikácie vlastníka konkrétneho súboru. Aj keď sa ľuďom môžu zdať otravné, svoj účel plnia s gráciou.
Pomocou vodoznaku môžete nielen chrániť svoje súbory, ale tiež pridať popisný text, umiestnenie, čas generovania a ďalšie. Takže, keď budete nabudúce odovzdávať svoju úlohu alebo papier v denníku, nezabudnite pridať vodoznak pomocou tohto jednoduchého programu Python.
Čo je modul ReportLab?
Ak chcete pridať vodoznak do súboru PDF, budete potrebovať dobrú knižnicu, ako je modul ReportLab. Je to knižnica s otvoreným zdrojovým kódom, ktorá vám umožňuje vytvárať súbory PDF, ako aj pridávať do nich grafy, údaje a grafiku. Tento modul vám pomôže generovať dynamické súbory PDF, konvertovať súbory XML na súbory PDF a vytvárať zostavy. Ak chcete nainštalovať ReportLab do svojho systému, otvorte terminál a zadajte:
pip Inštalácia reportlab
Toto nainštaluje ReportLab do vášho prostredia Pythonu.
Čo je modul PyPDF2?
PyPDF2 je populárna knižnica, ktorú môžete použiť na vykonávanie rôznych užitočných operácií PDF. Patria sem orezávanie, spájanie, delenie, otáčanie, transformácia, pridávanie údajov, pečiatkovanie a vodotlač. Môžete tiež šifrovať a dešifrovať, extrahovať text, obrázky a metadáta a čítať alebo pridávať anotácie PDF. Ak chcete nainštalovať PyPDF2 do svojho systému, otvorte terminál a zadajte:
pip Inštalácia PyPDF2
Toto nainštaluje PyPDF2 do vášho prostredia Python.
Ako pridať požadovaný vodoznak do PDF pomocou Pythonu
Pridanie vodoznaku do súboru PDF pomocou Pythonu je celkom jednoduché. Vytvoríte plátno a nakreslíte textový vodoznak pomocou svojej obľúbenej farby a smeru a potom ho uložíte ako PDF.
Po vygenerovaní tohto jednostranového dizajnu vodoznaku môžete otvoriť oba súbory PDF a zlúčiť ich stránku po stránke. Voilà, váš PDF s vodotlačou je pripravený.
Začnite svoj program importovaním plátno od pdfgen, ktorý sa nachádza v reportlab modul. Rozhranie pdfgen funguje na najnižšej úrovni pri vytváraní súborov PDF. Môžete si to predstaviť ako maľovanie dizajnu a štruktúry dokumentu na stránku. Trieda canvas poskytuje operácie potrebné na to.
Plátno si môžete predstaviť ako list obyčajného papiera s karteziánskymi súradnicami. Počiatočný bod (0,0) je v ľavom dolnom rohu. Hodnoty súradníc x a y sa zväčšujú, keď sa body vzďaľujú od začiatku, smerom nahor a doprava.
Z knižnice ReportLab importujte palec, farba, a veľkosť strán. Program použije palce ako mernú jednotku. V ReportLab sú k dispozícii dva farebné formáty: the RGB model, a CYMK Model. Uprednostňuje sa RGB, ale ak chcete väčšiu kontrolu nad úrovňou farieb, ktoré sa objavia pri tlači PDF, môžete sa rozhodnúť pre CYMK.
Ako už názov napovedá, veľkosť stránky je nastavená na A4. Okrem toho importujte súbor PdfFileReader a PdfFileWriter od PyPDF2 na vykonávanie operácií čítania a zápisu súborov PDF.
od reportlab.pdfgen importovať plátno
od reportlab.lib.units importovať palec
od reportlab.lib importovať farby
od reportlab.lib.pagesizes importovať A4
od PyPDF2 importovať PdfFileReader, PdfFileWriter
Definujte funkciu tzv makeWatermark() na vytvorenie jednostranového súboru PDF vodoznaku, ktorý neskôr použijete na použitie na stranách požadovaného dokumentu. Požiadajte používateľa, aby vložil text vodoznaku pomocou príkazu vstupu.
Pomocou plátna vygenerujte plochu na kreslenie s názvom vodoznak.pdf a veľkosť strán A4. The preložiť () funkcia presunie počiatok do ľavého horného rohu.
Nastavte súbor textu na sivý s nepriehľadnosťou 0,6; na stupnici 0-1 je 0 najpriehľadnejšia a 1 najnepriehľadnejšia. Nastavte štýl písma na Helvetica s veľkosťou 50. Aplikujte rotáciu o 45 stupňov proti smeru hodinových ručičiek. Odovzdajte súradnice x a y spolu s textom, aby ste ho nakreslili na plátno a uložili ho pomocou funkcie save().
defmake Watermark():
text = vstup("Sem zadajte text vodoznaku:")
pdf = plátno. Plátno("vodoznak.pdf", veľkosť strany=A4)
pdf.preložiť(palec, palec)
pdf.setFillColor (colors.grey, alpha=0.6)
pdf.setFont("Helvetica", 50)
pdf.točiť sa(45)
pdf.drawCentredString(400, 100, text)
pdf.uložiť()
Súbor PDF vodoznaku, ktorý generuje vyššie uvedená funkcia, vyzerá takto:
Definujte funkciu s názvom makepdf() na vodoznak stránok PDF. Zadajte názov súboru, ktorý chcete pridať vodotlačou, vrátane akýchkoľvek .pdf rozšírenie. Inicializujte premennú na uloženie názvu PDF s vodotlačou. Otvorte oba súbory v binárnom režime čítania.
Použi PdfFileReader() na vytvorenie inštancie objektu, ktorý predstavuje každý súbor PDF. Použi getPage() funkcia na získanie prvej a jedinej strany PDF s vodotlačou.
defmakepdf():
pdf_file = vstup("PDF súbor: ")
vodoznak = 'vodoznak.pdf'
zlúčené = "Vodoznak.pdf"
sOTVORENÉ(pdf_file, "rb") ako vstupný_súbor, OTVORENÉ(vodoznak, "rb") ako vodoznakový_súbor:
input_pdf = PdfFileReader (vstupný_súbor)
watermark_pdf = PdfFileReader (súbor_vodoznaku)
watermark_page = watermark_pdf.getPage (0)
Teraz je čas zlúčiť stránku vodoznaku s každou stránkou v cieľovom PDF.
Vytvorte objekt triedy PdfFileWriter, ktorý sa použije na generovanie výstupného PDF. Definujte slučku, ktorá sa bude opakovať na každej strane v požadovanom PDF. Funkcia getNumPages() vráti celkový počet strán v PDF. Pomocou funkcie getPage() získajte stránku a zlúčte ju s predtým uloženou stránkou vodoznaku.
Na pridanie každej zlúčenej strany do výsledného PDF použite objekt PdfFileWriter. Po vytvorení výstupného PDF otvorte výstupný súbor v binárnom režime zápisu a pomocou funkcie write() uložte vodoznak pdf do tohto súboru.
výstup = PdfFileWriter()
preivrozsah(input_pdf.getNumPages()):
pdf_page = input_pdf.getPage (i)
pdf_page.mergePage(vodoznaková_stránka)
výkon.addPage(pdf_page)
sOTVORENÉ(zlúčené, "wb") ako zlúčený_súbor:
výkon.písať(zlúčený_súbor)
Nakoniec zavolajte obe funkcie – makeWatermark() a makepdf() – na vytvorenie súboru PDF s vodotlačou:
makeWatermark()
makepdf()
Text PDF s vodoznakom vygenerovaný pomocou vyššie uvedeného programu Python vyzerá takto:
Okrem toho môžete postupovať podľa tejto päťkrokovej metódy vytvorte a pridajte vodoznak na akýkoľvek obrázok pomocou Canva. Môžete tiež použiť techniky na vodoznak vašich videí už za pár minút.
Môže sa stať, že ste omylom pridali vodoznak a chcete ho odstrániť. Môžete bezplatne používať online nástroje ako Soda PDF, Microsoft Word, Google Docs a PDF Zorro. Pre obrázky môžete preskúmať nástroje ako Wondershare PixCut, Inpaint, Aiseesoft, Apowersoft a Cutout.pro.
Na bezplatné odstránenie vodoznaku z videí použite Apowersoft, 123apps, PickFrom Blur a BeeCut.
Nezabudnite však bez súhlasu vlastníka použiť žiadny materiál chránený autorskými právami.