Αυτό το σύντομο θέμα περιγράφει πώς να αφαιρέσετε το υδατογράφημα από το PDF χρησιμοποιώντας την Python. Περιλαμβάνει όλους τους πόρους που απαιτούνται για τη δημιουργία του περιβάλλοντος, μια διαδικασία βήμα προς βήμα για την ανάπτυξη της εφαρμογής και ένα εκτελούμενο δείγμα κώδικα για αφαίρεση κειμένου υδατογραφήματος από PDF χρησιμοποιώντας Python. Θα έχετε επίσης εμπειρία να εργάζεστε με διαφορετικούς τύπους τεχνουργημάτων σε μια σελίδα και να φιλτράρετε τα τεχνουργήματα των απαιτούμενων τύπων.
Βήματα για τη διαγραφή υδατογραφήματος από το PDF χρησιμοποιώντας Python
- Δημιουργήστε το περιβάλλον για να προσθέσετε το Aspose.PDF για Python μέσω .NET στο έργο σας για να αφαιρέσετε το υδατογράφημα
- Αποκτήστε πρόσβαση στο αρχείο προέλευσης PDF χρησιμοποιώντας το αντικείμενο κλάσης Document για να διαγράψετε το υδατογράφημα
- Διασχίστε όλα τα artifacts σε κάθε σελίδα του εγγράφου και δημιουργήστε μια λίστα με τεχνουργήματα τύπου υδατογραφήματος
- Διαγράψτε όλα τα υδατογραφήματα, αφού συμπληρωθεί η λίστα με τα επιθυμητά αντικείμενα
- Αποθηκεύστε το αρχείο PDF που δημιουργήθηκε στο δίσκο αφού αφαιρέσετε τα υδατογραφήματα
Τα προαναφερθέντα βήματα εξηγούν τη διαδικασία αφαίρεσης υδατογραφήματος από έγγραφο PDF χρησιμοποιώντας Python εκθέτοντας τους σημαντικούς πόρους, κλάσεις, μεθόδους και ιδιότητες που απαιτούνται κατά την ανάπτυξη αυτής της εφαρμογής. Αρχικά, το αρχείο προέλευσης PDF φορτώνεται χρησιμοποιώντας το αντικείμενο κλάσης Document και, στη συνέχεια, διασχίζονται όλες οι σελίδες του. Για κάθε σελίδα, τα αντίστοιχα τεχνουργήματα ελέγχονται για το υδατογράφημα τύπου και αποθηκεύονται σε μια λίστα για αφαίρεση στο τέλος της διέλευσης.
Κώδικας για αφαίρεση υδατογραφήματος από PDF χρησιμοποιώντας Python
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") |
Αυτός ο κώδικας παρουσιάζει τη διαδικασία ανάπτυξης ενός αφαίρεσης σημαδιών νερού σε PDF χρησιμοποιώντας Python. Έχει πρόσβαση στη συλλογή Page.artifacts για να αναγνωρίσει τα τεχνουργήματα τύπου υδατογραφήματος συγκρίνοντας την ιδιότητα Subtype με την τιμή απαριθμητή Artifact.artifact_subtype.WATERMARK. Μόλις διασχιστούν και συλλεχθούν όλα τα τεχνουργήματα υδατογραφήματος μέσα σε μια λίστα, αυτή η λίστα αναλύεται και τα αντίστοιχα υδατογραφήματα διαγράφονται από κάθε σελίδα ξεχωριστά.
Αυτό το γρήγορο θέμα μας καθοδήγησε να διαγράψουμε το υδατογράφημα από το PDF χρησιμοποιώντας Python. Εάν θέλετε να μάθετε τη διαδικασία κατάργησης της υπογραφής από το PDF, ανατρέξτε στο άρθρο στο πώς να αφαιρέσετε την υπογραφή από το PDF χρησιμοποιώντας Python.