PNG JPG BMP TIFF PDF
Aspose.PDF  для Python

Добавление аннотаций выделенного текста в PDF через Python SDK

API для добавления аннотаций в PDF документы с использованием облачного Python SDK.

Get Started

Как добавить аннотации в PDF через облачный Python SDK

Чтобы добавить аннотации выделенного текста в PDF, мы используем Aspose.PDF Cloud Python SDK. Этот облачный SDK помогает программистам на Python разрабатывать облачные приложения для создания, аннотирования, редактирования и конвертации PDF, используя язык программирования Python через Aspose.PDF REST API. Просто создайте учетную запись на Aspose for Cloud и получите информацию о вашем приложении. Как только у вас будет SID и ключ приложения, вы готовы использовать Aspose.PDF Cloud Python SDK. Если пакет Python размещен на Github, вы можете установить его напрямую с Github:

Установка с Github


     
    pip install git+https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-python.git

Команда консоли диспетчера пакетов

     
    pip install asposepdfcloud

Шаги для добавления аннотаций в PDF через Python

Разработчики Aspose.PDF Cloud могут легко загружать и добавлять аннотации в PDF всего в несколько строк кода.

  1. Установите Python SDK.
  2. Загрузите PDF в облачное хранилище.
  3. Создайте новую аннотацию выделения с определенной позицией, цветом, текстом и стилем.
  4. Отправьте аннотацию на указанную страницу с использованием Aspose Cloud API.
  5. Проверьте ответ и зафиксируйте результат.
  6. Загрузите обновленный файл для локального использования.
 

Добавление аннотаций в PDF с использованием Python


    from annotations_helper import Config, PdfAnnotationsHelper, logging
    from asposepdfcloud import PdfApi, HighlightAnnotation, Rectangle, Color, Point, AnnotationFlags, HorizontalAlignment, VerticalAlignment

    class PdfAddHighlightAnnotations:
        """Class for managing PDF annotations using Aspose PDF Cloud API."""
        def __init__(self, pdf_api: PdfApi, helper: PdfAnnotationsHelper):
            self.pdfApi = pdf_api
            self.helper = helper

        def append_highlight_annotation(self):
            """Append a new highlight text annotation to the PDF document."""
            if self.pdfApi:
                self.helper.uploadFile(Config.PDF_DOCUMENT_NAME, Config.LOCAL_FOLDER, Config.REMOTE_FOLDER)

                args = {
                    "folder": Config.REMOTE_FOLDER
                }

                new_annotation = HighlightAnnotation(
                    rect = Rectangle(llx=100, lly=350, urx=450, ury=400),
                    name = 'Highlight_Text_Annotation',
                    flags = [AnnotationFlags.DEFAULT],
                    horizontal_alignment = HorizontalAlignment.LEFT,
                    vertical_alignment = VerticalAlignment.TOP,
                    rich_text = Config.NEW_HL_ANNOTATION_TEXT,
                    subject = Config.NEW_HL_ANNOTATION_SUBJECT,
                    contents= Config.NEW_HL_ANNOTATION_CONTENTS,
                    title = Config.NEW_HL_ANNOTATION_DESCRIPTION,
                    z_index = 1,
                    color=Color(a=0xFF, r=0, g=0xFF, b=0),
                    quad_points = [
                        Point(10, 10),
                        Point(20, 10),
                        Point(10, 20),
                        Point(10, 10)
                    ],
                    modified = '03/27/2025 00:00:00.000 AM',
                )
                try:
                    response = self.pdfApi.post_page_highlight_annotations(Config.PDF_DOCUMENT_NAME, Config.PAGE_NUMBER, [new_annotation], **args)
                    if response.code == 200:
                        logging.info(f"append_highlight_annotation(): annotation '{Config.NEW_HL_ANNOTATION_TEXT}' added to the document '{Config.PDF_DOCUMENT_NAME}'.")
                        self.helper.downloadFile(Config.PDF_DOCUMENT_NAME, Config.LOCAL_RESULT_DOCUMENT_NAME, Config.LOCAL_FOLDER, Config.REMOTE_FOLDER, "add_highlight_")
                    else:
                        logging.error(f"append_highlight_annotation(): Failed to add annotation to the document. Response code: {response.code}")
                except Exception as e:
                    logging.error(f"append_highlight_annotation(): Error while adding annotation: {e}")