Ajouter des Annotations de Figures en utilisant Python

Ajouter des annotations carrées et circulaires

Dans les documents PDF, une annotation carrée se réfère à un type spécifique d’annotation représentée par une forme carrée. Les annotations carrées sont utilisées pour mettre en évidence ou attirer l’attention sur une zone ou une section spécifique du document.

Les annotations Carré et Cercle doivent afficher, respectivement, un rectangle ou une ellipse sur la page.

Étapes pour créer des annotations carrées ou circulaires :

  1. Charger le fichier PDF - nouveau Document.
  2. Créer une nouvelle SquareAnnotation et définir les paramètres (nouveau Rectangle, titre, couleur, couleur intérieure, opacité).
  3. Ensuite, nous devons ajouter l’annotation carrée à la page.

Le code suivant vous montre comment ajouter des annotations carrées dans une page PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)

    squareAnnotation = ap.annotations.SquareAnnotation(document.pages[1], ap.Rectangle(60, 600, 250, 450, True))
    squareAnnotation.title = "John Smith"
    squareAnnotation.color = ap.Color.blue
    squareAnnotation.interior_color = ap.Color.blue_violet
    squareAnnotation.opacity = 0.25

    document.pages[1].annotations.append(squareAnnotation)

    document.save(output_file)

Le code suivant vous montre comment ajouter des annotations de cercle dans une page PDF.


    import aspose.pdf as ap

    # Ouvrir le document
    document = ap.Document(input_file)

    circleAnnotation = ap.annotations.CircleAnnotation(
        document.pages[1], ap.Rectangle(270, 160, 483, 383, True)
    )
    circleAnnotation.title = "John Smith"
    circleAnnotation.color = ap.Color.red
    circleAnnotation.interior_color = ap.Color.misty_rose
    circleAnnotation.opacity = 0.5
    circleAnnotation.popup = ap.annotations.PopupAnnotation(
        document.pages[1], ap.Rectangle(842, 316, 1021, 459, True)
    )

    document.pages[1].annotations.append(circleAnnotation)
    document.save(output_file)

En tant qu’exemple, nous verrons le résultat suivant de l’ajout d’annotations Carré et Cercle à un document PDF :

Démonstration d’annotation Cercle et Carré

Obtenir l’annotation Cercle

Veuillez essayer d’utiliser l’extrait de code suivant pour obtenir l’annotation Cercle à partir d’un document PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    circleAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.CIRCLE)
    ]

    for ca in circleAnnotations:
        print(ca.rect)

Obtenir l’annotation Carré

Veuillez essayer d’utiliser l’extrait de code suivant pour obtenir l’annotation Carré à partir d’un document PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    squareAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.SQUARE)
    ]

    for pa in squareAnnotations:
        print(pa.rect)

Supprimer l’annotation Cercle

Le extrait de code suivant montre comment supprimer une annotation de cercle d’un fichier PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    circleAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.CIRCLE)
    ]

    for ca in circleAnnotations:
        document.pages[1].annotations.delete(ca)

    document.save(output_file)

Supprimer une Annotation Carrée

Le extrait de code suivant montre comment supprimer une annotation carrée d’un fichier PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    squareAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.SQUARE)
    ]

    for pa in squareAnnotations:
        document.pages[1].annotations.delete(pa)

    document.save(output_file)

Ajouter des Annotations Polygone et Polyligne

L’outil Polyligne vous permet de créer des formes et des contours avec un nombre arbitraire de côtés sur le document.

Annotations de Polygone représentent des polygones sur une page. Ils peuvent avoir n’importe quel nombre de sommets connectés par des lignes droites.

Annotations de Polyline sont également similaires aux polygones, la seule différence est que les premiers et derniers sommets ne sont pas implicitement connectés.

Étapes avec lesquelles nous créons des annotations de polygone :

  1. Charger le fichier PDF - nouveau Document.
  2. Créer une nouvelle Annotation de Polygone et définir les paramètres du polygone (nouveau Rectangle, nouveaux Points, titre, couleur, couleur intérieure et opacité).
  3. Après, nous pouvons ajouter des annotations à la page.

Le fragment de code suivant montre comment ajouter des annotations de polygone à un fichier PDF :


    import aspose.pdf as ap

    document = ap.Document(input_file)

    polygonAnnotation = ap.annotations.PolygonAnnotation(
        document.pages[1],
        ap.Rectangle(200, 300, 400, 400, True),
        [
            ap.Point(200, 300),
            ap.Point(220, 300),
            ap.Point(250, 330),
            ap.Point(300, 304),
            ap.Point(300, 400),
        ],
    )
    polygonAnnotation.title = "John Smith"
    polygonAnnotation.color = ap.Color.blue
    polygonAnnotation.interior_color = ap.Color.blue_violet
    polygonAnnotation.opacity = 0.25

    document.pages[1].annotations.append(polygonAnnotation)
    document.save(output_file)

The following code snippet shows how to add Polyline Annotations to a PDF file:

  1. Charger le fichier PDF - nouveau Document.
  2. Créer de nouvelles Annotations de polyligne et définir les paramètres du polygone (nouveau Rectangle, nouveaux Points, titre, couleur, couleur intérieure et opacité).
  3. Ensuite, nous pouvons ajouter des annotations à la page.

    import aspose.pdf as ap

    document = ap.Document(input_file)

    polylineAnnotation = ap.annotations.PolylineAnnotation(
        document.pages[1],
        ap.Rectangle(270, 193, 571, 383, True),
        [
            ap.Point(545, 150),
            ap.Point(545, 190),
            ap.Point(667, 190),
            ap.Point(667, 110),
            ap.Point(626, 111),
        ],
    )
    polylineAnnotation.title = "John Smith"
    polylineAnnotation.color = ap.Color.red
    polylineAnnotation.popup = ap.annotations.PopupAnnotation(
        document.pages[1], ap.Rectangle(842, 196, 1021, 338, True)
    )

    document.pages[1].annotations.append(polylineAnnotation)
    document.save(output_file)

Obtenir des annotations de polygone et de polyligne

Veuillez essayer d’utiliser le code suivant pour obtenir des annotations de polygone dans un document PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    polygonAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.POLYGON)
    ]

    for pa in polygonAnnotations:
        print(pa.rect)

Veuillez essayer d’utiliser le code suivant pour obtenir des annotations de polyligne dans un document PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    polylineAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.POLY_LINE)
    ]

    for pa in polylineAnnotations:
        print(pa.rect)

Supprimer les annotations de polygone et de polyligne

Le code suivant montre comment supprimer des annotations de polygone d’un fichier PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    polygonAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.POLYGON)
    ]

    for pa in polygonAnnotations:
        document.pages[1].annotations.delete(pa)

    document.save(output_file)

Le fragment de code suivant montre comment supprimer des annotations de polyligne d’un fichier PDF.


    import aspose.pdf as ap

    document = ap.Document(input_file)
    polylineAnnotations = [
        a
        for a in document.pages[1].annotations
        if (a.annotation_type == ap.annotations.AnnotationType.POLY_LINE)
    ]

    for pa in polylineAnnotations:
        document.pages[1].annotations.delete(pa)

    document.save(output_file)