MCPcopy Create free account
hub / github.com/pymupdf/PyMuPDF / Annot

Class Annot

src/__init__.py:584–1951  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

582#
583
584class Annot:
585
586 def __init__(self, annot):
587 assert isinstance( annot, mupdf.PdfAnnot)
588 self.this = annot
589
590 def __repr__(self):
591 parent = getattr(self, 'parent', '<>')
592 return f"'{self.type[1]}' annotation on {parent}"
593
594 def __str__(self):
595 return self.__repr__()
596
597 def _erase(self):
598 if getattr(self, "thisown", False):
599 self.thisown = False
600
601 def _get_redact_values(self):
602 annot = self.this
603 if mupdf.pdf_annot_type(annot) != mupdf.PDF_ANNOT_REDACT:
604 return
605
606 values = dict()
607 try:
608 obj = mupdf.pdf_dict_gets(mupdf.pdf_annot_obj(annot), "RO")
609 if obj.m_internal:
610 message_warning("Ignoring redaction key '/RO'.")
611 xref = mupdf.pdf_to_num(obj)
612 values[dictkey_xref] = xref
613 obj = mupdf.pdf_dict_gets(mupdf.pdf_annot_obj(annot), "OverlayText")
614 if obj.m_internal:
615 text = mupdf.pdf_to_text_string(obj)
616 values[dictkey_text] = JM_UnicodeFromStr(text)
617 else:
618 values[dictkey_text] = ''
619 obj = mupdf.pdf_dict_get(mupdf.pdf_annot_obj(annot), PDF_NAME('Q'))
620 align = 0
621 if obj.m_internal:
622 align = mupdf.pdf_to_int(obj)
623 values[dictkey_align] = align
624 except Exception:
625 if g_exceptions_verbose: exception_info()
626 return
627 val = values
628
629 if not val:
630 return val
631 val["rect"] = self.rect
632 text_color, fontname, fontsize = TOOLS._parse_da(self)
633 val["text_color"] = text_color
634 val["fontname"] = fontname
635 val["fontsize"] = fontsize
636 fill = self.colors["fill"]
637 val["fill"] = fill
638 return val
639
640 def _getAP(self):
641 if g_use_extra:

Callers 15

nextMethod · 0.85
_add_file_annotMethod · 0.85
_add_freetext_annotMethod · 0.85
_add_ink_annotMethod · 0.85
_add_line_annotMethod · 0.85
_add_multilineMethod · 0.85
_add_redact_annotMethod · 0.85
_add_square_or_circleMethod · 0.85
_add_stamp_annotMethod · 0.85
_add_text_annotMethod · 0.85
_addWidgetMethod · 0.85
_load_annotMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…