From 57b4323dc868df4dc78ae8bcfbfd4999d4f5e67b Mon Sep 17 00:00:00 2001 From: Martin Thoma Date: Sun, 15 Jan 2023 22:48:06 +0100 Subject: [PATCH] ENH: Add Polygon annotation See #107 --- docs/user/adding-pdf-annotations.md | 26 +++++++++++++++++++++++++ docs/user/annotation-polygon.png | Bin 0 -> 114566 bytes pypdf/generic/_annotations.py | 29 +++++++++++++++++++++++++++- tests/test_generic.py | 22 +++++++++++++++++++++ 4 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 docs/user/annotation-polygon.png diff --git a/docs/user/adding-pdf-annotations.md b/docs/user/adding-pdf-annotations.md index 54c451547..fde514e7b 100644 --- a/docs/user/adding-pdf-annotations.md +++ b/docs/user/adding-pdf-annotations.md @@ -119,6 +119,32 @@ If you want the rectangle to be filled, use the `interiour_color="ff0000"` param This method uses the "square" annotation type of the PDF format. +## Polygon + +If you want to add a polygon like this: + +![](annotation-polygon.png) + +you can use the {py:class}`AnnotationBuilder `: + +```python +pdf_path = os.path.join(RESOURCE_ROOT, "crazyones.pdf") +reader = PdfReader(pdf_path) +page = reader.pages[0] +writer = PdfWriter() +writer.add_page(page) + +# Add the line +annotation = AnnotationBuilder.polygon( + vertices=[50, 550, 200, 650, 70, 750, 50, 700], +) +writer.add_annotation(page_number=0, annotation=annotation) + +# Write the annotated file to disk +with open("annotated-pdf.pdf", "wb") as fp: + writer.write(fp) +``` + ## Link If you want to add a link, you can use diff --git a/docs/user/annotation-polygon.png b/docs/user/annotation-polygon.png new file mode 100644 index 0000000000000000000000000000000000000000..5b8e74f744e7b9b77371c18e3d46b0a458be7dc2 GIT binary patch literal 114566 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 TfqXXNKlbd_RnJwm^85b)BZ^LF literal 0 HcmV?d00001 diff --git a/pypdf/generic/_annotations.py b/pypdf/generic/_annotations.py index c2f43af90..d3edead75 100644 --- a/pypdf/generic/_annotations.py +++ b/pypdf/generic/_annotations.py @@ -1,4 +1,4 @@ -from typing import Optional, Tuple, Union +from typing import List, Optional, Tuple, Union from ._base import ( BooleanObject, @@ -210,6 +210,33 @@ def rectangle( return square_obj + @staticmethod + def polygon(vertices: List[Tuple[float, float]]) -> DictionaryObject: + if len(vertices) == 0: + raise ValueError("A polygon needs at least 1 vertex with two coordinates") + x_min, y_min = vertices[0][0], vertices[0][1] + x_max, y_max = vertices[0][0], vertices[0][1] + for x, y in vertices: + x_min = min(x_min, x) + y_min = min(y_min, y) + x_max = min(x_max, x) + y_max = min(y_max, y) + rect = RectangleObject((x_min, y_min, x_max, y_max)) + coord_list = [] + for x, y in vertices: + coord_list.append(NumberObject(x)) + coord_list.append(NumberObject(y)) + obj = DictionaryObject( + { + NameObject("/Type"): NameObject("/Annot"), + NameObject("/Subtype"): NameObject("/Polygon"), + NameObject("/Vertices"): ArrayObject(coord_list), + NameObject("/IT"): NameObject("PolygonCloud"), + NameObject("/Rect"): RectangleObject(rect), + } + ) + return obj + @staticmethod def link( rect: Union[RectangleObject, Tuple[float, float, float, float]], diff --git a/tests/test_generic.py b/tests/test_generic.py index a59cd3d3e..195e1c876 100644 --- a/tests/test_generic.py +++ b/tests/test_generic.py @@ -746,6 +746,28 @@ def test_annotation_builder_free_text(): os.remove(target) # comment this out for manual inspection +def test_annotation_builder_polygon(): + # Arrange + pdf_path = RESOURCE_ROOT / "crazyones.pdf" + reader = PdfReader(pdf_path) + page = reader.pages[0] + writer = PdfWriter() + writer.add_page(page) + + # Act + annotation = AnnotationBuilder.polygon( + vertices=[(50, 550), (200, 650), (70, 750), (50, 700)], + ) + writer.add_annotation(0, annotation) + + # Assert: You need to inspect the file manually + target = "annotated-pdf.pdf" + with open(target, "wb") as fp: + writer.write(fp) + + os.remove(target) # comment this out for manual inspection + + def test_annotation_builder_line(): # Arrange pdf_path = RESOURCE_ROOT / "crazyones.pdf"