Adicionar cabeçalho ao PDF
Aspose.PDF for Python via .NET fornece o PdfFileStamp fachada para adicionar conteúdo repetido às páginas PDF. Você pode usá-la para colocar texto de cabeçalho ou imagens no topo de cada página e ajustar as margens do cabeçalho para controlar a posição.
Adicionar um cabeçalho de texto
Usar add_header() com um FormattedText objeto quando você quer colocar o mesmo texto de cabeçalho em cada página do PDF. O segundo argumento define a margem superior para o cabeçalho.
import sys
from os import path
import aspose.pydrawing as ap_pydrawing
import aspose.pdf.facades as pdf_facades
from config import initialize_data_dir, set_license
def add_text_header(infile: str, outfile: str) -> None:
"""Add a text header with a top margin."""
pdf_stamper = pdf_facades.PdfFileStamp()
try:
pdf_stamper.bind_pdf(infile)
text = pdf_facades.FormattedText("Sample Header")
pdf_stamper.add_header(text, 20)
pdf_stamper.save(outfile)
finally:
pdf_stamper.close()
Adicionar um cabeçalho de imagem
Usar add_header() com um arquivo de imagem ou fluxo de imagem quando o cabeçalho deve exibir um logo ou outro gráfico. Isso é útil para layouts de documentos com marca.
import sys
from os import path
import aspose.pydrawing as ap_pydrawing
import aspose.pdf.facades as pdf_facades
from config import initialize_data_dir, set_license
def add_image_header(infile: str, image_file: str, outfile: str) -> None:
"""Add an image header with a top margin."""
pdf_stamper = pdf_facades.PdfFileStamp()
try:
pdf_stamper.bind_pdf(infile)
pdf_stamper.add_header(image_file, 20)
pdf_stamper.save(outfile)
finally:
pdf_stamper.close()
Adicionar um cabeçalho com margens personalizadas
Use a sobrecarga com três valores de margem quando precisar de mais controle sobre a posição do cabeçalho. Neste exemplo, o cabeçalho é adicionado com margens superiores, esquerda e direita personalizadas.
import sys
from os import path
import aspose.pydrawing as ap_pydrawing
import aspose.pdf.facades as pdf_facades
from config import initialize_data_dir, set_license
def add_header_with_margins(infile: str, outfile: str) -> None:
"""Add a text header with top, left, and right margins."""
pdf_stamper = pdf_facades.PdfFileStamp()
try:
pdf_stamper.bind_pdf(infile)
text = pdf_facades.FormattedText(
text="Sample Header",
text_color=ap_pydrawing.Color.blue,
font_name="Arial",
text_encoding=pdf_facades.EncodingType.WINANSI,
embedded=True,
font_size=12.0,
)
pdf_stamper.add_header(text, 20, 20, 20)
pdf_stamper.save(outfile)
finally:
pdf_stamper.close()