Eliminar sellos globalmente

Contents
[ ]

Al trabajar con múltiples páginas, es posible que necesite eliminar ciertos sellos en todo el documento. Los métodos \u0027delete_stamp_by_id()\u0027 y \u0027delete_stamp_by_ids()\u0027 le permiten eliminar sellos globalmente por sus identificadores, eliminando la necesidad de iterar manualmente a través de cada página.

  1. Crear un PdfContentEditor instancia.
  2. Vincula el documento PDF de entrada.
  3. Agregar sellos de goma a múltiples páginas.
  4. Eliminar sellos globalmente usando sus IDs.
  5. Guarda el documento PDF actualizado.
import aspose.pdf.facades as pdf_facades
import aspose.pydrawing as apd
from io import BytesIO
import sys
from os import path

sys.path.append(path.join(path.dirname(__file__), ".."))

from config import set_license, initialize_data_dir


def delete_stamps_globally(infile, outfile):
    # Create PdfContentEditor object
    content_editor = pdf_facades.PdfContentEditor()
    # Bind document to PdfContentEditor
    content_editor.bind_pdf(infile)

    # Add stamps across multiple pages so global deletion is meaningful
    for page in range(1, 5):
        content_editor.create_rubber_stamp(
            page,
            apd.Rectangle(120, 500, 180, 60),
            "Draft",
            "Stamp for global deletion",
            apd.Color.gray,
        )

    # delete_stamp_by_id without page number removes stamp ID from all pages
    content_editor.delete_stamp_by_id(1)
    # delete_stamp_by_ids without page number removes a list of IDs from all pages
    content_editor.delete_stamp_by_ids([2, 3])

    # Save updated document
    content_editor.save(outfile)