From 4fc0040d8c6d3a1f1e8a96ed04c5f7ed113af54c Mon Sep 17 00:00:00 2001 From: pubpub-zz <4083478+pubpub-zz@users.noreply.github.com> Date: Sun, 26 Mar 2023 11:45:21 +0200 Subject: [PATCH] ENH: Add AnnotationBuilder.popup (#1665) Fixes #1195 See #107 --- docs/user/adding-pdf-annotations.md | 34 ++++++++++++++++++++ docs/user/annotation-popup.png | Bin 0 -> 104471 bytes pypdf/_writer.py | 44 ++++++++++++++++++++----- pypdf/generic/_annotations.py | 48 +++++++++++++++++++++++++++- tests/test_generic.py | 29 +++++++++++++++++ 5 files changed, 146 insertions(+), 9 deletions(-) create mode 100644 docs/user/annotation-popup.png diff --git a/docs/user/adding-pdf-annotations.md b/docs/user/adding-pdf-annotations.md index b65892c53..0dbdf244a 100644 --- a/docs/user/adding-pdf-annotations.md +++ b/docs/user/adding-pdf-annotations.md @@ -196,6 +196,40 @@ with open("annotated-pdf.pdf", "wb") as fp: writer.write(fp) ``` +## Popup + +Manage the Popup windows for markups. looks like this: + +![](annotation-popup.png) + +you can use the {py:class}`AnnotationBuilder `: + +you have to use the returned result from add_annotation() to fill-up the + +```python +# Arrange +writer = pypdf.PdfWriter() +writer.append(os.path.join(RESOURCE_ROOT, "crazyones.pdf"), [0]) + +# Act +text_annotation = writer.add_annotation( + 0, + AnnotationBuilder.text( + text="Hello World\nThis is the second line!", + rect=(50, 550, 200, 650), + open=True, + ), +) + +popup_annotation = AnnotationBuilder.popup( + rect=(50, 550, 200, 650), + open=True, + parent=text_annotation, # use the output of add_annotation +) + +writer.write("annotated-pdf-popup.pdf") +``` + ## Link If you want to add a link, you can use diff --git a/docs/user/annotation-popup.png b/docs/user/annotation-popup.png new file mode 100644 index 0000000000000000000000000000000000000000..f8f45caece0fd9825e2a5cab0a84826b5d1e3c0d GIT binary patch literal 104471 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 literal 0 HcmV?d00001 diff --git a/pypdf/_writer.py b/pypdf/_writer.py index bc2415f02..4b556878b 100644 --- a/pypdf/_writer.py +++ b/pypdf/_writer.py @@ -2135,7 +2135,7 @@ def add_link( border: Optional[ArrayObject] = None, fit: FitType = "/Fit", *args: ZoomArgType, - ) -> None: + ) -> DictionaryObject: deprecation_with_replacement( "add_link", "add_annotation(AnnotationBuilder.link(...))" ) @@ -2175,7 +2175,7 @@ def addLink( deprecate_with_replacement( "addLink", "add_annotation(AnnotationBuilder.link(...))", "4.0.0" ) - return self.add_link(pagenum, page_destination, rect, border, fit, *args) + self.add_link(pagenum, page_destination, rect, border, fit, *args) _valid_layouts = ( "/NoLayout", @@ -2421,17 +2421,40 @@ def pageMode(self, mode: PagemodeType) -> None: # deprecated deprecation_with_replacement("pageMode", "page_mode", "3.0.0") self.page_mode = mode - def add_annotation(self, page_number: int, annotation: Dict[str, Any]) -> None: + def add_annotation( + self, + page_number: Union[int, PageObject], + annotation: Dict[str, Any], + ) -> DictionaryObject: + """ + Add a single annotation to the page. + The added annotation must be a new annotation. + It can not be recycled. + + Args: + page_number: PageObject or page index. + annotation: Annotation to be added (created with annotation). + + Returns: + The inserted object + This can be used for pop-up creation, for example + """ + page = page_number + if isinstance(page, int): + page = self.pages[page] + elif not isinstance(page, PageObject): + raise TypeError("page: invalid type") + to_add = cast(DictionaryObject, _pdf_objectify(annotation)) - to_add[NameObject("/P")] = self.get_object(self._pages)["/Kids"][page_number] # type: ignore - page = self.pages[page_number] + to_add[NameObject("/P")] = page.indirect_reference + if page.annotations is None: page[NameObject("/Annots")] = ArrayObject() assert page.annotations is not None # Internal link annotations need the correct object type for the # destination - if to_add.get("/Subtype") == "/Link" and NameObject("/Dest") in to_add: + if to_add.get("/Subtype") == "/Link" and "/Dest" in to_add: tmp = cast(dict, to_add[NameObject("/Dest")]) dest = Destination( NameObject("/LinkName"), @@ -2442,9 +2465,14 @@ def add_annotation(self, page_number: int, annotation: Dict[str, Any]) -> None: ) to_add[NameObject("/Dest")] = dest.dest_array - ind_obj = self._add_object(to_add) + page.annotations.append(self._add_object(to_add)) + + if to_add.get("/Subtype") == "/Popup" and NameObject("/Parent") in to_add: + cast(DictionaryObject, to_add["/Parent"].get_object())[ + NameObject("/Popup") + ] = to_add.indirect_reference - page.annotations.append(ind_obj) + return to_add def clean_page(self, page: Union[PageObject, IndirectObject]) -> PageObject: """ diff --git a/pypdf/generic/_annotations.py b/pypdf/generic/_annotations.py index 7ea2db0fc..e54a6e3bb 100644 --- a/pypdf/generic/_annotations.py +++ b/pypdf/generic/_annotations.py @@ -10,7 +10,7 @@ from ._data_structures import ArrayObject, DictionaryObject from ._fit import DEFAULT_FIT, Fit from ._rectangle import RectangleObject -from ._utils import hex_to_rgb +from ._utils import hex_to_rgb, logger_warning def _get_bounding_rectangle(vertices: List[Tuple[float, float]]) -> RectangleObject: @@ -143,6 +143,52 @@ def free_text( ) return free_text + @staticmethod + def popup( + rect: Union[RectangleObject, Tuple[float, float, float, float]], + flags: int = 0, + parent: Optional[DictionaryObject] = None, + open: bool = False, + ) -> DictionaryObject: + """ + Add a popup to the document. + + Args: + rect: + Specifies the clickable rectangular area as `[xLL, yLL, xUR, yUR]` + flags: + 1 - invisible, 2 - hidden, 3 - print, 4 - no zoom, + 5 - no rotate, 6 - no view, 7 - read only, 8 - locked, + 9 - toggle no view, 10 - locked contents + open: + Whether the popup should be shown directly (default is False). + parent: + The contents of the popup. Create this via the AnnotationBuilder. + + Returns: + A dictionary object representing the annotation. + """ + popup_obj = DictionaryObject( + { + NameObject("/Type"): NameObject("/Annot"), + NameObject("/Subtype"): NameObject("/Popup"), + NameObject("/Rect"): RectangleObject(rect), + NameObject("/Open"): BooleanObject(open), + NameObject("/Flags"): NumberObject(flags), + } + ) + if parent: + # This needs to be an indirect object + try: + popup_obj[NameObject("/Parent")] = parent.indirect_reference + except AttributeError: + logger_warning( + "Unregistered Parent object : No Parent field set", + __name__, + ) + + return popup_obj + @staticmethod def line( p1: Tuple[float, float], diff --git a/tests/test_generic.py b/tests/test_generic.py index 6cdb42b96..17d760420 100644 --- a/tests/test_generic.py +++ b/tests/test_generic.py @@ -939,6 +939,35 @@ def test_annotation_builder_text(pdf_file_path): writer.write(fp) +def test_annotation_builder_popup(): + # Arrange + pdf_path = RESOURCE_ROOT / "outline-without-title.pdf" + reader = PdfReader(pdf_path) + page = reader.pages[0] + writer = PdfWriter() + writer.add_page(page) + + # Act + text_annotation = AnnotationBuilder.text( + text="Hello World\nThis is the second line!", + rect=(50, 550, 200, 650), + open=True, + ) + ta = writer.add_annotation(0, text_annotation) + + popup_annotation = AnnotationBuilder.popup( + rect=(50, 550, 200, 650), + open=True, + parent=ta, # prefer to use for evolutivity + ) + + writer.add_annotation(writer.pages[0], popup_annotation) + + target = "annotated-pdf-popup.pdf" + writer.write(target) + Path(target).unlink() # comment this out for manual inspection + + def test_checkboxradiobuttonattributes_opt(): assert "/Opt" in CheckboxRadioButtonAttributes.attributes_dict()