Utilisation de l'Annotation de Texte pour PDF via Python
Comment ajouter une annotation de texte dans un fichier PDF existant
Une annotation de texte est une annotation attachée à un emplacement spécifique dans un document PDF. Lorsqu’elle est fermée, l’annotation est affichée sous forme d’icône ; lorsqu’elle est ouverte, elle doit afficher une fenêtre contextuelle contenant le texte de la note dans la police et la taille choisies par le lecteur.
Les annotations sont contenues dans la collection Annotations d’une page particulière. Cette collection contient les annotations uniquement pour cette page individuelle ; chaque page a sa propre collection Annotations.
Pour ajouter une annotation à une page particulière, ajoutez-la à la collection Annotations de cette page avec la méthode add().
-
Tout d’abord, créez une annotation que vous souhaitez ajouter au PDF.
-
Ensuite, ouvrez le PDF d’entrée.
-
Ajoutez l’annotation à la collection Annotations de l’objet ‘page’.
Le code suivant montre comment ajouter une annotation dans une page PDF.
import aspose.pdf as ap
document = ap.Document(input_file)
textAnnotation = ap.annotations.TextAnnotation(
document.pages[1], ap.Rectangle(300, 700.664, 320, 720.769, True)
)
textAnnotation.title = "Utilisateur Aspose"
textAnnotation.subject = "Texte inséré 1"
textAnnotation.contents = "qwerty"
textAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
textAnnotation.color = ap.Color.blue
document.pages[1].annotations.append(textAnnotation)
document.save(output_file)
Obtenir une annotation de texte à partir d’un fichier PDF
import aspose.pdf as ap
document = ap.Document(input_file)
textAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.TEXT)
]
for ta in textAnnotations:
print(ta.rect)
Supprimer l’annotation de texte du fichier PDF
import aspose.pdf as ap
document = ap.Document(input_file)
textAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.TEXT)
]
for ta in textAnnotations:
document.pages[1].annotations.delete(ta)
document.save(output_file)
Comment ajouter (ou créer) une nouvelle annotation de texte libre
Une annotation de texte libre affiche le texte directement sur la page. La classe FreeTextAnnotation permet de créer ce type d’annotation. Dans l’extrait suivant, nous ajoutons une annotation de texte libre au-dessus de la première occurrence de la chaîne.
import aspose.pdf as ap
# Charger le fichier PDF
document = ap.Document(input_file)
freeTextAnnotation = ap.annotations.FreeTextAnnotation(
document.pages[1], ap.Rectangle(299, 713, 308, 720, True), ap.annotations.DefaultAppearance()
)
freeTextAnnotation.title = "Utilisateur Aspose"
freeTextAnnotation.color = ap.Color.light_green
document.pages[1].annotations.append(freeTextAnnotation)
document.save(output_file)
Obtenir une annotation de texte libre à partir d’un fichier PDF
import aspose.pdf as ap
document = ap.Document(input_file)
freeTextAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.FREE_TEXT)
]
for fa in freeTextAnnotations:
print(fa.rect)
Supprimer une annotation de texte libre d’un fichier PDF
import aspose.pdf as ap
# Charger le fichier PDF
document = ap.Document(input_file)
freeTextAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.FREE_TEXT)
]
for fa in freeTextAnnotations:
document.pages[1].annotations.delete(fa)
document.save(output_file)
Barrer des mots en utilisant StrikeOutAnnotation
Aspose.PDF pour Python vous permet d’ajouter, de supprimer et de mettre à jour des annotations dans des documents PDF. Une des classes vous permet également de barrer des annotations. Lorsqu’une StrikeOutAnnotation est appliquée à un PDF, une ligne est tracée à travers le texte spécifié, indiquant qu’il doit être supprimé ou ignoré.
Le code suivant montre comment ajouter une StrikeOutAnnotation à un PDF.
import aspose.pdf as ap
document = ap.Document(input_file)
strikeoutAnnotation = ap.annotations.StrikeOutAnnotation(
document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
)
strikeoutAnnotation.title = "Utilisateur Aspose"
strikeoutAnnotation.subject = "Texte inséré 1"
strikeoutAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
strikeoutAnnotation.color = ap.Color.blue
document.pages[1].annotations.append(strikeoutAnnotation)
document.save(output_file)
Obtenir StrikeOutAnnotation du PDF
import aspose.pdf as ap
document = ap.Document(input_file)
StrikeoutAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
]
for pa in StrikeoutAnnotations:
print(pa.rect)
Supprimer StrikeOutAnnotation du PDF
import aspose.pdf as ap
document = ap.Document(input_file)
StrikeoutAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
]
for pa in StrikeoutAnnotations:
document.pages[1].annotations.delete(pa)
document.save(output_file)