Lezers zoals jij steunen MUO. Wanneer u een aankoop doet via links op onze site, kunnen we een aangesloten commissie verdienen. Lees verder.

Watermerken zijn een duidelijke, maar subtiele manier om de eigenaar van een bepaald bestand te identificeren. Hoewel mensen ze misschien vervelend vinden, dienen ze gracieus hun doel.

Met een watermerk kunt u niet alleen uw bestanden beschermen, maar ook beschrijvende tekst, locatie, generatietijd en meer toevoegen. Zorg er dus voor dat u de volgende keer dat u uw opdracht of journaalpapier inlevert een watermerk toevoegt met behulp van dit eenvoudige Python-programma.

Wat is de ReportLab-module?

Om een ​​watermerk aan een PDF-bestand toe te voegen, heb je een goede bibliotheek nodig, zoals de ReportLab-module. Het is een open-sourcebibliotheek waarmee u pdf's kunt maken en er grafieken, gegevens en afbeeldingen aan kunt toevoegen. Deze module helpt u bij het genereren van dynamische PDF's, het converteren van XML-bestanden naar PDF's en het genereren van rapporten. Om ReportLab op uw systeem te installeren, opent u een terminal en typt u:

Pip installeren rapportlab

Dit installeert ReportLab in uw Python-omgeving.

Wat is de PyPDF2-module?

PyPDF2 is een populaire bibliotheek die u kunt gebruiken om verschillende handige PDF-bewerkingen uit te voeren. Deze omvatten bijsnijden, samenvoegen, splitsen, roteren, transformeren, gegevens toevoegen, stempelen en watermerken. U kunt ook coderen en decoderen, tekst, afbeeldingen en metadata extraheren en PDF-annotaties lezen of toevoegen. Om PyPDF2 in uw systeem te installeren, opent u een terminal en typt u:

Pip installeren PyPDF2

Dit installeert PyPDF2 in uw Python-omgeving.

Het gewenste watermerk toevoegen aan PDF met behulp van Python

Een watermerk toevoegen aan een PDF-bestand met behulp van Python is vrij eenvoudig. U gaat een canvas maken en het tekstwatermerk tekenen met uw favoriete kleur en richting, en het vervolgens opslaan als een pdf.

Na het genereren van dit watermerkontwerp van één pagina, kunt u beide pdf's openen en pagina voor pagina samenvoegen. Voilà, je PDF met watermerk is dan klaar.

Begin uw programma door te importeren canvas van pdfgen, gelegen in de rapportlab moduul. De pdfgen-interface werkt op het laagste niveau om pdf's te genereren. U kunt het visualiseren als het schilderen van een documentontwerp en -structuur op een pagina. De klasse canvas biedt de bewerkingen die hiervoor nodig zijn.

Je kunt het canvas zien als een vel gewoon papier met cartesiaanse coördinaten. Het beginpunt (0,0) bevindt zich in de linker benedenhoek. De waarden van de x- en y-coördinaten nemen toe naarmate punten van de oorsprong weggaan, naar boven en naar rechts.

Importeer vanuit de ReportLab-bibliotheek inch, kleur, En pagina grootte. Het programma gebruikt inches als meeteenheid. Er zijn twee kleurformaten beschikbaar onder ReportLab: de RGB model, en de CYMK model. RGB heeft de voorkeur, maar als u meer controle wilt over het kleurniveau dat verschijnt wanneer u de pdf afdrukt, kunt u in plaats daarvan kiezen voor CYMK.

Zoals de naam al doet vermoeden, is de grootte van de pagina ingesteld op A4. Importeer bovendien de PdfFileReader En PdfFileWriter van PyPDF2 om lees- en schrijfbewerkingen op PDF-bestanden uit te voeren.

van reportlab.pdfgen importeren canvas
van reportlab.lib.eenheden importeren inch
van reportlab.lib importeren kleuren
van reportlab.lib.pagesizes importeren A4
van PyPDF2 importeren PdfFileReader, PdfFileWriter

Definieer een functie genaamd maakWatermerk() om het PDF-bestand met een watermerk van één pagina te maken dat u later zult gebruiken om op de pagina's van het gewenste document toe te passen. Vraag de gebruiker om de tekst van het watermerk in te voeren met behulp van de invoeropdracht.

Gebruik het canvas om een ​​tekengebied te genereren met de naam watermerk.pdf en A4 paginaformaat. De vertalen() functie verplaatst de oorsprong naar de linkerbovenhoek.

