Добавить водяные знаки в PDF в Python

Добавить артефакт водяного знака в PDF Document используя Aspose.PDF for Python via .NET. Водяной знак — это визуальное наложение, применяемое к страницам для брендинга, безопасности или информационных целей. Пример показывает, как настроить TextState внешний вид, позиционирование с HorizontalAlignment и VerticalAlignment, вращение и прозрачность перед применением водяного знака к Page.

Извлечь водяные знаки из PDF

  1. Загрузите документ PDF.
  2. Получите доступ к артефактам страницы.
  3. Отфильтруйте артефакты водяных знаков.
  4. Соберите элементы водяных знаков.
  5. Извлеките свойства водяного знака.
  6. Выведите информацию о водяном знаке.
from os import path
import sys
import aspose.pdf as ap

def extract_watermark_from_pdf(infile):
    with ap.Document(infile) as document:
        watermarks = [
            artifact
            for artifact in document.pages[1].artifacts
            if artifact.type == ap.Artifact.ArtifactType.PAGINATION
            and artifact.subtype == ap.Artifact.ArtifactSubtype.WATERMARK
        ]

        for watermark in watermarks:
            print(f"{watermark.text} {watermark.rectangle}")

Добавить водяной знак в PDF

Добавьте текстовый водяной знак в PDF‑документ с помощью Aspose.PDF for Python:

  1. Загрузите документ PDF.
  2. Создайте состояние текста.
  3. Создайте артефакт водяного знака.
  4. Установите текст водяного знака и стиль.
  5. Настройте позиционирование и вращение.
  6. Установите непрозрачность и поведение фона.
  7. Прикрепите водяной знак к странице.
  8. Сохраните обновлённый документ.
from os import path
import sys
import aspose.pdf as ap

def add_watermark_artifact(infile, outfile):
    with ap.Document(infile) as document:
        text_state = ap.text.TextState()
        text_state.font_size = 72
        text_state.foreground_color = ap.Color.blue_violet
        text_state.font_style = ap.text.FontStyles.BOLD
        text_state.font = ap.text.FontRepository.find_font("Arial")

        watermark = ap.WatermarkArtifact()
        watermark.set_text_and_state("WATERMARK", text_state)
        watermark.artifact_horizontal_alignment = ap.HorizontalAlignment.CENTER
        watermark.artifact_vertical_alignment = ap.VerticalAlignment.CENTER
        watermark.rotation = 60
        watermark.opacity = 0.2
        watermark.is_background = True

        document.pages[1].artifacts.append(watermark)
        document.save(outfile)

Удалить артефакты водяных знаков со страницы PDF

Удалить артефакты водяного знака с конкретной страницы PDF‑документа, используя API Aspose.PDF for Python. Этот подход ориентируется на элементы водяного знака, хранящиеся как артефакты страницы (в частности, классифицированные как подтипы пагинации водяного знака), проходит их в цикле и удаляет перед сохранением обновленного документа.

  1. Загрузите документ PDF.
  2. Получите доступ к артефактам страницы.
  3. Отфильтруйте артефакты водяных знаков.
  4. Удалите артефакты водяного знака.
  5. Сохраните обновлённый документ.
from os import path
import sys
import aspose.pdf as ap

def delete_watermark_artifact(infile, outfile):
    with ap.Document(infile) as document:
        watermarks = [
            artifact
            for artifact in document.pages[1].artifacts
            if artifact.type == ap.Artifact.ArtifactType.PAGINATION
            and artifact.subtype == ap.Artifact.ArtifactSubtype.WATERMARK
        ]

        for watermark in watermarks:
            document.pages[1].artifacts.delete(watermark)

        document.save(outfile)

Связанные темы артефактов