Replace Text With State

Contents
[ ]

When updating text in a PDF, you may want the replacement content to stand out. By using a TextState object, you can define styling such as color and font size, then apply it to all replaced text.

  1. Create a PdfContentEditor instance.
  2. Bind the input PDF document.
  3. Define a TextState with custom formatting.
  4. Configure replacement scope.
  5. Replace text across the entire document.
  6. Save the updated PDF document.
import aspose.pdf as ap
import aspose.pdf.facades as pdf_facades
import sys
from os import path

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

from config import set_license, initialize_data_dir


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

    text_state = ap.text.TextState()
    text_state.foreground_color = ap.Color.blue
    text_state.font_size = 14

    # Replace text with explicit text formatting
    content_editor.replace_text_strategy.replace_scope = (
        pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
    )
    content_editor.replace_text("software", "SOFTWARE", text_state)
    # Save updated document
    content_editor.save(outfile)