Stel het bestand van de tekst in op grijs met een dekking van 0,6; op een schaal van 0-1 is 0 het meest transparant en 1 het meest ondoorzichtig. Stel de letterstijl in op Helvetica met een grootte van 50. Pas een rotatie toe van 45 graden tegen de klok in. Geef de x- en y-coördinaten door samen met de tekst om deze over het canvas te tekenen en sla deze op met de functie save().

defmaakWatermerk():
tekst = invoer("Voer hier de tekst van het watermerk in:")
pdf = canvas. Canvas("watermerk.pdf", paginaformaat=A4)
pdf.vertalen(inch, inch)
pdf.setFillColor (kleuren.grijs, alpha=0.6)
pdf.setFont("Helvetica", 50)
pdf.draaien(45)
pdf.drawCentredString(400, 100, tekst)
pdf.redden()

Het watermerk PDF-bestand dat de bovenstaande functie genereert, ziet er als volgt uit:

Definieer een functie met de naam maakpdf() om de pagina's van de PDF van een watermerk te voorzien. Voer de naam in van het bestand dat u van een watermerk wilt voorzien, inclusief eventuele .pdf verlenging. Initialiseer een variabele om de naam van de PDF met watermerk op te slaan. Open beide bestanden in de gelezen binaire modus.

Gebruik de PdfFileReader() om een ​​object te instantiëren dat elke PDF vertegenwoordigt. Gebruik de getPagina() functie om de eerste en enige pagina van de PDF met watermerk te krijgen.

defmaakpdf():
pdf_file = invoer("PDF bestand: ")
watermerk = 'watermerk.pdf'
samengevoegd = "Watermerk.pdf"

metopen(PDF bestand, "rb") als Invoer bestand, open(watermerk, "rb") als watermerk_bestand:
input_pdf = PdfFileReader (invoer_bestand)
watermark_pdf = PdfFileReader (watermerk_bestand)
watermerk_pagina = watermerk_pdf.getPage (0)

Nu is het tijd om de watermerkpagina samen te voegen met elke pagina in de doel-PDF.

Maak een object van de klasse PdfFileWriter om te gebruiken voor het genereren van de uitvoer-PDF. Definieer een lus die elke pagina in de gewenste PDF herhaalt. De functie getNumPages() retourneert het totale aantal pagina's in een PDF. Gebruik de functie getPage() om de pagina op te halen en samen te voegen met de eerder opgeslagen watermerkpagina.

Gebruik het PdfFileWriter-object om elke samengevoegde pagina toe te voegen aan de uiteindelijke PDF. Nadat u de uitvoer-pdf hebt gemaakt, opent u het uitvoerbestand in binaire schrijfmodus en gebruikt u de functie write() om de pdf met watermerk in dit bestand op te slaan.

 uitvoer = PdfFileWriter()

vooriinbereik(invoer_pdf.getNumPages()):
pdf_page = input_pdf.getPage (i)
pdf_pagina.mergePagina(watermerk_pagina)
uitvoer.pagina toevoegen(pdf_pagina)

metopen(samengevoegd, "wb") als samengevoegd_bestand:
uitvoer.schrijven(samengevoegd_bestand)

Roep tot slot beide functies aan—makeWatermark() en makepdf()—om het PDF-bestand met watermerk te maken:

maakWatermerk()
maakpdf()

De PDF met tekstwatermerk gegenereerd met behulp van het bovenstaande Python-programma ziet er als volgt uit:

Bovendien kunt u deze methode in vijf stappen volgen om maak en voeg een watermerk toe aan elke afbeelding met Canva. Je kan ook gebruiken technieken om uw video's van een watermerk te voorzien in slechts een paar minuten.

Het kan voorkomen dat u per ongeluk een watermerk hebt toegevoegd en dit wilt verwijderen. U kunt online tools zoals Soda PDF, Microsoft Word, Google Docs en PDF Zorro gratis gebruiken. Voor afbeeldingen kunt u tools verkennen zoals Wondershare PixCut, Inpaint, Aiseesoft, Apowersoft en Cutout.pro.

Gebruik Apowersoft, 123apps, PickFrom Blur en BeeCut voor het gratis verwijderen van watermerken in video's.

Vergeet echter niet om geen auteursrechtelijk beschermd materiaal te gebruiken zonder toestemming van de eigenaar.