Аннотация выделений в PDF с использованием Python
Text Markup Annotations в PDF используются для выделения, подчеркивания, пропуска или добавления заметок к тексту в документе. Эти аннотации предназначены для выделения или привлечения внимания к конкретным частям текста. Такие аннотации позволяют пользователям визуально отмечать или изменять содержание PDF файла.
Аннотация выделения используется для маркировки текста цветным фоном, обычно желтым, чтобы указать на его важность или актуальность.
Аннотация подчеркивания — это линия, расположенная под выбранным текстом, чтобы указать на значимость, акцент или предложенные исправления.
Аннотация зачеркивания включает вычеркивание или зачеркивание определенного текста, чтобы показать, что он был удален, заменен или больше не является действительным.
Зигзагообразная линия используется для подчеркивания текста, чтобы указать на другой тип акцента, такой как орфографические ошибки, потенциальные проблемы или предлагаемые изменения.
Добавление аннотации текстовой разметки
Чтобы добавить аннотацию текстовой разметки в PDF документ, необходимо выполнить следующие действия:
- Загрузите PDF файл - новый объект Document.
- Создайте аннотации:
- HighlightAnnotation и установите параметры (заголовок, цвет).
- StrikeOutAnnotation и установите параметры (заголовок, цвет).
- SquigglyAnnotation и установите параметры (заголовок, цвет).
- UnderlineAnnotation и установите параметры (заголовок, цвет).
- После этого мы должны добавить все аннотации на страницу.
Добавить Highlight Annotation
import aspose.pdf as ap
# Открыть документ
document = ap.Document(input_file)
# Создать аннотацию Highlight
highlightAnnotation = ap.annotations.HighlightAnnotation(
document.pages[1], ap.Rectangle(300, 750, 320, 770, True)
)
document.pages[1].annotations.append(highlightAnnotation)
document.save(output_file)
Добавление аннотации зачёркивания
import aspose.pdf as ap
document = ap.Document(input_file)
strikeoutAnnotation = ap.annotations.StrikeOutAnnotation(
document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
)
strikeoutAnnotation.title = "Aspose User"
strikeoutAnnotation.subject = "Вставленный текст 1"
strikeoutAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
strikeoutAnnotation.color = ap.Color.blue
document.pages[1].annotations.append(strikeoutAnnotation)
document.save(output_file)
Добавление волнистой аннотации
import aspose.pdf as ap
document = ap.Document(input_file)
page = document.pages[1]
squigglyAnnotation = ap.annotations.SquigglyAnnotation(page, ap.Rectangle(67, 317, 261, 459, True))
squigglyAnnotation.title = "John Smith"
squigglyAnnotation.color = ap.Color.blue
page.annotations.append(squigglyAnnotation)
document.save(output_file)
Добавление аннотации подчеркивания
import aspose.pdf as ap
document = ap.Document(input_file)
underlineAnnotation = ap.annotations.UnderlineAnnotation(
document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
)
underlineAnnotation.title = "Aspose User"
underlineAnnotation.subject = "Вставленное подчеркивание 1"
underlineAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
underlineAnnotation.color = ap.Color.blue
document.pages[1].annotations.append(underlineAnnotation)
document.save(output_file)
Получить Аннотацию Разметки Текста
Пожалуйста, попробуйте использовать следующий фрагмент кода, чтобы получить аннотацию разметки текста из PDF-документа.
Получить Аннотацию Выделения
import aspose.pdf as ap
document = ap.Document(input_file)
highlightAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT)
]
for ha in highlightAnnotations:
print(ha.rect)
Получить Аннотацию Зачеркивания
import aspose.pdf as ap
document = ap.Document(input_file)
StrikeoutAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
]
for pa in StrikeoutAnnotations:
print(pa.rect)
Получить Аннотацию Волнистой Линией
import aspose.pdf as ap
document = ap.Document(input_file)
squigglyAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.SQUIGGLY)
]
for pa in squigglyAnnotations:
print(pa.rect)
Получить Подчеркнутую Аннотацию
import aspose.pdf as ap
document = ap.Document(input_file)
UnderlineAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.UNDERLINE)
]
for ta in UnderlineAnnotations:
print(ta.rect)
Удалить Аннотацию Разметки Текста
Следующий фрагмент кода показывает, как удалить аннотацию разметки текста из PDF файла.
Удалить Аннотацию Выделения
import aspose.pdf as ap
# Загрузить PDF файл
document = ap.Document(input_file)
highlightAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT)
]
for hs in highlightAnnotations:
document.pages[1].annotations.delete(hs)
document.save(output_file)
Удалить Аннотацию Зачеркивания
import aspose.pdf as ap
document = ap.Document(input_file)
StrikeoutAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
]
for pa in StrikeoutAnnotations:
document.pages[1].annotations.delete(pa)
document.save(output_file)
Удаление аннотации с волнистой линией
import aspose.pdf as ap
document = ap.Document(input_file)
squigglyAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.SQUIGGLY)
]
for pa in squigglyAnnotations:
document.pages[1].annotations.delete(pa)
document.save(output_file)
Удаление аннотации с подчеркиванием
import aspose.pdf as ap
document = ap.Document(input_file)
underlineAnnotations = [
a
for a in document.pages[1].annotations
if (a.annotation_type == ap.annotations.AnnotationType.UNDERLINE)
]
for ta in underlineAnnotations:
document.pages[1].annotations.delete(ta)
document.save(output_file)