Toto krátké téma popisuje jak odstranit vodoznak z PDF pomocí Pythonu. Zahrnuje všechny zdroje potřebné k vytvoření prostředí, postup pro vývoj aplikace krok za krokem a spustitelný ukázkový kód pro odstranění textu vodoznaku z PDF pomocí Pythonu. Vyzkoušíte si také práci s různými typy artefaktů na stránce a filtrování artefaktů požadovaných typů.
Kroky k odstranění vodoznaku z PDF pomocí Pythonu
- Vytvořte prostředí pro přidání Aspose.PDF pro Python přes .NET do vašeho projektu, abyste odstranili vodoznak
- Chcete-li vodoznak odstranit, otevřete zdrojový soubor PDF pomocí objektu třídy Document
- Projděte všechny artifacts na každé stránce dokumentu a vytvořte seznam artefaktů typu vodoznak
- Jakmile se seznam zaplní požadovanými artefakty, odstraňte všechny vodoznaky
- Po odstranění vodoznaků uložte vygenerovaný soubor PDF na disk
Výše uvedené kroky vysvětlují postup odstranění vodoznaku z dokumentu PDF pomocí Pythonu odhalením důležitých zdrojů, tříd, metod a vlastností požadovaných při vývoji této aplikace. Zpočátku se zdrojový soubor PDF načte pomocí objektu třídy Document a poté se projdou všechny jeho stránky. U každé stránky se zkontrolují příslušné artefakty na typ vodoznaku a uloží se do seznamu, který lze na konci průchodu odstranit.
Kód pro odstranění vodoznaku z PDF pomocí Pythonu
import aspose.pdf as pdf | |
# Set the source directory path | |
filePath = "C://Words//" | |
# Load the license in your application to remove watermark | |
pdfWatermarkLicense = pdf.License() | |
pdfWatermarkLicense.set_license(filePath + "Conholdate.Total.Product.Family.lic") | |
#Open the source PDF file with a watermark on it | |
document = pdf.Document(filePath + "watermarked.pdf") | |
#Create an array to save the watermark-type artifacts | |
artifactsToBeDeleted = [] | |
#Parse through all the pages inside the loaded PDF file | |
for page in document.pages: | |
#Parse through all the artifacts inside the current page | |
for item in page.artifacts: | |
#Check if the type of the artifact is a watermark | |
if item.sub_type == pdf.Artifact.artifact_subtype.WATERMARK: | |
#Save the artifact reference in the array for deletion | |
artifactsToBeDeleted.add(item) | |
#Parse all the artifacts to be deleted | |
for item in artifactsToBeDeleted: | |
# Delete the current artifact | |
page.artifacts.delete(item) | |
#Save the resultant PDF file having no watermark in it | |
document.save(filePath + "withoutWatermark.pdf") | |
print("Watermark removed from PDF") |
Tento kód ukazuje postup pro vývoj odstraňovače vodoznaků v PDF pomocí Pythonu. Přistupuje ke kolekci Page.artifacts, aby identifikoval artefakty typu vodoznaku porovnáním vlastnosti Subtype s hodnotou enumerátoru Artifact.artifact_subtype.WATERMARK. Jakmile jsou všechny artefakty vodoznaku procházeny a shromážděny v seznamu, je tento seznam analyzován a příslušné vodoznaky jsou odstraněny z každé stránky samostatně.
Toto rychlé téma nás navedlo k vymazání vodoznaku z PDF pomocí Pythonu. Pokud se chcete naučit proces odstranění podpisu z PDF, přečtěte si článek na jak odstranit podpis z PDF pomocí Pythonu.