Como editar um arquivo PDF em Python
A Iron Software apresenta a biblioteca IronPDF for Python , uma solução que revoluciona a facilidade com que as tarefas de edição de PDF são realizadas em Python. Seja para inserir assinaturas, adicionar rodapés HTML, incorporar marcas d'água, incluir anotações ou editar arquivos PDF, o IronPDF for Python é a ferramenta ideal. A biblioteca garante que seu código permaneça legível, oferece suporte à criação programática de PDFs, facilita a depuração e permite a implantação perfeita em todas as plataformas e ambientes compatíveis.
Este artigo tutorial explorará esses recursos abrangentes com exemplos ilustrativos de código Python e explicações detalhadas. Ao final deste guia, você terá um sólido conhecimento de como usar o IronPDF for Python para todas as suas necessidades de edição de PDF.
Como editar arquivos PDF em Python
- Instale a biblioteca Python PDF usando o instalador
pip. - Aplique a chave de licença para a biblioteca Python PDF.
- Carregue o documento PDF para edição.
- Edite o documento PDF usando diferentes opções, como Dividir, Copiar Páginas e outras operações de PDF.
- Salve o arquivo modificado usando a função
SaveAs.
Editar estrutura do documento
Manipular Páginas
O IronPDF simplifica o processo de adicionar páginas em posições específicas, extrair páginas específicas ou um intervalo de páginas e remover páginas de qualquer PDF. Ele cuida de todos os processos complexos para você, facilitando a execução dessas tarefas com eficiência.
Adicionar páginas
Você pode adicionar páginas a documentos PDF especificando o conteúdo, o tamanho e a posição da página. Após fazer as alterações desejadas, você pode salvar o arquivo PDF de saída usando a função SaveAs.
from ironpdf import *
# Enable debugging and set log path
Logger.EnableDebugging = True
Logger.LogFilePath = "Custom.log"
Logger.LoggingMode = Logger.LoggingModes.All
# Load existing PDF and Render HTML as new PDF page
pdf = PdfDocument("C:\\Users\\Administrator\\Downloads\\Documents\\sample.pdf")
renderer = ChromePdfRenderer()
coverPagePdf = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>")
# Prepend new page to existing PDF
pdf.PrependPdf(coverPagePdf)
# Save the updated PDF document
pdf.SaveAs("report_with_cover.pdf")
from ironpdf import *
# Enable debugging and set log path
Logger.EnableDebugging = True
Logger.LogFilePath = "Custom.log"
Logger.LoggingMode = Logger.LoggingModes.All
# Load existing PDF and Render HTML as new PDF page
pdf = PdfDocument("C:\\Users\\Administrator\\Downloads\\Documents\\sample.pdf")
renderer = ChromePdfRenderer()
coverPagePdf = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>")
# Prepend new page to existing PDF
pdf.PrependPdf(coverPagePdf)
# Save the updated PDF document
pdf.SaveAs("report_with_cover.pdf")
Copiar páginas
Você pode copiar páginas de um documento PDF para outro arquivo PDF existente, especificando o número da página e o destino. Além disso, você tem a opção de criar um novo arquivo PDF a partir das páginas copiadas do PDF. Também é possível selecionar uma ou várias páginas de um único arquivo PDF para copiar.
from ironpdf import *
# Load the PDF document
pdf = PdfDocument("C:\\Users\\Administrator\\Downloads\\Documents\\sample.pdf")
# Copy pages 3 to 5 and save them as a new document.
pdf.CopyPages(2, 4).SaveAs("report_highlight.pdf")
from ironpdf import *
# Load the PDF document
pdf = PdfDocument("C:\\Users\\Administrator\\Downloads\\Documents\\sample.pdf")
# Copy pages 3 to 5 and save them as a new document.
pdf.CopyPages(2, 4).SaveAs("report_highlight.pdf")
Excluir páginas
Você pode excluir páginas do arquivo PDF de entrada especificando o número da página.
from ironpdf import *
# Load the PDF document
pdf = PdfDocument("report.pdf")
# Remove the last page from the PDF
pdf.RemovePage(pdf.PageCount-1)
# Save the updated PDF
pdf.SaveAs("Report-Minus-1.pdf")
from ironpdf import *
# Load the PDF document
pdf = PdfDocument("report.pdf")
# Remove the last page from the PDF
pdf.RemovePage(pdf.PageCount-1)
# Save the updated PDF
pdf.SaveAs("Report-Minus-1.pdf")
Unir e dividir PDFs
A API intuitiva do IronPDF facilita a combinação de vários PDFs em um só ou a divisão de um PDF existente em arquivos separados.
Unir vários PDFs existentes em um único documento PDF.
Você pode unir vários documentos PDF em um único documento, especificando os documentos PDF de entrada e os documentos PDF de saída.
from ironpdf import *
# Define HTML content for two separate PDFs
html_a = """<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>"""
html_b = """<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>"""
# Render each HTML content as PDF
renderer = ChromePdfRenderer()
pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
# Merge the PDFs into a single document
merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
# Save the merged PDF
merged.SaveAs("Merged.pdf")
from ironpdf import *
# Define HTML content for two separate PDFs
html_a = """<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>"""
html_b = """<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>"""
# Render each HTML content as PDF
renderer = ChromePdfRenderer()
pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
# Merge the PDFs into a single document
merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
# Save the merged PDF
merged.SaveAs("Merged.pdf")
Dividir um PDF e extrair páginas
Você pode dividir um documento PDF em vários documentos ou extrair páginas específicas de arquivos PDF, especificando o documento PDF de entrada e os documentos PDF de saída ou os números das páginas.
from ironpdf import *
# Define the HTML structure of the document
html = """<p> Hello Iron </p>
<p> This is 1st Page </p>
<div style='page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style='page-break-after: always;'></div>
<p> This is 3rd Page</p>"""
# Render the HTML as a PDF document
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(html)
# Create a separate document for the first page
page1doc = pdf.CopyPage(0)
page1doc.SaveAs("Split1.pdf")
# Create a separate document for pages 2 and 3
page23doc = pdf.CopyPages(1, 2)
page23doc.SaveAs("Split2.pdf")
from ironpdf import *
# Define the HTML structure of the document
html = """<p> Hello Iron </p>
<p> This is 1st Page </p>
<div style='page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style='page-break-after: always;'></div>
<p> This is 3rd Page</p>"""
# Render the HTML as a PDF document
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(html)
# Create a separate document for the first page
page1doc = pdf.CopyPage(0)
page1doc.SaveAs("Split1.pdf")
# Create a separate document for pages 2 and 3
page23doc = pdf.CopyPages(1, 2)
page23doc.SaveAs("Split2.pdf")
Editar propriedades do documento
Adicionar e usar metadados de PDF
Você pode adicionar e usar metadados de PDF com o IronPDF for Python. Isso pode ser benéfico para adicionar informações de direitos autorais, rastrear alterações ou simplesmente tornar seus documentos PDF mais fáceis de pesquisar.
Os metadados de um PDF são um conjunto de dados armazenados em um documento PDF. Esses dados podem incluir o título, o autor, o assunto, as palavras-chave, a data de criação e a data de modificação do documento PDF. Além disso, pode incluir dados personalizados que você adiciona conforme suas necessidades.
from ironpdf import *
from datetime import datetime
# Load the encrypted PDF document
pdf = PdfDocument.FromFile("encrypted.pdf", "password")
# Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = datetime.now()
# Save the updated PDF document
pdf.SaveAs("MetaData-Updated.pdf")
from ironpdf import *
from datetime import datetime
# Load the encrypted PDF document
pdf = PdfDocument.FromFile("encrypted.pdf", "password")
# Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = datetime.now()
# Save the updated PDF document
pdf.SaveAs("MetaData-Updated.pdf")
Assinaturas digitais
O IronPDF permite que você assine digitalmente arquivos PDF novos ou existentes usando certificados digitais X509Certificate2. Quando um PDF é assinado usando este método, quaisquer modificações no documento exigirão validação com o certificado, garantindo a integridade do documento.
Você pode encontrar mais orientações sobre como gerar um certificado de assinatura gratuito com o Adobe Reader no site da Adobe .
Além da assinatura criptográfica, o IronPDF também suporta o uso de uma imagem de assinatura manuscrita ou de um carimbo da empresa como forma alternativa de assinar o documento.
from ironpdf import *
# Cryptographically sign an existing PDF in one line of code!
PdfSignature(r".\certificates\IronSoftware.p12", "123456").SignPdfFile("any.pdf")
##### Advanced example for more control #####
# Step 1. Create a PDF.
renderer = ChromePdfRenderer()
doc = renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>")
# Step 2. Create a digital signature.
signature = PdfSignature(r"certificates\IronSoftware.pfx", "123456")
# Step 3. Optional signing options and a handwritten signature graphic.
signature.SigningContact = "support@ironsoftware.com"
signature.SigningLocation = "Chicago, USA"
signature.SigningReason = "To show how to sign a PDF"
# Step 4. Sign the PDF with the PdfSignature.
doc.Sign(signature)
# Step 5. The PDF is not signed until saved to file, stream, or byte array.
doc.SaveAs("signed.pdf")
from ironpdf import *
# Cryptographically sign an existing PDF in one line of code!
PdfSignature(r".\certificates\IronSoftware.p12", "123456").SignPdfFile("any.pdf")
##### Advanced example for more control #####
# Step 1. Create a PDF.
renderer = ChromePdfRenderer()
doc = renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>")
# Step 2. Create a digital signature.
signature = PdfSignature(r"certificates\IronSoftware.pfx", "123456")
# Step 3. Optional signing options and a handwritten signature graphic.
signature.SigningContact = "support@ironsoftware.com"
signature.SigningLocation = "Chicago, USA"
signature.SigningReason = "To show how to sign a PDF"
# Step 4. Sign the PDF with the PdfSignature.
doc.Sign(signature)
# Step 5. The PDF is not signed until saved to file, stream, or byte array.
doc.SaveAs("signed.pdf")
Anexos em PDF
O IronPDF facilita muito a adição de anexos aos seus documentos PDF e a remoção deles quando você quiser. Isso significa que você pode inserir arquivos extras em seus PDFs e removê-los conforme necessário, tudo com a ajuda do IronPDF.
from ironpdf import *
# Instantiate the Renderer and create a PdfDocument from HTML
renderer = ChromePdfRenderer()
my_pdf = renderer.RenderHtmlFileAsPdf("my-content.html")
# Open the PDF document to be attached
pdf = PdfDocument.FromFile("new_sample.pdf")
# Add an attachment with a name and a byte array
attachment1 = my_pdf.Attachments.AddAttachment("attachment_1", pdf.BinaryData)
# Remove an attachment
my_pdf.Attachments.RemoveAttachment(attachment1)
# Save the PDF with attachments
my_pdf.SaveAs("my-content.pdf")
from ironpdf import *
# Instantiate the Renderer and create a PdfDocument from HTML
renderer = ChromePdfRenderer()
my_pdf = renderer.RenderHtmlFileAsPdf("my-content.html")
# Open the PDF document to be attached
pdf = PdfDocument.FromFile("new_sample.pdf")
# Add an attachment with a name and a byte array
attachment1 = my_pdf.Attachments.AddAttachment("attachment_1", pdf.BinaryData)
# Remove an attachment
my_pdf.Attachments.RemoveAttachment(attachment1)
# Save the PDF with attachments
my_pdf.SaveAs("my-content.pdf")
Comprimir PDFs
O IronPDF possui um recurso para comprimir PDFs e reduzir o tamanho dos arquivos. Um dos métodos consiste em diminuir o tamanho das imagens incorporadas no documento PDF usando o método CompressImages.
Em relação à qualidade da imagem, com imagens JPEG, 100% de qualidade praticamente não resulta em perda de qualidade, enquanto 1% produz uma imagem de qualidade muito baixa. Em geral, uma qualidade de imagem de 90% ou mais é considerada de alta qualidade. Uma imagem de qualidade média situa-se entre 80% e 90%, enquanto uma imagem de baixa qualidade varia de 70% a 80%. Se a porcentagem for inferior a 70%, a qualidade da imagem deteriora-se significativamente, mas isso pode ajudar a reduzir drasticamente o tamanho total do arquivo PDF.
Recomenda-se experimentar diferentes percentagens de qualidade para encontrar o equilíbrio certo entre qualidade e tamanho de ficheiro que melhor se adapte às suas necessidades. Tenha em mente que a perda perceptível de qualidade após a redução pode variar dependendo do tipo de imagem com que você está lidando, já que algumas imagens podem perder nitidez mais do que outras.
from ironpdf import *
# Load the PDF document
pdf = PdfDocument("document.pdf")
# Compress images within the PDF (quality between 1-100)
pdf.CompressImages(60)
pdf.SaveAs("document_compressed.pdf")
# Compress images with scaling image resolution
pdf.CompressImages(90, True)
pdf.SaveAs("document_scaled_compressed.pdf")
from ironpdf import *
# Load the PDF document
pdf = PdfDocument("document.pdf")
# Compress images within the PDF (quality between 1-100)
pdf.CompressImages(60)
pdf.SaveAs("document_compressed.pdf")
# Compress images with scaling image resolution
pdf.CompressImages(90, True)
pdf.SaveAs("document_scaled_compressed.pdf")
Edição de conteúdo em PDF
Adicionar cabeçalhos e rodapés
Adicionar cabeçalhos e rodapés aos seus documentos PDF é muito fácil com o IronPDF. O software fornece dois tipos distintos de HeaderFooters: TextHeaderFooter e HtmlHeaderFooter. TextHeaderFooter é ideal para cabeçalhos e rodapés que contêm apenas texto e podem precisar incorporar campos de mesclagem, como "{página} de {total-páginas}". Por outro lado, HtmlHeaderFooter é uma opção mais avançada que pode lidar com qualquer conteúdo HTML e formatá-lo de maneira organizada, tornando-a adequada para cabeçalhos e rodapés mais complexos.
Cabeçalho e rodapé HTML
Com o IronPDF for Python, você pode usar o recurso HtmlHeaderFooter para criar cabeçalhos ou rodapés HTML para seu documento PDF a partir de HTML. Isso significa que você pode criar seu cabeçalho ou rodapé usando HTML, e o IronPDF for Python o converterá perfeitamente para se ajustar ao seu PDF, garantindo que cada detalhe esteja correto. Assim, se você tiver um design HTML para um cabeçalho ou rodapé, o IronPDF for Python pode aplicá-lo ao seu documento PDF com precisão.
from ironpdf import *
import os
# Instantiate Renderer
renderer = ChromePdfRenderer()
# Build a footer using HTML to style the text
renderer.RenderingOptions.HtmlFooter = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlFooter.MaxHeight = 15 # millimeters
renderer.RenderingOptions.HtmlFooter.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"
renderer.RenderingOptions.HtmlFooter.DrawDividerLine = True
# Ensure sufficient bottom margin
renderer.RenderingOptions.MarginBottom = 25 # mm
# Build a header using an image asset
renderer.RenderingOptions.HtmlHeader = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlHeader.MaxHeight = 20 # millimeters
renderer.RenderingOptions.HtmlHeader.HtmlFragment = "<img src='iron.png'>"
renderer.RenderingOptions.HtmlHeader.BaseUrl = os.path.abspath("C:/Users/lyty1/OneDrive/Documents/IronPdfPythonNew")
# Ensure sufficient top margin
renderer.RenderingOptions.MarginTop = 25 # mm
from ironpdf import *
import os
# Instantiate Renderer
renderer = ChromePdfRenderer()
# Build a footer using HTML to style the text
renderer.RenderingOptions.HtmlFooter = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlFooter.MaxHeight = 15 # millimeters
renderer.RenderingOptions.HtmlFooter.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"
renderer.RenderingOptions.HtmlFooter.DrawDividerLine = True
# Ensure sufficient bottom margin
renderer.RenderingOptions.MarginBottom = 25 # mm
# Build a header using an image asset
renderer.RenderingOptions.HtmlHeader = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlHeader.MaxHeight = 20 # millimeters
renderer.RenderingOptions.HtmlHeader.HtmlFragment = "<img src='iron.png'>"
renderer.RenderingOptions.HtmlHeader.BaseUrl = os.path.abspath("C:/Users/lyty1/OneDrive/Documents/IronPdfPythonNew")
# Ensure sufficient top margin
renderer.RenderingOptions.MarginTop = 25 # mm
Cabeçalho e rodapé de texto
from ironpdf import *
# Initiate PDF Renderer
renderer = ChromePdfRenderer()
# Add a text header to every page
renderer.RenderingOptions.FirstPageNumber = 1 # use 2 if a cover page will be appended
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.CenterText = "{url}"
renderer.RenderingOptions.TextHeader.Font = FontTypes.Helvetica
renderer.RenderingOptions.TextHeader.FontSize = 12
renderer.RenderingOptions.MarginTop = 25 # create 25mm space for header
# Add a text footer to every page
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial
renderer.RenderingOptions.TextFooter.FontSize = 10
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
renderer.RenderingOptions.MarginBottom = 25 # create 25mm space for footer
from ironpdf import *
# Initiate PDF Renderer
renderer = ChromePdfRenderer()
# Add a text header to every page
renderer.RenderingOptions.FirstPageNumber = 1 # use 2 if a cover page will be appended
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.CenterText = "{url}"
renderer.RenderingOptions.TextHeader.Font = FontTypes.Helvetica
renderer.RenderingOptions.TextHeader.FontSize = 12
renderer.RenderingOptions.MarginTop = 25 # create 25mm space for header
# Add a text footer to every page
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial
renderer.RenderingOptions.TextFooter.FontSize = 10
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
renderer.RenderingOptions.MarginBottom = 25 # create 25mm space for footer
Esboços e Marcadores
Um esboço, também conhecido como "marcador", é uma ferramenta que ajuda você a acessar rapidamente páginas importantes em um documento PDF. Se você usa o Adobe Acrobat Reader, pode ver esses marcadores (que podem ser organizados em uma hierarquia) na barra lateral esquerda do aplicativo.
A biblioteca IronPDF for Python torna ainda mais fácil trabalhar com marcadores. Ele pode importar automaticamente quaisquer marcadores existentes em documentos PDF. Além disso, você pode adicionar mais marcadores, editá-los ou organizá-los em grupos usando o IronPDF.
from ironpdf import *
# Load an existing PDF document.
pdf = PdfDocument.FromFile("existing.pdf")
# Add bookmarks to the PDF
pdf.Bookmarks.AddBookMarkAtEnd("Author's Note", 2)
pdf.Bookmarks.AddBookMarkAtEnd("Table of Contents", 3)
# Create a new bookmark and add nested bookmarks
summaryBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Summary", 17)
summaryBookmark.Children.AddBookMarkAtStart("Conclusion", 18)
# Add additional bookmarks
pdf.Bookmarks.AddBookMarkAtEnd("References", 20)
# Save the PDF with new bookmarks
pdf.SaveAs("existing.pdf")
from ironpdf import *
# Load an existing PDF document.
pdf = PdfDocument.FromFile("existing.pdf")
# Add bookmarks to the PDF
pdf.Bookmarks.AddBookMarkAtEnd("Author's Note", 2)
pdf.Bookmarks.AddBookMarkAtEnd("Table of Contents", 3)
# Create a new bookmark and add nested bookmarks
summaryBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Summary", 17)
summaryBookmark.Children.AddBookMarkAtStart("Conclusion", 18)
# Add additional bookmarks
pdf.Bookmarks.AddBookMarkAtEnd("References", 20)
# Save the PDF with new bookmarks
pdf.SaveAs("existing.pdf")
Adicionar e editar anotações
Com o IronPDF for Python, você pode adicionar e editar anotações em documentos PDF. As anotações podem ser usadas para destacar texto, adicionar comentários ou criar links. Você também pode editar anotações existentes.
from ironpdf import *
# Load an existing PDF
pdf = PdfDocument("existing.pdf")
# Create a TextAnnotation object
annotation = TextAnnotation()
annotation.Title = "This is the title"
annotation.Subject = "This is a subject"
annotation.Contents = "This is the comment content..."
annotation.Icon = TextAnnotation.AnnotationIcon.Help
annotation.Opacity = 0.9
annotation.Printable = False
annotation.Hidden = False
annotation.OpenByDefault = True
annotation.ReadOnly = False
annotation.Rotateable = True
# Add the annotation to a specific page and location within the PDF
pdf.AddTextAnnotation(annotation, 1, 150, 250)
# Save the PDF with annotations
pdf.SaveAs("existing.pdf")
from ironpdf import *
# Load an existing PDF
pdf = PdfDocument("existing.pdf")
# Create a TextAnnotation object
annotation = TextAnnotation()
annotation.Title = "This is the title"
annotation.Subject = "This is a subject"
annotation.Contents = "This is the comment content..."
annotation.Icon = TextAnnotation.AnnotationIcon.Help
annotation.Opacity = 0.9
annotation.Printable = False
annotation.Hidden = False
annotation.OpenByDefault = True
annotation.ReadOnly = False
annotation.Rotateable = True
# Add the annotation to a specific page and location within the PDF
pdf.AddTextAnnotation(annotation, 1, 150, 250)
# Save the PDF with annotations
pdf.SaveAs("existing.pdf")
Adicionar planos de fundo e primeiros planos
IronPDF for Python permite adicionar planos de fundo e primeiros planos a documentos PDF. Isso pode ser útil para adicionar marcas d'água, criar modelos personalizados ou simplesmente tornar seus documentos PDF visualmente mais atraentes. Você pode usar imagens, cores ou gradientes como plano de fundo ou primeiro plano.
from ironpdf import *
# Instantiate Renderer for PDF creation
renderer = ChromePdfRenderer()
# Render a PDF from a given URL
pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
# Add a background PDF
pdf.AddBackgroundPdf("MyBackground.pdf")
# Add a foreground overlay PDF to the first page
pdf.AddForegroundOverlayPdfToPage(0, "MyForeground.pdf", 0)
# Save the merged PDF with background and foreground
pdf.SaveAs("Complete.pdf")
from ironpdf import *
# Instantiate Renderer for PDF creation
renderer = ChromePdfRenderer()
# Render a PDF from a given URL
pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
# Add a background PDF
pdf.AddBackgroundPdf("MyBackground.pdf")
# Add a foreground overlay PDF to the first page
pdf.AddForegroundOverlayPdfToPage(0, "MyForeground.pdf", 0)
# Save the merged PDF with background and foreground
pdf.SaveAs("Complete.pdf")
Carimbo e marca d'água
IronPDF for Python permite adicionar carimbos e marcas d'água a documentos PDF. Isso pode ser útil para adicionar informações de direitos autorais, impedir cópias não autorizadas ou simplesmente tornar seus documentos PDF mais profissionais. Você pode adicionar texto, imagens ou marcas d'água a documentos PDF. Você também pode controlar o tamanho, a posição e a opacidade dos selos e marcas d'água.
Aplicar carimbo em um PDF
Você pode adicionar um carimbo a um documento PDF com o IronPDF for Python. Isso pode ser útil para adicionar um logotipo, uma assinatura ou outras informações de identificação a um documento PDF. Você pode escolher o tipo, a posição e o tamanho do carimbo. Você também pode definir a opacidade do carimbo.
from ironpdf import *
# Define an HTML Stamper to apply an image stamp
stamper = HtmlStamper("<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'/>")
stamper.HorizontalAlignment = HorizontalAlignment.Center
stamper.VerticalAlignment = VerticalAlignment.Bottom
stamper.IsStampBehindContent = False
stamper.Opacity = 30
# Load existing PDF and apply the stamp
pdf = PdfDocument.FromFile("Sample.pdf")
pdf.ApplyStamp(stamper).SaveAs("stampedimage.pdf")
from ironpdf import *
# Define an HTML Stamper to apply an image stamp
stamper = HtmlStamper("<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'/>")
stamper.HorizontalAlignment = HorizontalAlignment.Center
stamper.VerticalAlignment = VerticalAlignment.Bottom
stamper.IsStampBehindContent = False
stamper.Opacity = 30
# Load existing PDF and apply the stamp
pdf = PdfDocument.FromFile("Sample.pdf")
pdf.ApplyStamp(stamper).SaveAs("stampedimage.pdf")
Adicionar uma marca d'água a um PDF
O IronPDF for Python permite adicionar uma marca d'água a um documento PDF. Isso pode ser útil para evitar cópias não autorizadas ou simplesmente para deixar seus documentos PDF com uma aparência mais profissional. Você pode escolher o texto, a fonte, o tamanho e a cor da marca d'água. Você também pode definir a opacidade da marca d'água.
from ironpdf import *
# Instantiate the Renderer and create a PdfDocument from a URL
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
# Apply a watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center)
# Save the watermarked PDF
pdf.SaveAs("Watermarked.pdf")
from ironpdf import *
# Instantiate the Renderer and create a PdfDocument from a URL
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
# Apply a watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center)
# Save the watermarked PDF
pdf.SaveAs("Watermarked.pdf")
Utilizando formulários em PDFs
Com o IronPDF for Python, você pode criar e editar formulários em documentos PDF. Isso pode ser útil para coletar dados de usuários ou simplesmente tornar seus documentos PDF mais interativos. Você pode adicionar campos de formulário, como caixas de texto, caixas de seleção e botões de opção. Você também pode coletar dados de formulários dos usuários.
Criar e editar formulários
from ironpdf import *
# HTML content for a form with text inputs, radio buttons, and checkboxes
form_html = """
<html>
<body>
<h2>Editable PDF Form</h2>
<form>
First name: <br> <input type='text' name='firstname' value=''> <br>
Last name: <br> <input type='text' name='lastname' value=''> <br>
<br>
<p>Please specify your gender:</p>
<input type='radio' id='female' name='gender' value= 'Female'>
<label for='female'>Female</label> <br>
<br>
<input type='radio' id='male' name='gender' value='Male'>
<label for='male'>Male</label> <br>
<br>
<input type='radio' id='non-binary/other' name='gender' value='Non-Binary / Other'>
<label for='non-binary/other'>Non-Binary / Other</label>
<br>
<p>Please select all medical conditions that apply:</p>
<input type='checkbox' id='condition1' name='Hypertension' value='Hypertension'>
<label for='condition1'> Hypertension</label><br>
<input type='checkbox' id='condition2' name='Heart Disease' value='Heart Disease'>
<label for='condition2'> Heart Disease</label><br>
<input type='checkbox' id='condition3' name='Stroke' value='Stroke'>
<label for='condition3'> Stroke</label><br>
<input type='checkbox' id='condition4' name='Diabetes' value='Diabetes'>
<label for='condition4'> Diabetes</label><br>
<input type='checkbox' id='condition5' name='Kidney Disease' value='Kidney Disease'>
<label for='condition5'> Kidney Disease</label><br>
</form>
</body>
</html>
"""
# Instantiate Renderer and enable form creation
renderer = ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
# Render the form HTML to PDF and save it
renderer.RenderHtmlAsPdf(form_html).SaveAs("BasicForm.pdf")
# Open the form PDF and update form values
form_document = PdfDocument.FromFile("BasicForm.pdf")
# Update and read the form fields
first_name_field = form_document.Form.FindFormField("firstname")
first_name_field.Value = "Minnie"
print(f"FirstNameField value: {first_name_field.Value}")
last_name_field = form_document.Form.FindFormField("lastname")
last_name_field.Value = "Mouse"
print(f"LastNameField value: {last_name_field.Value}")
# Save the filled form PDF
form_document.SaveAs("FilledForm.pdf")
from ironpdf import *
# HTML content for a form with text inputs, radio buttons, and checkboxes
form_html = """
<html>
<body>
<h2>Editable PDF Form</h2>
<form>
First name: <br> <input type='text' name='firstname' value=''> <br>
Last name: <br> <input type='text' name='lastname' value=''> <br>
<br>
<p>Please specify your gender:</p>
<input type='radio' id='female' name='gender' value= 'Female'>
<label for='female'>Female</label> <br>
<br>
<input type='radio' id='male' name='gender' value='Male'>
<label for='male'>Male</label> <br>
<br>
<input type='radio' id='non-binary/other' name='gender' value='Non-Binary / Other'>
<label for='non-binary/other'>Non-Binary / Other</label>
<br>
<p>Please select all medical conditions that apply:</p>
<input type='checkbox' id='condition1' name='Hypertension' value='Hypertension'>
<label for='condition1'> Hypertension</label><br>
<input type='checkbox' id='condition2' name='Heart Disease' value='Heart Disease'>
<label for='condition2'> Heart Disease</label><br>
<input type='checkbox' id='condition3' name='Stroke' value='Stroke'>
<label for='condition3'> Stroke</label><br>
<input type='checkbox' id='condition4' name='Diabetes' value='Diabetes'>
<label for='condition4'> Diabetes</label><br>
<input type='checkbox' id='condition5' name='Kidney Disease' value='Kidney Disease'>
<label for='condition5'> Kidney Disease</label><br>
</form>
</body>
</html>
"""
# Instantiate Renderer and enable form creation
renderer = ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
# Render the form HTML to PDF and save it
renderer.RenderHtmlAsPdf(form_html).SaveAs("BasicForm.pdf")
# Open the form PDF and update form values
form_document = PdfDocument.FromFile("BasicForm.pdf")
# Update and read the form fields
first_name_field = form_document.Form.FindFormField("firstname")
first_name_field.Value = "Minnie"
print(f"FirstNameField value: {first_name_field.Value}")
last_name_field = form_document.Form.FindFormField("lastname")
last_name_field.Value = "Mouse"
print(f"LastNameField value: {last_name_field.Value}")
# Save the filled form PDF
form_document.SaveAs("FilledForm.pdf")
Conclusão
IronPDF for Python é uma poderosa biblioteca Python para PDF que permite criar, manipular e editar documentos PDF a partir do Python. Com esta biblioteca, manipular documentos PDF tornou-se incrivelmente fácil. Oferece uma ampla gama de recursos, incluindo a capacidade de editar a estrutura do documento, manipular páginas, mesclar e dividir PDFs, editar propriedades do documento e adicionar e usar metadados de PDF.
IronPDF for Python é fácil de usar e pode ser integrado perfeitamente a qualquer projeto Python. É uma ferramenta valiosa para qualquer pessoa que precise trabalhar com documentos PDF em Python. A licença do IronPDF for Python começa em $799. Você pode encontrar mais informações no site do IronPDF .
Perguntas frequentes
Como posso editar arquivos PDF em Python?
Você pode usar o IronPDF for Python para editar arquivos PDF, inserindo assinaturas, adicionando rodapés HTML, incorporando marcas d'água e incluindo anotações programaticamente.
Quais são os passos envolvidos na instalação do IronPDF for Python?
Para instalar o IronPDF for Python, você pode usar o instalador pip executando o comando pip install ironpdf na sua interface de linha de comando.
Como posso adicionar uma marca d'água a um PDF usando Python?
Com o IronPDF for Python, você pode adicionar marcas d'água a um PDF acessando o documento PDF e usando os métodos da biblioteca para incorporar imagens ou texto como marca d'água.
Posso mesclar vários arquivos PDF em um só usando Python?
Sim, o IronPDF permite mesclar vários PDFs em um único documento, carregando os PDFs e utilizando a função Merge .
Como posso adicionar uma assinatura digital a um PDF em Python?
O IronPDF suporta a aplicação de assinaturas digitais usando arquivos de certificado .pfx e .p12, permitindo que você assine PDFs criptograficamente para garantir a integridade do documento.
É possível adicionar metadados a um PDF com o IronPDF?
Sim, você pode adicionar metadados como autor, título e palavras-chave acessando a propriedade MetaData de um objeto PdfDocument e definindo os campos desejados.
Como adiciono cabeçalhos e rodapés a um PDF em Python?
Você pode adicionar cabeçalhos e rodapés de texto e HTML a PDFs usando o IronPDF, com opções para personalizar o conteúdo e a aparência.
Quais métodos posso usar para comprimir arquivos PDF em Python?
O IronPDF permite compactar PDFs usando o método CompressImages , que reduz o tamanho das imagens e pode ser configurado para vários níveis de qualidade.
Como posso criar formulários PDF interativos em Python?
O IronPDF permite a criação e edição de formulários PDF interativos, permitindo que os usuários preencham campos de texto, caixas de seleção e botões de opção.
Que tipos de anotações podem ser adicionadas a um PDF usando o IronPDF?
O IronPDF permite adicionar anotações de texto, comentários, links e editar anotações existentes em documentos PDF.




