diff --git a/.codex-temp.json b/.codex-temp.json
deleted file mode 100644
index 501965719f..0000000000
--- a/.codex-temp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "generatedAtUtc": "2026-05-14T08:25:54.6786942Z",
- "inputRoot": "D:\\Work\\Hugo\\Deploy\\Aspose.PDF-Documentation\\en\\python-net\\working-with-facades\\pdfcontenteditor\\stamps-management",
- "outputRoot": "D:\\Work\\Hugo\\Deploy\\Aspose.PDF-Documentation\\ru\\python-net\\pdfcontenteditor\\stamps-management",
- "totalFiles": 11,
- "translatedCount": 11,
- "skippedCount": 0,
- "failureCount": 0,
- "validationWarningCount": 0,
- "failures": [],
- "validationWarnings": []
-}
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 960ad69175..6e5c73f85e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -244,4 +244,5 @@ src/
logs/
reports/
.doctranslate/
-node_modules/
\ No newline at end of file
+node_modules/
+.codex-temp.json
\ No newline at end of file
diff --git a/en/php-java/advanced-operations/working-with-forms/xfaforms/extract-form/_index.md b/en/php-java/advanced-operations/working-with-forms/xfaforms/extract-form/_index.md
index f0bad27b9b..8c69a31258 100644
--- a/en/php-java/advanced-operations/working-with-forms/xfaforms/extract-form/_index.md
+++ b/en/php-java/advanced-operations/working-with-forms/xfaforms/extract-form/_index.md
@@ -3,11 +3,11 @@ title: Extract XFA Form
linktitle: Extract XFA Form
type: docs
weight: 30
-url: /php-java/extract-form/
+url: /php-java/extract-xfa-form/
description: This section explains how to extract forms from your PDF document with Aspose.PDF for PHP via Java.
lastmod: "2024-06-05"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
---
diff --git a/en/php-java/advanced-operations/working-with-forms/xfaforms/fill-form/_index.md b/en/php-java/advanced-operations/working-with-forms/xfaforms/fill-form/_index.md
index 4bce854ce6..5fbe01493b 100644
--- a/en/php-java/advanced-operations/working-with-forms/xfaforms/fill-form/_index.md
+++ b/en/php-java/advanced-operations/working-with-forms/xfaforms/fill-form/_index.md
@@ -3,7 +3,7 @@ title: Fill AcroForms
linktitle: Fill AcroForms
type: docs
weight: 20
-url: /php-java/fill-form/
+url: /php-java/fill-xfa-form/
description: This section explains how to fill form field in a PDF document with Aspose.PDF for PHP via Java.
lastmod: "2024-06-05"
sitemap:
diff --git a/en/python-net/advanced-operations/_index.md b/en/python-net/advanced-operations/_index.md
index 9ed1e136ea..0a333d1c1c 100644
--- a/en/python-net/advanced-operations/_index.md
+++ b/en/python-net/advanced-operations/_index.md
@@ -32,4 +32,4 @@ You'll learn different ways to:
- [Working with Graphs](/pdf/python-net/working-with-graphs/) - manipulate with shapes on the page.
- [Working with Operators](/pdf/python-net/working-with-operators/) - make low-level operations in PDF.
- [Artifacts](/pdf/python-net/artifacts/) - deal with watermarks and other special objects in PDF.
-- [Working with PDF layers](/python-net/work-with-pdf-layers/) - lock layers, extract elements, flatten, and merge PDF layers.
+- [Working with PDF layers](/pdf/python-net/work-with-pdf-layers/) - lock layers, extract elements, flatten, and merge PDF layers.
diff --git a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
index c630beb37c..6e97467e43 100644
--- a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
@@ -326,5 +326,5 @@ def print_button_add(infile, outfile):
- [Media Annotations](/python-net/media-annotations/)
- [Security Annotations](/python-net/security-annotations/)
- [Shape Annotations](/python-net/shape-annotations/)
-- [Text Based Annotations](/python-net/text-based-Annotations/)
+- [Text Based Annotations](/python-net/text-based-annotations/)
- [Watermark Annotations](/python-net/watermark-annotations/)
diff --git a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
index b149e4d51d..ad5a0846b5 100644
--- a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
@@ -495,5 +495,5 @@ def multimedia_annotations_get(infile, outfile):
- [Markup Annotations](/python-net/markup-annotations/)
- [Security Annotations](/python-net/security-annotations/)
- [Shape Annotations](/python-net/shape-annotations/)
-- [Text Based Annotations](/python-net/text-based-Annotations/)
+- [Text Based Annotations](/python-net/text-based-annotations/)
- [Watermark Annotations](/python-net/watermark-annotations/)
diff --git a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
index ec1a0c3a1c..9a7df50e74 100644
--- a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
@@ -214,5 +214,5 @@ def redact_area(infile, outfile):
- [Markup Annotations](/python-net/markup-annotations/)
- [Media Annotations](/python-net/media-annotations/)
- [Shape Annotations](/python-net/shape-annotations/)
-- [Text Based Annotations](/python-net/text-based-Annotations/)
+- [Text Based Annotations](/python-net/text-based-annotations/)
- [Watermark Annotations](/python-net/watermark-annotations/)
diff --git a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
index bc08c658af..542cde743d 100644
--- a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
@@ -716,5 +716,5 @@ def polyline_annotation_delete(infile, outfile):
- [Markup Annotations](/python-net/markup-annotations/)
- [Media Annotations](/python-net/media-annotations/)
- [Security Annotations](/python-net/security-annotations/)
-- [Text Based Annotations](/python-net/text-based-Annotations/)
+- [Text Based Annotations](/python-net/text-based-annotations/)
- [Watermark Annotations](/python-net/watermark-annotations/)
diff --git a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
index 2f80a150bb..de1566e6f8 100644
--- a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
@@ -3,7 +3,7 @@ title: Text Based Annotations using Python
linktitle: Text Annotations
type: docs
weight: 10
-url: /python-net/text-based-Annotations/
+url: /python-net/text-based-annotations/
description: Learn how to add, inspect, and delete free text, highlight, underline, squiggly, and strikeout annotations in PDF documents using Aspose.PDF for Python via .NET.
lastmod: "2026-04-21"
sitemap:
diff --git a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
index 6825a5e4c0..8a153cf61f 100644
--- a/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
@@ -183,4 +183,4 @@ def watermark_delete(infile, outfile):
- [Media Annotations](/python-net/media-annotations/)
- [Security Annotations](/python-net/security-annotations/)
- [Shape Annotations](/python-net/shape-annotations/)
-- [Text Based Annotations](/python-net/text-based-Annotations/)
+- [Text Based Annotations](/python-net/text-based-annotations/)
diff --git a/en/python-net/advanced-operations/annotations/import-export-annotations/_index.md b/en/python-net/advanced-operations/annotations/import-export-annotations/_index.md
index 5fe9b5b6b5..e74627ee51 100644
--- a/en/python-net/advanced-operations/annotations/import-export-annotations/_index.md
+++ b/en/python-net/advanced-operations/annotations/import-export-annotations/_index.md
@@ -98,5 +98,5 @@ def import_export(infile, outfile):
- [Media Annotations](/python-net/media-annotations/)
- [Security Annotations](/python-net/security-annotations/)
- [Shape Annotations](/python-net/shape-annotations/)
-- [Text Based Annotations](/python-net/text-based-Annotations/)
+- [Text Based Annotations](/python-net/text-based-annotations/)
- [Watermark Annotations](/python-net/watermark-annotations/)
diff --git a/en/python-net/basic-operations/merge-pdf/_index.md b/en/python-net/basic-operations/merge-pdf/_index.md
index 8218c69a37..bd5afde710 100644
--- a/en/python-net/basic-operations/merge-pdf/_index.md
+++ b/en/python-net/basic-operations/merge-pdf/_index.md
@@ -3,7 +3,7 @@ title: Merge PDF Files in Python
linktitle: Merge PDF files
type: docs
weight: 50
-url: /python-net/merge-pdf-documents/
+url: /python-net/merge-pdf/
description: Learn how to merge multiple PDF files into a single document in Python.
lastmod: "2026-04-15"
sitemap:
diff --git a/en/python-net/basic-operations/split-pdf/_index.md b/en/python-net/basic-operations/split-pdf/_index.md
index d5a4402c29..801ac1c354 100644
--- a/en/python-net/basic-operations/split-pdf/_index.md
+++ b/en/python-net/basic-operations/split-pdf/_index.md
@@ -3,7 +3,7 @@ title: Split PDF Files in Python
linktitle: Split PDF files
type: docs
weight: 60
-url: /python-net/split-pdf-document/
+url: /python-net/split-pdf/
description: Learn how to split PDF pages into separate PDF files in Python.
lastmod: "2026-04-15"
sitemap:
diff --git a/en/python-net/overview/_index.md b/en/python-net/overview/_index.md
index c261f955a4..b8c548e2cb 100644
--- a/en/python-net/overview/_index.md
+++ b/en/python-net/overview/_index.md
@@ -29,7 +29,7 @@ The Aspose.PDF for Python supports a wide variety of functions such as:
In addition, Aspose.PDF for Python via .NET can be applied to easily convert EPUB, Markdown, Text, XPS, PostScript, XML, LaTex to PDF and convert PDF to various document formats with excellent performance and good quality.
-Try our [Free Online Apps](https://products.aspose.app/pdf/applications) demonstrating some of the most popular Aspose.PDF functionality.
+Try our [Online Apps](https://products.aspose.app/pdf/applications) that demonstrate some of the most popular Aspose.PDF functionality.
Learn more about:
diff --git a/en/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md b/en/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
index 6980a8790e..a7c27cb403 100644
--- a/en/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
+++ b/en/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
@@ -2,7 +2,7 @@
title: Annotations
type: docs
weight: 10
-url: /python-net/annotations/
+url: /python-net/annotations-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/en/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md b/en/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
index 7b00fc812f..eee9455348 100644
--- a/en/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
+++ b/en/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
@@ -2,7 +2,7 @@
title: Attachments
type: docs
weight: 20
-url: /python-net/attachments/
+url: /python-net/attachments-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/en/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md b/en/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
index e572551802..169f0400f4 100644
--- a/en/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
+++ b/en/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
@@ -2,7 +2,7 @@
title: Links and Navigation
type: docs
weight: 70
-url: /python-net/links-and-navigation/
+url: /python-net/links-and-navigation-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/en/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md b/en/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
index faea38d3bc..e49ab71ccc 100644
--- a/en/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
+++ b/en/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
@@ -1,25 +1,25 @@
---
-title: Move Stamp By Index
+title: Delete Stamp By Index
type: docs
weight: 50
-url: /python-net/move-stamp-by-index/
-description: This example creates two rubber stamps on page 2. After that, a stamp can be moved by specifying its index and new coordinates.
+url: /python-net/delete-stamp-by-index/
+description: This example creates two rubber stamps on page 2. After that, a stamp can be deleted by specifying its index.
lastmod: "2026-03-20"
sitemap:
changefreq: "weekly"
priority: 0.7
TechArticle: true
-AlternativeHeadline: Move a Rubber Stamp by Index in a PDF Using PdfContentEditor in Python
-Abstract: This example demonstrates how to reposition a rubber stamp annotation in a PDF using its index with Aspose.PDF for Python via the Facades API. It shows how to add multiple stamps and then move one of them based on its order on the page.
+AlternativeHeadline: Delete a Rubber Stamp by Index in a PDF Using PdfContentEditor in Python
+Abstract: This example demonstrates how to delete a rubber stamp annotation in a PDF using its index with Aspose.PDF for Python via the Facades API. It shows how to add multiple stamps and then delete one of them based on its order on the page.
---
-When multiple rubber stamps exist on a page, you can move a specific one using its index. The move_stamp() method allows repositioning annotations according to their sequence, which is useful when you don’t track stamp IDs but know their order.
+When multiple rubber stamps exist on a page, you can delete a specific one using its index. The delete_stamp() method allows removing annotations according to their sequence, which is useful when you don’t track stamp IDs but know their order.
1. Create a [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
1. Bind the input PDF document.
-1. Add two rubber stamp annotations on the same page.
-1. Demonstrate how to move a stamp using its index.
-1. Save the updated PDF document.
+1. Bind the input PDF file to the PdfContentEditor instance using bind_pdf(infile).
+1. Call 'delete_stamp(1, [2, 3])' to remove the stamp with index 1 from pages 2 and 3.
+1. Save the modified PDF document to the output file using save(outfile).
```python
import aspose.pdf.facades as pdf_facades
@@ -33,31 +33,12 @@ sys.path.append(path.join(path.dirname(__file__), ".."))
from config import set_license, initialize_data_dir
-def move_stamp_by_index(infile, outfile):
+def delete_stamp_by_index(infile, outfile):
# Create PdfContentEditor object
content_editor = pdf_facades.PdfContentEditor()
# Bind document to PdfContentEditor
content_editor.bind_pdf(infile)
-
- content_editor.create_rubber_stamp(
- 2,
- apd.Rectangle(200, 380, 180, 60),
- "Draft",
- "Draft stamp for ID-based operations",
- apd.Color.orange,
- )
-
- content_editor.create_rubber_stamp(
- 2,
- apd.Rectangle(200, 480, 180, 60),
- "Draft",
- "Draft stamp for ID-based operations",
- apd.Color.orange,
- )
- content_editor.save(outfile)
-
- # Move first stamp on page 1 by index
- # content_editor.move_stamp(1, 1, 10, 10)
+ content_editor.delete_stamp(1, [2, 3])
# Save updated document
content_editor.save(outfile)
```
diff --git a/es/python-net/advanced-operations/_index.md b/es/python-net/advanced-operations/_index.md
index a55501c093..cf051eb817 100644
--- a/es/python-net/advanced-operations/_index.md
+++ b/es/python-net/advanced-operations/_index.md
@@ -32,4 +32,4 @@ Aprenderás diferentes formas de:
- [Trabajando con gráficos](/pdf/es/python-net/working-with-graphs/) - manipular con formas en la página.
- [Trabajando con Operadores](/pdf/es/python-net/working-with-operators/) - realizar operaciones de bajo nivel en PDF.
- [Artefactos](/pdf/es/python-net/artifacts/) - tratar con marcas de agua y otros objetos especiales en PDF.
-- [Trabajar con capas PDF](/python-net/work-with-pdf-layers/) - bloquear capas, extraer elementos, aplanar y combinar capas PDF.
+- [Trabajar con capas PDF](/pdf/es/python-net/work-with-pdf-layers/) - bloquear capas, extraer elementos, aplanar y combinar capas PDF.
diff --git a/es/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md b/es/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
index 7be4cef7e8..82eaa7cd7f 100644
--- a/es/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
+++ b/es/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
@@ -11,7 +11,7 @@ sitemap:
priority: 0.7
TechArticle: true
AlternativeHeadline: Crear archivo PDF con Python
-Abstract: Aspose.PDF for Python via .NET es una API versátil diseñada para que los desarrolladores manipulen archivos PDF dentro de aplicaciones Python dirigidas al framework .NET. Permite a los usuarios crear, cargar, modificar y convertir documentos PDF sin esfuerzo. Este artículo proporciona una guía paso a paso para crear un archivo PDF simple usando Aspose.PDF. El proceso implica inicializar un `Document` object, añadir una `Page` al documento, insertar un `TextFragment` en los párrafos de la página, y guardar el archivo como PDF. El fragmento de código Python incluido demuestra estos pasos creando un documento PDF que contiene el texto "Hello World!". Esta API simplifica la manipulación de PDF con código mínimo, mejorando la productividad de los desarrolladores que trabajan con PDFs en entornos .NET.
+Abstract: Aspose.PDF for Python via .NET es una API versátil diseñada para que los desarrolladores manipulen archivos PDF dentro de aplicaciones Python dirigidas al framework .NET. Permite a los usuarios crear, cargar, modificar y convertir documentos PDF sin esfuerzo. Este artículo proporciona una guía paso a paso para crear un archivo PDF simple usando Aspose.PDF. El proceso implica inicializar un `Document` object, añadir una `Page` al documento, insertar un `TextFragment` en los párrafos de la página, y guardar el archivo como PDF. El fragmento de código Python incluido demuestra estos pasos creando un documento PDF que contiene el texto "Hola Mundo!". Esta API simplifica la manipulación de PDF con código mínimo, mejorando la productividad de los desarrolladores que trabajan con PDFs en entornos .NET.
---
**Aspose.PDF for Python via .NET** es una API de manipulación de PDF que permite a los desarrolladores crear, cargar, modificar y convertir archivos PDF directamente desde Python para aplicaciones .NET con solo unas pocas líneas de código.
@@ -33,10 +33,10 @@ from os import path
import aspose.pdf as ap
def create_new_document(output_pdf):
- """Create a simple PDF with a single “Hello World!” page."""
+ """Create a simple PDF with a single “Hola Mundo!” page."""
document = ap.Document()
page = document.pages.add()
- page.paragraphs.add(ap.text.TextFragment("Hello World!"))
+ page.paragraphs.add(ap.text.TextFragment("Hola Mundo!"))
document.save(output_pdf)
```
diff --git a/es/python-net/basic-operations/merge-pdf/_index.md b/es/python-net/basic-operations/merge-pdf/_index.md
index cfb4befcc6..c711f11180 100644
--- a/es/python-net/basic-operations/merge-pdf/_index.md
+++ b/es/python-net/basic-operations/merge-pdf/_index.md
@@ -3,7 +3,7 @@ title: Combinar archivos PDF en Python
linktitle: Combinar archivos PDF
type: docs
weight: 50
-url: /es/python-net/merge-pdf-documents/
+url: /es/python-net/merge-pdf/
description: Aprenda cómo combinar varios archivos PDF en un solo documento en Python.
lastmod: "2026-05-08"
sitemap:
diff --git a/es/python-net/basic-operations/split-pdf/_index.md b/es/python-net/basic-operations/split-pdf/_index.md
index 7579df5ae7..f92a1a30e1 100644
--- a/es/python-net/basic-operations/split-pdf/_index.md
+++ b/es/python-net/basic-operations/split-pdf/_index.md
@@ -3,7 +3,7 @@ title: Dividir archivos PDF en Python
linktitle: Dividir archivos PDF
type: docs
weight: 60
-url: /es/python-net/split-pdf-document/
+url: /es/python-net/split-pdf/
description: Aprenda cómo dividir páginas PDF en archivos PDF separados en Python.
lastmod: "2026-04-15"
sitemap:
diff --git a/es/python-net/get-started/hello-world-example/_index.md b/es/python-net/get-started/hello-world-example/_index.md
index 055afb786d..efa4fced42 100644
--- a/es/python-net/get-started/hello-world-example/_index.md
+++ b/es/python-net/get-started/hello-world-example/_index.md
@@ -1,22 +1,22 @@
---
-title: Ejemplo de Hello World usando Python
-linktitle: Ejemplo Hello World
+title: Ejemplo de Hola Mundo usando Python
+linktitle: Ejemplo Hola Mundo
type: docs
weight: 20
url: /es/python-net/hello-world-example/
-description: Este ejemplo muestra cómo crear un documento PDF simple con el texto Hello World usando Aspose.PDF for Python via .NET.
+description: Este ejemplo muestra cómo crear un documento PDF simple con el texto Hola Mundo usando Aspose.PDF for Python via .NET.
lastmod: "2025-02-27"
sitemap:
changefreq: "monthly"
priority: 0.7
TechArticle: true
-AlternativeHeadline: Ejemplo Hello World vía Python
-Abstract: Este artículo proporciona un ejemplo Hello World usando la biblioteca Aspose.PDF for Python via .NET para crear un documento PDF. El ejemplo muestra los pasos básicos de uso de la API Aspose.PDF generando un PDF con el texto "Hello World!". El proceso implica instanciar un objeto `Document`, agregar un `Page`, crear un objeto `TextFragment`, establecer propiedades de texto como el tamaño y color de la fuente, y usar un `TextBuilder` para añadir el texto a la página. El PDF resultante se guarda como "HelloWorld_out.pdf". El artículo incluye un fragmento de código Python completo que ilustra estos pasos, sirviendo como una guía introductoria al uso de la biblioteca.
+AlternativeHeadline: Ejemplo Hola Mundo vía Python
+Abstract: Este artículo proporciona un ejemplo Hola Mundo usando la biblioteca Aspose.PDF for Python via .NET para crear un documento PDF. El ejemplo muestra los pasos básicos de uso de la API Aspose.PDF generando un PDF con el texto "Hola Mundo!". El proceso implica instanciar un objeto `Document`, agregar un `Page`, crear un objeto `TextFragment`, establecer propiedades de texto como el tamaño y color de la fuente, y usar un `TextBuilder` para añadir el texto a la página. El PDF resultante se guarda como "HelloWorld_out.pdf". El artículo incluye un fragmento de código Python completo que ilustra estos pasos, sirviendo como una guía introductoria al uso de la biblioteca.
---
-Un ejemplo "Hello World" muestra la sintaxis más simple y el programa más sencillo en cualquier lenguaje de programación. A los desarrolladores se les introduce la sintaxis básica del lenguaje aprendiendo a imprimir "Hello World" en la pantalla del dispositivo. Por lo tanto, tradicionalmente comenzaremos nuestro acercamiento a la biblioteca con él.
+Un ejemplo "Hola Mundo" muestra la sintaxis más simple y el programa más sencillo en cualquier lenguaje de programación. A los desarrolladores se les introduce la sintaxis básica del lenguaje aprendiendo a imprimir "Hola Mundo" en la pantalla del dispositivo. Por lo tanto, tradicionalmente comenzaremos nuestro acercamiento a la biblioteca con él.
-En este artículo, estamos creando un documento PDF que contiene el texto "Hello World!". Después de instalar **Aspose.PDF for Python via .NET** en tu entorno, puedes ejecutar el siguiente ejemplo de código para ver cómo funciona la API de Aspose.PDF.
+En este artículo, estamos creando un documento PDF que contiene el texto "Hola Mundo!". Después de instalar **Aspose.PDF for Python via .NET** en tu entorno, puedes ejecutar el siguiente ejemplo de código para ver cómo funciona la API de Aspose.PDF.
El siguiente fragmento de código sigue estos pasos:
@@ -28,7 +28,7 @@ El siguiente fragmento de código sigue estos pasos:
1. Agregar [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) a la Page
1. [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) documento PDF resultante
-El siguiente fragmento de código es un programa "Hello World" que demuestra la funcionalidad de Aspose.PDF for Python via the .NET API.
+El siguiente fragmento de código es un programa "Hola Mundo" que demuestra la funcionalidad de Aspose.PDF for Python via the .NET API.
```python
from datetime import timedelta
@@ -41,7 +41,7 @@ def run_simple(self):
# Add page
page = document.pages.add()
# Add text to new page
- textFragment = ap.text.TextFragment("Hello, world!")
+ textFragment = ap.text.TextFragment("Hola Mundo!")
textFragment.position = ap.text.Position(100, 600)
textFragment.text_state.font_size = 12
@@ -55,5 +55,5 @@ def run_simple(self):
# Append the text fragment to the PDF page
textBuilder.append_text(textFragment)
- document.save(self.data_dir + "HelloWorld_out.pdf")
+ document.save(self.data_dir + "HolaMundo_out.pdf")
```
diff --git a/es/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md b/es/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
index 9796861ae5..2faad6d697 100644
--- a/es/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
+++ b/es/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
@@ -3,7 +3,7 @@ title: Anotaciones
linktitle: Anotaciones
type: docs
weight: 10
-url: /es/python-net/annotations/
+url: /es/python-net/annotations-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/es/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md b/es/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
index 57af42004f..f3ea6b659e 100644
--- a/es/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
+++ b/es/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
@@ -3,7 +3,7 @@ title: Adjuntos
linktitle: Adjuntos
type: docs
weight: 20
-url: /es/python-net/attachments/
+url: /es/python-net/attachments-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/es/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md b/es/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
index 24365872bd..1611fce232 100644
--- a/es/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
+++ b/es/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
@@ -3,7 +3,7 @@ title: Enlaces y navegación
linktitle: Enlaces y navegación
type: docs
weight: 70
-url: /es/python-net/links-and-navigation/
+url: /es/python-net/links-and-navigation-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/fr/python-net/_index.md b/fr/python-net/_index.md
index dac91bd88c..6f0991d6aa 100644
--- a/fr/python-net/_index.md
+++ b/fr/python-net/_index.md
@@ -1,49 +1,51 @@
---
title: Documentation
-linktitle: Aspose.PDF pour Python via .NET
-second_title: Aspose.PDF pour Python via .NET
+linktitle: Aspose.PDF for Python via .NET
+second_title: Aspose.PDF for Python via .NET
type: docs
weight: 40
url: /fr/python-net/
is_root: true
-lastmod: "2022-10-24"
-description: Apprenez à utiliser Aspose.PDF Python via .NET pour créer des applications de traitement de documents PDF sur n'importe quelle plateforme en utilisant Python. Parcourez les tutoriels, les exemples de code, et plus encore.
+lastmod: "2026-05-27"
+description: Apprenez à utiliser Aspose.PDF Python via .NET pour créer des applications de traitement de documents PDF sur n'importe quelle plateforme en utilisant Python. Parcourez les tutoriels, les exemples de code et plus encore.
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Guide de documentation d'Aspose.PDF for Python via .NET
+Abstract: Aspose.PDF for Python via .NET est un composant polyvalent conçu pour les développeurs afin de créer et manipuler programmatiquement des documents PDF en utilisant Python en combinaison avec .NET. Cet outil prend en charge un large éventail de fonctionnalités, notamment l'insertion de tableaux, de graphiques, d'images, de liens hypertexte et de polices personnalisées, ainsi que la compression PDF. Il offre également des fonctionnalités de sécurité robustes pour assurer la protection du Document. Notamment, les développeurs peuvent générer des documents PDF via une API ou à partir de modèles XML. La documentation est organisée en plusieurs chapitres couvrant les nouvelles fonctionnalités, un aperçu, les guides de démarrage, les opérations de base et avancées, la conversion de Document, et les techniques d'analyse. Des ressources supplémentaires comprennent les points forts des fonctionnalités, les notes de version, les pages produit, les liens de téléchargement, les instructions d'installation, un guide de référence API, et l'accès aux forums de support et aux services d'assistance.
---
-
+
-
Bienvenue à Aspose.PDF pour Python via .NET
+## Bienvenue sur Aspose.PDF for Python via .NET
{{% alert color="primary" %}}
-Aspose.PDF est un composant .NET conçu pour permettre aux développeurs de créer des documents PDF, qu'ils soient simples ou complexes, à la volée de manière programmatique.
- Aspose.PDF pour Python via .NET permet aux développeurs d'insérer des tableaux, graphiques, images, hyperliens, polices personnalisées - et plus encore - dans des documents PDF. De plus, il est également possible de compresser des documents PDF. Aspose.PDF pour Python via .NET offre d'excellentes fonctionnalités de sécurité pour développer des documents PDF sécurisés. Et la caractéristique la plus distincte d'Aspose.PDF pour Python via .NET est qu'il prend en charge la création de documents PDF à la fois via une API et à partir de modèles XML.
+Aspose.PDF for Python via .NET permet aux développeurs de créer des documents PDF, qu’ils soient simples ou complexes, à la volée de manière programmatique. Aspose.PDF for Python via .NET permet aux développeurs d’insérer des tableaux, des graphiques, des images, des hyperliens, des polices personnalisées - et plus encore - dans des documents PDF. De plus, il est également possible de compresser les documents PDF. Aspose.PDF for Python via .NET fournit d’excellentes fonctionnalités de sécurité pour développer des documents PDF sécurisés. Et la caractéristique la plus distincte d’Aspose.PDF for Python via .NET est qu’il prend en charge la création de documents PDF à la fois via une API et à partir de modèles XML.
{{% /alert %}}
-
Chapitres
+## Chapitres
-- [Quoi de neuf](/pdf/fr/python-net/whatsnew/)
-- [Vue d'ensemble](/pdf/fr/python-net/overview/)
+- [Nouveautés](/pdf/fr/python-net/whatsnew/)
+- [Aperçu](/pdf/fr/python-net/overview/)
- [Commencer](/pdf/fr/python-net/get-started/)
- [Opérations de base](/pdf/fr/python-net/basic-operations/)
- [Conversion de documents](/pdf/fr/python-net/converting/)
-- [Analyse des documents PDF](/pdf/fr/python-net/parsing/)
+- [Analyse de documents PDF](/pdf/fr/python-net/parsing/)
- [Opérations avancées](/pdf/fr/python-net/advanced-operations/)
-- [Vitrines](/pdf/fr/python-net/showcases/)
- [Notes de version](https://releases.aspose.com/pdf/pythonnet/release-notes/)
Ressources Aspose.PDF pour Python via .NET
-Vous trouverez ci-dessous les liens vers certaines ressources utiles dont vous pourriez avoir besoin pour accomplir vos tâches.
-- [Fonctionnalités d'Aspose.PDF pour Python via .NET](/pdf/fr/python-net/key-features/)
-- [Notes de version d'Aspose.PDF pour Python via .NET](https://releases.aspose.com/pdf/pythonnet/release-notes/)
-- [Page produit Aspose.PDF pour Python via .NET](https://products.aspose.com/pdf/python-net/)
-- [Télécharger Aspose.PDF pour Python via .NET](https://releases.aspose.com/pdf/pythonnet/)
-- [Installer le package NuGet Aspose.PDF pour Python via .NET](https://www.nuget.org/packages/Aspose.PDF/)
-- [Guide de référence de l'API Aspose.PDF pour Python via .NET](https://reference.aspose.com/pdf/net)!
-- [Forum de support gratuit Aspose.PDF pour Python via .NET](https://forum.aspose.com/c/pdf/10)
-- [Helpdesk de support payant Aspose.PDF pour Python via .NET](https://helpdesk.aspose.com/)
\ No newline at end of file
+Voici les liens vers quelques ressources utiles dont vous pourriez avoir besoin pour accomplir vos tâches.
+
+- [Fonctionnalités Aspose.PDF for Python via .NET](/pdf/fr/python-net/key-features/)
+- [Notes de version Aspose.PDF for Python via .NET](https://releases.aspose.com/pdf/pythonnet/release-notes/)
+- [Aspose.PDF for Python via .NET Page produit](https://products.aspose.com/pdf/python-net/)
+- [Télécharger Aspose.PDF for Python via .NET](https://releases.aspose.com/pdf/pythonnet/)
+- [Installer Aspose.PDF for Python via .NET Package NuGet](https://www.nuget.org/packages/Aspose.PDF/)
+- [Aspose.PDF for Python via .NET Guide de référence de l'API](https://reference.aspose.com/pdf/net)!
+- [Aspose.PDF for Python via .NET Forum de support gratuit](https://forum.aspose.com/c/pdf/10)
+- [Aspose.PDF for Python via .NET Service d'assistance payant](https://helpdesk.aspose.com/)
diff --git a/fr/python-net/advanced-operations/_index.md b/fr/python-net/advanced-operations/_index.md
index 882bd9d39b..f8ac54de22 100644
--- a/fr/python-net/advanced-operations/_index.md
+++ b/fr/python-net/advanced-operations/_index.md
@@ -4,90 +4,32 @@ linktitle: Opérations avancées
type: docs
weight: 90
url: /fr/python-net/advanced-operations/
-description: Aspose.PDF pour Python via .NET peut effectuer des tâches simples et faciles et gérer des objectifs plus complexes. Consultez la section suivante pour les utilisateurs avancés et les développeurs.
-lastmod: "2023-04-17"
+description: Aspose.PDF for Python via .NET peut effectuer des tâches simples et faciles et faire face à des objectifs plus complexes. Consultez la section suivante pour les utilisateurs avancés et les développeurs.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: La section Opérations avancées avec Python
+Abstract: La section Opérations avancées fournit des directives complètes sur la manipulation programmatique de fichiers PDF existants, quelle que soit leur origine, en utilisant divers outils et techniques. Cette section prolonge les compétences fondamentales abordées dans Opérations de base en explorant des fonctionnalités avancées.
---
-
-
-**Opérations Avancées** est une section sur la façon de traiter les fichiers PDF existants de manière programmatique, qu'il s'agisse de documents créés avec Aspose.PDF comme discuté dans [Opérations de Base](/pdf/fr/python-net/basic-operations/), ou de PDF créés avec Adobe Acrobat, Google Docs, Microsoft Office, Open Office ou tout autre producteur de PDF.
+**Opérations avancées** est une section qui explique comment gérer programmatique des fichiers PDF existants, qu'il s'agisse de documents créés avec Aspose.PDF comme discuté dans [Opérations de base](/pdf/fr/python-net/basic-operations/), ou des PDF créés avec Adobe Acrobat, Google Docs, Microsoft Office, Open Office ou tout autre producteur de PDF.
Vous apprendrez différentes manières de :
-- [Travailler avec des Documents](/pdf/fr/python-net/working-with-documents/) - compresser, diviser et fusionner des documents et effectuer d'autres opérations avec l'ensemble du document.
-- [Travailler avec des Pages](/pdf/fr/python-net/working-with-pages/) - ajouter, déplacer ou supprimer, rogner des pages, ajouter des filigranes, des tampons, etc.
-- [Travailler avec des Images](/pdf/fr/python-net/working-with-images/) - ajouter, extraire ou supprimer des images des documents PDF.
-- [Pièces jointes](/pdf/fr/python-net/attachments/) - vous apprendrez comment ajouter et supprimer les pièces jointes d'un PDF de manière programmatique avec Python.
-- [Navigation et Interaction](/pdf/fr/python-net/navigation-and-interaction/) - gérer les actions, signets, naviguer dans les pages.
-- [Annotations](/pdf/fr/python-net/annotations/) - les annotations permettent aux utilisateurs d'ajouter du contenu personnalisé sur les pages PDF.
- You can add, delete and modify the annotation from the PDF documents.
-- [Travailler avec les tableaux](/pdf/fr/python-net/working-with-tables/) - insérer, décorer un tableau dans un PDF, extraire des données tabulaires.
-- [Travailler avec les formulaires](/pdf/fr/python-net/working-with-forms/) - gérer les documents PDF interactifs, ajouter des champs de formulaire, extraire des données.
-- [Travailler avec le texte](/pdf/fr/python-net/working-with-text/) - ajouter, formater, rechercher et remplacer du texte dans un PDF.
\ No newline at end of file
+- [Travailler avec les Documents](/pdf/fr/python-net/working-with-documents/) - compresser, diviser et fusionner des documents et effectuer d’autres opérations sur le document complet.
+- [Travailler avec les Pages](/pdf/fr/python-net/working-with-pages/) - ajouter, déplacer ou retirer, recadrer des pages, ajouter des filigranes, des tampons, etc.
+- [Travailler avec des images](/pdf/fr/python-net/working-with-images/) - ajouter, extraire ou supprimer des images des documents PDF.
+- [Pièces jointes](/pdf/fr/python-net/attachments/) - vous apprendrez comment ajouter et supprimer la pièce jointe du PDF programmatiquement avec Python.
+- [Navigation et interaction](/pdf/fr/python-net/navigation-and-interaction/) - gérer les actions, les signets, naviguer entre les pages.
+- [Annotations](/pdf/fr/python-net/annotations/) - les annotations permettent aux utilisateurs d'ajouter du contenu personnalisé sur les pages PDF. Vous pouvez ajouter, supprimer et modifier l'annotation des documents PDF.
+- [Travailler avec les tableaux](/pdf/fr/python-net/working-with-tables/) - insérer, décorer le tableau dans le PDF, extraire les données tabulaires.
+- [Travailler avec les formulaires](/pdf/fr/python-net/working-with-forms/) - gérer les documents PDF interactifs, ajouter formfields, extraire les données.
+- [Travailler avec le texte](/pdf/fr/python-net/working-with-text/) - ajouter, formater, rechercher et remplacer du texte dans le PDF.
+- [Comparer des documents PDF](/pdf/fr/python-net/compare-pdf-documents/) - possibilité de comparer le contenu des documents PDF.
+- [Métadonnées dans les PDF](/pdf/fr/python-net/pdf-file-metadata/) - obtenir ou définir les métadonnées dans les documents, en traitant les données XMP.
+- [Travailler avec des graphiques](/pdf/fr/python-net/working-with-graphs/) - manipuler des formes sur la page.
+- [Travailler avec les opérateurs](/pdf/fr/python-net/working-with-operators/) - effectuer des opérations bas‑niveau dans le PDF.
+- [Artefacts](/pdf/fr/python-net/artifacts/) - gérer les filigranes et d’autres objets spéciaux dans le PDF.
+- [Travailler avec les calques PDF](/pdf/fr/python-net/work-with-pdf-layers/) - verrouiller les calques, extraire les éléments, aplatir et fusionner les calques PDF.
diff --git a/fr/python-net/advanced-operations/accessibility-tagged-pdf/_index.md b/fr/python-net/advanced-operations/accessibility-tagged-pdf/_index.md
new file mode 100644
index 0000000000..ebe7102d69
--- /dev/null
+++ b/fr/python-net/advanced-operations/accessibility-tagged-pdf/_index.md
@@ -0,0 +1,27 @@
+---
+title: Accessibilité et Tagged PDFs en Python
+linktitle: Accessibilité. Tagged PDF
+type: docs
+weight: 180
+url: /fr/python-net/accessibility-tagged-pdf/
+description: Apprenez comment créer des Tagged PDFs accessibles en Python avec Aspose.PDF for Python via .NET, y compris la structure PDF/UA, l'extraction de tagged content, les propriétés de structure et les tableaux.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Un document Tagged PDF peut être consulté plus efficacement par les personnes handicapées. L'ajout de balises d'accessibilité aux fichiers PDF aide les lecteurs d'écran et autres technologies d'assistance à interpréter correctement les titres, les tableaux, les hyperliens, les signets, le texte alternatif et l'ordre de lecture.
+
+## Ce que vous pouvez faire avec les Tagged PDFs
+
+Utilisez cette section lorsque vous devez créer ou inspecter des documents PDF accessibles conformes aux exigences PDF/UA. Ces articles couvrent les flux de travail principaux des Tagged PDF pour créer la structure, lire le contenu sémantique, mettre à jour les propriétés de structure et travailler avec des tableaux accessibles.
+
+## Sujets Tagged PDF
+
+- [Créer Tagged PDF](/pdf/fr/python-net/create-tagged-pdf/)
+- [Extraire le contenu balisé des Tagged PDFs](/pdf/fr/python-net/extract-tagged-content-from-tagged-pdfs/)
+- [Définir les propriétés des éléments de structure](/pdf/fr/python-net/setting-structure-elements-properties/)
+- [Travailler avec la Table dans Tagged PDFs](/pdf/fr/python-net/working-with-table-in-tagged-pdfs/)
+
+Les Tagged PDFs sont particulièrement utiles lorsque vous avez besoin de documents d'entreprise accessibles, de rapports conformes ou de contenu sémantiquement structuré pour une réutilisation à long terme. Si vous débutez, commencez par créer un Tagged PDF, puis passez à l'inspection de la structure et aux mises à jour des propriétés à mesure que votre flux de travail devient plus avancé.
diff --git a/fr/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/_index.md b/fr/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/_index.md
new file mode 100644
index 0000000000..fcc54300d2
--- /dev/null
+++ b/fr/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/_index.md
@@ -0,0 +1,519 @@
+---
+title: Créer Tagged PDF en Python
+linktitle: Créer Tagged PDF
+type: docs
+weight: 10
+url: /fr/python-net/create-tagged-pdf/
+description: Apprenez à créer des documents PDF balisés en Python avec Aspose.PDF for Python via .NET, incluant les éléments de structure PDF/UA, les formulaires accessibles, les pages TOC et le balisage automatique.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Créer un Tagged PDF signifie ajouter (ou créer) certains éléments au document qui permettront au document d’être validé conformément aux exigences PDF/UA. Ces éléments sont souvent appelés Structure Elements.
+
+## Création de Tagged PDF (Scénario simple)
+
+Afin de créer des éléments de structure dans un Tagged PDF Document, Aspose.PDF propose des méthodes pour créer des éléments de structure en utilisant le [ITaggedContent](https://reference.aspose.com/pdf/python-net/aspose.pdf.tagged/itaggedcontent/) interface. Cet exemple crée un document Tagged PDF — un PDF avec une structure sémantique, le rendant plus accessible et conforme aux normes telles que PDF/UA.
+Le fragment de code suivant montre comment créer un Tagged PDF qui contient 2 éléments : en-tête et paragraphe.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_tagged_pdf_document_simple(outfile):
+
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for working with TaggedPdf
+ tagged_content = document.tagged_content
+ root_element = tagged_content.root_element
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+ main_header = tagged_content.create_header_element()
+ main_header.set_text("Main Header")
+ paragraph_element = tagged_content.create_paragraph_element()
+ paragraph_element.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
+ + "Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. "
+ + "Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet "
+ + "nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. "
+ + "Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat "
+ + "sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper "
+ + "pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus "
+ + "ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus, "
+ + "ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus."
+ )
+ root_element.append_child(main_header, True)
+ root_element.append_child(paragraph_element, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Création Tagged PDF (Avancé)
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_tagged_pdf_document_adv(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for working with TaggedPdf
+ tagged_content = document.tagged_content
+ root_element = tagged_content.root_element
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create Header Level 1
+ header1 = tagged_content.create_header_element(1)
+ header1.set_text("Header Level 1")
+
+ # Create Paragraph with Quotes
+ paragraph_with_quotes = tagged_content.create_paragraph_element()
+ paragraph_with_quotes.structure_text_state.font = (
+ ap.text.FontRepository.find_font("Arial")
+ )
+ position_settings = ap.tagged.PositionSettings()
+ position_settings.margin = ap.MarginInfo(10, 5, 10, 5)
+ paragraph_with_quotes.adjust_position(position_settings)
+
+ # Create Span Element
+ span_element1 = tagged_content.create_span_element()
+ span_element1.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. "
+ "Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, "
+ "luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada "
+ "fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus "
+ "condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae "
+ "lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non "
+ "lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit."
+ )
+
+ # Create Quote Element
+ quote_element = tagged_content.create_quote_element()
+ quote_element.set_text(
+ "Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa."
+ )
+ quote_element.structure_text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
+
+ # Create Another Span Element
+ span_element2 = tagged_content.create_span_element()
+ span_element2.set_text(" Sed non consectetur elit.")
+
+ # Append Children to Paragraph
+ paragraph_with_quotes.append_child(span_element1, True)
+ paragraph_with_quotes.append_child(quote_element, True)
+ paragraph_with_quotes.append_child(span_element2, True)
+
+ # Append Header and Paragraph to Root Element
+ root_element.append_child(header1, True)
+ root_element.append_child(paragraph_with_quotes, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+Nous obtiendrons le document suivant après création :
+
+
+
+## Structure de texte stylisée
+
+Les PDF balisés sont des documents structurés qui offrent des fonctionnalités d'accessibilité et une signification sémantique au contenu.
+
+L'exemple crée un PDF Document avec des fonctionnalités d'accessibilité en utilisant une structure de contenu balisé. Il montre comment créer un élément de paragraphe avec un style personnalisé et des métadonnées de document appropriées.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_style(outfile):
+
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ paragraph_element = tagged_content.create_paragraph_element()
+ tagged_content.root_element.append_child(paragraph_element, True)
+
+ paragraph_element.structure_text_state.font_size = 18.0
+ paragraph_element.structure_text_state.foreground_color = ap.Color.red
+ paragraph_element.structure_text_state.font_style = ap.text.FontStyles.ITALIC
+
+ paragraph_element.set_text("Red italic text.")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Illustration des éléments de structure
+
+Les PDF balisés sont essentiels pour la conformité à l'accessibilité et offrent un contenu structuré qui peut être correctement interprété par les lecteurs d'écran et autres technologies d'assistance. Le fragment de code suivant montre comment créer un document PDF balisé avec une image intégrée :
+
+1. Créer un PDF balisé avec une image.
+1. Configurer le document.
+1. Créer et configurer la figure.
+1. Définir le positionnement.
+1. Enregistrer le document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def illustrate_structure_elements(imagefile, outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+ figure1 = tagged_content.create_figure_element()
+ tagged_content.root_element.append_child(figure1, True)
+ figure1.alternative_text = "Figure One"
+ figure1.title = "Image 1"
+ figure1.set_tag("Fig1")
+ figure1.set_image(imagefile, 300)
+ # Adjust position
+ position_settings = ap.tagged.PositionSettings()
+ margin_info = ap.MarginInfo()
+ margin_info.left = 50
+ margin_info.top = 20
+ position_settings.margin = margin_info
+ figure1.adjust_position(position_settings)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Valider Tagged PDF
+
+Aspose.PDF for Python via .NET offre la possibilité de valider un Document PDF/UA Tagged PDF. La méthode 'validate_tagged_pdf' valide les documents PDF selon la norme PDF/UA-1, qui fait partie de la spécification ISO 14289 pour les documents PDF accessibles. Cela garantit que les PDF sont accessibles aux utilisateurs en situation de handicap et aux technologies d’assistance.
+
+- Structure du document. Étiquetage sémantique approprié et structure logique.
+- Texte alternatif. Texte alternatif pour les images et les éléments non textuels.
+- Ordre de lecture. Séquence logique pour les lecteurs d’écran.
+- Couleur et contraste. Rapports de contraste suffisants.
+- Formulaires. Champs de formulaire accessibles et étiquettes.
+- Navigation. Signets appropriés et structure de navigation.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def validate_tagged_pdf(infile, logfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ is_valid = document.validate(logfile, ap.PdfFormat.PDF_UA_1)
+ print(f"Is Valid: {is_valid}")
+```
+
+## Ajuster la position de la structure de texte
+
+Le fragment de code suivant montre comment ajuster la position de la structure de texte dans le document PDF balisé :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def adjust_position(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create paragraph
+ paragraph = tagged_content.create_paragraph_element()
+ tagged_content.root_element.append_child(paragraph, True)
+ paragraph.set_text("Text.")
+
+ # Adjust position
+ position_settings = ap.tagged.PositionSettings()
+ margin_info = ap.MarginInfo()
+ margin_info.left = 300
+ margin_info.top = 20
+ margin_info.right = 0
+ margin_info.bottom = 0
+ position_settings.margin = margin_info
+ position_settings.horizontal_alignment = ap.HorizontalAlignment.NONE
+ position_settings.vertical_alignment = ap.VerticalAlignment.NONE
+ position_settings.is_first_paragraph_in_column = False
+ position_settings.is_kept_with_next = False
+ position_settings.is_in_new_page = False
+ position_settings.is_in_line_paragraph = False
+ paragraph.adjust_position(position_settings)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Convertir le PDF en PDF/UA-1 avec un étiquetage automatique
+
+Ce fragment de code explique comment convertir un PDF standard en un fichier conforme à PDF/UA-1 (Accessibilité universelle) à l'aide d'Aspose.PDF for Python via .NET.
+
+PDF/UA garantit que les documents sont accessibles aux utilisateurs en situation de handicap et compatibles avec les technologies d'assistance telles que les lecteurs d'écran. Lors de la conversion, la bibliothèque peut générer automatiquement l'arbre de structure logique et appliquer des balises sémantiques en utilisant la mise en balise automatique intégrée et la reconnaissance des titres.
+
+En configurant PdfFormatConversionOptions et en activant AutoTaggingSettings, vous pouvez transformer efficacement les PDF existants en documents accessibles sans modifier manuellement la structure.
+
+1. Chargez le document source.
+1. Créer des options de conversion PDF/UA.
+1. Activer le balisage automatique.
+1. Configurer la reconnaissance des titres.
+1. Attachez la configuration de balisage aux options de conversion.
+1. Exécutez le processus de conversion.
+1. Enregistrez le PDF accessible.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def convert_to_pdf_ua_with_automatic_tagging(infile, outfile, logfile):
+ # Create PDF Document
+ with ap.Document(infile) as document:
+ # Create conversion options
+ options = ap.PdfFormatConversionOptions(
+ logfile, ap.PdfFormat.PDF_UA_1, ap.ConvertErrorAction.DELETE
+ )
+ # Create auto-tagging settings
+ # aspose.pdf.AutoTaggingSettings.default may be used to set the same settings as given below
+ auto_tagging_settings = ap.AutoTaggingSettings()
+ # Enable auto-tagging during the conversion process
+ auto_tagging_settings.enable_auto_tagging = True
+ # Use the heading recognition strategy that's optimal for the given document structure
+ auto_tagging_settings.heading_recognition_strategy = (
+ ap.HeadingRecognitionStrategy.AUTO
+ )
+ # Assign auto-tagging settings to be used during the conversion process
+ options.auto_tagging_settings = auto_tagging_settings
+ # During the conversion, the document logical structure will be automatically created
+ document.convert(options)
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Créer un Tagged PDF avec un champ de formulaire de signature accessible
+
+1. Créer un nouveau document PDF.
+1. Accéder au contenu balisé.
+1. Créer un champ Form de signature.
+1. Ajoutez le champ à AcroForm.
+1. Créez un élément de formulaire dans la structure de balises.
+1. Liez l'élément Structure au champ Form.
+1. Ajoutez l'élément Form à l'arbre de structure logique.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_pdf_with_tagged_form_field(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ document.pages.add()
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+ root_element = tagged_content.root_element
+ # Create a visible signature form field (AcroForm)
+ signature_field = ap.forms.SignatureField(
+ document.pages[1], ap.Rectangle(50, 50, 100, 100, True)
+ )
+ signature_field.partial_name = "Signature1"
+ signature_field.alternate_name = "signature 1"
+
+ # Add the signature field to the document's AcroForm
+ document.form.add(signature_field)
+
+ # Create a /Form structure element in the tag tree
+ form = tagged_content.create_form_element()
+ form.alternative_text = "form 1"
+
+ # Link the /Form tag to the signature field via an /OBJR reference
+ form.tag(signature_field)
+
+ # Add the /Form structure element to the document’s logical structure tree
+ root_element.append_child(form, True)
+
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Créer un Tagged PDF avec une page de Table des matières (TOC)
+
+Cet exemple montre comment créer un document Tagged PDF avec une page de Table des matières (TOC) structurée en utilisant Aspose.PDF for Python via .NET.
+
+1. Créer un nouveau document PDF.
+1. Créer une page de table des matières dédiée.
+1. Créer et enregistrer l'élément TOC dans l'arbre de structure logique.
+1. Ajouter une page de contenu.
+1. Créer un élément d'en-tête.
+1. Créer un élément /TOCI.
+1. Liez l'en-tête au TOC.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_pdf_with_toc_page(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get tagged content for the PDF structure
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ # Add the table of contents (TOC) page
+ toc_page = document.pages.add()
+ toc_page.toc_info = ap.TocInfo()
+ # Create a TOC structure element
+ toc_element = content.create_toc_element()
+ # Add the TOC element to the document structure tree
+ root_element.append_child(toc_element, True)
+ # Add a content page
+ document.pages.add()
+ # Create a header element and set its text
+ header = content.create_header_element(1)
+ header.set_text("1. Header")
+ # Add the header to the document structure
+ root_element.append_child(header, True)
+ # Create a TOC item (TOCI) element
+ toci = content.create_toci_element()
+ # Add the TOCI element to the TOC element
+ toc_element.append_child(toci, True)
+ # Add an entry to the TOC page and link it to the TOCI element
+ header.add_entry_to_toc_page(toc_page, toci)
+ # Add a logical reference to the header within the TOCI element
+ toci.add_ref(header)
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Créer un PDF balisé avancé avec une table des matières hiérarchique (TOC)
+
+En utilisant Aspose.PDF for Python via .NET, vous pouvez créer un document PDF avancé, entièrement balisé, avec une table des matières structurée et hiérarchique (TOC).
+
+1. Créez le document et activez le contenu Tagged.
+1. Ajoutez et configurez la page TOC.
+1. Créez l'élément de structure /TOC.
+1. Liez le titre de la page du TOC à un élément d’en-tête.
+1. Ajouter la page de contenu principal et le premier en-tête.
+1. Créer une entrée de TOC pour l'en-tête.
+1. Créer des sous‑sections imbriquées avec une structure de liste.
+1. Ajoutez une deuxième section de niveau supérieur.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_pdf_with_toc_page_advanced(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get tagged content for the PDF structure
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ # Add the table of contents (TOC) page
+ toc_page = document.pages.add()
+ toc_page.toc_info = ap.TocInfo()
+ toc_page.toc_info.title = ap.text.TextFragment("Table of Contents")
+ # Create a TOC structure element
+ toc_element = content.create_toc_element()
+ # Create a header element for the TOC page title
+ header_for_toc_page_title = content.create_header_element(1)
+ toc_element.link_toc_page_title_to_header_element(
+ toc_page, header_for_toc_page_title
+ )
+ # Add the TOC page title header and TOC element to the document structure tree
+ root_element.append_child(header_for_toc_page_title, True)
+ root_element.append_child(toc_element, True)
+ # Add a content page
+ document.pages.add()
+ # Create a header element and set its text
+ header = content.create_header_element(1)
+ header.set_text("1. Header")
+ # Add the header to the document structure
+ root_element.append_child(header, True)
+ # Create a TOC item (TOCI) element
+ toci = content.create_toci_element()
+ # Add the TOCI element to the TOC element
+ toc_element.append_child(toci, True)
+ # Add an entry to the TOC page and link it to the TOCI element
+ header.add_entry_to_toc_page(toc_page, toci)
+ # Add a logical reference to the header within the TOCI element
+ toci.add_ref(header)
+ # Create a list element for TOCI subitems
+ list_element = content.create_list_element()
+ for i in range(1, 4):
+ # Create a list item (LI) element
+ li = content.create_list_li_element()
+ # Add the list item to the list element
+ list_element.append_child(li, True)
+ # Create a sub-header element and set its properties
+ sub_header = content.create_header_element(2)
+ sub_header.structure_text_state.font_size = 14
+ sub_header.language = "en-US"
+ sub_header.set_text(f"1.{i} subheader ")
+ # Add an entry to the TOC page and link it to the LI element
+ sub_header.add_entry_to_toc_page(toc_page, li)
+ # Add a logical reference to the subheader element
+ li.add_ref(sub_header)
+ # Create a paragraph element and set its text and language
+ p = content.create_paragraph_element()
+ p.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
+ )
+ p.language = "en-US"
+ # Add the sub-header and paragraph to the document structure
+ root_element.append_child(sub_header, True)
+ root_element.append_child(p, True)
+ # Add the list element as a child to the TOCI element
+ toci.append_child(list_element, True)
+ # --- Additional TOC header example ---
+ # Create a second header element (see comments above for header 1)
+ header2 = content.create_header_element(1)
+ header2.set_text("2. Header")
+ root_element.append_child(header2, True)
+
+ toci2 = content.create_toci_element()
+ toc_element.append_child(toci2, True)
+
+ header2.add_entry_to_toc_page(toc_page, toci2)
+ toci2.add_ref(header2)
+ # Save the PDF document
+ document.save(outfile)
+```
+
+## Sujets liés aux PDF balisés
+
+- [Extraire le contenu balisé des Tagged PDFs](/pdf/fr/python-net/extract-tagged-content-from-tagged-pdfs/) pour inspecter l'arbre de structure logique après création.
+- [Définir les propriétés des éléments de structure](/pdf/fr/python-net/setting-structure-elements-properties/) pour affiner les titres, le langage, le texte alternatif et le texte d'expansion.
+- [Travailler avec la Table dans Tagged PDFs](/pdf/fr/python-net/working-with-table-in-tagged-pdfs/) lorsque votre document accessible inclut des tableaux structurés.
diff --git a/fr/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/taggedpdf-01.png b/fr/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/taggedpdf-01.png
new file mode 100644
index 0000000000..6bb7280be1
Binary files /dev/null and b/fr/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/taggedpdf-01.png differ
diff --git a/fr/python-net/advanced-operations/accessibility-tagged-pdf/extract-tagged-content-from-tagged-pdfs/_index.md b/fr/python-net/advanced-operations/accessibility-tagged-pdf/extract-tagged-content-from-tagged-pdfs/_index.md
new file mode 100644
index 0000000000..c7ec9c3d98
--- /dev/null
+++ b/fr/python-net/advanced-operations/accessibility-tagged-pdf/extract-tagged-content-from-tagged-pdfs/_index.md
@@ -0,0 +1,152 @@
+---
+title: Extraire le contenu balisé des PDF en Python
+linktitle: Extraire le contenu balisé
+type: docs
+weight: 20
+url: /fr/python-net/extract-tagged-content-from-tagged-pdfs/
+description: Découvrez comment extraire le contenu Tagged PDF en Python avec Aspose.PDF for Python via .NET, y compris l'accès au contenu balisé, à la structure racine et aux éléments de structure enfants.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Dans cet article, vous apprendrez comment extraire le contenu balisé des documents PDF en utilisant Python.
+
+Utilisez ces exemples lorsque vous devez inspecter un PDF balisé, lire l'arbre de structure logique ou valider que les éléments de structure ont été créés correctement pour les flux de travail d'accessibilité.
+
+## Obtenir le contenu du PDF balisé
+
+Afin d'obtenir le contenu d'un Document PDF avec du texte balisé, Aspose.PDF propose [tagged_content](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) propriété de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+
+Créez un document PDF avancé, entièrement balisé, avec une table des matières structurée et hiérarchique (TOC):
+
+1. Créez un nouvel objet Document.
+1. Accédez à la propriété tagged_content.
+1. Définissez le titre du document en utilisant 'set_title()'.
+1. Définissez la langue du document en utilisant 'set_language()'.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast
+import sys
+from os import path
+
+# region Extract Tagged Content from PDF
+def get_tagged_content(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Work with Tagged PDF content
+ # Set Title and Language for Document
+ tagged_content.set_title("Simple Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Obtention de la structure racine
+
+Les Tagged PDFs contiennent un arbre de structure logique qui définit la structure sémantique du document. Le StructTreeRoot représente la racine de cet arbre logique, tandis que le RootElement fournit une interface pour interagir avec l'élément de structure de niveau supérieur du document.
+
+Le fragment de code suivant montre comment obtenir la structure racine d'un Tagged PDF Document :
+
+1. Créez un nouveau document PDF balisé.
+1. Accédez au contenu balisé et définissez les métadonnées.
+1. Accédez à StructTreeRoot et RootElement.
+1. Enregistrez le PDF balisé.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast
+import sys
+from os import path
+
+def get_root_structure(outfile):
+
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Properties StructTreeRootElement and RootElement are used for access to
+ # StructTreeRoot object of pdf document and to root structure element (Document structure element).
+ struct_tree_root_element = tagged_content.struct_tree_root_element
+ root_element = tagged_content.root_element
+
+ print(f"StructTreeRootElement: {struct_tree_root_element}")
+ print(f"RootElement: {root_element}")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Accéder aux éléments enfants
+
+Les PDFs balisés contiennent un arbre de structure logique qui définit la hiérarchie sémantique du document (titres, paragraphes, formulaires, listes, etc.). Accéder à ces éléments de structure et les modifier vous permet de :
+
+- Inspecter les métadonnées telles que le titre, la langue, actual_text et les propriétés liées à l'accessibilité
+- Mettre à jour les propriétés pour améliorer l'accessibilité ou la localisation
+- Ajuster programmatiquement la structure logique du document pour la conformité PDF/UA
+
+ Le fragment de code suivant montre comment accéder aux éléments enfants d'un Tagged PDF Document:
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast
+import sys
+from os import path
+
+def access_child_elements(infile, outfile):
+
+ # Open PDF Document
+ with ap.Document(infile) as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Access to root element(s)
+ element_list = tagged_content.struct_tree_root_element.child_elements
+
+ for element in element_list:
+ if isinstance(element, ap.logicalstructure.StructureElement):
+ structure_element = cast(ap.logicalstructure.StructureElement, element)
+ # Get properties
+ print(
+ "StructureElement properties - "
+ f"title: {structure_element.title}, "
+ f"language: {structure_element.language}, "
+ f"actual_text: {structure_element.actual_text}, "
+ f"expansion_text: {structure_element.expansion_text}, "
+ f"alternative_text: {structure_element.alternative_text}"
+ )
+
+ # Access to child elements of first element in root element
+ element_list = tagged_content.root_element.child_elements[1].child_elements
+ for element in element_list:
+ if isinstance(element, ap.logicalstructure.StructureElement):
+ structure_element = element
+
+ # Set properties
+ structure_element.title = "title"
+ structure_element.language = "fr-FR"
+ structure_element.actual_text = "actual text"
+ structure_element.expansion_text = "exp"
+ structure_element.alternative_text = "alt"
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Sujets liés aux PDF balisés
+
+- [Créer Tagged PDF](/pdf/fr/python-net/create-tagged-pdf/) pour créer des documents balisés accessibles avant d'inspecter leur structure.
+- [Définir les propriétés des éléments de structure](/pdf/fr/python-net/setting-structure-elements-properties/) mettre à jour les propriétés sémantiques après l'extraction des éléments de structure.
+- [Travailler avec la Table dans Tagged PDFs](/pdf/fr/python-net/working-with-table-in-tagged-pdfs/) pour les flux de travail d'accessibilité des tables balisées.
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/accessibility-tagged-pdf/setting-structure-elements-properties/_index.md b/fr/python-net/advanced-operations/accessibility-tagged-pdf/setting-structure-elements-properties/_index.md
new file mode 100644
index 0000000000..94048d2c2b
--- /dev/null
+++ b/fr/python-net/advanced-operations/accessibility-tagged-pdf/setting-structure-elements-properties/_index.md
@@ -0,0 +1,644 @@
+---
+title: Définir les propriétés des éléments de structure Tagged PDF en Python
+linktitle: Définir les propriétés des éléments de structure
+type: docs
+weight: 30
+url: /fr/python-net/setting-structure-elements-properties/
+description: Apprenez comment définir les propriétés des éléments de structure Tagged PDF en Python avec Aspose.PDF for Python via .NET, y compris le titre, la langue, le texte réel, le texte alternatif et le texte d'extension.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Les Structure Elements définissent la hiérarchie sémantique d’un document PDF, comme les sections, les en‑têtes, les paragraphes ou les tableaux. En définissant des propriétés telles que title, language, alternative_text, actual_text et expansion_text, vous améliorez l’accessibilité et la signification sémantique du PDF pour les technologies d’assistance comme les lecteurs d’écran.
+
+L'extrait de code suivant montre comment définir les propriétés des éléments de structure d'un Tagged PDF Document :
+
+1. Créez un nouveau document PDF balisé.
+1. Définir les métadonnées du document.
+1. Créer des éléments de structure.
+1. Définir les propriétés d'accessibilité.
+1. Enregistrez le PDF balisé.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_properties(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create Structure Elements
+ root_element = tagged_content.root_element
+
+ section_element = tagged_content.create_sect_element()
+ root_element.append_child(section_element, True)
+
+ header_element = tagged_content.create_header_element(1)
+ section_element.append_child(header_element, True)
+ header_element.set_text("The Header")
+
+ header_element.title = "Title"
+ header_element.language = "en-US"
+ header_element.alternative_text = "Alternative Text"
+ header_element.expansion_text = "Expansion Text"
+ header_element.actual_text = "Actual Text"
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Définition des éléments de structure du texte
+
+Afin de définir les éléments de structure de texte d'un Tagged PDF Document, Aspose.PDF propose [ParagraphElement](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/paragraphelement/) classe. Le fragment de code suivant montre comment définir les éléments de structure texte d'un Document PDF balisé :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_text_elements(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Get Root Structure Elements
+ root_element = tagged_content.root_element
+
+ paragraph_element = tagged_content.create_paragraph_element()
+
+ # Set Text to Text Structure Element
+ paragraph_element.set_text("Paragraph.")
+ root_element.append_child(paragraph_element, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+
+```
+
+## Définition du bloc de texte Structure Elements
+
+Cet exemple Python utilise Aspose.PDF pour créer un Tagged PDF qui inclut une hiérarchie structurée d'en-têtes et d'un paragraphe, améliorant les caractéristiques sémantiques et d'accessibilité du document.
+
+1. Créez un nouveau document PDF balisé.
+1. Définir les métadonnées du document.
+1. Accéder à l'élément de structure racine.
+1. Créer des en-têtes à plusieurs niveaux.
+1. Ajouter des en-têtes à la structure racine.
+1. Créer un élément de paragraphe.
+1. Ajouter un paragraphe à la structure racine.
+1. Enregistrez le PDF balisé.
+
+L'extrait de code suivant montre comment définir les éléments de structure de bloc de texte d'un Document PDF balisé :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_text_block_elements(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+ # Get Root Structure Element
+ root_element = tagged_content.root_element
+ h1 = tagged_content.create_header_element(1)
+ h2 = tagged_content.create_header_element(2)
+ h3 = tagged_content.create_header_element(3)
+ h4 = tagged_content.create_header_element(4)
+ h5 = tagged_content.create_header_element(5)
+ h6 = tagged_content.create_header_element(6)
+ h1.set_text("H1. Header of Level 1")
+ h2.set_text("H2. Header of Level 2")
+ h3.set_text("H3. Header of Level 3")
+ h4.set_text("H4. Header of Level 4")
+ h5.set_text("H5. Header of Level 5")
+ h6.set_text("H6. Header of Level 6")
+ root_element.append_child(h1, True)
+ root_element.append_child(h2, True)
+ root_element.append_child(h3, True)
+ root_element.append_child(h4, True)
+ root_element.append_child(h5, True)
+ root_element.append_child(h6, True)
+ p = tagged_content.create_paragraph_element()
+ p.set_text(
+ "P. Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
+ "Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit."
+ " Cras pellentesque libero semper, gravida magna sed, luctus leo. "
+ "Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. "
+ "Interdum et malesuada fames ac ante ipsum primis in faucibus. "
+ "Aliquam lacinia sit amet elit ac consectetur. "
+ "Donec cursus condimentum ligula, vitae volutpat sem tristique eget. "
+ "Nulla in consectetur massa. Vestibulum vitae lobortis ante. "
+ "Nulla ullamcorper pellentesque justo rhoncus accumsan. "
+ "Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. "
+ "Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, "
+ "vitae posuere risus odio id massa. Cras sed venenatis lacus."
+ )
+ root_element.append_child(p, True)
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Définition des éléments de structure en ligne
+
+Créer des éléments de texte en ligne (/Span) dans les en-têtes et les paragraphes d’un PDF balisé en utilisant Aspose.PDF for Python via .NET.
+
+L'extrait de code suivant montre comment définir les éléments de structure en ligne d'un Document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_inline_elements(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Get Root Structure Element
+ root_element = tagged_content.root_element
+
+ header_element_h1 = tagged_content.create_header_element(1)
+ header_element_h2 = tagged_content.create_header_element(2)
+ header_element_h3 = tagged_content.create_header_element(3)
+ header_element_h4 = tagged_content.create_header_element(4)
+ header_element_h5 = tagged_content.create_header_element(5)
+ header_element_h6 = tagged_content.create_header_element(6)
+ root_element.append_child(header_element_h1, True)
+ root_element.append_child(header_element_h2, True)
+ root_element.append_child(header_element_h3, True)
+ root_element.append_child(header_element_h4, True)
+ root_element.append_child(header_element_h5, True)
+ root_element.append_child(header_element_h6, True)
+
+ span_element_h11 = tagged_content.create_span_element()
+ span_element_h11.set_text("H1. ")
+ header_element_h1.append_child(span_element_h11, True)
+ span_element_h12 = tagged_content.create_span_element()
+ span_element_h12.set_text("Level 1 Header")
+ header_element_h1.append_child(span_element_h12, True)
+
+ span_element_h21 = tagged_content.create_span_element()
+ span_element_h21.set_text("H2. ")
+ header_element_h2.append_child(span_element_h21, True)
+ span_element_h22 = tagged_content.create_span_element()
+ span_element_h22.set_text("Level 2 Header")
+ header_element_h2.append_child(span_element_h22, True)
+
+ span_element_h31 = tagged_content.create_span_element()
+ span_element_h31.set_text("H3. ")
+ header_element_h3.append_child(span_element_h31, True)
+ span_element_h32 = tagged_content.create_span_element()
+ span_element_h32.set_text("Level 3 Header")
+ header_element_h3.append_child(span_element_h32, True)
+
+ span_element_h41 = tagged_content.create_span_element()
+ span_element_h41.set_text("H4. ")
+ header_element_h4.append_child(span_element_h41, True)
+ span_element_h42 = tagged_content.create_span_element()
+ span_element_h42.set_text("Level 4 Header")
+ header_element_h4.append_child(span_element_h42, True)
+
+ span_element_h51 = tagged_content.create_span_element()
+ span_element_h51.set_text("H5. ")
+ header_element_h5.append_child(span_element_h51, True)
+ span_element_h52 = tagged_content.create_span_element()
+ span_element_h52.set_text("Level 5 Header")
+ header_element_h5.append_child(span_element_h52, True)
+
+ span_element_h61 = tagged_content.create_span_element()
+ span_element_h61.set_text("H6. ")
+ header_element_h6.append_child(span_element_h61, True)
+ span_element_h62 = tagged_content.create_span_element()
+ span_element_h62.set_text("Level 6 Header")
+ header_element_h6.append_child(span_element_h62, True)
+
+ paragraph_element = tagged_content.create_paragraph_element()
+ paragraph_element.set_text("P. ")
+ root_element.append_child(paragraph_element, True)
+ span_element_1 = tagged_content.create_span_element()
+ span_element_1.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
+ )
+ paragraph_element.append_child(span_element_1, True)
+ span_element_2 = tagged_content.create_span_element()
+ span_element_2.set_text("Aenean nec lectus ac sem faucibus imperdiet. ")
+ paragraph_element.append_child(span_element_2, True)
+ span_element_3 = tagged_content.create_span_element()
+ span_element_3.set_text("Sed ut erat ac magna ullamcorper hendrerit. ")
+ paragraph_element.append_child(span_element_3, True)
+ span_element_4 = tagged_content.create_span_element()
+ span_element_4.set_text(
+ "Cras pellentesque libero semper, gravida magna sed, luctus leo. "
+ )
+ paragraph_element.append_child(span_element_4, True)
+ span_element_5 = tagged_content.create_span_element()
+ span_element_5.set_text(
+ "Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. "
+ )
+ paragraph_element.append_child(span_element_5, True)
+ span_element_6 = tagged_content.create_span_element()
+ span_element_6.set_text(
+ "Interdum et malesuada fames ac ante ipsum primis in faucibus. "
+ )
+ paragraph_element.append_child(span_element_6, True)
+ span_element_7 = tagged_content.create_span_element()
+ span_element_7.set_text(
+ "Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. "
+ )
+ paragraph_element.append_child(span_element_7, True)
+ span_element_8 = tagged_content.create_span_element()
+ span_element_8.set_text(
+ "Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. "
+ )
+ paragraph_element.append_child(span_element_8, True)
+ span_element_9 = tagged_content.create_span_element()
+ span_element_9.set_text(
+ "Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. "
+ )
+ paragraph_element.append_child(span_element_9, True)
+ span_element_10 = tagged_content.create_span_element()
+ span_element_10.set_text(
+ "Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus."
+ )
+ paragraph_element.append_child(span_element_10, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Définir le nom de balise personnalisé
+
+Définir des noms de balises personnalisés pour les éléments de structure et en ligne dans un PDF balisé à l'aide d'Aspose.PDF for Python.
+
+Le fragment de code suivant montre comment définir un nom de balise personnalisé :
+
+1. Créez un nouveau document PDF balisé.
+1. Définir les métadonnées du document.
+1. Créer un élément de section.
+1. Créer des éléments de paragraphe avec des balises personnalisées.
+1. Créer des éléments span en ligne avec des balises personnalisées.
+1. Enregistrez le PDF balisé.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_tag_name(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create Logical Structure Elements
+ section_element = tagged_content.create_sect_element()
+ tagged_content.root_element.append_child(section_element, True)
+
+ paragraph_element1 = tagged_content.create_paragraph_element()
+ paragraph_element2 = tagged_content.create_paragraph_element()
+ paragraph_element3 = tagged_content.create_paragraph_element()
+ paragraph_element4 = tagged_content.create_paragraph_element()
+
+ paragraph_element1.set_text("P1. ")
+ paragraph_element2.set_text("P2. ")
+ paragraph_element3.set_text("P3. ")
+ paragraph_element4.set_text("P4. ")
+
+ paragraph_element1.set_tag("P1")
+ paragraph_element2.set_tag("Para")
+ paragraph_element3.set_tag("Para")
+ paragraph_element4.set_tag("Paragraph")
+
+ section_element.append_child(paragraph_element1, True)
+ section_element.append_child(paragraph_element2, True)
+ section_element.append_child(paragraph_element3, True)
+ section_element.append_child(paragraph_element4, True)
+
+ span_element1 = tagged_content.create_span_element()
+ span_element2 = tagged_content.create_span_element()
+ span_element3 = tagged_content.create_span_element()
+ span_element4 = tagged_content.create_span_element()
+
+ span_element1.set_text("Span 1.")
+ span_element2.set_text("Span 2.")
+ span_element3.set_text("Span 3.")
+ span_element4.set_text("Span 4.")
+
+ span_element1.set_tag("SPAN")
+ span_element2.set_tag("Sp")
+ span_element3.set_tag("Sp")
+ span_element4.set_tag("TheSpan")
+
+ paragraph_element1.append_child(span_element1, True)
+ paragraph_element2.append_child(span_element2, True)
+ paragraph_element3.append_child(span_element3, True)
+ paragraph_element4.append_child(span_element4, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Ajout d'un élément de structure dans les éléments
+
+**Cette fonctionnalité est prise en charge à partir de la version 19.4 ou supérieure.**
+
+Créer des liens et des éléments d'image dans un PDF balisé à l'aide d'Aspose.PDF for Python via .NET.
+
+L'extrait de code suivant montre comment définir des éléments de structure dans un paragraphe avec le texte d'un Document PDF balisé :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_elements(imagefile, outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ # Setting Title and Nature Language for document
+ tagged_content.set_title("Link Elements Example")
+ tagged_content.set_language("en-US")
+
+ # Getting Root structure element (Document structure element)
+ root_element = tagged_content.root_element
+
+ paragraph_element_1 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_1, True)
+ link_element_1 = tagged_content.create_link_element()
+ paragraph_element_1.append_child(link_element_1, True)
+ link_element_1.hyperlink = ap.WebHyperlink("http://google.com")
+ link_element_1.set_text("Google")
+ link_element_1.alternate_descriptions = "Link to Google"
+
+ paragraph_element_2 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_2, True)
+ link_element_2 = tagged_content.create_link_element()
+ paragraph_element_2.append_child(link_element_2, True)
+ link_element_2.hyperlink = ap.WebHyperlink("http://google.com")
+ span_element_2 = tagged_content.create_span_element()
+ span_element_2.set_text("Google")
+ link_element_2.append_child(span_element_2, True)
+ link_element_2.alternate_descriptions = "Link to Google"
+
+ paragraph_element_3 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_3, True)
+ link_element_3 = tagged_content.create_link_element()
+ paragraph_element_3.append_child(link_element_3, True)
+ link_element_3.hyperlink = ap.WebHyperlink("http://google.com")
+ span_element_31 = tagged_content.create_span_element()
+ span_element_31.set_text("G")
+ span_element_32 = tagged_content.create_span_element()
+ span_element_32.set_text("Google")
+ link_element_3.append_child(span_element_31, True)
+ link_element_3.set_text("-")
+ link_element_3.append_child(span_element_32, True)
+ link_element_3.alternate_descriptions = "Link to Google"
+
+ paragraph_element_4 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_4, True)
+ link_element_4 = tagged_content.create_link_element()
+ paragraph_element_4.append_child(link_element_4, True)
+ link_element_4.hyperlink = ap.WebHyperlink("http://google.com")
+ link_element_4.set_text(
+ "The multiline link: Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google"
+ )
+ link_element_4.alternate_descriptions = "Link to Google (multiline)"
+
+ paragraph_element_5 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_5, True)
+ link_element_5 = tagged_content.create_link_element()
+ paragraph_element_5.append_child(link_element_5, True)
+ link_element_5.hyperlink = ap.WebHyperlink("http://google.com")
+ figure_element_5 = tagged_content.create_figure_element()
+ figure_element_5.set_image(imagefile, 1200)
+ figure_element_5.alternative_text = "Google icon"
+ link_layout_attributes = link_element_5.attributes.get_attributes(
+ ap.logicalstructure.AttributeOwnerStandard.LAYOUT
+ )
+ placement_attribute = ap.logicalstructure.StructureAttribute(
+ ap.logicalstructure.AttributeKey.PLACEMENT
+ )
+ placement_attribute.set_name_value(
+ ap.logicalstructure.AttributeName.PLACEMENT_BLOCK
+ )
+ link_layout_attributes.set_attribute(placement_attribute)
+ link_element_5.append_child(figure_element_5, True)
+ link_element_5.alternate_descriptions = "Link to Google"
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Configuration de l'élément de structure de lien
+
+L'API Aspose.PDF for Python via .NET permet également d'ajouter des éléments de structure de lien.
+
+L'extrait de code suivant montre comment ajouter un élément de structure de lien dans un Document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_link_element(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ # Setting Title and Nature Language for document
+ tagged_content.set_title("Text Elements Example")
+ tagged_content.set_language("en-US")
+
+ # Getting Root structure element (Document structure element)
+ root_element = tagged_content.root_element
+
+ paragraph_element_1 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_1, True)
+ span_element_11 = tagged_content.create_span_element()
+ span_element_11.set_text("Span_11")
+ span_element_12 = tagged_content.create_span_element()
+ span_element_12.set_text(" and Span_12.")
+ paragraph_element_1.set_text("Paragraph with ")
+ paragraph_element_1.append_child(span_element_11, True)
+ paragraph_element_1.append_child(span_element_12, True)
+
+ paragraph_element_2 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_2, True)
+ span_element_21 = tagged_content.create_span_element()
+ span_element_21.set_text("Span_21")
+ span_element_22 = tagged_content.create_span_element()
+ span_element_22.set_text("Span_22.")
+ paragraph_element_2.append_child(span_element_21, True)
+ paragraph_element_2.set_text(" and ")
+ paragraph_element_2.append_child(span_element_22, True)
+
+ paragraph_element_3 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_3, True)
+ span_element_31 = tagged_content.create_span_element()
+ span_element_31.set_text("Span_31")
+ span_element_32 = tagged_content.create_span_element()
+ span_element_32.set_text(" and Span_32")
+ paragraph_element_3.append_child(span_element_31, True)
+ paragraph_element_3.append_child(span_element_32, True)
+ paragraph_element_3.set_text(".")
+
+ paragraph_element_4 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_4, True)
+ span_element_41 = tagged_content.create_span_element()
+ span_element_411 = tagged_content.create_span_element()
+ span_element_411.set_text("Span_411, ")
+ span_element_41.set_text("Span_41, ")
+ span_element_41.append_child(span_element_411, True)
+ span_element_42 = tagged_content.create_span_element()
+ span_element_421 = tagged_content.create_span_element()
+ span_element_421.set_text("Span 421 and ")
+ span_element_42.append_child(span_element_421, True)
+ span_element_42.set_text("Span_42")
+ paragraph_element_4.append_child(span_element_41, True)
+ paragraph_element_4.append_child(span_element_42, True)
+ paragraph_element_4.set_text(".")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Configuration de l'élément de structure de note
+
+Aspose.PDF for Python via .NET API permet également d'ajouter [NoteElement](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/noteelement/) dans un document Tagged PDF. Le fragment de code suivant montre comment ajouter un élément de note dans le Document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_note_element(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Sample of Note Elements")
+ tagged_content.set_language("en-US")
+
+ # Add Paragraph Element
+ paragraph_element = tagged_content.create_paragraph_element()
+ tagged_content.root_element.append_child(paragraph_element, True)
+
+ # Add NoteElement
+ note_element_1 = tagged_content.create_note_element()
+ paragraph_element.append_child(note_element_1, True)
+ note_element_1.set_text("Note with auto generate ID. ")
+
+ # Add NoteElement
+ note_element_2 = tagged_content.create_note_element()
+ paragraph_element.append_child(note_element_2, True)
+ note_element_2.set_text("Note with ID = 'note_002'. ")
+ note_element_2.set_id("note_002")
+
+ # Add NoteElement
+ note_element_3 = tagged_content.create_note_element()
+ paragraph_element.append_child(note_element_3, True)
+ note_element_3.set_text("Note with ID = 'note_003'. ")
+ note_element_3.set_id("note_003")
+
+ # Must throw exception - Aspose.Pdf.Tagged.TaggedException : Structure element with ID='note_002' already exists
+ # note_element_3.set_id("note_002")
+
+ # Resultant document does not compliance to PDF/UA If ClearId() used for Note Structure Element
+ # note_element_3.clear_id()
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Comment définir la langue et le titre
+
+Aspose.PDF for Python via .NET API permet également de définir la langue et le titre d'un document conformément à la spécification PDF/UA. La langue peut être définie à la fois pour l'ensemble du document et pour ses éléments structurels séparés. Le fragment de code suivant montre comment définir la langue et le titre dans un document Tagged PDF :
+
+1. Créez un nouveau document PDF balisé.
+1. Définir le titre du document et la langue.
+1. Créer un élément d'en-tête.
+1. Ajouter des paragraphes avec des langues spécifiques.
+1. Enregistrez le PDF balisé.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_language_and_title(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get TaggedContent
+ tagged_content = document.tagged_content
+
+ # Set Title and Language
+ tagged_content.set_title("Example Tagged Document")
+ tagged_content.set_language("en-US")
+
+ # Header (en-US, inherited from document)
+ header_element = tagged_content.create_header_element(1)
+ header_element.set_text("Phrase on different languages")
+ tagged_content.root_element.append_child(header_element, True)
+
+ # Paragraph (English)
+ paragraph_element_en = tagged_content.create_paragraph_element()
+ paragraph_element_en.set_text("Hello, World!")
+ paragraph_element_en.language = "en-US"
+ tagged_content.root_element.append_child(paragraph_element_en, True)
+
+ # Paragraph (German)
+ paragraph_element_de = tagged_content.create_paragraph_element()
+ paragraph_element_de.set_text("Hallo Welt!")
+ paragraph_element_de.language = "de-DE"
+ tagged_content.root_element.append_child(paragraph_element_de, True)
+
+ # Paragraph (French)
+ paragraph_element_fr = tagged_content.create_paragraph_element()
+ paragraph_element_fr.set_text("Bonjour le monde!")
+ paragraph_element_fr.language = "fr-FR"
+ tagged_content.root_element.append_child(paragraph_element_fr, True)
+
+ # Paragraph (Spanish)
+ paragraph_element_sp = tagged_content.create_paragraph_element()
+ paragraph_element_sp.set_text("¡Hola Mundo!")
+ paragraph_element_sp.language = "es-ES"
+ tagged_content.root_element.append_child(paragraph_element_sp, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Sujets liés aux PDF balisés
+
+- [Créer Tagged PDF](/pdf/fr/python-net/create-tagged-pdf/) générer les éléments de structure avant de mettre à jour leurs propriétés.
+- [Extraire le contenu balisé des Tagged PDFs](/pdf/fr/python-net/extract-tagged-content-from-tagged-pdfs/) pour inspecter les nœuds de structure existants et les métadonnées.
+- [Travailler avec la Table dans Tagged PDFs](/pdf/fr/python-net/working-with-table-in-tagged-pdfs/) si vous devez appliquer des propriétés d'accessibilité aux structures de tableau.
diff --git a/fr/python-net/advanced-operations/accessibility-tagged-pdf/working-with-table-in-tagged-pdfs/_index.md b/fr/python-net/advanced-operations/accessibility-tagged-pdf/working-with-table-in-tagged-pdfs/_index.md
new file mode 100644
index 0000000000..2661498044
--- /dev/null
+++ b/fr/python-net/advanced-operations/accessibility-tagged-pdf/working-with-table-in-tagged-pdfs/_index.md
@@ -0,0 +1,531 @@
+---
+title: Travailler avec des tables dans les PDF balisés en Python
+linktitle: Travailler avec la Table dans Tagged PDFs
+type: docs
+weight: 40
+url: /fr/python-net/working-with-table-in-tagged-pdfs/
+description: Apprenez comment travailler avec des tables accessibles dans les PDF balisés en Python avec Aspose.PDF for Python via .NET, y compris la structure, les étendues, l'alignement et le balisage de tableau compatible PDF/UA.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Créer un tableau dans Tagged PDF
+
+En suivant les étapes ci-dessus, vous pouvez générer un tableau sémantiquement riche et accessible dans un document PDF à l'aide d'Aspose.PDF for Python. Le fichier résultant répond aux normes de conformité PDF/UA-1, garantissant la compatibilité avec les lecteurs d'écran et les technologies d'assistance. Ceci est idéal pour les cas d'utilisation liés à la conformité réglementaire, à l'audit d'accessibilité et à la publication de contenus inclusifs.
+
+Le fragment de code suivant montre comment créer un tableau dans le document Tagged PDF :
+
+1. Créez un nouveau document PDF balisé.
+1. Définir les métadonnées du document.
+1. Créer la structure du tableau.
+1. Créer la ligne d'en-tête du tableau.
+1. Créer des lignes de corps de tableau avec des cellules.
+1. Créer une ligne de pied de tableau.
+1. Définir l'attribut de résumé du tableau.
+1. Enregistrez le Tagged PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_table(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ table_element.border = ap.BorderInfo(ap.BorderSide.ALL, 1.2, ap.Color.dark_blue)
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 50
+ col_count = 4
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+ head_tr_element.background_color = ap.Color.light_gray
+
+ for column_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {column_index}")
+
+ th_element.background_color = ap.Color.green_yellow
+ th_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ th_element.is_no_border = True
+ th_element.margin = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+
+ th_element.alignment = ap.HorizontalAlignment.RIGHT
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+
+ for column_index in range(col_count):
+ col_span = 1
+ row_span = 1
+
+ if column_index == 1 and row_index == 1:
+ col_span = 2
+ row_span = 2
+ elif (row_index == 1 and column_index == 2) or (
+ row_index == 2 and column_index in (1, 2)
+ ):
+ continue
+
+ td_element = tr_element.create_td()
+ td_element.set_text(f"Cell [{row_index}, {column_index}]")
+
+ td_element.background_color = ap.Color.yellow
+ td_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ td_element.is_no_border = False
+ td_element.margin = ap.MarginInfo(8.0, 2.0, 8.0, 2.0)
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.dark_blue
+ cell_text_state.font_size = 7.5
+ cell_text_state.font_style = ap.text.FontStyles.BOLD
+ cell_text_state.font = ap.text.FontRepository.find_font("Arial")
+ td_element.default_cell_text_state = cell_text_state
+
+ td_element.is_word_wrapped = True
+ td_element.vertical_alignment = ap.VerticalAlignment.CENTER
+
+ td_element.col_span = col_span
+ td_element.row_span = row_span
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+ foot_tr_element.background_color = ap.Color.light_sea_green
+
+ for column_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text(f"Foot {column_index}")
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+ td_element.structure_text_state.font_size = 7
+ td_element.structure_text_state.font_style = ap.text.FontStyles.BOLD
+
+ table_attributes = table_element.attributes.get_attributes(
+ ap.logicalstructure.AttributeOwnerStandard.TABLE
+ )
+ summary_attribute = ap.logicalstructure.StructureAttribute(
+ ap.logicalstructure.AttributeKey.SUMMARY
+ )
+ summary_attribute.set_string_value("The summary text for table")
+ table_attributes.set_attribute(summary_attribute)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Élément de tableau de style
+
+1. Créez un nouveau document PDF balisé.
+1. Définir le titre du document et la langue.
+1. Créer un élément de structure de tableau.
+1. Configurer les lignes et colonnes répétitives.
+1. Ajouter l’en-tête, le corps et le pied de page.
+1. Enregistrez le document PDF balisé.
+
+L'extrait de code suivant montre comment styliser une table dans un document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def style_table(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table style")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ table_element.background_color = ap.Color.beige
+ table_element.border = ap.BorderInfo(ap.BorderSide.ALL, 0.80, ap.Color.gray)
+ table_element.alignment = ap.HorizontalAlignment.CENTER
+ table_element.broken = ap.TableBroken.VERTICAL
+ table_element.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_WINDOW
+ table_element.column_widths = "80 80 80 80 80"
+ table_element.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.50, ap.Color.dark_blue
+ )
+ table_element.default_cell_padding = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+ table_element.default_cell_text_state.foreground_color = ap.Color.dark_cyan
+ table_element.default_cell_text_state.font_size = 8.0
+ table_element.default_column_width = "70"
+
+ table_element.is_broken = False
+ table_element.is_borders_included = True
+
+ table_element.left = 0.0
+ table_element.top = 40.0
+
+ table_element.repeating_columns_count = 2
+ table_element.repeating_rows_count = 3
+ row_style = ap.text.TextState()
+ row_style.background_color = ap.Color.light_coral
+ table_element.repeating_rows_style = row_style
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 10
+ col_count = 5
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {col_index}")
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+
+ for col_index in range(col_count):
+ td_element = tr_element.create_td()
+ td_element.set_text(f"Cell [{row_index}, {col_index}]")
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text(f"Foot {col_index}")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Style de ligne de tableau
+
+Aspose.PDF for Python via .NET permet de styliser une ligne de tableau dans un document Tagged PDF. Afin de styliser une ligne de tableau, vous pouvez utiliser les propriétés de [TableTRElement](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/) class. Voici la liste des propriétés que vous pouvez utiliser pour styliser une ligne de tableau :
+
+- [background_color](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [default_cell_border](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [min_row_height](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [fixed_row_height](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [is_in_new_page](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [is_row_broken](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [default_cell_text_state](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [default_cell_padding](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [vertical_alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+
+L'extrait de code suivant montre comment styliser une ligne de tableau dans le document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def style_table_row(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table style")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 7
+ col_count = 3
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {col_index}")
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+ tr_element.background_color = ap.Color.light_goldenrod_yellow
+ tr_element.border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.75, ap.Color.dark_gray
+ )
+ tr_element.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.50, ap.Color.blue
+ )
+ tr_element.min_row_height = 100.0
+ tr_element.fixed_row_height = 120.0
+ tr_element.is_in_new_page = row_index % 3 == 1
+ tr_element.is_row_broken = True
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.red
+ tr_element.default_cell_text_state = cell_text_state
+ tr_element.default_cell_padding = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+ tr_element.vertical_alignment = ap.VerticalAlignment.BOTTOM
+ for col_index in range(col_count):
+ td_element = tr_element.create_td()
+ td_element.set_text("Cell [{0}, {1}]".format(row_index, col_index))
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text("Foot {}".format(col_index))
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Style de cellule de tableau
+
+Aspose.PDF for Python via .NET permet de styliser une cellule de tableau dans un document Tagged PDF. Afin de styliser une cellule de tableau, vous pouvez utiliser les propriétés de [ÉlémentCelluleTableau](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/) class. Voici la liste des propriétés que vous pouvez utiliser pour styliser une cellule de tableau :
+
+- [background_color](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [is_no_border](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [margin](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [default_cell_text_state](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [is_word_wrapped](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [vertical_alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [col_span](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [row_span](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+
+L'extrait de code suivant montre comment mettre en forme une cellule de tableau dans le document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def style_table_cell(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table cell style")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 4
+ col_count = 4
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text("Head {}".format(col_index))
+
+ th_element.background_color = ap.Color.green_yellow
+ th_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ th_element.is_no_border = True
+ th_element.margin = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+
+ th_element.alignment = ap.HorizontalAlignment.RIGHT
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = "Row {}".format(row_index)
+
+ for col_index in range(col_count):
+ col_span = 1
+ row_span = 1
+
+ if col_index == 1 and row_index == 1:
+ col_span = 2
+ row_span = 2
+ elif (row_index == 1 and col_index == 2) or (
+ row_index == 2 and col_index in (1, 2)
+ ):
+ continue
+
+ td_element = tr_element.create_td()
+ td_element.set_text("Cell [{}, {}]".format(row_index, col_index))
+
+ td_element.background_color = ap.Color.yellow
+ td_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ td_element.is_no_border = False
+ td_element.margin = ap.MarginInfo(8.0, 2.0, 8.0, 2.0)
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.dark_blue
+ cell_text_state.font_size = 7.5
+ cell_text_state.font_style = ap.text.FontStyles.BOLD
+ cell_text_state.font = ap.text.FontRepository.find_font("Arial")
+ td_element.default_cell_text_state = cell_text_state
+
+ td_element.is_word_wrapped = True
+ td_element.vertical_alignment = ap.VerticalAlignment.CENTER
+
+ td_element.col_span = col_span
+ td_element.row_span = row_span
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text("Foot {}".format(col_index))
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Ajuster la position du tableau
+
+Ajustez la position d’un tableau dans un PDF balisé tout en conservant les fonctionnalités d’accessibilité à l’aide d’Aspose.PDF for Python via .NET.
+
+L'extrait de code suivant montre comment ajuster la position du tableau dans le document Tagged PDF :
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def adjust_table_position(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Create tagged content
+ tagged_content = document.tagged_content
+ tagged_content.set_title("Example table position")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ # Create position settings
+ position_settings = ap.tagged.PositionSettings()
+ position_settings.horizontal_alignment = ap.HorizontalAlignment.NONE
+ position_settings.margin = ap.MarginInfo(left=20, right=0, top=0, bottom=0)
+ position_settings.vertical_alignment = ap.VerticalAlignment.NONE
+ position_settings.is_first_paragraph_in_column = False
+ position_settings.is_kept_with_next = False
+ position_settings.is_in_new_page = False
+ position_settings.is_in_line_paragraph = False
+
+ # Adjust table position
+ table_element.adjust_position(position_settings)
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 4
+ col_count = 4
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {col_index}")
+
+ th_element.background_color = ap.Color.green_yellow
+ th_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ th_element.is_no_border = True
+ th_element.margin = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+
+ th_element.alignment = ap.HorizontalAlignment.RIGHT
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+
+ for col_index in range(col_count):
+ col_span = 1
+ row_span = 1
+
+ if col_index == 1 and row_index == 1:
+ col_span = 2
+ row_span = 2
+ elif (row_index == 1 and col_index == 2) or (
+ row_index == 2 and col_index in (1, 2)
+ ):
+ continue
+
+ td_element = tr_element.create_td()
+ td_element.set_text(f"Cell [{row_index}, {col_index}]")
+
+ td_element.background_color = ap.Color.yellow
+ td_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ td_element.is_no_border = False
+ td_element.margin = ap.MarginInfo(8.0, 2.0, 8.0, 2.0)
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.dark_blue
+ cell_text_state.font_size = 7.5
+ cell_text_state.font_style = ap.text.FontStyles.BOLD
+ cell_text_state.font = ap.text.FontRepository.find_font("Arial")
+ td_element.default_cell_text_state = cell_text_state
+
+ td_element.is_word_wrapped = True
+ td_element.vertical_alignment = ap.VerticalAlignment.CENTER
+
+ td_element.col_span = col_span
+ td_element.row_span = row_span
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text(f"Foot {col_index}")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Sujets liés aux PDF balisés
+
+- [Créer Tagged PDF](/pdf/fr/python-net/create-tagged-pdf/) pour construire la structure de document accessible globale autour du contenu de votre tableau.
+- [Extraire le contenu balisé des Tagged PDFs](/pdf/fr/python-net/extract-tagged-content-from-tagged-pdfs/) pour inspecter les éléments de structure liés aux tableaux après la génération.
+- [Définir les propriétés des éléments de structure](/pdf/fr/python-net/setting-structure-elements-properties/) pour affiner les métadonnées accessibles sur les cellules de tableau et d'autres éléments de structure.
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/annotations/_index.md b/fr/python-net/advanced-operations/annotations/_index.md
index 998ca4bdf3..34c330bf0b 100644
--- a/fr/python-net/advanced-operations/annotations/_index.md
+++ b/fr/python-net/advanced-operations/annotations/_index.md
@@ -1,152 +1,43 @@
---
-title: Annotations PDF
+title: Annotations PDF en Python
linktitle: Annotations PDF
type: docs
weight: 100
url: /fr/python-net/annotations/
-description: Cette section montre comment utiliser toutes sortes d'annotations dans votre fichier PDF avec la bibliothèque Aspose.PDF.
-lastmod: "2023-02-17"
+description: Apprenez à ajouter, modifier, extraire et gérer les annotations PDF en Python avec Aspose.PDF for Python via .NET, y compris le texte, les surlignages, les liens, les figures et plus encore.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des annotations à un PDF en utilisant Python
+Abstract: L'article traite de l'utilisation des annotations dans les PDFs en tant qu'éléments interactifs qui améliorent l'interactivité du document et l'engagement des utilisateurs. Il met en évidence les capacités de la bibliothèque Aspose.PDF for Python Library dans le support de divers types d'annotations, y compris le texte, les surlignages, les figures et les annotations multimédias. Les annotations remplissent plusieurs objectifs tels que la commentation, la révision, le marquage des documents et la fourniture de retours, ce qui facilite la collaboration, la communication et une compréhension plus approfondie du contenu du document. L'article mentionne également une section détaillant comment ajouter, supprimer et récupérer des annotations, offrant des conseils sur la gestion efficace de ces éléments au sein des documents PDF.
---
-
+Les annotations dans les PDFs sont des éléments interactifs qui vous permettent d'ajouter des notes, de surligner du texte, de dessiner des formes, de joindre des fichiers et de déclencher des actions directement sur une page. Elles sont utiles pour les flux de travail de révision, la collaboration, la navigation et la mise en forme de documents.
-Annotations dans les PDF sont des éléments interactifs qui vous permettent d'ajouter des notes, de surligner du texte, de dessiner des formes, de joindre des fichiers et d'effectuer d'autres actions qui améliorent la navigation, l'interactivité et l'interaction.
+Aspose.PDF for Python via .NET prend en charge un large éventail de scénarios d'annotation, y compris les annotations de note et de popup, le balisage de texte, les liens et les boutons, les formes, les filigranes, les annotations multimédia, ainsi que les flux de travail d'importation ou d'exportation d'annotations.
-La bibliothèque Aspose.PDF pour Python prend en charge divers types d'annotations, y compris les annotations de texte (telles que texte et annotation contextuelle), les annotations de surlignage (telles que balisage de texte), les annotations de figures (telles que cercle, polyligne, polygone, ligne et encre), les annotations multimédia (il y a écran, son, widget et 3D) et plus encore.
+Utilisez cette section pour choisir le flux de travail d'annotation qui correspond à votre tâche, que vous ayez besoin de créer de nouvelles annotations, d'inspecter celles existantes, de les supprimer ou de les transférer entre des documents PDF.
-Les annotations peuvent être utilisées pour commenter, réviser, marquer des documents, fournir des commentaires ou ajouter des informations supplémentaires. Les annotations permettent d'établir une coopération, de faciliter la communication et d'améliorer la compréhension du contenu des documents. Elles renforcent la collaboration, améliorent la communication et rendent les documents PDF plus dynamiques et engageants pour les utilisateurs.
+## Sujets d'annotation
-Vous êtes capable de faire ce qui suit :
+Utilisez cette section lorsque vous devez ajouter, récupérer, mettre à jour, supprimer ou transférer des annotations dans des fichiers PDF avec Python. Les pages liées ci-dessous couvrent à la fois les flux de travail d'annotation de niveau supérieur et les familles d'annotations groupées utilisées tout au long de la documentation.
-- [Ajouter, Supprimer et Obtenir une Annotation](/pdf/fr/python-net/add-delete-and-get-annotation/) - cette section explique comment travailler avec tous les types d'annotations autorisées.
+Vous pouvez utiliser les sujets suivants :
-
\ No newline at end of file
+- [Ajouter, supprimer et récupérer l'annotation](/pdf/fr/python-net/add-delete-and-get-annotation/) - commencez ici pour les principales catégories d'annotations groupées et les flux de travail fondamentaux de création, d'inspection et de suppression.
+- [Importation et exportation des annotations](/pdf/fr/python-net/import-export-annotations/) - copier les annotations d'un document PDF vers un autre fichier PDF.
+
+### Groupes d'annotations
+
+Le guide des annotations groupées comprend ces sous-sujets :
+
+- [Annotations de texte](/pdf/fr/python-net/text-based-Annotations/) - travailler avec les annotations de texte libre, de surlignage, de soulignement, de soulignement ondulé et de barré.
+- [Annotations de balisage](/pdf/fr/python-net/markup-annotations/) - ajouter ou inspecter les annotations de note, de curseur et de remplacement utilisées dans les scénarios de révision.
+- [Annotations interactives](/pdf/fr/python-net/interactive-annotations/) - créer des annotations de lien, des boutons de navigation et des boutons d'impression.
+- [Annotations de forme](/pdf/fr/python-net/shape-annotations/) - utilisez les annotations de ligne, de carré, de cercle, de polygone et de polyligne.
+- [Annotations multimédias](/pdf/fr/python-net/media-annotations/) - ajoutez des annotations audio, d'écran, multimédia et 3D.
+- [Annotations de sécurité](/pdf/fr/python-net/security-annotations/) - travaillez avec les annotations de pièce jointe, de rédaction et les annotations liées à la protection.
+- [Annotations de filigrane](/pdf/fr/python-net/watermark-annotations/) - ajoutez et gérez des éléments de filigrane basés sur les annotations.
+Les annotations sont particulièrement utiles pour la révision de documents, la collaboration, le balisage de contenu et la navigation interactive. Commencez par la vue d’ensemble groupée lorsque vous souhaitez parcourir les types d’annotations pris en charge, ou allez directement à un sujet spécifique lorsque vous connaissez déjà le flux de travail dont vous avez besoin.
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md
index 7a3e067674..3e915bf88b 100644
--- a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md
@@ -1,90 +1,34 @@
---
-title: Ajouter, Supprimer et Obtenir une Annotation en utilisant Python
-linktitle: Ajouter, Supprimer et Obtenir une Annotation
+title: Ajouter, supprimer et récupérer les annotations PDF en Python
+linktitle: Ajouter, supprimer et récupérer l'annotation
type: docs
weight: 20
url: /fr/python-net/add-delete-and-get-annotation/
-description: Avec Aspose.PDF pour Python, vous pouvez ajouter, supprimer et obtenir des annotations de votre fichier PDF. Consultez toutes les listes d'annotations pour résoudre votre tâche.
-lastmod: "2023-02-17"
+description: Avec Aspose.PDF for Python, vous pouvez ajouter, supprimer et récupérer l'annotation de votre fichier PDF. Consultez toutes les listes d'annotations pour résoudre votre tâche.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment manipuler les annotations PDF avec Python
+Abstract: Les annotations dans les documents PDF améliorent l’interaction utilisateur en permettant l’ajout de divers éléments tels que des notes, des surlignages de texte, des formes et des pièces jointes. Ces fonctionnalités améliorent l’expérience de visualisation du document et son interactivité. La bibliothèque Aspose.PDF for Python classe les annotations en plusieurs groupes‑Annotations de texte, Annotations de surlignage, Annotations de figures, Annotations collantes et Annotations supplémentaires, chacune remplissant des fonctions différentes pour enrichir l’engagement et l’utilisabilité du document.
---
-
+Les annotations dans les documents PDF sont des éléments qui permettent aux utilisateurs d’organiser le contenu d’une certaine manière dans le document. Les annotations peuvent être utilisées pour ajouter différents types de notes, surligner du texte, dessiner des formes, joindre des fichiers et effectuer d’autres actions qui améliorent la visualisation, l’interactivité et l’engagement au sein d’un document.
-**Quelles sont les annotations dans les documents PDF ?**
+Cette page regroupe les principaux types d'annotation pris en charge dans cette partie de la documentation afin que vous puissiez rapidement accéder au flux de travail dont vous avez besoin.
-Les annotations dans les documents PDF sont des éléments qui permettent aux utilisateurs d'allouer le contenu d'une certaine manière dans le document. Les annotations peuvent être utilisées pour ajouter différents types de notes, mettre en surbrillance du texte, dessiner des formes, joindre des fichiers et effectuer d'autres actions qui améliorent la visualisation, l'interactivité et l'interaction au sein d'un document.
+Nous avons combiné les différents types d'annotation disponibles pour la bibliothèque Aspose.PDF for Python en groupes :
-Nous avons regroupé les différents types d'annotations disponibles pour la bibliothèque Aspose.PDF pour Python en groupes :
+- [Annotations interactives](/pdf/fr/python-net/interactive-annotations/)
+- [Annotations de balisage](/pdf/fr/python-net/markup-annotations/)
+- [Annotations multimédias](/pdf/fr/python-net/media-annotations/)
+- [Annotations de sécurité](/pdf/fr/python-net/security-annotations/)
+- [Annotations de forme](/pdf/fr/python-net/shape-annotations/)
+- [Annotations de texte](/pdf/fr/python-net/text-based-Annotations/)
+- [Annotations de filigrane](/pdf/fr/python-net/watermark-annotations/)
-- [Annotation de texte PDF](/pdf/fr/python-net/text-annotation/)
-- [Annotation de surbrillance PDF](/pdf/fr/python-net/highlights-annotation/)
-- [Annotation de figures PDF](/pdf/fr/python-net/figures-annotation/)
-- [Annotations collantes PDF](/pdf/fr/python-net/sticky-annotations/)
-- [Annotations supplémentaires](/pdf/fr/python-net/extra-annotations/)
\ No newline at end of file
+## Sujets d'annotation associés
+
+- [Aperçu des annotations PDF](/pdf/fr/python-net/annotations/) pour la section parente et les concepts d'annotation.
+- [Importation et exportation des annotations](/pdf/fr/python-net/import-export-annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/extra-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/extra-annotations/_index.md
deleted file mode 100644
index 7dd6f1c6c8..0000000000
--- a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/extra-annotations/_index.md
+++ /dev/null
@@ -1,344 +0,0 @@
----
-title: Annotations supplémentaires en utilisant Python
-linktitle: Annotations supplémentaires
-type: docs
-weight: 60
-url: /fr/python-net/extra-annotations/
-description: Cette section décrit comment ajouter, obtenir et supprimer des types supplémentaires d'annotations de votre document PDF.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Comment ajouter une annotation de type Caret dans un fichier PDF existant via Python
-
-Une annotation de type Caret est un symbole qui indique l'édition de texte. L'annotation Caret est également une annotation de balisage, donc la classe Caret dérive de la classe Markup et fournit également des fonctions pour obtenir ou définir les propriétés de l'annotation Caret et réinitialiser le flux de l'apparence de l'annotation Caret. Les annotations Caret sont souvent utilisées pour suggérer des modifications, des ajouts ou des changements au texte.
-
-Étapes avec lesquelles nous créons une annotation Caret :
-
-1. Charger le fichier PDF - nouveau [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Créer une nouvelle [CaretAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/caretannotation/) et définir les paramètres du Caret (nouveau Rectangle, titre, sujet, drapeaux, couleur). Cette annotation est utilisée pour indiquer l'insertion de texte.
-3. Une fois que nous sommes en mesure d'ajouter des annotations à la page.
-
-Le fragment de code suivant montre comment ajouter une annotation Caret à un fichier PDF :
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_file)
-
- caretAnnotation1 = ap.annotations.CaretAnnotation(
- document.pages[1], ap.Rectangle(200, 700.664, 308.708, 740.769, True)
- )
- caretAnnotation1.title = "Utilisateur Aspose"
- caretAnnotation1.subject = "Texte inséré 1"
- caretAnnotation1.flags = ap.annotations.AnnotationFlags.PRINT
- caretAnnotation1.color = ap.Color.blue
-
- document.pages[1].annotations.append(caretAnnotation1)
- document.save(output_file)
-```
-
-
-### Obtenir l'Annotation Caret
-
-Veuillez essayer d'utiliser l'extrait de code suivant pour obtenir l'annotation Caret dans le document PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- caretAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CARET)
- ]
-
- for ca in caretAnnotations:
- print(ca.rect)
-```
-
-### Supprimer l'Annotation Caret
-
-L'extrait de code suivant montre comment supprimer l'annotation Caret d'un fichier PDF en utilisant Python.
-
-```python
-
- import aspose.pdf as ap
-
- # Charger le fichier PDF
- document = ap.Document(input_file)
- caretAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CARET)
- ]
-
- for ca in caretAnnotations:
- document.pages[1].annotations.delete(ca)
-
- document.save(output_file)
-```
-
-## Ajouter une Annotation de Lien
-
-[Les liens](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/linkannotation/) sont des annotations qui ouvrent des URL ou se déplacent vers certaines positions à l'intérieur du même document ou d'un document externe lorsque vous cliquez.
-
-A Link Annotations est une zone rectangulaire qui peut être placée n'importe où sur la page. Chaque lien a une action PDF correspondante qui lui est associée. Cette action est effectuée lorsque l'utilisateur clique dans la zone de ce lien.
-
-Le code suivant montre comment ajouter une Annotation de Lien à un fichier PDF en utilisant un exemple de numéro de téléphone :
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- # Créer un objet TextFragmentAbsorber pour trouver un numéro de téléphone
- textFragmentAbsorber = ap.text.TextFragmentAbsorber("file")
-
- # Accepter l'absorbeur uniquement pour la 1ère page
- document.pages[1].accept(textFragmentAbsorber)
-
- phoneNumberFragment = textFragmentAbsorber.text_fragments[1]
-
- # Créer une Annotation de Lien et définir l'action pour appeler un numéro de téléphone
- linkAnnotation = ap.annotations.LinkAnnotation(document.pages[1], phoneNumberFragment.rectangle)
- linkAnnotation.action = ap.annotations.GoToURIAction("www.aspose.com")
-
- # Ajouter l'annotation à la page
- document.pages[1].annotations.append(linkAnnotation)
- document.save(output_file)
-```
-
-
-### Obtenir l'Annotation de Lien
-
-Veuillez essayer d'utiliser l'extrait de code suivant pour obtenir [LinkAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/linkannotation/) à partir d'un document PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- linkAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.LINK)
- ]
-
- for la in linkAnnotations:
- print(la.rect)
-```
-
-### Supprimer l'Annotation de Lien
-
-L'extrait de code suivant montre comment supprimer l'annotation de lien d'un fichier PDF. Pour cela, nous devons trouver et supprimer toutes les annotations de lien sur la première page. Après cela, nous enregistrerons le document avec l'annotation supprimée.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- highlightAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.LINK)
- ]
-
- for hs in highlightAnnotations:
- document.pages[1].annotations.delete(hs)
-
- document.save(output_file)
-```
-
-
-## Rédiger une certaine région de page avec l'annotation de rédaction en utilisant Aspose.PDF pour Python
-
-Aspose.PDF pour Python via .NET prend en charge la fonctionnalité d'ajout ainsi que la manipulation des annotations dans un fichier PDF existant. Les annotations de rédaction dans les documents PDF servent à supprimer ou masquer de manière permanente des informations confidentielles du document. Le processus d'édition des informations implique de couvrir ou d'assombrir un contenu spécifique, tel que du texte, des images ou des graphiques, de manière à restreindre sa visibilité et son accessibilité par d'autres. Cela garantit que les informations sensibles restent cachées et protégées au sein du document. Afin de répondre à cette exigence, une classe nommée [RedactionAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/redactionannotation/) est fournie, qui peut être utilisée pour rédiger certaines régions de page ou elle peut être utilisée pour manipuler des RedactionAnnotations existantes et les rédiger (c'est-à-dire aplatir l'annotation et supprimer le texte en dessous).
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- page = document.pages[1]
- redactionAnnotation = ap.annotations.RedactionAnnotation(page, ap.Rectangle(270, 190, 371, 250, True))
- redactionAnnotation.title = "John Smith"
- redactionAnnotation.fill_color = ap.Color.light_gray
- redactionAnnotation.color = ap.Color.red
- redactionAnnotation.redact()
-
- page.annotations.append(redactionAnnotation)
- document.save(output_file)
-```
-
-
-### Obtenir l'annotation de rédaction
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- redactionAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.REDACTION)
- ]
-
- for pa in redactionAnnotations:
- print(pa.rect)
-```
-
-### Supprimer l'annotation de rédaction
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- redactionAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.REDACTION)
- ]
-
- for pa in redactionAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/figures/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/figures/_index.md
deleted file mode 100644
index 857fbd312c..0000000000
--- a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/figures/_index.md
+++ /dev/null
@@ -1,438 +0,0 @@
----
-title: Ajouter des Annotations de Figures en utilisant Python
-linktitle: Annotations de Figures
-type: docs
-weight: 30
-url: /fr/python-net/figures-annotation/
-description: Cet article décrit comment ajouter, obtenir et supprimer des annotations de figures de votre document PDF avec Aspose.PDF pour Python via .NET
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Ajouter des annotations carrées et circulaires
-
-Dans les documents PDF, une annotation carrée se réfère à un type spécifique d'annotation représentée par une forme carrée. Les annotations carrées sont utilisées pour mettre en évidence ou attirer l'attention sur une zone ou une section spécifique du document.
-
-Les annotations [Carré](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squareannotation/) et [Cercle](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/circleannotation/) doivent afficher, respectivement, un rectangle ou une ellipse sur la page.
-
-Étapes pour créer des annotations carrées ou circulaires :
-
-1. Charger le fichier PDF - nouveau [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Créer une nouvelle [SquareAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squareannotation) et définir les paramètres (nouveau Rectangle, titre, couleur, couleur intérieure, opacité).
-3. Ensuite, nous devons ajouter l'annotation carrée à la page.
-
-Le code suivant vous montre comment ajouter des annotations carrées dans une page PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- squareAnnotation = ap.annotations.SquareAnnotation(document.pages[1], ap.Rectangle(60, 600, 250, 450, True))
- squareAnnotation.title = "John Smith"
- squareAnnotation.color = ap.Color.blue
- squareAnnotation.interior_color = ap.Color.blue_violet
- squareAnnotation.opacity = 0.25
-
- document.pages[1].annotations.append(squareAnnotation)
-
- document.save(output_file)
-```
-
-Le code suivant vous montre comment ajouter des annotations de cercle dans une page PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_file)
-
- circleAnnotation = ap.annotations.CircleAnnotation(
- document.pages[1], ap.Rectangle(270, 160, 483, 383, True)
- )
- circleAnnotation.title = "John Smith"
- circleAnnotation.color = ap.Color.red
- circleAnnotation.interior_color = ap.Color.misty_rose
- circleAnnotation.opacity = 0.5
- circleAnnotation.popup = ap.annotations.PopupAnnotation(
- document.pages[1], ap.Rectangle(842, 316, 1021, 459, True)
- )
-
- document.pages[1].annotations.append(circleAnnotation)
- document.save(output_file)
-```
-
-
-En tant qu'exemple, nous verrons le résultat suivant de l'ajout d'annotations Carré et Cercle à un document PDF :
-
-
-
-### Obtenir l'annotation Cercle
-
-Veuillez essayer d'utiliser l'extrait de code suivant pour obtenir l'annotation Cercle à partir d'un document PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- circleAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CIRCLE)
- ]
-
- for ca in circleAnnotations:
- print(ca.rect)
-```
-
-### Obtenir l'annotation Carré
-
-Veuillez essayer d'utiliser l'extrait de code suivant pour obtenir l'annotation Carré à partir d'un document PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squareAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUARE)
- ]
-
- for pa in squareAnnotations:
- print(pa.rect)
-```
-
-
-
-### Supprimer l'annotation Cercle
-
-Le extrait de code suivant montre comment supprimer une annotation de cercle d'un fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- circleAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CIRCLE)
- ]
-
- for ca in circleAnnotations:
- document.pages[1].annotations.delete(ca)
-
- document.save(output_file)
-```
-
-### Supprimer une Annotation Carrée
-
-Le extrait de code suivant montre comment supprimer une annotation carrée d'un fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squareAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUARE)
- ]
-
- for pa in squareAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-## Ajouter des Annotations Polygone et Polyligne
-
-L'outil Polyligne vous permet de créer des formes et des contours avec un nombre arbitraire de côtés sur le document.
-
-[Annotations de Polygone](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polygonannotation/) représentent des polygones sur une page. Ils peuvent avoir n'importe quel nombre de sommets connectés par des lignes droites.
-
-[Annotations de Polyline](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polylineannotation/) sont également similaires aux polygones, la seule différence est que les premiers et derniers sommets ne sont pas implicitement connectés.
-
-Étapes avec lesquelles nous créons des annotations de polygone :
-
-1. Charger le fichier PDF - nouveau [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Créer une nouvelle [Annotation de Polygone](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polygonannotation) et définir les paramètres du polygone (nouveau Rectangle, nouveaux Points, titre, couleur, couleur intérieure et opacité).
-1. Après, nous pouvons ajouter des annotations à la page.
-
-Le fragment de code suivant montre comment ajouter des annotations de polygone à un fichier PDF :
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- polygonAnnotation = ap.annotations.PolygonAnnotation(
- document.pages[1],
- ap.Rectangle(200, 300, 400, 400, True),
- [
- ap.Point(200, 300),
- ap.Point(220, 300),
- ap.Point(250, 330),
- ap.Point(300, 304),
- ap.Point(300, 400),
- ],
- )
- polygonAnnotation.title = "John Smith"
- polygonAnnotation.color = ap.Color.blue
- polygonAnnotation.interior_color = ap.Color.blue_violet
- polygonAnnotation.opacity = 0.25
-
- document.pages[1].annotations.append(polygonAnnotation)
- document.save(output_file)
-```
-
-
-The following code snippet shows how to add Polyline Annotations to a PDF file:
-
-1. Charger le fichier PDF - nouveau [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Créer de nouvelles [Annotations de polyligne](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polylineannotation/) et définir les paramètres du polygone (nouveau Rectangle, nouveaux Points, titre, couleur, couleur intérieure et opacité).
-1. Ensuite, nous pouvons ajouter des annotations à la page.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- polylineAnnotation = ap.annotations.PolylineAnnotation(
- document.pages[1],
- ap.Rectangle(270, 193, 571, 383, True),
- [
- ap.Point(545, 150),
- ap.Point(545, 190),
- ap.Point(667, 190),
- ap.Point(667, 110),
- ap.Point(626, 111),
- ],
- )
- polylineAnnotation.title = "John Smith"
- polylineAnnotation.color = ap.Color.red
- polylineAnnotation.popup = ap.annotations.PopupAnnotation(
- document.pages[1], ap.Rectangle(842, 196, 1021, 338, True)
- )
-
- document.pages[1].annotations.append(polylineAnnotation)
- document.save(output_file)
-```
-
-
-### Obtenir des annotations de polygone et de polyligne
-
-Veuillez essayer d'utiliser le code suivant pour obtenir des annotations de polygone dans un document PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polygonAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLYGON)
- ]
-
- for pa in polygonAnnotations:
- print(pa.rect)
-```
-
-Veuillez essayer d'utiliser le code suivant pour obtenir des annotations de polyligne dans un document PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polylineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLY_LINE)
- ]
-
- for pa in polylineAnnotations:
- print(pa.rect)
-```
-
-### Supprimer les annotations de polygone et de polyligne
-
-Le code suivant montre comment supprimer des annotations de polygone d'un fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polygonAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLYGON)
- ]
-
- for pa in polygonAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
-Le fragment de code suivant montre comment supprimer des annotations de polyligne d'un fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polylineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLY_LINE)
- ]
-
- for pa in polylineAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/hightlights/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/hightlights/_index.md
deleted file mode 100644
index 82f109ee9c..0000000000
--- a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/hightlights/_index.md
+++ /dev/null
@@ -1,395 +0,0 @@
----
-title: Annotation de surlignage PDF en utilisant Python
-linktitle: Annotation de surlignage
-type: docs
-weight: 20
-url: /fr/python-net/highlights-annotation/
-description: Les annotations de balisage sont présentées dans le texte sous forme de surlignages, de soulignements, de barrés ou de soulignements en zigzag dans le texte d'un document.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-Annotations de balisage de texte dans le PDF sont utilisées pour surligner, souligner, ignorer ou ajouter des notes au texte dans le document. Ces annotations sont destinées à mettre en évidence ou attirer l'attention sur des parties spécifiques du texte. De telles annotations permettent aux utilisateurs de marquer visuellement ou de modifier le contenu d'un fichier PDF.
-
-L'annotation de surlignage est utilisée pour marquer le texte avec un fond coloré, généralement jaune, pour indiquer son importance ou sa pertinence.
-
-L'annotation de soulignement est une ligne placée sous le texte sélectionné pour indiquer la signification, l'accentuation ou indiquer des modifications suggérées.
-
-L'annotation de barré inclut la suppression ou le barré d'un texte particulier pour montrer qu'il a été supprimé, remplacé ou n'est plus valide.
-
-La ligne ondulée est utilisée pour souligner le texte afin d'indiquer un type d'accent différent, tel que des erreurs d'orthographe, des problèmes potentiels ou des modifications proposées.
-
-## Ajouter une annotation de balisage de texte
-
-Afin d'ajouter une annotation de balisage de texte au document PDF, nous devons effectuer les actions suivantes :
-
-1. Charger le fichier PDF - nouvel objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Créer des annotations :
- - [HighlightAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/highlightannotation/) et définir les paramètres (titre, couleur).
- - [StrikeOutAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/strikeoutannotation/) et définir les paramètres (titre, couleur).
- - [SquigglyAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squigglyannotation/) et définir les paramètres (titre, couleur).
- - [UnderlineAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/underlineannotation/) et définir les paramètres (titre, couleur).
-1. Ensuite, nous devrions ajouter toutes les annotations à la page.
-
-### Ajouter une Annotation Surlignée
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_file)
-
- # Créer une Annotation de Cercle
- highlightAnnotation = ap.annotations.HighlightAnnotation(
- document.pages[1], ap.Rectangle(300, 750, 320, 770, True)
- )
- document.pages[1].annotations.append(highlightAnnotation)
- document.save(output_file)
-```
-
-
-### Ajouter une Annotation de Barré
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- strikeoutAnnotation = ap.annotations.StrikeOutAnnotation(
- document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
- )
- strikeoutAnnotation.title = "Utilisateur Aspose"
- strikeoutAnnotation.subject = "Texte inséré 1"
- strikeoutAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- strikeoutAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(strikeoutAnnotation)
- document.save(output_file)
-```
-
-### Ajouter une Annotation de Zigzag
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- page = document.pages[1]
- squigglyAnnotation = ap.annotations.SquigglyAnnotation(page, ap.Rectangle(67, 317, 261, 459, True))
- squigglyAnnotation.title = "John Smith"
- squigglyAnnotation.color = ap.Color.blue
-
- page.annotations.append(squigglyAnnotation)
-
- document.save(output_file)
-```
-
-### Ajouter une Annotation de Soulignement
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- underlineAnnotation = ap.annotations.UnderlineAnnotation(
- document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
- )
- underlineAnnotation.title = "Utilisateur Aspose"
- underlineAnnotation.subject = "Soulignement inséré 1"
- underlineAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- underlineAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(underlineAnnotation)
- document.save(output_file)
-```
-
-
-## Obtenir une annotation de balisage de texte
-
-Veuillez essayer d'utiliser l'extrait de code suivant pour obtenir une annotation de balisage de texte à partir d'un document PDF.
-
-### Obtenir une annotation de surbrillance
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- highlightAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT)
- ]
-
- for ha in highlightAnnotations:
- print(ha.rect)
-```
-
-### Obtenir une annotation de rature
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- print(pa.rect)
-```
-
-### Obtenir une annotation ondulée
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squigglyAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUIGGLY)
- ]
-
- for pa in squigglyAnnotations:
- print(pa.rect)
-```
-
-
-### Obtenir l'Annotation de Soulignement
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- UnderlineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.UNDERLINE)
- ]
-
- for ta in UnderlineAnnotations:
- print(ta.rect)
-```
-
-## Supprimer l'Annotation de Marquage de Texte
-
-Le code suivant montre comment supprimer l'annotation de marquage de texte d'un fichier PDF.
-
-### Supprimer l'Annotation de Surlignage
-
-```python
-
- import aspose.pdf as ap
-
- # Charger le fichier PDF
- document = ap.Document(input_file)
- highlightAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT)
- ]
-
- for hs in highlightAnnotations:
- document.pages[1].annotations.delete(hs)
-
- document.save(output_file)
-```
-
-### Supprimer l'Annotation de Barré
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
-### Supprimer l'Annotation Ondulée
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squigglyAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUIGGLY)
- ]
-
- for pa in squigglyAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-### Supprimer l'Annotation de Soulignement
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- underlineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.UNDERLINE)
- ]
-
- for ta in underlineAnnotations:
- document.pages[1].annotations.delete(ta)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
new file mode 100644
index 0000000000..511c351e51
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
@@ -0,0 +1,330 @@
+---
+title: Annotations interactives avec Python
+linktitle: Annotations interactives
+type: docs
+weight: 60
+url: /fr/python-net/interactive-annotations/
+description: Apprenez à ajouter, lire et supprimer des annotations de lien, ainsi qu'à créer des boutons de navigation et d'impression dans les documents PDF à l'aide d'Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Travaillez avec les annotations PDF interactives et les boutons en Python.
+Abstract: Cet article explique comment travailler avec les annotations interactives dans les fichiers PDF en utilisant Aspose.PDF for Python via .NET. Il couvre l'ajout d'annotations de lien, la lecture des zones de lien existantes, la suppression des annotations de lien, la création de boutons de navigation de page et l'ajout d'un bouton d'impression à un document PDF.
+---
+
+Cet article montre comment travailler avec les annotations interactives dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+
+Le script d'exemple démontre plusieurs flux de travail courants :
+
+- ajouter une annotation de lien au texte existant
+- obtenir les rectangles d'annotation de lien d'une page
+- supprimer les annotations de lien
+- créer des boutons de navigation
+- Créer un bouton d'impression
+
+## Annotation de lien
+
+### Ajouter une annotation de lien
+
+Cet exemple recherche le fragment de texte sur la première page `"file"` et place une annotation de lien cliquable sur la zone de texte correspondante. Lorsque l'utilisateur clique sur l'annotation, le PDF ouvre l'adresse web spécifiée.
+
+#### Chargez le document et trouvez le texte cible
+
+Créer un `Document` objet et utilisation `TextFragmentAbsorber` pour rechercher le texte qui deviendra interactif.
+
+```python
+document = ap.Document(infile)
+text_fragment_absorber = ap.text.TextFragmentAbsorber("file")
+
+document.pages[1].accept(text_fragment_absorber)
+phone_number_fragment = text_fragment_absorber.text_fragments[1]
+```
+
+#### Créer l'annotation de lien
+
+Construire un `LinkAnnotation` en utilisant le rectangle du fragment de texte correspondant et en lui assignant une action URI.
+
+```python
+link_annotation = ap.annotations.LinkAnnotation(
+ document.pages[1], phone_number_fragment.rectangle
+)
+link_annotation.action = ap.annotations.GoToURIAction("https://www.aspose.com")
+```
+
+#### Ajoutez l'annotation et enregistrez le PDF
+
+Ajoutez l'annotation à la page et enregistrez le fichier mis à jour.
+
+```python
+document.pages[1].annotations.append(link_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def link_add(infile, outfile):
+ document = ap.Document(infile)
+ text_fragment_absorber = ap.text.TextFragmentAbsorber("file")
+
+ document.pages[1].accept(text_fragment_absorber)
+ phone_number_fragment = text_fragment_absorber.text_fragments[1]
+
+ link_annotation = ap.annotations.LinkAnnotation(
+ document.pages[1], phone_number_fragment.rectangle
+ )
+ link_annotation.action = ap.annotations.GoToURIAction("https://www.aspose.com")
+
+ document.pages[1].annotations.append(link_annotation)
+ document.save(outfile)
+```
+
+### Obtenir l'annotation de lien
+
+Pour inspecter les liens interactifs existants, filtrez la collection d'annotations sur la première page et ne conservez que les éléments dont le type est `LINK`. L'exemple imprime ensuite le rectangle pour chaque annotation correspondante.
+
+#### Chargez le PDF et collectez les annotations de lien
+
+```python
+document = ap.Document(infile)
+link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+]
+```
+
+#### Lire les rectangles d'annotation
+
+Parcourez les annotations filtrées et affichez les coordonnées de chaque zone de lien.
+
+```python
+for link_annotation in link_annotations:
+ print(link_annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def link_get(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for link_annotation in link_annotations:
+ print(link_annotation.rect)
+```
+
+### Supprimer l'annotation de lien
+
+Ce flux de travail supprime toutes les annotations de lien de la première page et enregistre le PDF nettoyé en tant que nouveau fichier.
+
+#### Trouver les annotations de lien à supprimer
+
+```python
+document = ap.Document(infile)
+link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+]
+```
+
+#### Supprimer chaque annotation de lien
+
+```python
+for link_annotation in link_annotations:
+ document.pages[1].annotations.delete(link_annotation)
+```
+
+#### Enregistrez le document mis à jour
+
+```python
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def link_delete(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for link_annotation in link_annotations:
+ document.pages[1].annotations.delete(link_annotation)
+
+ document.save(outfile)
+```
+
+## Annotation de widget
+
+### Ajouter un bouton de navigation
+
+Les boutons de navigation sont utiles dans les PDF multi-pages lorsque vous souhaitez que les lecteurs passent d'une page à l'autre sans utiliser l'interface du visualiseur. Cet exemple ajoute `Previous Page` et `Next Page` boutons pour chaque page.
+
+#### Définir les paramètres du bouton
+
+Stockez les légendes des boutons, leurs positions et les actions prédéfinies dans une liste de configuration simple.
+
+```python
+button_config = [
+ ("Previous Page", 120.0, ap.annotations.PredefinedAction.PREV_PAGE),
+ ("Next Page", 230.0, ap.annotations.PredefinedAction.NEXT_PAGE),
+]
+```
+
+#### Chargez le PDF et assurez-vous que plusieurs pages existent
+
+L'exemple ouvre le document source et ajoute une page supplémentaire afin que les actions de navigation disposent d'au moins deux pages avec lesquelles travailler.
+
+```python
+document = ap.Document(infile)
+document.pages.add()
+```
+
+#### Créer les boutons sur chaque page
+
+Pour chaque page, créez un `ButtonField`, définissez son texte et ses couleurs, attribuez une action de navigation prédéfinie, et ajoutez‑le au formulaire.
+
+```python
+for page in document.pages:
+ for name, x_pos, action in button_config:
+ rect = ap.Rectangle(x_pos, 10.0, x_pos + 100, 40.0, True)
+ button = ap.forms.ButtonField(page, rect)
+ button.partial_name = name
+ button.value = name
+ button.characteristics.border = ap.Color.red.to_rgb()
+ button.characteristics.background = ap.Color.orange.to_rgb()
+ button.actions.on_release_mouse_btn = ap.annotations.NamedAction(action)
+ document.form.add(button)
+```
+
+#### Enregistrer le résultat
+
+```python
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def navigation_buttons_add(infile, outfile):
+ button_config = [
+ ("Previous Page", 120.0, ap.annotations.PredefinedAction.PREV_PAGE),
+ ("Next Page", 230.0, ap.annotations.PredefinedAction.NEXT_PAGE),
+ ]
+
+ document = ap.Document(infile)
+ document.pages.add()
+
+ for page in document.pages:
+ for name, x_pos, action in button_config:
+ rect = ap.Rectangle(x_pos, 10.0, x_pos + 100, 40.0, True)
+ button = ap.forms.ButtonField(page, rect)
+ button.partial_name = name
+ button.value = name
+ button.characteristics.border = ap.Color.red.to_rgb()
+ button.characteristics.background = ap.Color.orange.to_rgb()
+ button.actions.on_release_mouse_btn = ap.annotations.NamedAction(action)
+ document.form.add(button)
+
+ document.save(outfile)
+```
+
+### Ajouter le bouton d'impression
+
+Cet exemple crée un nouveau PDF d’une page et place un bouton d’impression près du haut de la page. Cliquer sur le bouton déclenche l’action d’impression prédéfinie dans un visualiseur PDF compatible.
+
+#### Créer un nouveau PDF et ajouter une page
+
+```python
+document = ap.Document()
+page = document.pages.add()
+```
+
+#### Créer et configurer le bouton
+
+Définissez le rectangle du bouton, créez le `ButtonField`, définissez sa légende, et attachez l'action d'impression.
+
+```python
+rect = ap.Rectangle(72, 748, 164, 768, True)
+
+print_button = ap.forms.ButtonField(page, rect)
+print_button.alternate_name = "Print current document"
+print_button.color = ap.Color.black
+print_button.partial_name = "printBtn1"
+print_button.value = "Print Document"
+print_button.actions.on_release_mouse_btn = ap.annotations.NamedAction(
+ ap.annotations.PredefinedAction.FILE_PRINT
+)
+```
+
+#### Définir les styles de bordure et d'arrière-plan
+
+L'exemple définit une bordure solide et applique des couleurs personnalisées pour rendre le bouton visible dans le document.
+
+```python
+border = ap.annotations.Border(print_button)
+border.style = ap.annotations.BorderStyle.SOLID
+border.width = 2
+print_button.border = border
+
+print_button.characteristics.border = ap.Color.blue.to_rgb()
+print_button.characteristics.background = ap.Color.light_blue.to_rgb()
+```
+
+#### Ajoutez le bouton et enregistrez le PDF
+
+```python
+document.form.add(print_button)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def print_button_add(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ rect = ap.Rectangle(72, 748, 164, 768, True)
+
+ print_button = ap.forms.ButtonField(page, rect)
+ print_button.alternate_name = "Print current document"
+ print_button.color = ap.Color.black
+ print_button.partial_name = "printBtn1"
+ print_button.value = "Print Document"
+ print_button.actions.on_release_mouse_btn = ap.annotations.NamedAction(
+ ap.annotations.PredefinedAction.FILE_PRINT
+ )
+
+ border = ap.annotations.Border(print_button)
+ border.style = ap.annotations.BorderStyle.SOLID
+ border.width = 2
+ print_button.border = border
+
+ print_button.characteristics.border = ap.Color.blue.to_rgb()
+ print_button.characteristics.background = ap.Color.light_blue.to_rgb()
+
+ document.form.add(print_button)
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Importer et exporter les annotations](/python-net/import-export-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations multimédias](/python-net/media-annotations/)
+- [Annotations de sécurité](/python-net/security-annotations/)
+- [Annotations de forme](/python-net/shape-annotations/)
+- [Annotations basées sur le texte](/python-net/text-based-Annotations/)
+- [Annotations de filigrane](/python-net/watermark-annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
new file mode 100644
index 0000000000..55270a7d88
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
@@ -0,0 +1,499 @@
+---
+title: Annotations de balisage avec Python
+linktitle: Annotations de balisage
+type: docs
+weight: 30
+url: /fr/python-net/markup-annotations/
+description: Apprenez comment ajouter, lire et supprimer du texte, du caret, et remplacer les annotations dans les documents PDF à l’aide d’Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Travaillez avec les annotations de balisage dans les fichiers PDF à l’aide de Python.
+Abstract: Cet article explique comment créer, inspecter et supprimer les annotations de balisage dans les documents PDF à l’aide d’Aspose.PDF for Python via .NET. Il couvre les annotations de texte, les annotations de caret et les annotations de remplacement, chaque flux de travail étant décomposé en petites étapes et exemples de code.
+---
+
+Cet article montre comment travailler avec les annotations de balisage dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+
+Le script d'exemple démontre trois flux de travail d'annotation courants :
+
+- annotations de texte pour les commentaires de type note
+- annotations de caret pour les repères d'insertion
+- remplacer les annotations pour le balisage de remplacement de texte
+
+## Annotations de texte
+
+### Ajouter des annotations de texte
+
+Cet exemple crée une annotation de texte sur la première page et la lie à une fenêtre popup. Les annotations de texte sont utiles pour les commentaires de type post-it dans les flux de révision.
+
+#### Ouvrez le PDF source
+
+```python
+document = ap.Document(infile)
+```
+
+#### Créer et configurer l'annotation de texte
+
+Définir le rectangle d'annotation et définir son titre, son sujet, son contenu, ses indicateurs d'affichage, sa couleur et son icône.
+
+```python
+text_annotation = ap.annotations.TextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 613.664, 428.708, 680.769, True),
+)
+text_annotation.title = "Aspose User"
+text_annotation.subject = "Sticky Note"
+text_annotation.contents = (
+ "This is a text annotation added by Aspose.PDF for Python via .NET"
+)
+text_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+text_annotation.color = ap.Color.blue
+text_annotation.icon = ap.annotations.TextIcon.HELP
+```
+
+#### Créer l'annotation popup
+
+Créer une fenêtre pop‑up et la connecter à l'annotation de texte.
+
+```python
+popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(428.708, 613.664, 528.708, 713.664, True),
+)
+popup.open = True
+
+text_annotation.popup = popup
+```
+
+#### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+document.pages[1].annotations.add(text_annotation, consider_rotation=False)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def text_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ text_annotation = ap.annotations.TextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 613.664, 428.708, 680.769, True),
+ )
+ text_annotation.title = "Aspose User"
+ text_annotation.subject = "Sticky Note"
+ text_annotation.contents = (
+ "This is a text annotation added by Aspose.PDF for Python via .NET"
+ )
+ text_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ text_annotation.color = ap.Color.blue
+ text_annotation.icon = ap.annotations.TextIcon.HELP
+
+ popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(428.708, 613.664, 528.708, 713.664, True),
+ )
+ popup.open = True
+
+ text_annotation.popup = popup
+
+ document.pages[1].annotations.add(text_annotation, consider_rotation=False)
+ document.save(outfile)
+```
+
+### Obtenir les annotations de texte
+
+Pour inspecter les annotations de texte existantes, filtrez la collection d'annotations sur la première page et ne conservez que les éléments dont le type est `TEXT`.
+
+#### Chargez le document et collectez les annotations de texte
+
+```python
+document = ap.Document(infile)
+text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+]
+```
+
+#### Imprimer les rectangles d'annotation
+
+```python
+for annotation in text_annotations:
+ print(annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def text_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+ ]
+
+ for annotation in text_annotations:
+ print(annotation.rect)
+```
+
+### Supprimer les annotations de texte
+
+Ce flux de travail supprime toutes les annotations de texte de la première page et enregistre le PDF modifié.
+
+#### Trouver les annotations de texte à supprimer
+
+```python
+document = ap.Document(infile)
+text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+]
+```
+
+#### Supprimez les annotations et enregistrez le fichier
+
+```python
+for annotation in text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def text_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+ ]
+
+ for annotation in text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Annotations de caret
+
+### Ajouter des annotations caret
+
+Les annotations de caret sont utilisées pour marquer les points d’insertion dans les scénarios de révision. Cet exemple ajoute une annotation de caret avec une note contextuelle attachée.
+
+#### Ouvrez le document et obtenez la page cible
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Créer et configurer l'annotation caret
+
+```python
+caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+)
+caret_annotation.title = "Aspose User"
+caret_annotation.subject = "Inserted text 1"
+caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+caret_annotation.color = ap.Color.blue
+```
+
+#### Attachez le popup et enregistrez le document
+
+```python
+caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+)
+page.annotations.append(caret_annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def caret_annotations_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+ )
+ caret_annotation.title = "Aspose User"
+ caret_annotation.subject = "Inserted text 1"
+ caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ caret_annotation.color = ap.Color.blue
+ caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+ )
+ page.annotations.append(caret_annotation)
+
+ document.save(outfile)
+```
+
+### Obtenir les annotations de caret
+
+Pour inspecter les annotations caret, parcourez les annotations de la page et filtrez par le `CARET` type d'annotation.
+
+#### Chargez le document et la page
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Imprimer les rectangles d'annotation caret
+
+```python
+for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET:
+ print(annot.rect)
+```
+
+#### Exemple complet
+
+```python
+def caret_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET:
+ print(annot.rect)
+```
+
+### Supprimer les annotations de caret
+
+Ce flux de travail collecte d'abord les annotations caret, les supprime une à une, puis enregistre le fichier mis à jour.
+
+#### Chargez le document et collectez les annotations de caret
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+caret_annotations = [
+ annot
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET
+]
+```
+
+#### Supprimez les annotations et enregistrez le document
+
+```python
+for annot in caret_annotations:
+ page.annotations.delete(annot)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def caret_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ caret_annotations = [
+ annot
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET
+ ]
+
+ for annot in caret_annotations:
+ page.annotations.delete(annot)
+
+ document.save(outfile)
+```
+
+## Remplacer les annotations
+
+### Ajouter Remplacer les Annotations
+
+Les annotations de remplacement combinent une annotation caret et une annotation de texte barré groupée. Ce modèle indique le texte qui doit être remplacé et lie la note de remplacement au contenu rayé.
+
+#### Ouvrez le document et obtenez la page
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Créer l'annotation caret pour le texte de remplacement
+
+```python
+caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(361.246, 727.908, 370.081, 735.107, True)
+)
+caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+caret_annotation.subject = "Inserted text 2"
+caret_annotation.title = "Aspose User"
+caret_annotation.color = ap.Color.blue
+caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+)
+```
+
+#### Créer l'annotation de texte barré groupée
+
+Définir la zone de texte barré, attribuer les points quadrilatères et la lier à l'annotation caret via `in_reply_to` et `reply_type`.
+
+```python
+strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ page, ap.Rectangle(318.407, 727.826, 368.916, 740.098, True)
+)
+strikeout_annotation.color = ap.Color.blue
+strikeout_annotation.quad_points = [
+ ap.Point(321.66, 739.416),
+ ap.Point(365.664, 739.416),
+ ap.Point(321.66, 728.508),
+ ap.Point(365.664, 728.508),
+]
+strikeout_annotation.subject = "Cross-out"
+strikeout_annotation.in_reply_to = caret_annotation
+strikeout_annotation.reply_type = ap.annotations.ReplyType.GROUP
+```
+
+#### Ajoutez les deux annotations et enregistrez le PDF
+
+```python
+page.annotations.append(caret_annotation)
+page.annotations.append(strikeout_annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def replace_annotations_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(361.246, 727.908, 370.081, 735.107, True)
+ )
+ caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ caret_annotation.subject = "Inserted text 2"
+ caret_annotation.title = "Aspose User"
+ caret_annotation.color = ap.Color.blue
+ caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+ )
+
+ strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ page, ap.Rectangle(318.407, 727.826, 368.916, 740.098, True)
+ )
+ strikeout_annotation.color = ap.Color.blue
+ strikeout_annotation.quad_points = [
+ ap.Point(321.66, 739.416),
+ ap.Point(365.664, 739.416),
+ ap.Point(321.66, 728.508),
+ ap.Point(365.664, 728.508),
+ ]
+ strikeout_annotation.subject = "Cross-out"
+ strikeout_annotation.in_reply_to = caret_annotation
+ strikeout_annotation.reply_type = ap.annotations.ReplyType.GROUP
+
+ page.annotations.append(caret_annotation)
+ page.annotations.append(strikeout_annotation)
+
+ document.save(outfile)
+```
+
+### Obtenir Remplacer les annotations
+
+Pour identifier les annotations de remplacement, trouvez les annotations de texte barré qui sont regroupées en tant que réponses à une autre annotation. L'exemple convertit chaque annotation de texte barré avant de vérifier ses champs de relation.
+
+#### Chargez le document et parcourez les annotations
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Filtrer les annotations de texte barré groupées
+
+```python
+for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT:
+ sa = cast(ap.annotations.StrikeOutAnnotation, annot)
+ if (
+ sa.in_reply_to is not None
+ and sa.reply_type == ap.annotations.ReplyType.GROUP
+ ):
+ print(f"Replace annotation rect: {sa.rect}")
+```
+
+#### Exemple complet
+
+```python
+def replace_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT:
+ sa = cast(ap.annotations.StrikeOutAnnotation, annot)
+ if (
+ sa.in_reply_to is not None
+ and sa.reply_type == ap.annotations.ReplyType.GROUP
+ ):
+ print(f"Replace annotation rect: {sa.rect}")
+```
+
+### Supprimer Remplacer Annotations
+
+Ce flux de travail collecte les annotations de rature utilisées pour le remplacement de balisage, les supprime de la page et enregistre le PDF de sortie.
+
+#### Chargez le document et collectez les annotations de remplacement
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+replace_annotations = [
+ cast(ap.annotations.StrikeOutAnnotation, annot)
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+]
+```
+
+#### Supprimez les annotations et enregistrez le document
+
+```python
+for annot in replace_annotations:
+ page.annotations.delete(annot)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def replace_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ replace_annotations = [
+ cast(ap.annotations.StrikeOutAnnotation, annot)
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+ ]
+
+ for annot in replace_annotations:
+ page.annotations.delete(annot)
+
+ document.save(outfile)
+```
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
new file mode 100644
index 0000000000..24e8452d0a
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
@@ -0,0 +1,499 @@
+---
+title: Annotations multimédias dans PDF
+linktitle: Annotations multimédias
+type: docs
+weight: 40
+url: /fr/python-net/media-annotations/
+description: Apprenez comment ajouter des annotations sonores, 3D, d’écran et multimédia riches aux documents PDF, et comment inspecter ou supprimer les annotations multimédia à l’aide d’Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Travaillez avec les annotations PDF multimédia et rich media en Python.
+Abstract: Cet article explique comment créer et gérer des annotations multimédias dans des documents PDF en utilisant Aspose.PDF for Python via .NET. Il couvre les annotations sonores, les annotations 3D, les annotations d'écran, les annotations multimédias enrichies, ainsi que les techniques pour lister ou supprimer les annotations multimédias d’une page PDF.
+---
+
+Cet article montre comment travailler avec les annotations multimédia dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+
+Le script d'exemple démontre plusieurs flux de travail multimédias :
+
+- ajouter une annotation sonore
+- créez une annotation 3D à partir d'un modèle U3D
+- ajouter une annotation d'écran à partir d'un fichier multimédia
+- ajouter et supprimer des annotations multimédias
+- inspecter les annotations multimédia existantes
+
+## Ajouter des annotations sonores
+
+Cet exemple ajoute une annotation sonore à la première page d'un PDF existant et la lie à un fichier média WAV stocké dans le répertoire d'entrée.
+
+### Ouvrez le PDF et définissez le fichier multimédia
+
+```python
+media_dir = path.dirname(infile)
+
+document = ap.Document(infile)
+page = document.pages[1]
+
+media_file = path.join(media_dir, "file_example_WAV_1MG.wav")
+```
+
+### Créer et configurer l'annotation sonore
+
+Définissez le rectangle d'annotation, la couleur, le titre et le sujet. Ajoutez ensuite une annotation popup pour fournir des détails supplémentaires lorsque l'annotation est sélectionnée.
+
+```python
+sound_annotation = ann.SoundAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+ media_file,
+)
+
+sound_annotation.color = ap.Color.blue
+sound_annotation.title = "John Smith"
+sound_annotation.subject = "Sound Annotation demo"
+
+sound_annotation.popup = ann.PopupAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+)
+```
+
+### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+page.annotations.append(sound_annotation)
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def sound_annotation_add(infile, outfile):
+ media_dir = path.dirname(infile)
+
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ media_file = path.join(media_dir, "file_example_WAV_1MG.wav")
+
+ sound_annotation = ann.SoundAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+ media_file,
+ )
+
+ sound_annotation.color = ap.Color.blue
+ sound_annotation.title = "John Smith"
+ sound_annotation.subject = "Sound Annotation demo"
+
+ sound_annotation.popup = ann.PopupAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+ )
+
+ page.annotations.append(sound_annotation)
+ document.save(outfile)
+```
+
+## Ajouter des annotations 3D
+
+Ce flux de travail crée un nouveau PDF et intègre un modèle 3D à partir d'un fichier U3D. Il définit également des vues prédéfinies et des paramètres de rendu pour le contenu 3D.
+
+### Créer le document PDF et le contenu 3D
+
+```python
+model_file = infile
+
+document = ap.Document()
+
+pdf3d_content = ann.PDF3DContent(model_file)
+pdf3d_artwork = ann.PDF3DArtwork(document, pdf3d_content)
+pdf3d_artwork.lighting_scheme = ann.PDF3DLightingScheme(type_name="CAD")
+pdf3d_artwork.render_mode = ann.PDF3DRenderMode(type_name="Solid")
+```
+
+### Définir les matrices de vue 3D
+
+Ces matrices décrivent comment le modèle 3D est affiché depuis différents points de vue.
+
+```python
+top_matrix = ap.Matrix3D(
+ 1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0.10271,
+ 0.08184,
+ 0.273836,
+)
+
+front_matrix = ap.Matrix3D(
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ 1,
+ -1,
+ 0,
+ 0,
+ 0.332652,
+ 0.08184,
+ 0.085273,
+)
+```
+
+### Ajouter des vues nommées à l'œuvre
+
+```python
+pdf3d_artwork.view_array.add(ann.PDF3DView(document, top_matrix, 0.188563, "Top"))
+pdf3d_artwork.view_array.add(ann.PDF3DView(document, front_matrix, 0.188563, "Left"))
+```
+
+### Créer l'annotation et enregistrer le document
+
+```python
+page = document.pages.add()
+
+pdf3d_annotation = ann.PDF3DAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 700, True),
+ pdf3d_artwork,
+)
+
+pdf3d_annotation.border = ann.Border(pdf3d_annotation)
+pdf3d_annotation.set_default_view_index(1)
+pdf3d_annotation.flags = ann.AnnotationFlags.NO_ZOOM
+pdf3d_annotation.name = path.basename(model_file)
+
+page.annotations.append(pdf3d_annotation)
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def annotation_3d_add(infile, outfile):
+ model_file = infile
+
+ document = ap.Document()
+
+ pdf3d_content = ann.PDF3DContent(model_file)
+ pdf3d_artwork = ann.PDF3DArtwork(document, pdf3d_content)
+ pdf3d_artwork.lighting_scheme = ann.PDF3DLightingScheme(type_name="CAD")
+ pdf3d_artwork.render_mode = ann.PDF3DRenderMode(type_name="Solid")
+
+ top_matrix = ap.Matrix3D(
+ 1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0.10271,
+ 0.08184,
+ 0.273836,
+ )
+
+ front_matrix = ap.Matrix3D(
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ 1,
+ -1,
+ 0,
+ 0,
+ 0.332652,
+ 0.08184,
+ 0.085273,
+ )
+
+ pdf3d_artwork.view_array.add(ann.PDF3DView(document, top_matrix, 0.188563, "Top"))
+ pdf3d_artwork.view_array.add(
+ ann.PDF3DView(document, front_matrix, 0.188563, "Left")
+ )
+
+ page = document.pages.add()
+
+ pdf3d_annotation = ann.PDF3DAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 700, True),
+ pdf3d_artwork,
+ )
+
+ pdf3d_annotation.border = ann.Border(pdf3d_annotation)
+ pdf3d_annotation.set_default_view_index(1)
+ pdf3d_annotation.flags = ann.AnnotationFlags.NO_ZOOM
+ pdf3d_annotation.name = path.basename(model_file)
+
+ page.annotations.append(pdf3d_annotation)
+ document.save(outfile)
+```
+
+## Ajouter des annotations d'écran
+
+Les annotations d'écran vous permettent d'attacher des médias lisibles à une page PDF. Cet exemple crée un nouveau PDF et ajoute une annotation d'écran basée sur un fichier SWF.
+
+### Créer le PDF et la page
+
+```python
+media_file = infile
+
+document = ap.Document()
+page = document.pages.add()
+```
+
+### Créer l'annotation d'écran
+
+```python
+screen_annotation = ann.ScreenAnnotation(
+ page,
+ ap.Rectangle(170, 190, 470, 380, True),
+ media_file,
+)
+```
+
+### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+page.annotations.append(screen_annotation)
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def screen_annotation_with_media_add(infile, outfile):
+ media_file = infile
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ screen_annotation = ann.ScreenAnnotation(
+ page,
+ ap.Rectangle(170, 190, 470, 380, True),
+ media_file,
+ )
+
+ page.annotations.append(screen_annotation)
+ document.save(outfile)
+```
+
+## Annotations de médias enrichis
+
+### Ajouter des annotations multimédias riches
+
+Les annotations multimédias peuvent intégrer un contenu interactif avancé tel que des lecteurs vidéo avec des affiches, des skins et des paramètres de lecture personnalisés.
+
+### Préparer les médias et les ressources du lecteur
+
+L'exemple charge la vidéo, l'image d'affiche et les fichiers de skin du lecteur à partir d'emplacements prédéfinis.
+
+```python
+media_dir = path.dirname(infile)
+path_to_adobe_app = (
+ r"C:\\Program Files (x86)\\Adobe\\Acrobat 2017\\Acrobat\\Multimedia Skins"
+)
+
+document = ap.Document()
+page = document.pages.add()
+
+video_name = "file_example_MP4_480_1_5MG.mp4"
+poster_name = "file_example_MP4_480_1_5MG_poster.jpg"
+skin_name = "SkinOverAllNoFullNoCaption.swf"
+```
+
+### Créer l'annotation multimédia riche
+
+```python
+rich_media_annotation = ann.RichMediaAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 600, True),
+)
+```
+
+### Attachez le lecteur personnalisé, le skin, l'affiche et la vidéo
+
+```python
+player_path = os.path.join(path_to_adobe_app, "Players", "Videoplayer.swf")
+rich_media_annotation.custom_player = open(player_path, "rb")
+rich_media_annotation.custom_flash_variables = f"source={video_name}&skin={skin_name}"
+
+skin_path = os.path.join(path_to_adobe_app, skin_name)
+rich_media_annotation.add_custom_data(skin_name, open(skin_path, "rb"))
+
+poster_path = os.path.join(media_dir, poster_name)
+rich_media_annotation.set_poster(open(poster_path, "rb"))
+
+video_path = os.path.join(media_dir, video_name)
+with open(video_path, "rb") as video_file:
+ rich_media_annotation.set_content(video_name, video_file)
+```
+
+### Définir le comportement de lecture et enregistrer le PDF
+
+L'annotation est configurée comme contenu vidéo et s'active lorsque l'utilisateur clique dessus.
+
+```python
+rich_media_annotation.type = ann.RichMediaAnnotation.ContentType.VIDEO
+rich_media_annotation.activate_on = ann.RichMediaAnnotation.ActivationEvent.CLICK
+
+rich_media_annotation.update()
+
+page.annotations.append(rich_media_annotation)
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def rich_media_annotations_add(infile, outfile):
+ media_dir = path.dirname(infile)
+ path_to_adobe_app = (
+ r"C:\\Program Files (x86)\\Adobe\\Acrobat 2017\\Acrobat\\Multimedia Skins"
+ )
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ video_name = "file_example_MP4_480_1_5MG.mp4"
+ poster_name = "file_example_MP4_480_1_5MG_poster.jpg"
+ skin_name = "SkinOverAllNoFullNoCaption.swf"
+
+ rich_media_annotation = ann.RichMediaAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 600, True),
+ )
+
+ player_path = os.path.join(path_to_adobe_app, "Players", "Videoplayer.swf")
+ rich_media_annotation.custom_player = open(player_path, "rb")
+ rich_media_annotation.custom_flash_variables = (
+ f"source={video_name}&skin={skin_name}"
+ )
+
+ skin_path = os.path.join(path_to_adobe_app, skin_name)
+ rich_media_annotation.add_custom_data(skin_name, open(skin_path, "rb"))
+
+ poster_path = os.path.join(media_dir, poster_name)
+ rich_media_annotation.set_poster(open(poster_path, "rb"))
+
+ video_path = os.path.join(media_dir, video_name)
+ with open(video_path, "rb") as video_file:
+ rich_media_annotation.set_content(video_name, video_file)
+
+ rich_media_annotation.type = ann.RichMediaAnnotation.ContentType.VIDEO
+ rich_media_annotation.activate_on = ann.RichMediaAnnotation.ActivationEvent.CLICK
+
+ rich_media_annotation.update()
+
+ page.annotations.append(rich_media_annotation)
+ document.save(outfile)
+```
+
+### Supprimer les annotations multimédia enrichies
+
+Ce flux de travail supprime toutes les annotations multimédias de la première page d'un PDF existant.
+
+### Ouvrez le PDF et collectez les annotations de médias riches
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+to_delete = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ann.AnnotationType.RICH_MEDIA
+]
+```
+
+### Supprimez les annotations et enregistrez le document
+
+```python
+for annotation in to_delete:
+ page.annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def rich_media_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ to_delete = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ann.AnnotationType.RICH_MEDIA
+ ]
+
+ for annotation in to_delete:
+ page.annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Obtenir Multimedia_annotations
+
+Pour inspecter le contenu multimédia déjà stocké dans un PDF, filtrez la collection d'annotations pour les types d'annotations d'écran, son et multimédia enrichi.
+
+### Ouvrez le document et définissez les types d'annotation cibles
+
+```python
+document = ap.Document(infile)
+
+target_types = {
+ ann.AnnotationType.SCREEN,
+ ann.AnnotationType.SOUND,
+ ann.AnnotationType.RICH_MEDIA,
+}
+```
+
+### Imprimer les rectangles d'annotation multimédia
+
+```python
+for annotation in document.pages[1].annotations:
+ if annotation.annotation_type in target_types:
+ print(f"{annotation.annotation_type} [{annotation.rect}]")
+```
+
+### Exemple complet
+
+```python
+def multimedia_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+
+ target_types = {
+ ann.AnnotationType.SCREEN,
+ ann.AnnotationType.SOUND,
+ ann.AnnotationType.RICH_MEDIA,
+ }
+
+ for annotation in document.pages[1].annotations:
+ if annotation.annotation_type in target_types:
+ print(f"{annotation.annotation_type} [{annotation.rect}]")
+```
+
+## Sujets associés
+
+- [Importation et exportation des annotations](/python-net/import-export-annotations/)
+- [Annotations interactives](/python-net/interactive-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations de sécurité](/python-net/security-annotations/)
+- [Annotations de forme](/python-net/shape-annotations/)
+- [Annotations basées sur le texte](/python-net/text-based-Annotations/)
+- [Annotations de filigrane](/python-net/watermark-annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
new file mode 100644
index 0000000000..76ccb83428
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
@@ -0,0 +1,214 @@
+---
+title: Annotations de sécurité avec Python
+linktitle: Annotations de sécurité
+type: docs
+weight: 75
+url: /fr/python-net/security-annotations/
+description: Apprenez comment marquer du texte pour la rédaction, appliquer des annotations de rédaction et rédiger les zones d'image dans les fichiers PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Caviarder le contenu PDF sensible en Python à l'aide d'annotations de sécurité.
+Abstract: Cet article explique comment travailler avec des annotations de sécurité dans les documents PDF en utilisant Aspose.PDF for Python via .NET. Il couvre le marquage du texte correspondant avec des annotations de caviardage, l'application permanente des caviardages, et le caviardage des zones d'image sélectionnées en fonction des rectangles de placement d'image détectés.
+---
+
+Cet article montre comment utiliser les annotations de sécurité dans les documents PDF avec Aspose.PDF for Python via .NET.
+
+Le script d'exemple montre trois flux de travail de rédaction courants :
+
+- marquer les fragments de texte avec des annotations de rédaction
+- appliquer de façon permanente les annotations de rédaction existantes
+- caviarder une zone d'image détectée sur une page
+
+## Marquer la rédaction du texte
+
+Ce flux de travail recherche le texte correspondant dans le document et place des annotations de rédaction sur chaque correspondance. Il ne supprime pas encore le contenu ; il ne fait que marquer le texte pour une rédaction ultérieure.
+
+### Ouvrez le PDF et recherchez le texte cible
+
+Créer un `TextFragmentAbsorber` pour le terme de recherche et activer les options de recherche de texte standard avant de numériser toutes les pages.
+
+```python
+document = ap.Document(infile)
+text_fragment_absorber = ap.text.TextFragmentAbsorber(search_term)
+
+text_search_options = ap.text.TextSearchOptions(True)
+text_fragment_absorber.text_search_options = text_search_options
+document.pages.accept(text_fragment_absorber)
+```
+
+### Créer des annotations de caviardage pour chaque correspondance
+
+Pour chaque fragment de texte correspondant, créez un `RedactionAnnotation` en utilisant le rectangle du fragment et en configurant son apparence visuelle.
+
+```python
+for text_fragment in text_fragment_absorber.text_fragments:
+ page = text_fragment.page
+ annotation_rectangle = text_fragment.rectangle
+ redaction_annotation = ap.annotations.RedactionAnnotation(
+ page, annotation_rectangle
+ )
+ redaction_annotation.fill_color = ap.Color.gray
+ redaction_annotation.border_color = ap.Color.red
+ redaction_annotation.color = ap.Color.white
+ redaction_annotation.overlay_text = "REDACTED"
+ redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+ redaction_annotation.repeat = True
+ page.annotations.add(redaction_annotation, True)
+```
+
+### Enregistrer le PDF marqué
+
+```python
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def mark_text_redaction(infile, outfile, search_term):
+ document = ap.Document(infile)
+ text_fragment_absorber = ap.text.TextFragmentAbsorber(search_term)
+
+ text_search_options = ap.text.TextSearchOptions(True)
+ text_fragment_absorber.text_search_options = text_search_options
+ document.pages.accept(text_fragment_absorber)
+
+ for text_fragment in text_fragment_absorber.text_fragments:
+ page = text_fragment.page
+ annotation_rectangle = text_fragment.rectangle
+ redaction_annotation = ap.annotations.RedactionAnnotation(
+ page, annotation_rectangle
+ )
+ redaction_annotation.fill_color = ap.Color.gray
+ redaction_annotation.border_color = ap.Color.red
+ redaction_annotation.color = ap.Color.white
+ redaction_annotation.overlay_text = "REDACTED"
+ redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+ redaction_annotation.repeat = True
+ page.annotations.add(redaction_annotation, True)
+
+ document.save(outfile)
+```
+
+## Appliquer la rédaction
+
+Après l'ajout des annotations de rédaction, ce flux de travail les applique de manière permanente sur la première page. Une fois appliquées, le contenu original est supprimé de la sortie du document.
+
+### Chargez le PDF et collectez les annotations de rédaction
+
+```python
+document = ap.Document(infile)
+redaction_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.REDACTION
+]
+```
+
+### Appliquer chaque annotation de rédaction
+
+L'échantillon vérifie que chaque annotation peut être traitée comme une `RedactionAnnotation` avant d’appeler `redact()`.
+
+```python
+for redaction_annotation in redaction_annotations:
+ if is_assignable(redaction_annotation, ap.annotations.RedactionAnnotation):
+ cast(ap.annotations.RedactionAnnotation, redaction_annotation).redact()
+```
+
+### Enregistrer le PDF expurgé
+
+```python
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def apply_redaction(infile, outfile):
+ document = ap.Document(infile)
+ redaction_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.REDACTION
+ ]
+
+ for redaction_annotation in redaction_annotations:
+ if is_assignable(redaction_annotation, ap.annotations.RedactionAnnotation):
+ cast(ap.annotations.RedactionAnnotation, redaction_annotation).redact()
+
+ document.save(outfile)
+```
+
+## Zone de caviardage
+
+Cet exemple caviarde une zone d'image détectée au lieu du texte. Il analyse la page pour les emplacements d'images, sélectionne un rectangle d'emplacement et ajoute une annotation de caviardage sur cette zone.
+
+### Ouvrez le PDF et détectez les emplacements d'images
+
+Utiliser `ImagePlacementAbsorber` pour trouver les positions des images sur la première page.
+
+```python
+document = ap.Document(infile)
+
+image_placement_absorber = ap.ImagePlacementAbsorber()
+page = document.pages[1]
+page.accept(image_placement_absorber)
+```
+
+### Créer une annotation de caviardage pour la zone d'image sélectionnée
+
+L'exemple utilise la troisième position d'image détectée et applique le même style de rédaction utilisé dans l'exemple de marquage de texte.
+
+```python
+target_rect = image_placement_absorber.image_placements[2].rectangle
+redaction_annotation = ap.annotations.RedactionAnnotation(page, target_rect)
+redaction_annotation.fill_color = ap.Color.gray
+redaction_annotation.border_color = ap.Color.red
+redaction_annotation.color = ap.Color.white
+redaction_annotation.overlay_text = "REDACTED"
+redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+redaction_annotation.repeat = True
+```
+
+### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+page.annotations.add(redaction_annotation, True)
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def redact_area(infile, outfile):
+ document = ap.Document(infile)
+
+ image_placement_absorber = ap.ImagePlacementAbsorber()
+ page = document.pages[1]
+ page.accept(image_placement_absorber)
+
+ target_rect = image_placement_absorber.image_placements[2].rectangle
+ redaction_annotation = ap.annotations.RedactionAnnotation(page, target_rect)
+ redaction_annotation.fill_color = ap.Color.gray
+ redaction_annotation.border_color = ap.Color.red
+ redaction_annotation.color = ap.Color.white
+ redaction_annotation.overlay_text = "REDACTED"
+ redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+ redaction_annotation.repeat = True
+
+ page.annotations.add(redaction_annotation, True)
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Importation et exportation des annotations](/python-net/import-export-annotations/)
+- [Annotations interactives](/python-net/interactive-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations multimédias](/python-net/media-annotations/)
+- [Annotations de forme](/python-net/shape-annotations/)
+- [Annotations basées sur le texte](/python-net/text-based-Annotations/)
+- [Annotations de filigrane](/python-net/watermark-annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
new file mode 100644
index 0000000000..d42e67775d
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
@@ -0,0 +1,720 @@
+---
+title: Annotations de forme via Python
+linktitle: Annotations de forme
+type: docs
+weight: 20
+url: /fr/python-net/shape-annotations/
+description: Découvrez comment ajouter, inspecter et supprimer les annotations de ligne, carré, cercle, polygone et polyligne dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Travaillez avec les annotations PDF géométriques en Python.
+Abstract: Cet article explique comment créer, lire et supprimer des annotations de forme dans les documents PDF en utilisant Aspose.PDF for Python via .NET. Il couvre les annotations de ligne, de carré, de cercle, de polygone et de polyligne, chaque flux de travail étant décomposé en petites étapes et exemples de code complets.
+---
+
+Cet article montre comment travailler avec les annotations de formes dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+
+Le script d'exemple montre plusieurs flux de travail d'annotation basés sur la géométrie :
+
+- annotations de ligne
+- annotations carrées
+- annotations de cercle
+- annotations de polygone
+- annotations de polylignes
+
+## Annotation de ligne
+
+### Ajouter une annotation de ligne
+
+Cet exemple ajoute une annotation de ligne à la première page et configure les styles de flèche, l’épaisseur de la ligne et une fenêtre contextuelle.
+
+#### Ouvrez le PDF source
+
+```python
+document = ap.Document(infile)
+```
+
+#### Créer et configurer l'annotation de ligne
+
+```python
+line_annotation = ap.annotations.LineAnnotation(
+ document.pages[1],
+ ap.Rectangle(550, 93, 562, 439, True),
+ ap.Point(556, 99),
+ ap.Point(556, 443),
+)
+
+line_annotation.title = "John Smith"
+line_annotation.color = ap.Color.red
+line_annotation.width = 3
+line_annotation.starting_style = ap.annotations.LineEnding.OPEN_ARROW
+line_annotation.ending_style = ap.annotations.LineEnding.OPEN_ARROW
+```
+
+#### Attachez la fenêtre contextuelle et enregistrez le PDF
+
+```python
+popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 124, 1021, 266, True),
+)
+line_annotation.popup = popup
+
+document.pages[1].annotations.append(line_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def line_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ line_annotation = ap.annotations.LineAnnotation(
+ document.pages[1],
+ ap.Rectangle(550, 93, 562, 439, True),
+ ap.Point(556, 99),
+ ap.Point(556, 443),
+ )
+
+ line_annotation.title = "John Smith"
+ line_annotation.color = ap.Color.red
+ line_annotation.width = 3
+ line_annotation.starting_style = ap.annotations.LineEnding.OPEN_ARROW
+ line_annotation.ending_style = ap.annotations.LineEnding.OPEN_ARROW
+
+ popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 124, 1021, 266, True),
+ )
+ line_annotation.popup = popup
+
+ document.pages[1].annotations.append(line_annotation)
+ document.save(outfile)
+```
+
+### Obtenir l'annotation de ligne
+
+Pour inspecter les annotations de ligne, filtrez la collection d'annotations sur la première page et convertissez chaque résultat en `LineAnnotation` ainsi vous pouvez lire ses points de départ et d'arrivée.
+
+#### Chargez le PDF et collectez les annotations de ligne
+
+```python
+document = ap.Document(infile)
+
+line_annotation = [
+ cast(ap.annotations.LineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+]
+```
+
+#### Imprimer les coordonnées de la ligne
+
+```python
+for annotation in line_annotation:
+ print(
+ f"[{annotation.starting.x},{annotation.starting.y}]"
+ f"-[{annotation.ending.x},{annotation.ending.y}]"
+ )
+```
+
+#### Exemple complet
+
+```python
+def line_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+
+ line_annotation = [
+ cast(ap.annotations.LineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+ ]
+
+ for annotation in line_annotation:
+ print(
+ f"[{annotation.starting.x},{annotation.starting.y}]"
+ f"-[{annotation.ending.x},{annotation.ending.y}]"
+ )
+```
+
+### Supprimer l'annotation de ligne
+
+Ce flux de travail supprime toutes les annotations de ligne de la première page et enregistre le PDF mis à jour.
+
+#### Trouver les annotations de ligne à supprimer
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+line_annotations = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+]
+```
+
+#### Supprimez les annotations et enregistrez le PDF
+
+```python
+for annotation in line_annotations:
+ page.annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def line_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ line_annotations = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+ ]
+
+ for annotation in line_annotations:
+ page.annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+## Annotations carrées et circulaires
+
+### Ajouter une annotation carrée
+
+Les annotations carrées sont utiles pour marquer des zones rectangulaires dans un document. Cet exemple crée une annotation carrée avec des paramètres de bordure, de remplissage et de transparence.
+
+#### Ouvrez le PDF et créez l'annotation carrée
+
+```python
+document = ap.Document(infile)
+
+square_annotation = ap.annotations.SquareAnnotation(
+ document.pages[1],
+ ap.Rectangle(60, 600, 250, 450, True),
+)
+square_annotation.title = "John Smith"
+square_annotation.color = ap.Color.blue
+square_annotation.interior_color = ap.Color.blue_violet
+square_annotation.opacity = 0.25
+```
+
+#### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+document.pages[1].annotations.append(square_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def square_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ square_annotation = ap.annotations.SquareAnnotation(
+ document.pages[1],
+ ap.Rectangle(60, 600, 250, 450, True),
+ )
+ square_annotation.title = "John Smith"
+ square_annotation.color = ap.Color.blue
+ square_annotation.interior_color = ap.Color.blue_violet
+ square_annotation.opacity = 0.25
+
+ document.pages[1].annotations.append(square_annotation)
+ document.save(outfile)
+```
+
+### Obtenir l'annotation carrée
+
+Pour inspecter les annotations carrées, filtrez les annotations de la première page par le `SQUARE` tapez et imprimez chaque rectangle.
+
+#### Chargez le document et collectez les annotations carrées
+
+```python
+document = ap.Document(infile)
+square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+]
+```
+
+#### Imprimer les rectangles d'annotation
+
+```python
+for annotation in square_annotations:
+ print(annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def square_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+ ]
+
+ for annotation in square_annotations:
+ print(annotation.rect)
+```
+
+### Supprimer l'annotation carrée
+
+Ce flux de travail supprime toutes les annotations carrées de la première page et enregistre le document.
+
+#### Trouver et supprimer les annotations carrées
+
+```python
+document = ap.Document(infile)
+square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+]
+
+for annotation in square_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def square_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+ ]
+
+ for annotation in square_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+### Ajouter une annotation de cercle
+
+Les annotations de cercle marquent des zones arrondies dans un PDF. Cet exemple ajoute une annotation de cercle avec une couleur de remplissage, une opacité et une annotation contextuelle.
+
+#### Ouvrez le PDF et créez l'annotation cercle
+
+```python
+document = ap.Document(infile)
+
+circle_annotation = ap.annotations.CircleAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 160, 483, 383, True),
+)
+circle_annotation.title = "John Smith"
+circle_annotation.color = ap.Color.red
+circle_annotation.interior_color = ap.Color.misty_rose
+circle_annotation.opacity = 0.5
+```
+
+#### Attachez la fenêtre contextuelle et enregistrez le PDF
+
+```python
+circle_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 316, 1021, 459, True),
+)
+
+document.pages[1].annotations.append(circle_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def circle_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ circle_annotation = ap.annotations.CircleAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 160, 483, 383, True),
+ )
+ circle_annotation.title = "John Smith"
+ circle_annotation.color = ap.Color.red
+ circle_annotation.interior_color = ap.Color.misty_rose
+ circle_annotation.opacity = 0.5
+ circle_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 316, 1021, 459, True),
+ )
+
+ document.pages[1].annotations.append(circle_annotation)
+ document.save(outfile)
+```
+
+### Obtenir l'annotation cercle
+
+Pour inspecter les annotations de cercle, filtrez les annotations de page par le `CIRCLE` tapez et imprimez leurs rectangles.
+
+#### Chargez le document et collectez les annotations de cercle
+
+```python
+document = ap.Document(infile)
+circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+]
+```
+
+#### Imprimer les rectangles d'annotation
+
+```python
+for annotation in circle_annotations:
+ print(annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def circle_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+ ]
+
+ for annotation in circle_annotations:
+ print(annotation.rect)
+```
+
+### Supprimer l'annotation de cercle
+
+Ce flux de travail supprime toutes les annotations de cercle de la première page et enregistre le PDF de sortie.
+
+#### Trouver et supprimer les annotations de cercle
+
+```python
+document = ap.Document(infile)
+circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+]
+
+for annotation in circle_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def circle_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+ ]
+
+ for annotation in circle_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+## Annotations de polygone et de polyligne
+
+### Ajouter une annotation de polygone
+
+Les annotations de polygone définissent une forme fermée à plusieurs points. Cet exemple crée une annotation de polygone à partir d'un rectangle et d'une liste de points.
+
+#### Ouvrez le PDF et créez l'annotation polygonale
+
+```python
+document = ap.Document(infile)
+
+polygon_annotation = ap.annotations.PolygonAnnotation(
+ document.pages[1],
+ ap.Rectangle(200, 300, 400, 400, True),
+ [
+ ap.Point(200, 300),
+ ap.Point(220, 300),
+ ap.Point(250, 330),
+ ap.Point(300, 304),
+ ap.Point(300, 400),
+ ],
+)
+polygon_annotation.title = "John Smith"
+polygon_annotation.color = ap.Color.blue
+polygon_annotation.interior_color = ap.Color.blue_violet
+polygon_annotation.opacity = 0.25
+```
+
+#### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+document.pages[1].annotations.append(polygon_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def polygon_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ polygon_annotation = ap.annotations.PolygonAnnotation(
+ document.pages[1],
+ ap.Rectangle(200, 300, 400, 400, True),
+ [
+ ap.Point(200, 300),
+ ap.Point(220, 300),
+ ap.Point(250, 330),
+ ap.Point(300, 304),
+ ap.Point(300, 400),
+ ],
+ )
+ polygon_annotation.title = "John Smith"
+ polygon_annotation.color = ap.Color.blue
+ polygon_annotation.interior_color = ap.Color.blue_violet
+ polygon_annotation.opacity = 0.25
+
+ document.pages[1].annotations.append(polygon_annotation)
+ document.save(outfile)
+```
+
+### Obtenir l'annotation polygonale
+
+Pour inspecter les annotations de polygone, filtrez les annotations de la première page par le `POLYGON` tapez et imprimez chaque rectangle d'annotation.
+
+#### Chargez le document et collectez les annotations polygonales
+
+```python
+document = ap.Document(infile)
+polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+]
+```
+
+#### Imprimer les rectangles d'annotation
+
+```python
+for annotation in polygon_annotations:
+ print(annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def polygon_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+ ]
+
+ for annotation in polygon_annotations:
+ print(annotation.rect)
+```
+
+### Supprimer l'annotation de polygone
+
+Ce flux de travail supprime toutes les annotations de polygone de la première page et enregistre le PDF mis à jour.
+
+#### Trouver et supprimer les annotations de polygone
+
+```python
+document = ap.Document(infile)
+polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+]
+
+for annotation in polygon_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def polygon_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+ ]
+
+ for annotation in polygon_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+### Ajouter une annotation de polyligne
+
+Les annotations de polyligne définissent un chemin ouvert à travers plusieurs points. Cet exemple crée une annotation de polyligne avec une note contextuelle.
+
+#### Ouvrez le PDF et créez l'annotation de polyligne
+
+```python
+document = ap.Document(infile)
+
+polyline_annotation = ap.annotations.PolylineAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 193, 571, 383, True),
+ [
+ ap.Point(545, 150),
+ ap.Point(545, 190),
+ ap.Point(667, 190),
+ ap.Point(667, 110),
+ ap.Point(626, 111),
+ ],
+)
+polyline_annotation.title = "John Smith"
+polyline_annotation.color = ap.Color.red
+```
+
+#### Attachez la fenêtre contextuelle et enregistrez le PDF
+
+```python
+polyline_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 196, 1021, 338, True),
+)
+
+document.pages[1].annotations.append(polyline_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def polyline_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ polyline_annotation = ap.annotations.PolylineAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 193, 571, 383, True),
+ [
+ ap.Point(545, 150),
+ ap.Point(545, 190),
+ ap.Point(667, 190),
+ ap.Point(667, 110),
+ ap.Point(626, 111),
+ ],
+ )
+ polyline_annotation.title = "John Smith"
+ polyline_annotation.color = ap.Color.red
+ polyline_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 196, 1021, 338, True),
+ )
+
+ document.pages[1].annotations.append(polyline_annotation)
+ document.save(outfile)
+```
+
+### Obtenir l'annotation PolyLine
+
+Pour inspecter les annotations de polyligne, filtrez les annotations de page par le `POLY_LINE` tapez et imprimez leurs rectangles.
+
+#### Chargez le document et collectez les annotations de polylignes
+
+```python
+document = ap.Document(infile)
+polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+]
+```
+
+#### Imprimer les rectangles d'annotation
+
+```python
+for annotation in polyline_annotations:
+ print(annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def polyline_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+ ]
+
+ for annotation in polyline_annotations:
+ print(annotation.rect)
+```
+
+### Supprimer l'annotation PolyLine
+
+Ce flux de travail supprime toutes les annotations de polyligne de la première page et enregistre le PDF de sortie.
+
+#### Trouver et supprimer les annotations de polyligne
+
+```python
+document = ap.Document(infile)
+polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+]
+
+for annotation in polyline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def polyline_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+ ]
+
+ for annotation in polyline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Importation et exportation des annotations](/python-net/import-export-annotations/)
+- [Annotations interactives](/python-net/interactive-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations multimédias](/python-net/media-annotations/)
+- [Annotations de sécurité](/python-net/security-annotations/)
+- [Annotations basées sur le texte](/python-net/text-based-Annotations/)
+- [Annotations de filigrane](/python-net/watermark-annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/sticks/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/sticks/_index.md
deleted file mode 100644
index b09cd16c51..0000000000
--- a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/sticks/_index.md
+++ /dev/null
@@ -1,219 +0,0 @@
----
-title: Annotations collantes PDF utilisant Python
-linktitle: Annotation collante
-type: docs
-weight: 50
-url: /fr/python-net/sticky-annotations/
-description: Ce sujet concerne les annotations collantes, en tant qu'exemple nous montrons l'Annotation Filigrane dans le texte.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Ajouter une Annotation de Filigrane
-
-L'annotation de filigrane est la plus visible et la plus facile à visualiser et à transmettre. C'est le meilleur moyen d'insérer dans votre document PDF un logo ou tout autre signe qui confirme son originalité.
-
-Une annotation de filigrane doit être utilisée pour représenter des graphiques qui doivent être imprimés à une taille et à une position fixes sur une page, quelles que soient les dimensions de la page imprimée.
-
-Vous pouvez ajouter du texte en filigrane en utilisant [WatermarkAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/watermarkannotation/) à une position spécifique de la page PDF. L'opacité du filigrane peut également être contrôlée en utilisant la propriété [opacity](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/watermarkannotation/#properties).
-
-Veuillez consulter l'extrait de code suivant pour ajouter une WatermarkAnnotation.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- # Créer une Annotation
- # Charger l'objet Page pour ajouter l'Annotation
- page = document.pages[1]
-
- # Créer une Annotation
- wa = ap.annotations.WatermarkAnnotation(page, ap.Rectangle(100, 0, 400, 100, True))
-
- # Ajouter l'annotation dans la collection d'Annotations de la page
- page.annotations.append(wa)
-
- # Créer TextState pour les paramètres de la police
- ts = ap.text.TextState()
- ts.foreground_color = ap.Color.blue
- ts.font_size = 25
- ts.font = ap.text.FontRepository.find_font("Arial");
-
- # Définir le niveau d'opacité du texte de l'annotation
- wa.opacity = 0.5
-
- # Ajouter du texte dans l'annotation
- wa.set_text_and_state([ "HELLO", "Line 1", "Line 2" ], ts)
-
- document.save(output_file)
-```
-
-
-## Obtenir une Annotation de Filigrane
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- watermarkAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.WATERMARK)
- ]
-
- for ta in watermarkAnnotations:
- print(ta.rect)
-```
-
-## Supprimer une Annotation de Filigrane
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- watermarkAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.WATERMARK)
- ]
-
- for ta in watermarkAnnotations:
- document.pages[1].annotations.delete(ta)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
new file mode 100644
index 0000000000..a6b16d7a42
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
@@ -0,0 +1,746 @@
+---
+title: Annotations basées sur le texte avec Python
+linktitle: Annotations de texte
+type: docs
+weight: 10
+url: /fr/python-net/text-based-Annotations/
+description: Apprenez comment ajouter, inspecter et supprimer les annotations de texte libre, de surlignage, de soulignement, de soulignement ondulé et de barré dans les documents PDF à l'aide d'Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Travaillez avec les annotations PDF de texte et de mise en forme de texte en Python.
+Abstract: Cet article explique comment créer, lire et supprimer les annotations basées sur du texte dans les documents PDF à l'aide d'Aspose.PDF for Python via .NET. Il couvre les annotations de texte libre et les annotations de mise en forme du texte telles que highlight, underline, squiggly et strikeout, y compris les flux de travail avancés de underline comme flattening, quad points et l'extraction du texte marqué.
+---
+
+Cet article montre comment travailler avec les annotations basées sur du texte dans des documents PDF en utilisant Aspose.PDF for Python via .NET.
+
+Le script d'exemple montre plusieurs flux de travail d'annotation de texte :
+
+- annotations de texte libre
+- annotations de surlignage
+- annotations de soulignement
+- annotations ondulées
+- annotations de texte barré
+
+## Annotations de texte libre
+
+### Ajouter des annotations de texte libre
+
+Les annotations de texte libre vous permettent de placer des commentaires de texte visibles directement sur une page PDF. Cet exemple ajoute une annotation de texte libre simple à la première page.
+
+#### Ouvrez le PDF source
+
+```python
+document = ap.Document(infile)
+```
+
+#### Créer et configurer l'annotation de texte libre
+
+```python
+free_text_annotation = ap.annotations.FreeTextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299, 713, 308, 720, True),
+ ap.annotations.DefaultAppearance(),
+)
+free_text_annotation.title = "Aspose User"
+free_text_annotation.color = ap.Color.light_green
+```
+
+#### Ajoutez l'annotation et enregistrez le PDF
+
+```python
+document.pages[1].annotations.append(free_text_annotation)
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def free_text_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ free_text_annotation = ap.annotations.FreeTextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299, 713, 308, 720, True),
+ ap.annotations.DefaultAppearance(),
+ )
+ free_text_annotation.title = "Aspose User"
+ free_text_annotation.color = ap.Color.light_green
+
+ document.pages[1].annotations.append(free_text_annotation)
+ document.save(outfile)
+```
+
+### Obtenir les annotations FreeText
+
+Pour inspecter les annotations de texte libre, filtrez les annotations de la première page par le `FREE_TEXT` tapez et imprimez chaque rectangle d'annotation.
+
+#### Chargez le document et récupérez les annotations de texte libre
+
+```python
+document = ap.Document(infile)
+free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+]
+```
+
+#### Imprimer les rectangles d'annotation
+
+```python
+for annotation in free_text_annotations:
+ print(annotation.rect)
+```
+
+#### Exemple complet
+
+```python
+def free_text_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+ ]
+
+ for annotation in free_text_annotations:
+ print(annotation.rect)
+```
+
+### Supprimer les annotations de texte libre
+
+Ce flux de travail supprime toutes les annotations de texte libre de la première page et enregistre le PDF mis à jour.
+
+#### Trouver et supprimer les annotations de texte libre
+
+```python
+document = ap.Document(infile)
+free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+]
+
+for annotation in free_text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemple complet
+
+```python
+def free_text_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+ ]
+
+ for annotation in free_text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Annotations de balisage de texte
+
+### Annotations de surbrillance
+
+#### Ajouter une surbrillance de texte
+
+Les annotations de surlignage mettent en évidence des parties du document sans modifier le contenu sous-jacent. Cet exemple ajoute une annotation de surlignage à la première page.
+
+```python
+document = ap.Document(infile)
+
+highlight_annotation = ap.annotations.HighlightAnnotation(
+ document.pages[1],
+ ap.Rectangle(300, 750, 320, 770, True),
+)
+
+document.pages[1].annotations.append(highlight_annotation)
+document.save(outfile)
+```
+
+```python
+def text_highlight_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ highlight_annotation = ap.annotations.HighlightAnnotation(
+ document.pages[1],
+ ap.Rectangle(300, 750, 320, 770, True),
+ )
+
+ document.pages[1].annotations.append(highlight_annotation)
+ document.save(outfile)
+```
+
+#### Obtenir la mise en surbrillance du texte
+
+Pour inspecter les annotations de surlignage, filtrez les annotations de page par le `HIGHLIGHT` tapez et imprimez leurs rectangles.
+
+```python
+document = ap.Document(infile)
+highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+]
+
+for annotation in highlight_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_highlight_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+ ]
+
+ for annotation in highlight_annotations:
+ print(annotation.rect)
+```
+
+#### Supprimer le surlignage du texte
+
+Ce flux de travail supprime toutes les annotations de surlignage de la première page et enregistre le PDF de sortie.
+
+```python
+document = ap.Document(infile)
+highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+]
+
+for annotation in highlight_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_highlight_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+ ]
+
+ for annotation in highlight_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+### Annotations soulignées
+
+#### Ajouter des annotations de soulignement de texte
+
+Les annotations de soulignement marquent le texte avec un soulignement visible. Cet exemple ajoute une annotation de soulignement de base et définit ses métadonnées et sa couleur.
+
+```python
+document = ap.Document(infile)
+
+underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+)
+underline_annotation.title = "Aspose User"
+underline_annotation.subject = "Inserted Underline 1"
+underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+underline_annotation.color = ap.Color.blue
+
+document.pages[1].annotations.append(underline_annotation)
+document.save(outfile)
+```
+
+```python
+def text_underline_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+ )
+ underline_annotation.title = "Aspose User"
+ underline_annotation.subject = "Inserted Underline 1"
+ underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ underline_annotation.color = ap.Color.blue
+
+ document.pages[1].annotations.append(underline_annotation)
+ document.save(outfile)
+```
+
+#### Ajouter des annotations de soulignement de texte Aplatir
+
+Si vous voulez que le soulignement devienne une partie du contenu de la page au lieu de rester une annotation interactive, vous pouvez l’aplatir après l’avoir ajouté.
+
+```python
+document = ap.Document(infile)
+
+underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+)
+underline_annotation.title = "Aspose User"
+underline_annotation.subject = "Inserted Underline to Flatten"
+underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+underline_annotation.color = ap.Color.blue
+
+document.pages[1].annotations.append(underline_annotation)
+underline_annotation.flatten()
+
+document.save(outfile)
+```
+
+```python
+def text_underline_flatten_add(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+ )
+ underline_annotation.title = "Aspose User"
+ underline_annotation.subject = "Inserted Underline to Flatten"
+ underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ underline_annotation.color = ap.Color.blue
+
+ document.pages[1].annotations.append(underline_annotation)
+ underline_annotation.flatten()
+
+ document.save(outfile)
+```
+
+#### Ajouter des annotations de soulignement de texte avec Quad Points
+
+Les points de quadrilatère vous permettent de définir la zone marquée exacte pour l'annotation de soulignement. Cela est utile lorsque vous avez besoin de plus de contrôle qu'un simple rectangle.
+
+```python
+document = ap.Document(infile)
+rect = ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+
+underline_annotation = ap.annotations.UnderlineAnnotation(document.pages[1], rect)
+underline_annotation.title = "Aspose User"
+underline_annotation.subject = "Inserted Underline with Quad Points"
+underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+underline_annotation.color = ap.Color.blue
+underline_annotation.quad_points = [
+ ap.Point(rect.llx, rect.lly),
+ ap.Point(rect.urx, rect.lly),
+ ap.Point(rect.urx, rect.ury),
+ ap.Point(rect.llx, rect.ury),
+]
+
+document.pages[1].annotations.append(underline_annotation)
+document.save(outfile)
+```
+
+```python
+def text_underline_with_quad_points_add(infile, outfile):
+ document = ap.Document(infile)
+ rect = ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+
+ underline_annotation = ap.annotations.UnderlineAnnotation(document.pages[1], rect)
+ underline_annotation.title = "Aspose User"
+ underline_annotation.subject = "Inserted Underline with Quad Points"
+ underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ underline_annotation.color = ap.Color.blue
+ underline_annotation.quad_points = [
+ ap.Point(rect.llx, rect.lly),
+ ap.Point(rect.urx, rect.lly),
+ ap.Point(rect.urx, rect.ury),
+ ap.Point(rect.llx, rect.ury),
+ ]
+
+ document.pages[1].annotations.append(underline_annotation)
+ document.save(outfile)
+```
+
+#### Supprimer les annotations de soulignement de texte
+
+Ce flux de travail supprime toutes les annotations de soulignement de la première page et enregistre le document mis à jour.
+
+```python
+document = ap.Document(infile)
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_underline_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+#### Supprimer les annotations de soulignement de texte par titre
+
+Ce flux de travail montre comment supprimer sélectivement les annotations de soulignement après avoir vérifié leur titre.
+
+```python
+document = ap.Document(infile)
+
+underline_annotations = [
+ cast(ap.annotations.UnderlineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ if annotation.title.startswith("a"):
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_underline_by_title_delete(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotations = [
+ cast(ap.annotations.UnderlineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ if annotation.title.startswith("a"):
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+#### Obtenir les annotations de soulignement de texte
+
+Pour inspecter les annotations de soulignement, filtrez les annotations de la première page par le `UNDERLINE` tapez et imprimez chaque rectangle.
+
+```python
+document = ap.Document(infile)
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_underline_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ print(annotation.rect)
+```
+
+#### Obtenir le texte souligné des annotations de texte marqué
+
+Ce flux de travail convertit chaque annotation de soulignement en un `UnderlineAnnotation` objet et extrait le texte marqué.
+
+```python
+document = ap.Document(infile)
+
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ print(f"Marked text: {ua.get_marked_text()}")
+```
+
+```python
+def text_underline_marked_text_get(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ print(f"Marked text: {ua.get_marked_text()}")
+```
+
+#### Obtenir le texte des annotations de soulignement des fragments marqués
+
+Si vous avez besoin de chaque fragment marqué séparément, vous pouvez parcourir la collection renvoyée par `get_marked_text_fragments()`.
+
+```python
+document = ap.Document(infile)
+
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ for fragment in ua.get_marked_text_fragments():
+ print(f"Fragment text: {fragment.text}")
+```
+
+```python
+def text_underline_marked_fragments_get(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ for fragment in ua.get_marked_text_fragments():
+ print(f"Fragment text: {fragment.text}")
+```
+
+
+### Annotations ondulées
+
+#### Ajouter des annotations ondulées
+
+Les annotations ondulées sont souvent utilisées pour marquer les fautes d'orthographe, de grammaire ou les zones d'attention dans le texte. Cet exemple ajoute une annotation ondulée à la première page.
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+squiggly_annotation = ap.annotations.SquigglyAnnotation(
+ page,
+ ap.Rectangle(67, 317, 261, 459, True),
+)
+squiggly_annotation.title = "John Smith"
+squiggly_annotation.color = ap.Color.blue
+
+page.annotations.append(squiggly_annotation)
+document.save(outfile)
+```
+
+```python
+def text_squiggly_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ squiggly_annotation = ap.annotations.SquigglyAnnotation(
+ page,
+ ap.Rectangle(67, 317, 261, 459, True),
+ )
+ squiggly_annotation.title = "John Smith"
+ squiggly_annotation.color = ap.Color.blue
+
+ page.annotations.append(squiggly_annotation)
+ document.save(outfile)
+```
+
+#### Obtenir les annotations ondulées
+
+Pour inspecter les annotations ondulées, filtrez les annotations de la page par le `SQUIGGLY` tapez et imprimez leurs rectangles.
+
+```python
+document = ap.Document(infile)
+squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+]
+
+for annotation in squiggly_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_squiggly_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+ ]
+
+ for annotation in squiggly_annotations:
+ print(annotation.rect)
+```
+
+#### Supprimer les annotations ondulées
+
+Ce flux de travail supprime toutes les annotations ondulées de la première page et enregistre le résultat.
+
+```python
+document = ap.Document(infile)
+squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+]
+
+for annotation in squiggly_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_squiggly_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+ ]
+
+ for annotation in squiggly_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+### Annotations barrées
+
+#### Ajouter des annotations de texte barré
+
+Les annotations de rayure indiquent le texte qui doit être considéré comme supprimé ou barré. Cet exemple ajoute une annotation de rayure et définit ses métadonnées ainsi que sa couleur.
+
+```python
+document = ap.Document(infile)
+
+strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+)
+strikeout_annotation.title = "Aspose User"
+strikeout_annotation.subject = "Inserted text 1"
+strikeout_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+strikeout_annotation.color = ap.Color.blue
+
+document.pages[1].annotations.append(strikeout_annotation)
+document.save(outfile)
+```
+
+```python
+def text_strikeout_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+ )
+ strikeout_annotation.title = "Aspose User"
+ strikeout_annotation.subject = "Inserted text 1"
+ strikeout_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ strikeout_annotation.color = ap.Color.blue
+
+ document.pages[1].annotations.append(strikeout_annotation)
+ document.save(outfile)
+```
+
+#### Obtenir les annotations de texte barré
+
+Pour inspecter les annotations de barré, filtrez les annotations de page par le `STRIKE_OUT` tapez et imprimez leurs rectangles.
+
+```python
+document = ap.Document(infile)
+strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+]
+
+for annotation in strikeout_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_strikeout_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+ ]
+
+ for annotation in strikeout_annotations:
+ print(annotation.rect)
+```
+
+#### Supprimer les annotations de texte barré
+
+Ce flux de travail supprime toutes les annotations de texte barré de la première page et enregistre le document mis à jour.
+
+```python
+document = ap.Document(infile)
+strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+]
+
+for annotation in strikeout_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_strikeout_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+ ]
+
+ for annotation in strikeout_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Importer et exporter les annotations](/python-net/import-export-annotations/)
+- [Annotations interactives](/python-net/interactive-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations multimédias](/python-net/media-annotations/)
+- [Annotations de sécurité](/python-net/security-annotations/)
+- [Annotations de forme](/python-net/shape-annotations/)
+- [Annotations de filigrane](/python-net/watermark-annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text/_index.md
deleted file mode 100644
index 8562b5cbde..0000000000
--- a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text/_index.md
+++ /dev/null
@@ -1,335 +0,0 @@
----
-title: Utilisation de l'Annotation de Texte pour PDF via Python
-linktitle: Annotation de Texte
-type: docs
-weight: 10
-url: /fr/python-net/text-annotation/
-description: Aspose.PDF pour Python vous permet d'Ajouter, d'Obtenir et de Supprimer une Annotation de Texte de votre document PDF.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "monthly"
- priority: 0.5
----
-
-
-
-## Comment ajouter une annotation de texte dans un fichier PDF existant
-
-Une annotation de texte est une annotation attachée à un emplacement spécifique dans un document PDF. Lorsqu'elle est fermée, l'annotation est affichée sous forme d'icône ; lorsqu'elle est ouverte, elle doit afficher une fenêtre contextuelle contenant le texte de la note dans la police et la taille choisies par le lecteur.
-
-Les annotations sont contenues dans la collection [Annotations](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/annotationcollection/) d'une page particulière. Cette collection contient les annotations uniquement pour cette page individuelle ; chaque page a sa propre collection Annotations.
-
-Pour ajouter une annotation à une page particulière, ajoutez-la à la collection Annotations de cette page avec la méthode [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/annotationcollection/#methods).
-
-1. Tout d'abord, créez une annotation que vous souhaitez ajouter au PDF.
-1. Ensuite, ouvrez le PDF d'entrée.
-
-1. Ajoutez l'annotation à la collection [Annotations](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/annotationcollection/) de l'objet 'page'.
-
-Le code suivant montre comment ajouter une annotation dans une page PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- textAnnotation = ap.annotations.TextAnnotation(
- document.pages[1], ap.Rectangle(300, 700.664, 320, 720.769, True)
- )
- textAnnotation.title = "Utilisateur Aspose"
- textAnnotation.subject = "Texte inséré 1"
- textAnnotation.contents = "qwerty"
- textAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- textAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(textAnnotation)
- document.save(output_file)
-```
-
-## Obtenir une annotation de texte à partir d'un fichier PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- textAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.TEXT)
- ]
-
- for ta in textAnnotations:
- print(ta.rect)
-```
-
-
-## Supprimer l'annotation de texte du fichier PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- textAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.TEXT)
- ]
-
- for ta in textAnnotations:
- document.pages[1].annotations.delete(ta)
-
- document.save(output_file)
-```
-
-
-## Comment ajouter (ou créer) une nouvelle annotation de texte libre
-
-Une annotation de texte libre affiche le texte directement sur la page. La classe [FreeTextAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/freetextannotation/) permet de créer ce type d'annotation. Dans l'extrait suivant, nous ajoutons une annotation de texte libre au-dessus de la première occurrence de la chaîne.
-
-```python
-
- import aspose.pdf as ap
-
- # Charger le fichier PDF
- document = ap.Document(input_file)
-
- freeTextAnnotation = ap.annotations.FreeTextAnnotation(
- document.pages[1], ap.Rectangle(299, 713, 308, 720, True), ap.annotations.DefaultAppearance()
- )
- freeTextAnnotation.title = "Utilisateur Aspose"
- freeTextAnnotation.color = ap.Color.light_green
-
- document.pages[1].annotations.append(freeTextAnnotation)
- document.save(output_file)
-```
-
-
-## Obtenir une annotation de texte libre à partir d'un fichier PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- freeTextAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.FREE_TEXT)
- ]
-
- for fa in freeTextAnnotations:
- print(fa.rect)
-```
-
-## Supprimer une annotation de texte libre d'un fichier PDF
-
-```python
-
- import aspose.pdf as ap
-
- # Charger le fichier PDF
- document = ap.Document(input_file)
- freeTextAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.FREE_TEXT)
- ]
-
- for fa in freeTextAnnotations:
- document.pages[1].annotations.delete(fa)
-
- document.save(output_file)
-```
-
-### Barrer des mots en utilisant StrikeOutAnnotation
-
-Aspose.PDF pour Python vous permet d'ajouter, de supprimer et de mettre à jour des annotations dans des documents PDF.
- Une des classes vous permet également de barrer des annotations. Lorsqu'une StrikeOutAnnotation est appliquée à un PDF, une ligne est tracée à travers le texte spécifié, indiquant qu'il doit être supprimé ou ignoré.
-
-Le code suivant montre comment ajouter une [StrikeOutAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/strikeoutannotation/) à un PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- strikeoutAnnotation = ap.annotations.StrikeOutAnnotation(
- document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
- )
- strikeoutAnnotation.title = "Utilisateur Aspose"
- strikeoutAnnotation.subject = "Texte inséré 1"
- strikeoutAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- strikeoutAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(strikeoutAnnotation)
- document.save(output_file)
-```
-
-## Obtenir StrikeOutAnnotation du PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- print(pa.rect)
-```
-
-## Supprimer StrikeOutAnnotation du PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
new file mode 100644
index 0000000000..c7acd02573
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
@@ -0,0 +1,186 @@
+---
+title: Annotations de filigrane avec Python
+linktitle: Annotations de filigrane
+type: docs
+weight: 70
+url: /fr/python-net/watermark-annotations/
+description: Découvrez comment ajouter, inspecter et supprimer des annotations de filigrane dans des documents PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Travaillez avec les annotations de filigrane dans les fichiers PDF à l'aide de Python.
+Abstract: Cet article explique comment créer, lire et supprimer des annotations de filigrane dans des documents PDF à l'aide d'Aspose.PDF for Python via .NET. Il couvre l'ajout d'une annotation de filigrane texte avec un état de texte personnalisé et une opacité, l'inspection des annotations de filigrane existantes, et la suppression des annotations de filigrane d'une page PDF.
+---
+
+Cet article montre comment travailler avec les annotations de filigrane dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+
+Le script d'exemple démontre trois flux de travail courants :
+
+- ajouter une annotation de filigrane
+- obtenir les rectangles d'annotation de filigrane
+- supprimer les annotations de filigrane
+
+## Ajouter une annotation de filigrane
+
+Cet exemple ajoute une annotation de filigrane à la première page d'un document PDF. Le filigrane utilise un état de texte pour contrôler les paramètres de police et applique une opacité personnalisée pour un aspect semi-transparent.
+
+### Ouvrez le PDF et obtenez la page cible
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+### Créer l'annotation de filigrane
+
+Définissez le rectangle d'annotation et ajoutez-le à la collection d'annotations de la page.
+
+```python
+watermark_annotation = ap.annotations.WatermarkAnnotation(
+ page,
+ ap.Rectangle(100, 100, 400, 200, True),
+)
+
+page.annotations.append(watermark_annotation)
+```
+
+### Configurer l'apparence du texte
+
+Créer un `TextState` objet pour contrôler la couleur du texte, la taille de la police et la famille de polices.
+
+```python
+text_state = ap.text.TextState()
+text_state.foreground_color = ap.Color.blue
+text_state.font_size = 25
+text_state.font = ap.text.FontRepository.find_font("Arial")
+```
+
+### Définir l'opacité et le texte du filigrane
+
+L'exemple utilise une opacité de 50 % et écrit trois lignes de texte dans l'annotation de filigrane.
+
+```python
+watermark_annotation.opacity = 0.5
+watermark_annotation.set_text_and_state(["HELLO", "Line 1", "Line 2"], text_state)
+```
+
+### Enregistrer le PDF
+
+```python
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def watermark_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ watermark_annotation = ap.annotations.WatermarkAnnotation(
+ page,
+ ap.Rectangle(100, 100, 400, 200, True),
+ )
+
+ page.annotations.append(watermark_annotation)
+
+ text_state = ap.text.TextState()
+ text_state.foreground_color = ap.Color.blue
+ text_state.font_size = 25
+ text_state.font = ap.text.FontRepository.find_font("Arial")
+
+ watermark_annotation.opacity = 0.5
+ watermark_annotation.set_text_and_state(["HELLO", "Line 1", "Line 2"], text_state)
+
+ document.save(outfile)
+```
+
+## Obtenir l'annotation de filigrane
+
+Pour inspecter les annotations de filigrane existantes, filtrez les annotations de la première page par le `WATERMARK` tapez et imprimez leurs rectangles.
+
+### Chargez le document et récupérez les annotations de filigrane
+
+```python
+document = ap.Document(infile)
+watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+]
+```
+
+### Imprimer les rectangles d'annotation
+
+```python
+for watermark_annotation in watermark_annotations:
+ print(watermark_annotation.rect)
+```
+
+### Exemple complet
+
+```python
+def watermark_get(infile, outfile):
+ document = ap.Document(infile)
+ watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+ ]
+
+ for watermark_annotation in watermark_annotations:
+ print(watermark_annotation.rect)
+```
+
+## Supprimer l'annotation de filigrane
+
+Ce flux de travail supprime toutes les annotations de filigrane de la première page et enregistre le PDF mis à jour.
+
+### Trouver les annotations de filigrane à supprimer
+
+```python
+document = ap.Document(infile)
+watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+]
+```
+
+### Supprimez les annotations et enregistrez le PDF
+
+```python
+for watermark_annotation in watermark_annotations:
+ document.pages[1].annotations.delete(watermark_annotation)
+
+document.save(outfile)
+```
+
+### Exemple complet
+
+```python
+def watermark_delete(infile, outfile):
+ document = ap.Document(infile)
+ watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+ ]
+
+ for watermark_annotation in watermark_annotations:
+ document.pages[1].annotations.delete(watermark_annotation)
+
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Importation et exportation des annotations](/python-net/import-export-annotations/)
+- [Annotations interactives](/python-net/interactive-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations multimédias](/python-net/media-annotations/)
+- [Annotations de sécurité](/python-net/security-annotations/)
+- [Annotations de forme](/python-net/shape-annotations/)
+- [Annotations basées sur le texte](/python-net/text-based-Annotations/)
diff --git a/fr/python-net/advanced-operations/annotations/import-export-annotations/_index.md b/fr/python-net/advanced-operations/annotations/import-export-annotations/_index.md
new file mode 100644
index 0000000000..2651bb62a1
--- /dev/null
+++ b/fr/python-net/advanced-operations/annotations/import-export-annotations/_index.md
@@ -0,0 +1,102 @@
+---
+title: Importer et exporter des annotations avec Python
+linktitle: Importation et exportation des annotations
+type: docs
+weight: 80
+url: /fr/python-net/import-export-annotations/
+description: Apprenez comment importer des annotations d'un PDF et les exporter dans un nouveau document PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Transférer les annotations PDF entre documents en Python.
+Abstract: Cet article explique comment copier les annotations d'un PDF source et les exporter dans un nouveau document PDF en utilisant Aspose.PDF for Python via .NET. Le guide décompose le processus en petites étapes, notamment le chargement du fichier source, la création du document de destination, l'ajout d'une page, la copie des annotations de la première page et l'enregistrement du résultat.
+---
+
+Cet article montre comment importer des annotations depuis un PDF existant et les exporter vers un nouveau document PDF en utilisant Aspose.PDF for Python via .NET.
+
+L'exemple lit les annotations de la première page d'un fichier source, crée un nouveau PDF, ajoute une page blanche et copie chaque annotation sur cette nouvelle page. Cette approche est utile lorsque vous devez déplacer des commentaires, des marques ou des notes de révision vers un document de sortie séparé.
+
+## Charger le PDF source
+
+Créer un `Document` objet pour le fichier d'entrée qui contient déjà des annotations. Cet objet donne accès à la collection de pages et aux annotations stockées sur chaque page.
+
+```python
+source_document = ap.Document(infile)
+```
+
+## Créer le PDF de destination
+
+Ensuite, créez un document PDF vide qui recevra les annotations importées. À ce stade, le document de destination ne contient aucune page.
+
+```python
+destination_document = ap.Document()
+```
+
+## Ajouter une page pour les annotations exportées
+
+Comme les annotations doivent appartenir à une page, ajoutez une nouvelle page au document de destination avant de copier quoi que ce soit.
+
+```python
+page = destination_document.pages.add()
+```
+
+## Copier les annotations de la page source
+
+Parcourir la collection d'annotations de la première page du PDF source et ajouter chaque annotation à la nouvelle page du document de destination.
+
+Le deuxième argument dans `page.annotations.add(annot, True)` indique à Aspose.PDF de copier l'annotation dans la page de destination au lieu de simplement réutiliser la référence d'objet existante.
+
+```python
+for annot in source_document.pages[1].annotations:
+ page.annotations.add(annot, True)
+```
+
+## Enregistrez le document de sortie
+
+Une fois que toutes les annotations ont été copiées, enregistrez le document de destination pour créer le fichier PDF final.
+
+```python
+destination_document.save(outfile)
+```
+
+## Exemple complet
+
+Le code suivant combine toutes les étapes en une fonction réutilisable :
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def import_export(infile, outfile):
+ """
+ Import annotations from one PDF document and export them to a new PDF document.
+ """
+ source_document = ap.Document(infile)
+ destination_document = ap.Document()
+
+ page = destination_document.pages.add()
+
+ for annot in source_document.pages[1].annotations:
+ page.annotations.add(annot, True)
+
+ destination_document.save(outfile)
+```
+
+## Sujets associés
+
+- [Annotations interactives](/python-net/interactive-annotations/)
+- [Annotations de balisage](/python-net/markup-annotations/)
+- [Annotations multimédias](/python-net/media-annotations/)
+- [Annotations de sécurité](/python-net/security-annotations/)
+- [Annotations de forme](/python-net/shape-annotations/)
+- [Annotations basées sur le texte](/python-net/text-based-Annotations/)
+- [Annotations de filigrane](/python-net/watermark-annotations/)
diff --git a/fr/python-net/advanced-operations/artifacts/_index.md b/fr/python-net/advanced-operations/artifacts/_index.md
new file mode 100644
index 0000000000..3a2536d137
--- /dev/null
+++ b/fr/python-net/advanced-operations/artifacts/_index.md
@@ -0,0 +1,67 @@
+---
+title: Travailler avec les artefacts PDF en Python
+linktitle: Travailler avec les artefacts
+type: docs
+weight: 170
+url: /fr/python-net/artifacts/
+description: Apprenez comment travailler avec les artefacts PDF en Python pour ajouter des arrière-plans, des filigranes et une numérotation Bates, et compter les types d'artefacts avec Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajoutez des arrière-plans, des filigranes et des artefacts de numérotation Bates en Python
+Abstract: Cet article explique comment travailler avec les artefacts PDF dans Aspose.PDF for Python via .NET. Découvrez ce que sont les artefacts, pourquoi ils sont importants pour l'accessibilité et la mise en page du document, et comment ajouter des images d'arrière-plan, appliquer des filigranes, ajouter une numérotation Bates et examiner les types d'artefacts dans les fichiers PDF avec Python.
+---
+
+Les artefacts dans les PDF sont des objets graphiques ou d'autres éléments qui ne font pas partie du contenu réel du document. Ils sont généralement utilisés à des fins de décoration, de mise en page ou d'arrière-plan. Des exemples d'artefacts comprennent les en-têtes de page, les pieds de page, les séparateurs ou les images qui n'ont aucune signification.
+
+Le but des artefacts dans le PDF est de permettre la distinction entre les éléments de contenu et les éléments non contenu. Cela est important pour l'accessibilité, car les lecteurs d'écran et autres technologies d'assistance peuvent ignorer les artefacts et se concentrer sur le contenu pertinent. Les artefacts peuvent également améliorer les performances et la qualité des documents PDF, car ils peuvent être omis lors de l'impression, de la recherche ou de la copie.
+
+Utilisez cette section lorsque vous devez créer ou inspecter des éléments PDF non contenu en Python, tels que les arrière-plans de document, les filigranes de page et les marques de numérotation Bates. Les guides suivants montrent les principaux flux de travail d'artefacts pris en charge par Aspose.PDF for Python via .NET.
+
+Pour créer un élément en tant qu'artefact dans le PDF, vous devez utiliser le [Artefact](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) classe.
+Il contient les propriétés utiles suivantes :
+
+- **custom_type** - Obtient le nom du type d'artefact. Peut être utilisé si le type d'artefact n'est pas standard.
+- **custom_subtype** - Obtient le nom du sous-type d'artefact. Peut être utilisé si le sous-type d'artefact n'est pas un sous-type standard.
+- **type** - Obtient le type d'artefact.
+- **subtype** - Obtient le sous-type d'artefact. Si l'artefact possède un sous‑type non standard, le nom du sous‑type peut être lu via CustomSubtype.
+- **contents** - Obtient la collection des opérateurs internes de l'artefact.
+- **form** - Obtient le XForm de l'artefact (si XForm est utilisé).
+- **rectangle** - Obtient le rectangle de l'artifact.
+- **position** - Obtient ou définit la position de l'artifact. Si cette propriété est spécifiée, alors les marges et les alignements sont ignorés.
+- **right_margin** - Marge droite de l'artifact. Si la position est spécifiée explicitement (dans la propriété Position), cette valeur est ignorée.
+- **left_margin** - Marge gauche de l'artifact. Si la position est spécifiée explicitement (dans la propriété Position), cette valeur est ignorée.
+- **top_margin** - Marge supérieure de l'artifact. Si la position est spécifiée explicitement (dans la propriété Position), cette valeur est ignorée.
+- **bottom_margin** - Marge inférieure de l'artifact. Si la position est spécifiée explicitement (dans la propriété Position), cette valeur est ignorée.
+- **artifact_horizontal_alignment** - Alignement horizontal de l'artefact. Si la position est spécifiée explicitement (dans la propriété Position), cette valeur est ignorée.
+- **artifact_vertical_alignment** - Alignement vertical de l'artefact. Si la position est spécifiée explicitement (dans la propriété Position), cette valeur est ignorée.
+- **rotation** - Obtient ou définit l'angle de rotation de l'artefact.
+- **text** - Obtient le texte de l'artefact.
+- **image** - Obtient l'image de l'artefact (si présente).
+- **opacity** - Obtient ou définit l'opacité de l'artefact. Les valeurs possibles sont dans la plage 0..1.
+- **lines** - Lignes de l'artefact de texte multiligne.
+- **text_state** - État du texte pour le texte de l'artefact.
+- **is_background** - Si vrai, l'artefact est placé derrière le contenu de la page.
+
+Les classes suivantes peuvent également être utiles pour travailler avec les artefacts :
+
+- [ArtifactCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifactcollection/)
+- [BackgroundArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/backgroundartifact/)
+- [Artifact d'en-tête](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerartifact/)
+- [Artifact de pied de page](https://reference.aspose.com/pdf/python-net/aspose.pdf/footerartifact/)
+- [Artifact de filigrane](https://reference.aspose.com/pdf/python-net/aspose.pdf/watermarkartifact/)
+- [Artifact BatesN](https://reference.aspose.com/pdf/python-net/aspose.pdf/batesnartifact/)
+
+## Flux de travail d'artefacts couverts dans cette section
+
+Veuillez consulter les sections suivantes de l'article :
+
+- [Ajout d'arrière-plans](/pdf/fr/python-net/add-backgrounds/) - ajouter une image d'arrière-plan à votre fichier PDF avec Python.
+- [Ajout de la numérotation Bates](/pdf/fr/python-net/add-bates-numbering/) - ajouter la numérotation Bates au PDF.
+- [Ajout de filigrane](/pdf/fr/python-net/add-watermarks/) - comment ajouter un filigrane au PDF avec Python.
+- [Comptage des artefacts](/pdf/fr/python-net/counting-artifacts/) - comptage des artefacts dans PDF avec Python.
+- [Gérer les en-têtes et pieds de page PDF](/pdf/fr/python-net/artifacts-header-footer/) - gérer les en-têtes et pieds de page dans les documents PDF.
+
+Ces tutoriels sont utiles lorsque vous devez gérer des éléments PDF décoratifs ou structurels sans modifier le flux de contenu principal du document.
diff --git a/fr/python-net/advanced-operations/artifacts/add-backgrounds/_index.md b/fr/python-net/advanced-operations/artifacts/add-backgrounds/_index.md
new file mode 100644
index 0000000000..8d497c1593
--- /dev/null
+++ b/fr/python-net/advanced-operations/artifacts/add-backgrounds/_index.md
@@ -0,0 +1,148 @@
+---
+title: Ajouter des arrière-plans PDF en Python
+linktitle: Ajout d'arrière-plans
+type: docs
+weight: 20
+url: /fr/python-net/add-backgrounds/
+description: Apprenez comment ajouter une image d'arrière-plan aux pages PDF en Python en utilisant la classe BackgroundArtifact dans Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter un arrière-plan à un PDF avec Python
+Abstract: Cet article traite de l'utilisation d'images d'arrière-plan dans les documents PDF avec Aspose.PDF for Python via .NET. Il met en évidence la capacité d'ajouter des filigranes ou des motifs subtils aux documents en utilisant la classe `BackgroundArtifact`, qui permet l'incorporation d'images d'arrière-plan dans les objets de page individuels. L'article fournit un exemple de code pratique démontrant comment implémenter cette fonctionnalité. Le processus consiste à créer un nouveau document PDF, ajouter une page, créer un objet `BackgroundArtifact`, définir une image d'arrière-plan et ajouter l'artéfact d'arrière-plan à la collection d'artéfacts de la page. Enfin, le document modifié est enregistré en tant que fichier PDF. Cette technique permet une présentation visuelle améliorée des documents PDF.
+---
+
+## Ajouter une image d'arrière-plan à un PDF
+
+Les images d'arrière-plan peuvent être utilisées pour ajouter un filigrane, ou un autre design subtil, aux documents. Dans Aspose.PDF for Python via .NET, chaque document PDF est une collection de pages et chaque page contient une collection d'artefacts. Le [BackgroundArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/backgroundartifact/) La classe peut être utilisée pour ajouter une image d'arrière-plan à un objet page.
+
+Cette approche est utile lorsque vous devez placer une image décorative derrière le contenu principal du PDF sans le transformer en texte de document interrogeable.
+
+L'extrait de code suivant montre comment ajouter une image d'arrière-plan aux pages PDF en utilisant l'objet BackgroundArtifact avec Python.
+
+1. Chargez le document PDF.
+1. Créez un artefact d'arrière-plan.
+1. Chargez le fichier image.
+1. Attachez l'artefact à une page.
+1. Enregistrez le document mis à jour.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def add_background_image_to_pdf(infile, imagefile, outfile):
+ """Add a background image to a PDF document as an artifact."""
+ with ap.Document(infile) as document:
+ artifact = ap.BackgroundArtifact()
+ artifact.background_image = FileIO(imagefile, "rb")
+ document.pages[1].artifacts.append(artifact)
+ document.save(outfile)
+```
+
+## Ajouter une image d'arrière-plan avec opacité à un PDF
+
+Ajouter une image d'arrière-plan semi-transparente à une page PDF en utilisant Aspose.PDF for Python.
+
+En appliquant l'opacité, l'image d'arrière-plan devient partiellement transparente, permettant au contenu original de la page (texte, images, etc.) de rester clairement visible. Ceci est particulièrement utile pour :
+
+- Filigranes
+- Superpositions de marque
+- Améliorations subtiles du design
+
+L'arrière-plan est ajouté en tant qu'artefact, garantissant qu'il reste derrière tout le contenu de la page.
+
+1. Chargez le document PDF.
+1. Créez un artefact d'arrière-plan.
+1. Chargez le fichier image.
+1. Définir le niveau d'opacité.
+1. Attachez l'artefact à une page.
+1. Enregistrez le document mis à jour.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def add_background_image_with_opacity_to_pdf(infile, imagefile, outfile):
+ """Add a background image with opacity to a PDF document as an artifact."""
+ with ap.Document(infile) as document:
+ artifact = ap.BackgroundArtifact()
+ artifact.background_image = FileIO(imagefile, "rb")
+ artifact.opacity = 0.5
+ document.pages[1].artifacts.append(artifact)
+ document.save(outfile)
+```
+
+## Ajouter une couleur d'arrière-plan à un PDF
+
+Appliquer une couleur d'arrière-plan unie à une page PDF à l'aide d'Aspose.PDF for Python.
+
+1. Chargez le document PDF.
+1. Créez un artefact d'arrière-plan.
+1. Définir la couleur d'arrière-plan.
+1. Attachez l'artefact à une page.
+1. Enregistrez le document mis à jour.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def add_background_color_to_pdf(infile, outfile):
+ """Add a solid color background to a PDF document as an artifact."""
+ with ap.Document(infile) as document:
+ artifact = ap.BackgroundArtifact()
+ artifact.background_color = ap.Color.dark_khaki
+ document.pages[1].artifacts.append(artifact)
+ document.save(outfile)
+```
+
+## Supprimer l'arrière-plan d'un PDF
+
+Supprimer les artefacts d'arrière-plan d'une page PDF à l'aide d'Aspose.PDF for Python.
+Les arrière-plans dans les PDF sont souvent enregistrés comme des artefacts, et cette méthode identifie et supprime sélectivement uniquement les artefacts classés comme éléments d'arrière-plan.
+
+1. Chargez le document PDF.
+1. Accéder aux artefacts de page.
+1. Filtrer les artefacts d'arrière-plan.
+1. Collecter les éléments d'arrière-plan.
+1. Supprimer les artefacts d'arrière-plan.
+1. Enregistrez le document mis à jour.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def remove_background(infile, outfile):
+ with ap.Document(infile) as document:
+ backgrounds = [
+ artifact
+ for artifact in document.pages[1].artifacts
+ if artifact.type == ap.Artifact.ArtifactType.PAGINATION
+ and artifact.subtype == ap.Artifact.ArtifactSubtype.BACKGROUND
+ ]
+
+ for background in backgrounds:
+ document.pages[1].artifacts.delete(background)
+
+ document.save(outfile)
+```
+
+## Sujets d'artefacts associés
+
+- [Travailler avec les artefacts PDF en Python](/pdf/fr/python-net/artifacts/)
+- [Ajouter des filigranes aux PDF en Python](/pdf/fr/python-net/add-watermarks/)
+- [Ajouter la numérotation Bates aux PDF en Python](/pdf/fr/python-net/add-bates-numbering/)
+- [Compter les types d'artefacts dans les fichiers PDF](/pdf/fr/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/artifacts/add-bates-numbering/_index.md b/fr/python-net/advanced-operations/artifacts/add-bates-numbering/_index.md
new file mode 100644
index 0000000000..e65d417f53
--- /dev/null
+++ b/fr/python-net/advanced-operations/artifacts/add-bates-numbering/_index.md
@@ -0,0 +1,120 @@
+---
+title: Ajouter une numérotation Bates au PDF en Python
+linktitle: Ajout de la numérotation Bates
+type: docs
+weight: 10
+url: /fr/python-net/add-bates-numbering/
+description: Apprenez comment ajouter et supprimer la numérotation Bates dans les documents PDF en utilisant Python avec Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter la numérotation Bates via Python
+Abstract: Le numérotage Bates est une fonctionnalité cruciale dans les flux de travail de documents juridiques, médicaux et commerciaux, garantissant que chaque page d'un ensemble reçoit un identifiant unique et séquentiel pour une référence fiable. Cet article montre comment Aspose.PDF for Python via .NET simplifie l'automatisation du numérotage Bates grâce à son API flexible. En utilisant la classe BatesNArtifact, les développeurs peuvent configurer le comportement du numérotage — y compris le nombre de chiffres, les préfixes, les suffixes, l'alignement et les marges — et l'appliquer de manière programmatique sur l'ensemble des documents. Plusieurs approches sont présentées, de l'application directe de l'artéfact à la configuration basée sur des délégués, offrant à la fois un contrôle statique et dynamique. De plus, l'API prend en charge la suppression complète des numéros Bates avec un seul appel de méthode, permettant une gestion du cycle de vie complète des artefacts de pagination. Des exemples de code clairs et étape par étape illustrent comment ajouter, personnaliser et supprimer le numérotage Bates, faisant de ce guide une ressource pratique pour les développeurs souhaitant simplifier les flux de travail de traitement de documents.
+---
+
+La numérotation Bates est largement utilisée dans les flux de travail juridiques, médicaux et commerciaux pour attribuer des identifiants uniques et séquentiels aux pages d'un ensemble de documents. Aspose.PDF for Python via .NET propose une API simple et flexible pour automatiser ce processus, vous permettant d'appliquer des numéros Bates standardisés de manière programmatique à n'importe quel PDF.
+
+En utilisant le `BatesNArtifact` classe, les développeurs peuvent entièrement personnaliser le comportement de la numérotation—y compris le numéro de départ, le nombre de chiffres, les préfixes et suffixes, l'alignement et les marges. Une fois configuré, l'artefact peut être appliqué au [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) à travers le `add_bates_numbering` méthode sur le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) ou ajouté en tant que partie d'une liste de `PaginationArtifact` objets. Aspose.PDF prend également en charge un style de configuration basé sur les délégués, permettant un contrôle dynamique des paramètres des artefacts à l'exécution.
+
+En plus de créer des numéros Bates, l'API offre un moyen simple de les supprimer en utilisant `delete_bates_numbering`, offrant une flexibilité totale dans les flux de traitement de documents.
+
+Cet article présente plusieurs méthodes pour ajouter et supprimer la numérotation Bates dans un PDF à l'aide d'Aspose.PDF for Python via .NET, avec des exemples clairs de configuration, d'application et de suppression des artefacts.
+
+## Ajout d'un artefact de numérotation Bates
+
+Cet exemple montre comment ajouter programmatique la numérotation Bates à un document PDF en utilisant Aspose.PDF for Python via .NET. En configurant un `BatesNArtifact` avec les paramètres souhaités et en l’appliquant aux pages du document, vous pouvez automatiser le processus d’ajout d’identifiants standardisés à chaque page.
+
+Pour ajouter un artefact de numérotation Bates à un [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), appelez le `AddBatesNumbering(BatesNArtifact)` méthode d'extension sur le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/), en passant un `BatesNArtifact` instance comme paramètre :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def _create_bates_artifact():
+ """Create a Bates numbering artifact with default settings."""
+ artifact = ap.BatesNArtifact()
+ artifact.start_page = 1
+ artifact.end_page = 0
+ artifact.subset = ap.Subset.ALL
+ artifact.number_of_digits = 6
+ artifact.start_number = 1
+ artifact.prefix = ""
+ artifact.suffix = ""
+ artifact.artifact_vertical_alignment = ap.VerticalAlignment.BOTTOM
+ artifact.artifact_horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ artifact.right_margin = 72
+ artifact.left_margin = 72
+ artifact.top_margin = 36
+ artifact.bottom_margin = 36
+ return artifact
+```
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def add_bates_n_artifact(infile, outfile):
+ """Add Bates numbering artifact to a PDF document."""
+ with ap.Document(infile) as document:
+ for _ in range(2):
+ document.pages.add()
+
+ bates_artifact = _create_bates_artifact()
+ ap.PageCollectionExtensions.add_bates_numbering(document.pages, bates_artifact)
+ document.save(outfile)
+```
+
+## Ajouter la numérotation Bates à l'aide des artefacts de pagination
+
+Ajouter la numérotation Bates à un PDF en utilisant la collection d'artefacts de pagination dans Aspose.PDF for Python:
+
+1. Chargez le document PDF.
+1. Insérez des pages supplémentaires si nécessaire avant d’appliquer la numérotation.
+1. Créez un artefact Bates.
+1. Configurez les propriétés de l'artefact.
+1. Ajoutez l'artefact à la collection de pagination.
+1. Appliquer la pagination aux pages.
+1. Enregistrez le document mis à jour.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def add_bates_n_artifact_pagination(infile, outfile):
+ """Add Bates numbering using pagination artifacts collection."""
+ with ap.Document(infile) as document:
+ for _ in range(2):
+ document.pages.add()
+
+ bates_artifact = _create_bates_artifact()
+ ap.PageCollectionExtensions.add_pagination(document.pages, [bates_artifact])
+ document.save(outfile)
+```
+
+## Supprimer la numérotation Bates
+
+Pour supprimer la numérotation Bates d'un [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), utilisez le `delete_bates_numbering()` méthode sur le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/):
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def delete_bates_numbering(infile, outfile):
+ """Delete Bates numbering from a PDF document."""
+ with ap.Document(infile) as document:
+ ap.PageCollectionExtensions.delete_bates_numbering(document.pages)
+ document.save(outfile)
+```
+
+## Sujets d'artefacts associés
+
+- [Travailler avec les artefacts PDF en Python](/pdf/fr/python-net/artifacts/)
+- [Ajouter des filigranes aux PDF en Python](/pdf/fr/python-net/add-watermarks/)
+- [Ajouter des arrière-plans PDF en Python](/pdf/fr/python-net/add-backgrounds/)
+- [Compter les types d'artefacts dans les fichiers PDF](/pdf/fr/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/artifacts/add-watermarks/_index.md b/fr/python-net/advanced-operations/artifacts/add-watermarks/_index.md
new file mode 100644
index 0000000000..9af091871a
--- /dev/null
+++ b/fr/python-net/advanced-operations/artifacts/add-watermarks/_index.md
@@ -0,0 +1,120 @@
+---
+title: Ajouter des filigranes au PDF en Python
+linktitle: Ajout de filigrane
+type: docs
+weight: 30
+url: /fr/python-net/add-watermarks/
+description: Apprenez comment ajouter des artefacts de filigrane aux fichiers PDF en Python en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter un filigrane à un PDF avec Python
+Abstract: L'article traite de l'utilisation d'Aspose.PDF for Python via .NET pour ajouter des filigranes aux documents PDF grâce à la gestion des artefacts. Il présente les classes clés pour manipuler les artefacts - `Artifact` et `ArtifactCollection`, et décrit comment y accéder via la propriété `Artifacts` de la classe `Page`. L'article détaille les propriétés de la classe `Artifact`, y compris les attributs tels que `contents`, `form`, `image`, `text`, `rectangle`, `rotation` et `opacity`, qui permettent une manipulation complète des artefacts dans les fichiers PDF. De plus, un exemple pratique est fourni, montrant comment ajouter programmatiquement un filigrane à la première page d'un PDF en utilisant Python. L'extrait de code illustre la création et la configuration d'un `WatermarkArtifact`, la définition de son texte, de son alignement, de sa rotation et de son opacité, avant de l'ajouter à un document PDF et d'enregistrer les modifications.
+---
+
+Ajouter un artefact de filigrane à un PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant Aspose.PDF for Python via .NET. Un filigrane est une superposition visuelle appliquée aux pages à des fins de marque, de sécurité ou d'information. L'exemple montre comment configurer [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/) apparence, positionnement avec [`HorizontalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/horizontalalignment/) et [`VerticalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/verticalalignment/), rotation, et transparence avant d'appliquer le filigrane à un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+
+## Extraire les filigranes du PDF
+
+1. Chargez le document PDF.
+1. Accéder aux artefacts de page.
+1. Filtrer les artefacts de filigrane.
+1. Collecter les éléments de filigrane.
+1. Extraire les propriétés du filigrane.
+1. Informations de filigrane en sortie.
+
+```python
+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}")
+```
+
+## Ajouter un filigrane au PDF
+
+Ajouter un filigrane de texte à un document PDF à l'aide d'Aspose.PDF for Python :
+
+1. Chargez le document PDF.
+1. Créer un état de texte.
+1. Créer un artefact de filigrane.
+1. Définir le texte et le style du filigrane.
+1. Configurer le positionnement et la rotation.
+1. Définir l'opacité et le comportement d'arrière-plan.
+1. Attacher le filigrane à une page.
+1. Enregistrez le document mis à jour.
+
+```python
+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)
+
+```
+
+## Supprimer les artefacts de filigrane d’une page PDF
+
+Supprimer les artefacts de filigrane d’une page spécifique d’un document PDF à l’aide de l’API Aspose.PDF for Python. L’approche cible les éléments de filigrane stockés comme artefacts de page (plus précisément ceux classés comme sous-types de filigrane de pagination), les parcourt et les supprime avant d’enregistrer le document mis à jour.
+
+1. Chargez le document PDF.
+1. Accéder aux artefacts de page.
+1. Filtrer les artefacts de filigrane.
+1. Supprimer les artefacts de filigrane.
+1. Enregistrez le document mis à jour.
+
+```python
+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)
+```
+
+## Sujets d'artefacts associés
+
+- [Travailler avec les artefacts PDF en Python](/pdf/fr/python-net/artifacts/)
+- [Ajouter des arrière-plans PDF en Python](/pdf/fr/python-net/add-backgrounds/)
+- [Ajouter la numérotation Bates aux PDF en Python](/pdf/fr/python-net/add-bates-numbering/)
+- [Compter les types d'artefacts dans les fichiers PDF](/pdf/fr/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/artifacts/artifacts-header-footer/_index.md b/fr/python-net/advanced-operations/artifacts/artifacts-header-footer/_index.md
new file mode 100644
index 0000000000..51ac5d4c82
--- /dev/null
+++ b/fr/python-net/advanced-operations/artifacts/artifacts-header-footer/_index.md
@@ -0,0 +1,119 @@
+---
+title: Gérer les en-têtes et pieds de page PDF avec Python
+linktitle: Gérer les en-têtes et pieds de page PDF
+type: docs
+weight: 70
+url: /fr/python-net/artifacts-header-footer/
+description: Apprenez comment gérer les en-têtes et pieds de page dans les documents PDF avec Python et Aspose.PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter, personnaliser et supprimer les en-têtes et pieds de page PDF avec Python
+Abstract: La gestion des en-têtes et pieds de page est une exigence courante lors du travail avec des documents PDF dans les flux de travail d'entreprise, d'édition et d'automatisation. Cet article montre comment utiliser Aspose.PDF for Python pour ajouter des en-têtes et pieds de page à l'aspect professionnel avec un style personnalisé tel que police, taille, couleur et alignement. Il montre également comment détecter et supprimer les artefacts de pagination existants tels que les en-têtes et pieds de page d'une page PDF. Grâce à des fonctions réutilisables et à des exemples clairs, les développeurs peuvent rapidement intégrer ces fonctionnalités aux systèmes de traitement de documents pour la marque, les rapports ou le nettoyage de fichiers.
+---
+
+## Créer des artefacts de texte stylisés
+
+Cette fonction utilitaire explique comment créer un artefact de texte réutilisable pour les pages PDF en utilisant Aspose.PDF for Python. Elle est conçue pour générer des en-têtes ou pieds de page stylisés avec un formatage cohérent, incluant les paramètres de police, la couleur, la taille et l'alignement. La fonction abstrait la création d'artefact afin qu'elle puisse être réutilisée pour différentes décorations de texte au niveau de la page.
+
+1. Instanciez l'objet artefact.
+1. Définissez le contenu texte de l'artefact.
+1. Appliquez le style du texte.
+1. Définir l'alignement.
+1. Retourner l'artefact configuré.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def _create_text_artifact(artifact_class, text):
+ """Create a text artifact (header/footer) with common styling."""
+ artifact = artifact_class()
+ artifact.text = text
+ artifact.text_state.font_size = 14
+ artifact.text_state.font = ap.text.FontRepository.find_font("Arial")
+ artifact.text_state.foreground_color = ap.Color.navy
+ artifact.artifact_horizontal_alignment = ap.HorizontalAlignment.CENTER
+ return artifact
+
+```
+
+## Ajouter un en-tête au PDF
+
+1. Ouvrir le PDF d'entrée.
+1. Créer un HeaderArtifact avec le texte "Sample Header".
+1. Ajoutez-le à la première page.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def add_header_artifact(infile, outfile):
+ """Add a header artifact to the first page of a PDF document."""
+ with ap.Document(infile) as document:
+ header = _create_text_artifact(ap.HeaderArtifact, "Sample Header")
+ document.pages[1].artifacts.append(header)
+ document.save(outfile)
+```
+
+## Ajouter un pied de page au PDF
+
+1. Ouvrir le PDF d'entrée.
+1. Créer un FooterArtifact avec le texte "Sample Footer".
+1. Ajoutez-le à la première page.
+1. Enregistrer le fichier de sortie.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def add_footer_artifact(infile, outfile):
+ """Add a footer artifact to the first page of a PDF document."""
+ with ap.Document(infile) as document:
+ footer = _create_text_artifact(ap.FooterArtifact, "Sample Footer")
+ document.pages[1].artifacts.append(footer)
+ document.save(outfile)
+```
+
+## Supprimer les artefacts d'en-tête ou de pied de page
+
+1. Ouvrir le PDF.
+1. Trouver les artefacts marqués comme en-têtes ou pieds de page de pagination.
+1. Les supprimer de la première page.
+1. Enregistrer le document nettoyé.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def delete_header_footer_artifact(infile, outfile):
+ with ap.Document(infile) as document:
+ header_footers = [
+ artifact
+ for artifact in document.pages[1].artifacts
+ if artifact.type == ap.Artifact.ArtifactType.PAGINATION
+ and (
+ artifact.subtype == ap.Artifact.ArtifactSubtype.HEADER
+ or artifact.subtype == ap.Artifact.ArtifactSubtype.FOOTER
+ )
+ ]
+
+ for art in header_footers:
+ document.pages[1].artifacts.delete(art)
+
+ document.save(outfile)
+```
+
+## Sujets d'artefacts associés
+
+- [Travailler avec les artefacts PDF en Python](/pdf/fr/python-net/artifacts/)
+- [Ajouter des arrière-plans PDF en Python](/pdf/fr/python-net/add-backgrounds/)
+- [Ajouter la numérotation Bates aux PDF en Python](/pdf/fr/python-net/add-bates-numbering/)
+- [Compter les types d'artefacts dans les fichiers PDF](/pdf/fr/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/artifacts/counting-artifacts/_index.md b/fr/python-net/advanced-operations/artifacts/counting-artifacts/_index.md
new file mode 100644
index 0000000000..ffae80bfb7
--- /dev/null
+++ b/fr/python-net/advanced-operations/artifacts/counting-artifacts/_index.md
@@ -0,0 +1,58 @@
+---
+title: Compter les artefacts PDF en Python
+linktitle: Comptage des artefacts
+type: docs
+weight: 40
+url: /fr/python-net/counting-artifacts/
+description: Apprenez à inspecter et à compter les artefacts de pagination dans les documents PDF en utilisant Python avec Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comptage des artefacts PDF en Python
+Abstract: Les artefacts de pagination tels que les filigranes, les arrière-plans, les en-têtes et les pieds de page sont couramment utilisés dans les documents PDF pour fournir structure, image de marque et identification. Cet exemple montre comment inspecter et compter ces artefacts de manière programmatique en utilisant Aspose.PDF for Python via .NET. En filtrant les artefacts sur une page et en les regroupant par sous‑type, les développeurs peuvent rapidement analyser la composition du document et vérifier la présence d'éléments spécifiques. Le code fourni illustre comment ouvrir un PDF, extraire les artefacts de pagination de la première page, compter chaque sous‑type et afficher les résultats, offrant une approche pratique de l'audit et de la validation de documents.
+---
+
+## Comptage des artefacts d'un type particulier
+
+Inspectez et comptez les artefacts de pagination dans un PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant Aspose.PDF for Python via .NET. Les artefacts de pagination comprennent des éléments tels que les filigranes, les arrière-plans, les en-têtes et les pieds de page qui sont appliqués aux pages à des fins de mise en page et d’identification. En filtrant [`Artifact`](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) objets sur un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) et les regrouper par sous-type (`Artifact.ArtifactSubtype`), les développeurs peuvent rapidement analyser la structure du document et vérifier la présence d’éléments spécifiques.
+
+Pour calculer le nombre total d’artefacts d’un type particulier (par exemple, le nombre total de filigranes), utilisez le code suivant. L’exemple filtre les page’s [`Artifacts`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) collection (un [`ArtifactCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifactcollection/)) par [`Artifact.ArtifactType`](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/#properties) et puis compte les sous-types (`Artifact.ArtifactSubtype`).
+
+1. Ouvrez le document PDF (voir [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)).
+1. Filtrer les artefacts de pagination en utilisant la page [`Artifacts`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) collection.
+1. Compter les artefacts par sous-type (`Artifact.ArtifactSubtype`).
+1. Imprimer les résultats.
+
+```python
+
+from os import path
+from collections import Counter
+import sys
+import aspose.pdf as ap
+
+def count_pdf_artifacts(infile):
+ """Count and display artifacts of different types on the first page."""
+ with ap.Document(infile) as document:
+ pagination_artifacts = [
+ artifact
+ for artifact in document.pages[1].artifacts
+ if artifact.type == ap.Artifact.ArtifactType.PAGINATION
+ ]
+
+ subtypes = [artifact.subtype for artifact in pagination_artifacts]
+ counts = Counter(subtypes)
+
+ print(f"Watermarks: {counts.get(ap.Artifact.ArtifactSubtype.WATERMARK, 0)}")
+ print(f"Backgrounds: {counts.get(ap.Artifact.ArtifactSubtype.BACKGROUND, 0)}")
+ print(f"Headers: {counts.get(ap.Artifact.ArtifactSubtype.HEADER, 0)}")
+ print(f"Footers: {counts.get(ap.Artifact.ArtifactSubtype.FOOTER, 0)}")
+```
+
+## Sujets d'artefacts associés
+
+- [Travailler avec les artefacts PDF en Python](/pdf/fr/python-net/artifacts/)
+- [Ajouter des filigranes aux PDF en Python](/pdf/fr/python-net/add-watermarks/)
+- [Ajouter des arrière-plans PDF en Python](/pdf/fr/python-net/add-backgrounds/)
+- [Ajouter la numérotation Bates aux PDF en Python](/pdf/fr/python-net/add-bates-numbering/)
diff --git a/fr/python-net/advanced-operations/artifacts/watermark.png b/fr/python-net/advanced-operations/artifacts/watermark.png
new file mode 100644
index 0000000000..7e604310ae
Binary files /dev/null and b/fr/python-net/advanced-operations/artifacts/watermark.png differ
diff --git a/fr/python-net/advanced-operations/attachments/_index.md b/fr/python-net/advanced-operations/attachments/_index.md
index c022b9c73f..643944abe1 100644
--- a/fr/python-net/advanced-operations/attachments/_index.md
+++ b/fr/python-net/advanced-operations/attachments/_index.md
@@ -1,149 +1,28 @@
---
-title: Travailler avec les Pièces Jointes dans les PDF en utilisant Python
-linktitle: Travailler avec les Pièces Jointes
+title: Travailler avec les pièces jointes PDF en Python
+linktitle: Travailler avec les pièces jointes
type: docs
weight: 130
url: /fr/python-net/attachments/
-description: Utilisez l'API PDF de Python pour accéder, ajouter et supprimer des pièces jointes dans les fichiers PDF en utilisant Python depuis vos applications. Guide complet avec des exemples de code Python.
-lastmod: "2023-02-17"
+description: Apprenez comment ajouter, extraire, organiser et supprimer des pièces jointes PDF en Python avec Aspose.PDF for Python via .NET, y compris les fichiers intégrés et les portfolios PDF.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter, supprimer et gérer les pièces jointes et les portfolios PDF en Python
+Abstract: Cet article explique comment travailler avec les pièces jointes PDF dans Aspose.PDF for Python via .NET. Apprenez comment ajouter des fichiers intégrés aux documents PDF, supprimer des pièces jointes de manière programmatique, et créer ou gérer des portfolios PDF qui regroupent plusieurs types de fichiers dans un seul conteneur PDF.
---
-
+Dans cette section, nous expliquerons comment travailler avec les pièces jointes dans les PDF en utilisant Aspose.PDF for Python via .NET.
+Une pièce jointe est un fichier supplémentaire qui est attaché à un document parent, il peut s'agir d'une variété de types de fichiers, tels que pdf, word, image ou d'autres fichiers.
+Vous apprendrez comment ajouter des pièces jointes à un PDF, obtenir les informations d'une pièce jointe et les enregistrer dans un fichier, supprimer la pièce jointe d'un PDF de manière programmatique avec Python.
-Dans cette section, nous expliquerons comment travailler avec des pièces jointes dans un PDF en utilisant Aspose.PDF pour Python via .NET.
-Une pièce jointe est un fichier supplémentaire qui est attaché à un document parent, il peut s'agir de différents types de fichiers, tels que pdf, word, image ou autres fichiers.
-Vous apprendrez comment ajouter des pièces jointes à un pdf, obtenir les informations d'une pièce jointe, l'enregistrer dans un fichier, supprimer la pièce jointe d'un PDF de manière programmée avec Python.
+Utilisez ces articles lorsque vous devez intégrer des fichiers d'accompagnement dans un PDF, supprimer des fichiers intégrés d'un document existant, ou regrouper des documents connexes en tant que portefeuille PDF.
-- [Ajouter une pièce jointe à un document PDF](/pdf/fr/python-net/add-attachment-to-pdf-document/)
-- [Supprimer une pièce jointe d'un PDF existant](/pdf/fr/python-net/removing-attachment-from-an-existing-pdf/)
-- [Portefeuille](/pdf/fr/python-net/portfolio/)
+## Flux de travail des pièces jointes couvrés dans cette section
-```json
-{
- "@context": "http://schema.org",
- "@type": "SoftwareApplication",
- "name": "Aspose.PDF for Python Library",
- "image": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "url": "https://www.aspose.com/",
- "publisher": {
- "@type": "Organization",
- "name": "Aspose.PDF",
- "url": "https://products.aspose.com/pdf",
- "logo": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "alternateName": "Aspose",
- "sameAs": [
- "https://facebook.com/aspose.pdf/",
- "https://twitter.com/asposepdf",
- "https://www.youtube.com/channel/UCmV9sEg_QWYPi6BJJs7ELOg/featured",
- "https://www.linkedin.com/company/aspose",
- "https://stackoverflow.com/questions/tagged/aspose",
- "https://aspose.quora.com/",
- "https://aspose.github.io/"
- ],
- "contactPoint": [
- {
- "@type": "ContactPoint",
- "telephone": "+1 903 306 1676",
- "contactType": "sales",
- "areaServed": "US",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+44 141 628 8900",
- "contactType": "sales",
- "areaServed": "GB",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+61 2 8006 6987",
- "contactType": "sales",
- "areaServed": "AU",
- "availableLanguage": "en"
- }
- ]
- },
- "offers": {
- "@type": "Offer",
- "price": "1199",
- "priceCurrency": "USD"
- },
- "applicationCategory": "Bibliothèque de manipulation PDF pour Python",
- "downloadUrl": "https://www.nuget.org/packages/Aspose.PDF/",
- "operatingSystem": "Windows, MacOS, Linux",
- "screenshot": "https://docs.aspose.com/pdf/python-net/create-pdf-document/screenshot.png",
- "softwareVersion": "2022.1",
- "aggregateRating": {
- "@type": "AggregateRating",
- "ratingValue": "5",
- "ratingCount": "16"
- }
-}
\ No newline at end of file
+- [Ajout d'une pièce jointe à un document PDF](/pdf/fr/python-net/add-attachment-to-pdf-document/)
+- [Suppression d'une pièce jointe d'un PDF existant](/pdf/fr/python-net/removing-attachment-from-an-existing-pdf/)
+- [Portfolio](/pdf/fr/python-net/portfolio/)
+- [Extraire les pièces jointes](/pdf/fr/python-net/extract-attachment/)
diff --git a/fr/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md b/fr/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md
index 7d9dcbdbef..02dad95ada 100644
--- a/fr/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md
@@ -1,170 +1,45 @@
---
-title: Ajouter une pièce jointe à un document PDF en utilisant Python
+title: Ajouter des pièces jointes à un PDF en Python
linktitle: Ajouter une pièce jointe à un document PDF
type: docs
weight: 10
url: /fr/python-net/add-attachment-to-pdf-document/
-description: Cette page décrit comment ajouter une pièce jointe à un fichier PDF avec Aspose.PDF pour Python via la bibliothèque .NET.
-lastmod: "2023-02-17"
+description: Apprenez comment ajouter des pièces jointes à des documents PDF en Python en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des pièces jointes à un PDF avec Python
+Abstract: Cet article fournit un guide étape par étape sur la façon d’ajouter des pièces jointes à un fichier PDF en utilisant Python et la bibliothèque Aspose.PDF. Il détaille le processus de configuration d’un nouveau projet Python, d’importation du package Aspose.PDF nécessaire, et de création d’un objet `Document`. L’article explique comment créer un objet `FileSpecification` avec le fichier souhaité et sa description, et comment ajouter cet objet à la `EmbeddedFileCollection` du document PDF en utilisant la méthode `add`. La `EmbeddedFileCollection` contient toutes les pièces jointes du PDF. Un extrait de code est inclus pour démontrer le processus d’ouverture d’un document, de configuration d’un fichier à attacher, de son ajout à la collection de pièces jointes du document, et d’enregistrement du PDF mis à jour.
---
-
+Les pièces jointes peuvent contenir une grande variété d’informations et peuvent être de différents types de fichiers. Cet article explique comment ajouter une pièce jointe à un fichier PDF.
-Attachments peuvent contenir une grande variété d'informations et peuvent être de différents types de fichiers. Cet article explique comment ajouter une pièce jointe à un fichier PDF.
+Utilisez les pièces jointes PDF intégrées lorsque vous devez regrouper des fichiers source de support, des feuilles de calcul, des images ou des documents associés avec le PDF principal.
1. Créez un nouveau projet Python.
1. Importez le package Aspose.PDF
-1. Créez un objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Créez un objet [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) avec le fichier que vous ajoutez, et la description du fichier.
-1. Ajoutez l'objet [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) à la collection [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), avec la méthode [add](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods).
+1. Créer un [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objet.
+1. Créer un [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) objet contenant le fichier que vous ajoutez, et la description du fichier.
+1. Ajouter le [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) objet à le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) de l'objet [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) collection, avec la collection [add](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) méthode.
-La collection [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) contient toutes les pièces jointes dans le fichier PDF.
- Le code suivant vous montre comment ajouter une pièce jointe dans un document PDF.
+Le [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) La collection contient toutes les pièces jointes du fichier PDF. Le fragment de code suivant vous montre comment ajouter une pièce jointe dans un document PDF.
```python
+from os import path
+import aspose.pdf as ap
+
+def add_attachments(infile, attachment_path, outfile):
+ with ap.Document(infile) as document:
+ file_spec = ap.FileSpecification(attachment_path, "Sample text file")
+ document.embedded_files.add(path.basename(attachment_path), file_spec)
+ document.save(outfile)
+```
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
-
- # Configurer le nouveau fichier à ajouter en tant que pièce jointe
- fileSpecification = ap.FileSpecification(attachment_file, "Fichier texte d'exemple")
-
- # Ajouter la pièce jointe à la collection de pièces jointes du document
- document.embedded_files.append(fileSpecification)
+## Sujets liés aux pièces jointes
- # Enregistrer la nouvelle sortie
- document.save(output_pdf)
-```
+- [Travailler avec les pièces jointes PDF en Python](/pdf/fr/python-net/attachments/)
+- [Supprimer les pièces jointes d'un PDF en Python](/pdf/fr/python-net/removing-attachment-from-an-existing-pdf/)
+- [Créer et gérer des portefeuilles PDF en Python](/pdf/fr/python-net/portfolio/)
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/attachments/extract-attachment/_index.md b/fr/python-net/advanced-operations/attachments/extract-attachment/_index.md
new file mode 100644
index 0000000000..55630c4350
--- /dev/null
+++ b/fr/python-net/advanced-operations/attachments/extract-attachment/_index.md
@@ -0,0 +1,126 @@
+---
+title: Extraire les pièces jointes du PDF
+linktitle: Extraire les pièces jointes
+type: docs
+weight: 50
+url: /fr/python-net/extract-attachment/
+description: Apprenez comment travailler avec les pièces jointes PDF en utilisant Python et Aspose.PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: "Guide complet pour gérer les pièces jointes PDF en Python : ajouter, extraire et traiter les fichiers intégrés"
+Abstract: Les pièces jointes PDF sont largement utilisées pour stocker des documents de support, des rapports, des images et d'autres ressources directement à l'intérieur d'un fichier PDF. Cet article fournit un aperçu complet de la gestion des pièces jointes PDF avec Python en utilisant Aspose.PDF. Il explique comment intégrer des fichiers externes dans des PDF existants, extraire des pièces jointes spécifiques ou toutes, inspecter les métadonnées telles que la taille du fichier et les horodatages, et récupérer les fichiers stockés en tant qu'annotations FileAttachment. Chaque exemple montre des techniques pratiques pour automatiser les flux de travail de pièces jointes, améliorer la portabilité des documents et simplifier la gestion des fichiers. Que vous construisiez des systèmes de documents d'entreprise ou des scripts d'automatisation personnalisés, les développeurs peuvent utiliser ces méthodes pour gérer efficacement les fichiers intégrés au sein des documents PDF.
+---
+
+## Extraire une pièce jointe spécifique du PDF
+
+Extrait un fichier intégré unique d'un document PDF à l'aide de Python et Aspose.PDF. Il recherche une pièce jointe par nom, récupère son contenu et l'enregistre en tant que fichier séparé. Cela est utile pour accéder aux documents intégrés tels que des rapports, des journaux ou des fichiers d'assistance stockés dans le PDF.
+
+1. Définir la fonction 'extract_single_attachment()'.
+1. Ouvrir le document PDF.
+1. Rechercher la pièce jointe.
+1. Extraire le contenu de la pièce jointe.
+
+```python
+import aspose.pdf as ap
+
+def extract_single_attachment(infile, attachment_name, outfile):
+ with ap.Document(infile) as document:
+ print(f"Extracting attachment: {attachment_name}")
+
+ attachment_found = False
+ for file_spec in document.embedded_files:
+ if file_spec.name == attachment_name:
+ with open(outfile, "wb") as f:
+ f.write(file_spec.contents.read())
+ print("Attachment extracted successfully")
+ attachment_found = True
+ break
+
+ if not attachment_found:
+ raise ValueError(f"Attachment '{attachment_name}' not found in PDF")
+```
+
+## Afficher les métadonnées de la pièce jointe de fichier
+
+Cette fonction d'assistance affiche les informations de métadonnées d'un objet de spécification de fichier. Elle est généralement utilisée lors du travail avec des pièces jointes de fichiers intégrées dans les PDF en utilisant Aspose.PDF, permettant aux développeurs d'inspecter des détails tels que la somme de contrôle, la date de création, la date de modification et la taille du fichier.
+
+```python
+def _print_file_params(params):
+ """Helper to print file specification parameters."""
+ if params:
+ print(f"CheckSum: {params.check_sum}")
+ print(f"Creation Date: {params.creation_date}")
+ print(f"Modification Date: {params.mod_date}")
+ print(f"Size: {params.size}")
+```
+
+## Extraire et inspecter toutes les pièces jointes PDF
+
+Cet extrait de code montre comment extraire tous les fichiers embarqués d'un document PDF en utilisant Python et Aspose.PDF. Il enregistre non seulement chaque pièce jointe dans un dossier spécifié, mais affiche également des métadonnées détaillées telles que le nom du fichier, la description, le type MIME, la somme de contrôle et les horodatages. Cela est utile pour l’audit, l’exportation ou le traitement du contenu embarqué dans les fichiers PDF.
+
+```python
+from os import path
+import aspose.pdf as ap
+
+def extract_attachments(infile, output_dir):
+ with ap.Document(infile) as document:
+ print(f"Total files: {len(document.embedded_files)}")
+
+ for file_spec in document.embedded_files:
+ print(f"Name: {file_spec.name}")
+ print(f"Description: {file_spec.description}")
+ print(f"Mime Type: {file_spec.mime_type}")
+ _print_file_params(file_spec.params)
+
+ output_path = path.join(output_dir, file_spec.name)
+ with open(output_path, "wb") as f:
+ f.write(file_spec.contents.read())
+```
+
+## Extraire des fichiers des annotations de pièces jointes PDF
+
+Extraire un fichier intégré à partir d'une annotation FileAttachment dans un PDF en utilisant Python et Aspose.PDF. Il recherche la première page pour la première annotation de pièce jointe, récupère le fichier intégré et le sauvegarde dans un répertoire de sortie sélectionné. Cela est utile lorsque les PDF contiennent des icônes de pièces jointes cliquables au lieu de collections de fichiers intégrés standard.
+
+```python
+from os import path
+import aspose.pdf as ap
+from aspose.pycore import cast
+
+def extract_file_attachment_annotation(infile, output_dir):
+ # Open PDF document
+ with ap.Document(infile) as document:
+
+ # Get first page
+ page = document.pages[1]
+
+ # Find first FileAttachment annotation
+ file_attachment = next(
+ (
+ annot
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.FILE_ATTACHMENT
+ ),
+ None,
+ )
+
+ if file_attachment is None:
+ print("No FileAttachment annotation found on the first page.")
+ return
+
+ # Cast to FileAttachmentAnnotation
+ faa = cast(ap.annotations.FileAttachmentAnnotation, file_attachment)
+
+ # Access embedded file
+ file_spec = faa.file
+ print(f"File name: {file_spec.name}")
+
+ # Save embedded file to disk
+ output_path = path.join(output_dir, f"extracted-{file_spec.name}")
+ with open(output_path, "wb") as f:
+ f.write(file_spec.contents.read())
+
+ print(f"Extracted to: {output_path}")
+```
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/attachments/portfolio/_index.md b/fr/python-net/advanced-operations/attachments/portfolio/_index.md
index 30e451fed2..6137047041 100644
--- a/fr/python-net/advanced-operations/attachments/portfolio/_index.md
+++ b/fr/python-net/advanced-operations/attachments/portfolio/_index.md
@@ -1,203 +1,85 @@
---
-title: Travailler avec un Portfolio en PDF en utilisant Python
-linktitle: Portfolio
+title: Créer des portefeuilles PDF en Python
+linktitle: Portefeuille
type: docs
weight: 20
url: /fr/python-net/portfolio/
-description: Comment créer un portfolio PDF avec Python. Vous devez utiliser un fichier Microsoft Excel, un document Word et un fichier image pour créer un portfolio PDF.
-lastmod: "2023-02-17"
+description: Apprenez à créer et à gérer des portefeuilles PDF en Python avec Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Construisez et modifiez des portefeuilles PDF avec des fichiers intégrés en Python
+Abstract: Cet article explique comment créer et gérer des portefeuilles PDF en utilisant Aspose.PDF for Python via .NET. Apprenez comment regrouper plusieurs types de fichiers dans un seul portefeuille PDF, ajouter des fichiers à une collection de documents et supprimer des éléments de portefeuille de manière programmatique avec Python.
---
-
-
-
-Créer un portfolio PDF permet de consolider et d'archiver différents types de fichiers en un seul document cohérent. Un tel document pourrait inclure des fichiers texte, des images, des feuilles de calcul, des présentations et d'autres matériaux, et garantir que tous les éléments pertinents sont stockés et organisés au même endroit.
-
-Le portfolio PDF vous aidera à présenter votre travail de manière haute qualité, où que vous l'utilisiez. En général, créer un portfolio PDF est une tâche très actuelle et moderne.
-
-## Comment Créer un Portfolio PDF
-
-Aspose.PDF pour Python via .NET permet de créer des documents de Portfolio PDF en utilisant la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Ajoutez un fichier dans un objet document.collection après l'avoir obtenu avec la classe [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/). Une fois les fichiers ajoutés, utilisez la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) de la classe Document pour enregistrer le document de portfolio.
-
-L'exemple suivant utilise un fichier Microsoft Excel, un document Word et un fichier image pour créer un Portfolio PDF.
-
-Le code ci-dessous donne le résultat suivant pour le portfolio.
-
-### Un portfolio PDF créé avec Aspose.PDF pour Python
-
-
-```python
+Créer un portefeuille PDF permet de consolider et d'archiver différents types de fichiers dans un document unique et cohérent. Un tel document peut inclure des fichiers texte, des images, des feuilles de calcul, des présentations et d’autres matériaux, et garantit que tous les documents pertinents sont stockés et organisés au même endroit.
+
+Le portfolio PDF vous aidera à présenter votre présentation de manière haute qualité, où que vous l'utilisiez. En général, créer un portfolio PDF est une tâche très actuelle et moderne.
+
+Utilisez un portfolio PDF lorsque vous souhaitez distribuer un ensemble de fichiers liés tout en conservant chaque fichier dans son format d'origine à l'intérieur d'un seul conteneur PDF.
+
+## Comment créer un portfolio PDF
+
+Aspose.PDF for Python via .NET permet de créer des documents de portfolio PDF en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe. Ajoutez un fichier dans un document.collection objet après l'avoir obtenu avec le [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) classe. Lorsque les fichiers ont été ajoutés, utilisez la Document classe’ [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode pour enregistrer le document du portefeuille.
+
+L'exemple suivant utilise un fichier Microsoft Excel, un document Word et un fichier image pour créer un portefeuille PDF.
+
+Le code ci-dessous produit le portefeuille suivant.
- import aspose.pdf as ap
+### Un portfolio PDF créé avec Aspose.PDF for Python
- # Instancier l'objet Document
+
+
+```python
+import aspose.pdf as ap
+
+def create_pdf_portfolio(input_files, outfile):
+ # Instantiate Document Object
document = ap.Document()
- # Instancier l'objet Collection de document
+ # Instantiate document Collection object
document.collection = ap.Collection()
- # Obtenir les fichiers à ajouter au portfolio
- excel = ap.FileSpecification(input_excel)
- word = ap.FileSpecification(input_doc)
- image = ap.FileSpecification(input_jpg)
+ # Get Files to add to Portfolio
+ excel = ap.FileSpecification(input_files[0])
+ word = ap.FileSpecification(input_files[1])
+ image = ap.FileSpecification(input_files[2])
- # Fournir la description des fichiers
- excel.description = "Fichier Excel"
- word.description = "Fichier Word"
- image.description = "Fichier Image"
+ # Provide description of the files
+ excel.description = "Excel File"
+ word.description = "Word File"
+ image.description = "Image File"
- # Ajouter des fichiers à la collection de documents
+ # Add files to document collection
document.collection.append(excel)
document.collection.append(word)
document.collection.append(image)
- # Enregistrer le document de portfolio
- document.save(output_pdf)
+ # Save Portfolio document
+ document.save(outfile)
```
-## Supprimer des fichiers du portfolio PDF
+## Supprimer les fichiers du portefeuille PDF
-Pour supprimer/enlever des fichiers du portfolio PDF, essayez d'utiliser les lignes de code suivantes.
+Afin de supprimer/ôter des fichiers du portefeuille PDF, essayez d'utiliser les lignes de code suivantes.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
+def remove_files_from_pdf_portfolio(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
document.collection.delete()
- # Enregistrer le fichier mis à jour
- document.save(output_pdf)
+ # Save updated file
+ document.save(outfile)
```
-
\ No newline at end of file
+## Sujets liés aux pièces jointes
+
+- [Travailler avec les pièces jointes PDF en Python](/pdf/fr/python-net/attachments/)
+- [Ajouter des pièces jointes au PDF en Python](/pdf/fr/python-net/add-attachment-to-pdf-document/)
+- [Supprimer les pièces jointes du PDF en Python](/pdf/fr/python-net/removing-attachment-from-an-existing-pdf/)
+
diff --git a/fr/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_1.jpg b/fr/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_1.jpg
new file mode 100644
index 0000000000..06de27133c
Binary files /dev/null and b/fr/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_1.jpg differ
diff --git a/fr/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_2.jpg b/fr/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_2.jpg
new file mode 100644
index 0000000000..06de27133c
Binary files /dev/null and b/fr/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_2.jpg differ
diff --git a/fr/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md b/fr/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md
index 026a844c1c..e51c07814a 100644
--- a/fr/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md
+++ b/fr/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md
@@ -1,166 +1,67 @@
---
-title: Suppression de pièce jointe d'un PDF à l'aide de Python
-linktitle: Suppression de pièce jointe d'un PDF existant
+title: Supprimer les pièces jointes d'un PDF en Python
+linktitle: Suppression d’une pièce jointe d’un PDF existant
type: docs
weight: 30
url: /fr/python-net/removing-attachment-from-an-existing-pdf/
-description: Aspose.PDF peut supprimer les pièces jointes de vos documents PDF. Utilisez l'API PDF Python pour supprimer les pièces jointes dans les fichiers PDF à l'aide de la bibliothèque Aspose.PDF pour Python via .NET.
-lastmod: "2023-02-17"
+description: Aspose.PDF peut supprimer les pièces jointes de vos documents PDF. Utilisez l’API PDF Python pour supprimer les pièces jointes dans les fichiers PDF à l’aide de la bibliothèque Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment supprimer les pièces jointes d’un PDF avec Python
+Abstract: Cet article explique comment supprimer les pièces jointes des fichiers PDF à l’aide d’Aspose.PDF for Python. Les pièces jointes d’un document PDF sont stockées dans la collection `EmbeddedFiles` de l’objet `Document`. Pour supprimer toutes les pièces jointes d’un PDF, vous pouvez appeler la méthode `delete()` sur la collection `EmbeddedFiles`, puis enregistrer le document mis à jour en utilisant la méthode `save()` de l’objet `Document`. Un extrait de code est fourni pour démontrer ce processus, montrant les étapes d’ouverture d’un document, de suppression de ses pièces jointes et d’enregistrement du fichier modifié.
---
-
-
-
-Aspose.PDF pour Python peut supprimer des pièces jointes des fichiers PDF. Les pièces jointes d'un document PDF sont contenues dans la collection [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) de l'objet Document.
-
-Pour supprimer toutes les pièces jointes associées à un fichier PDF :
-
-1. Appelez la méthode [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) de la collection [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/).
-2. Enregistrez le fichier mis à jour en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-
-Le code suivant montre comment supprimer des pièces jointes d'un document PDF.
+
+Aspose.PDF for Python peut supprimer les pièces jointes des fichiers PDF. Les pièces jointes d’un document PDF sont contenues dans l’objet Document. [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) collection.
+
+Ce flux de travail est utile lorsque vous devez nettoyer les fichiers incorporés obsolètes, réduire la taille du package ou préparer un PDF pour redistribution sans les documents source joints.
+
+Pour supprimer toutes les pièces jointes associées à un fichier PDF :
+
+1. Appelez le [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) collection’s [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) méthode.
+1. Enregistrez le fichier mis à jour en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) de l'objet [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode.
+
+Le fragment de code suivant montre comment supprimer les pièces jointes d'un document PDF.
```python
- import aspose.pdf as ap
+import aspose.pdf as ap
+
+def remove_attachment(infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ document.embedded_files.delete()
+ document.save(outfile)
+```
+
+## Supprimer une pièce jointe spécifique par son nom
+
+Si vous devez supprimer une seule pièce jointe et conserver les autres, utilisez le [delete_by_key()](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/delete_by_key/) méthode et transmettez le nom de la pièce jointe.
- # Ouvrir le document
- document = ap.Document(input_pdf)
+Pour supprimer une pièce jointe spécifique :
- # Supprimer toutes les pièces jointes
- document.embedded_files.delete()
+1. Ouvrez le fichier PDF source.
+1. Appel `document.embedded_files.delete_by_key(attachment_name)`.
+1. Enregistrez le fichier PDF mis à jour.
- # Enregistrer le fichier mis à jour
- document.save(output_pdf)
+Le fragment de code suivant supprime une pièce jointe par son nom.
+
+```python
+
+import aspose.pdf as ap
+
+def remove_attachment(infile, attachment_name, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ document.embedded_files.delete_by_key(attachment_name)
+ document.save(outfile)
```
+## Sujets liés aux pièces jointes
+
+- [Travailler avec les pièces jointes PDF en Python](/pdf/fr/python-net/attachments/)
+- [Ajouter des pièces jointes au PDF en Python](/pdf/fr/python-net/add-attachment-to-pdf-document/)
+- [Créer et gérer des portefeuilles PDF en Python](/pdf/fr/python-net/portfolio/)
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/compare-pdf-documents/_index.md b/fr/python-net/advanced-operations/compare-pdf-documents/_index.md
new file mode 100644
index 0000000000..66a2b754fc
--- /dev/null
+++ b/fr/python-net/advanced-operations/compare-pdf-documents/_index.md
@@ -0,0 +1,189 @@
+---
+title: Comparer des documents PDF en Python
+linktitle: Comparer PDF
+type: docs
+weight: 130
+url: /fr/python-net/compare-pdf-documents/
+description: Apprenez comment comparer des documents PDF en Python en utilisant une sortie de différence côte à côte et graphique avec Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comparer les pages PDF et les documents complets avec une sortie de différence visuelle en Python
+Abstract: Cet article explique comment comparer des documents PDF dans Aspose.PDF for Python via .NET. Apprenez comment comparer des pages spécifiques ou des fichiers PDF entiers avec une sortie côte à côte, et comment utiliser des méthodes de comparaison graphiques pour générer des rapports de différences basés sur des images ou sur des PDF.
+---
+
+## Méthodes de comparaison de documents PDF
+
+Lorsqu’on travaille avec des documents PDF, il arrive qu’on doive comparer le contenu de deux documents afin d’identifier les différences. La bibliothèque Aspose.PDF for Python via .NET offre un ensemble d’outils puissant à cet effet. Dans cet article, nous explorerons comment comparer des documents PDF en utilisant quelques extraits de code simples.
+
+Utilisez la comparaison côte à côte lorsque vous souhaitez une sortie PDF qui met en évidence les changements de texte et de mise en page entre les pages. Utilisez la comparaison graphique lorsque vous avez besoin d'une détection de différences basée sur l'image pour les flux de travail d'examen visuel, les vérifications de régression ou les rapports de comparaison de PDF.
+
+La fonctionnalité de comparaison dans Aspose.PDF vous permet de comparer deux documents PDF page par page. Vous pouvez choisir de comparer soit des pages spécifiques, soit des documents entiers. Le document de comparaison résultant met en évidence les différences, ce qui facilite l'identification des modifications entre les deux fichiers.
+
+Voici une liste des méthodes possibles pour comparer des documents PDF en utilisant la bibliothèque Aspose.PDF for Python via .NET :
+
+1. **Comparaison de pages spécifiques** - Comparez les premières pages de deux documents PDF.
+1. **Comparaison de documents entiers** - Comparez le contenu complet de deux documents PDF.
+1. **Comparer les documents PDF graphiquement** :
+
+- Comparez le PDF avec la méthode 'comparer.get_difference' - images individuelles où les modifications sont marquées.
+- Comparez le PDF avec la méthode 'comparer.compare_documents_to_pdf' - document PDF avec images où les modifications sont marquées.
+
+## Comparer des pages spécifiques
+
+Le premier extrait de code montre comment comparer les premières pages de deux documents PDF en utilisant la classe SideBySidePdfComparer.
+
+1. Initialisation du document.
+1. Créer une fonction pour effectuer la comparaison.
+1. Processus de comparaison :
+
+- document1.pages[1] et document2.pages[1] : - ils spécifient la première page de chaque document pour la comparaison. Notez que l’indexation des pages commence à 1 dans Aspose.PDF.
+- SideBySideComparisonOptions - cette classe permet de personnaliser le comportement de la comparaison.
+- additional_change_marks = True - active l’affichage de marques de changement supplémentaires, mettant en évidence les différences qui pourraient être présentes sur d’autres pages, même si elles ne sont pas sur la page actuelle comparée.
+- comparison_mode = ComparisonMode.IgnoreSpaces - définit le mode de comparaison pour ignorer les espaces dans le texte, en se concentrant uniquement sur les changements à l'intérieur des mots.
+
+1. Le résultat de la comparaison est enregistré sous forme d'un nouveau fichier PDF nommé ComparingSpecificPages_out.pdf dans le répertoire data_dir spécifié.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def comparing_specific_pages(infile1, infile2, outfile):
+ # Open PDF documents
+ document_1 = ap.Document(infile1)
+ document_2 = ap.Document(infile2)
+
+ # Compare
+ options = ap.comparison.SideBySideComparisonOptions()
+ options.additional_change_marks = True
+ options.comparison_mode = ap.comparison.ComparisonMode.IGNORE_SPACES
+
+ # Perform comparison and save the result
+ ap.comparison.SideBySidePdfComparer.compare(
+ document_1.pages[1], document_2.pages[1], outfile, options
+ )
+```
+
+## Comparer l'intégralité des documents
+
+Le deuxième extrait de code élargit la portée pour comparer l'intégralité du contenu de deux documents PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def comparing_entire_documents(infile1, infile2, outfile):
+ # Open PDF documents
+ document_1 = ap.Document(infile1)
+ document_2 = ap.Document(infile2)
+
+ # Compare
+ options = ap.comparison.SideBySideComparisonOptions()
+ options.additional_change_marks = True
+ options.comparison_mode = ap.comparison.ComparisonMode.IGNORE_SPACES
+
+ # Perform comparison and save the result
+ ap.comparison.SideBySidePdfComparer.compare(
+ document_1, document_2, outfile, options
+ )
+```
+
+Le code fourni montre la comparaison de deux documents PDF à l'aide d'Aspose.PDF for Python via .NET. Il utilise la classe SideBySidePdfComparer pour effectuer une comparaison page par page, en générant un nouveau PDF qui affiche les différences côte à côte. La comparaison est configurée avec SideBySideComparisonOptions, où additional_change_marks est définie sur True afin de mettre en évidence les changements non seulement sur la page actuelle mais aussi sur les autres pages, et comparison_mode est défini sur IgnoreSpaces pour se concentrer sur les différences de contenu significatif en ignorant les variations d'espaces.
+
+## Comparer à l'aide de GraphicalPdfComparer
+
+Lorsque vous collaborez sur des documents, en particulier dans des environnements professionnels, vous vous retrouvez souvent avec plusieurs versions du même fichier.
+Le code fourni démontre comment comparer visuellement des pages spécifiques de deux documents PDF en utilisant Aspose.PDF for Python via .NET. En utilisant le `GraphicalPdfComparer` classe, elle met en évidence les différences entre les premières pages des deux PDFs et génère des images correspondantes pour représenter ces différences.
+
+Vous pouvez définir les propriétés de classe suivantes :
+
+- Resolution - résolution en unités DPI pour les images de sortie, ainsi que pour les images générées pendant la comparaison.
+- Color - la couleur des marques de modification.
+- Seuil - modifiez le seuil en pourcentage. La valeur par défaut est zéro. Définir une valeur autre que zéro vous permet d'ignorer les modifications graphiques qui sont insignifiantes pour vous.
+
+Avec Aspose.PDF for Python via .NET, il est possible de comparer des documents et des pages et de générer le résultat de la comparaison dans un document PDF ou un fichier image.
+
+Le `GraphicalPdfComparer` la classe possède une méthode qui vous permet d'obtenir les différences d'images de page sous une forme adaptée à un traitement ultérieur : `get_difference(document1.pages[1], document2.pages[1])`.
+
+Cette méthode renvoie un objet de `images_difference` type, qui contient une image de la première page comparée et un tableau de différences.
+
+Le `images_difference` l'objet vous permet de générer une image différente et d'obtenir une image de la deuxième page comparée en appliquant un tableau de différences à l'image originale. Pour ce faire, utilisez le `difference_to_image` et `get_destination_image` méthodes.
+
+### Comparer le PDF avec la méthode Get Difference
+
+Le code fourni définit une méthode `get_difference` qui compare deux documents PDF et génère des représentations visuelles des différences entre eux.
+
+Cette méthode compare les premières pages de deux fichiers PDF et génère deux images PNG :
+
+- Une image met en évidence les différences entre les pages en rouge.
+- L'autre image est une représentation visuelle de la page PDF de destination (deuxième).
+
+Ce processus peut être utile pour comparer visuellement les changements ou les différences entre deux versions d'un document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def compare_pdf_with_get_difference_method(infile1, infile2, outfile1, outfile2):
+ # Open PDF documents
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+
+ # Create comparer
+ comparer = ap.comparison.GraphicalPdfComparer()
+
+ # Compare specific pages
+ images_difference = comparer.get_difference(document1.pages[1], document2.pages[1])
+
+ # Get image showing differences in red over a white background
+ diff_img = images_difference.difference_to_image(ap.Color.red, ap.Color.white)
+ diff_img.save(outfile1)
+
+ # Get the second image representing the destination page
+ dest_img = images_difference.get_destination_image()
+ dest_img.save(outfile2)
+```
+
+### Comparer le PDF avec la méthode CompareDocumentsToPdf
+
+Le fragment de code fourni utilise le `compare_documents_to_pdf` méthode, qui compare deux documents et génère un rapport PDF des résultats de la comparaison.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def compare_pdf_with_compare_documents_to_pdf_method(infile1, infile2, outfile):
+ # Open PDF documents
+ document_1 = ap.Document(infile1)
+ document_2 = ap.Document(infile2)
+
+ # Create comparer and set options
+ pdf_comparer = ap.comparison.GraphicalPdfComparer()
+ pdf_comparer.threshold = 3.0
+ pdf_comparer.color = ap.Color.blue
+ pdf_comparer.resolution = ap.devices.Resolution(300)
+
+ # Compare and output to a PDF file
+ pdf_comparer.compare_documents_to_pdf(document_1, document_2, outfile)
+```
+
+Cet exemple montre comment effectuer une comparaison graphique de deux documents PDF complets en utilisant Aspose.PDF for Python via .NET. En tirant parti du `GraphicalPdfComparer` classe, il génère un nouveau fichier PDF qui met visuellement en évidence les différences entre les documents.
+
+- La propriété de seuil est définie à 3,0, ce qui signifie que les différences mineures en dessous de ce pourcentage sont ignorées lors de la comparaison, en se concentrant sur les changements plus significatifs.
+- Les différences sont marquées en bleu en réglant la propriété color sur ap.Color.blue, ce qui permet une distinction visuelle claire.
+- La comparaison est effectuée à une résolution de 300 DPI en réglant la propriété de résolution, garantissant une sortie détaillée et claire.
+
+Le `compare_documents_to_pdf` La méthode compare toutes les pages des deux documents et génère le résultat dans un nouveau fichier PDF, compareDocumentsToPdf_out.pdf, avec les différences mises en évidence visuellement.
+
+## Sujets associés
+
+- [Opérations PDF avancées en Python](/pdf/fr/python-net/advanced-operations/)
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Travailler avec les pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Travailler avec le texte PDF en Python](/pdf/fr/python-net/working-with-text/)
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/_index.md
index e33b7d06c5..b4fa0a53ab 100644
--- a/fr/python-net/advanced-operations/navigation-and-interaction/_index.md
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/_index.md
@@ -1,144 +1,23 @@
---
-title: Navigation et Interaction dans PDF en utilisant Python
+title: Navigation et interaction PDF en Python
linktitle: Navigation et interaction
type: docs
weight: 90
url: /fr/python-net/navigation-and-interaction/
-description: Cette section décrit les fonctionnalités de travail avec les liens, actions et signets avec la bibliothèque Python.
-lastmod: "2023-02-17"
+description: Apprenez comment travailler avec les liens PDF, les actions et les signets en Python pour la navigation et le comportement interactif des documents.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
- priority: 0.7
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Travaillez avec les liens, les actions et les signets dans les fichiers PDF en utilisant Python
+Abstract: Cette section explique comment gérer les fonctions de navigation et d'interaction dans les documents PDF avec Python. Apprenez à créer et mettre à jour des liens, ajouter des actions interactives et travailler avec les signets pour améliorer la navigation PDF, l'utilisabilité et les flux de travail des documents.
---
-
+Utilisez cette section lorsque vous devez créer une navigation PDF interactive en Python, que cela signifie créer des signets, mettre à jour les destinations de liens ou attacher des actions aux événements du document, aux pages et aux éléments de formulaire.
-- [Signets](/pdf/fr/python-net/bookmarks/) - les grandes publications incluent généralement un cadre de signets qui peuvent être facilement consultés et sélectionnés dans le volet Signets, vous permettant de cliquer sur un signet pour passer à la page ou au chapitre qu'il représente. Le volet Signets est un élément sensible au contenu et est visible dans la barre latérale uniquement si le document PDF ouvert contient une structure de signets.
+## Sujets dans cette section
-
\ No newline at end of file
+- [Actions](/pdf/fr/python-net/actions/) - dans cet article, vous apprendrez à travailler avec différents types d'actions.
+- [Signets](/pdf/fr/python-net/bookmarks/)- les grandes publications incluent généralement un cadre de signets qui peut être facilement visualisé et sélectionné dans le Bookmarks Pane, vous permettant de cliquer sur un signet pour accéder à la page ou au chapitre qu’il représente. Le Bookmarks Pane est un élément sensible au contenu, et il est visible dans la barre latérale uniquement si le document PDF ouvert contient une structure de signets.
+- [Liens](/pdf/fr/python-net/links/)- travailler avec des liens dans les documents PDF en utilisant la bibliothèque Python.
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/actions/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/actions/_index.md
new file mode 100644
index 0000000000..512119c488
--- /dev/null
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/actions/_index.md
@@ -0,0 +1,360 @@
+---
+title: Travailler avec les actions PDF en Python
+linktitle: Actions
+type: docs
+weight: 20
+url: /fr/python-net/actions/
+description: Apprenez comment ajouter, mettre à jour et supprimer les actions de document, de page et de formulaire dans les fichiers PDF à l'aide de Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Ajoutez des actions de document, de page et de formulaire aux fichiers PDF en Python.
+Abstract: Cet article explore comment travailler avec les actions dans les documents PDF en utilisant la bibliothèque Aspose.PDF, couvrant les interactions au niveau du document, de la page et du formulaire. Les actions PDF sont des déclencheurs prédéfinis ou personnalisables qui répondent aux événements utilisateur, permettant la navigation, l'exécution de JavaScript, la lecture multimédia, la soumission de formulaires, et plus encore. Le guide montre comment ajouter, personnaliser et supprimer des actions, comme l'ouverture d'URL lors d'événements du document, la création de navigation ou d'effets de zoom spécifiques à une page, l'ajout de boutons interactifs pour l'impression et la navigation, le masquage dynamique des éléments du formulaire, et la soumission des données de formulaire à des points de terminaison Web. Grâce à des exemples de code Python détaillés, les lecteurs apprennent à améliorer l'interactivité des PDF, à rationaliser les flux de travail et à intégrer les PDF avec des systèmes externes tout en comprenant les considérations de compatibilité des visionneuses.
+---
+
+Les actions dans un PDF sont des tâches prédéfinies qui sont déclenchées par l'interaction de l'utilisateur ou les événements du document. Elles peuvent être utilisées pour :
+
+- Naviguer vers une page spécifique ou un fichier externe
+- Ouvrir un lien web
+- Lire le contenu multimédia
+- Exécuter JavaScript
+- Soumettre ou réinitialiser un formulaire
+- Afficher/masquer les champs
+- Modifier le niveau de zoom ou le mode d'affichage
+
+La plupart des actions utilisent des paramètres intégrés, mais il en existe certains qui peuvent être personnalisés. Par exemple - les actions JavaScript.
+
+## Ajouter des actions de lancement PDF
+
+Ajoutez des actions de lancement basées sur JavaScript à un document PDF à l'aide de Python et d'Aspose.PDF. Cela attribue des actions aux principaux événements du document tels que l'ouverture, l'enregistrement et l'impression, permettant le lancement automatique d'URL lorsque ces événements se produisent dans les visionneuses PDF prises en charge.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_launch_actions(infile, outfile):
+ """Add JavaScript launch actions for document events.
+
+ Adds JavaScript actions that launch URLs when specific document events occur:
+ - On document open: launches http://localhost:3000/open
+ - Before saving: launches http://localhost:3000/save
+ - Before printing: launches http://localhost:3000/print
+
+ Args:
+ infile (str): Path to the input PDF file.
+ outfile (str): Path to save the output PDF with document actions.
+
+ Returns:
+ None
+
+ Example:
+ >>> add_launch_actions("sample_data/input/add_launch_actions_in.pdf", "sample_data/output/add_launch_actions_out.pdf")
+
+ Notes:
+ - Uses `ap.annotations.JavascriptAction` with `app.launchURL()`.
+ - URLs are opened in the default browser depending on viewer support.
+ """
+
+ document = ap.Document(infile)
+
+ # Add JavaScript actions for document events
+ document.open_action = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/open');"
+ )
+ document.actions.before_saving = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/save');"
+ )
+ document.actions.before_printing = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/print');"
+ )
+
+ document.save(outfile)
+```
+
+## Suppression des actions du document PDF
+
+Pour nettoyer (ou supprimer) des actions, il suffit de définir le gestionnaire sur `None`.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def remove_page_actions(infile, outfile):
+ document = ap.Document(infile)
+
+ if len(document.pages) < 3:
+ print("Error: The document does not have at least 3 pages.")
+ return
+
+ page = document.pages[3]
+ page.actions.remove_actions()
+
+ document.save(outfile)
+```
+
+## Ajout d'actions à la page dans le Document PDF
+
+Les déclencheurs similaires sont fournis pour les pages : `on_open`, `on_close`.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_page_actions(infile, outfile):
+ document = ap.Document(infile)
+
+ if len(document.pages) < 3:
+ print("Error: The document does not have at least 3 pages.")
+ return
+
+ page = document.pages[3]
+
+ # Add GoTo action on page open - navigate to top of page
+ action = ap.annotations.GoToAction(page)
+ action.destination = ap.annotations.XYZExplicitDestination(
+ page, 0, page.page_info.height, 1
+ )
+ page.actions.on_open = action
+
+ # Add JavaScript action on page close
+ page.actions.on_close = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/page/3');"
+ )
+
+ document.save(outfile)
+```
+
+## Actions dans AcroForms
+
+### Utilisation des actions de navigation
+
+La norme PDF prévoit un certain ensemble d'actions nommées. La signification de ces actions est déterminée par leur nom.
+Dans le code suivant, nous utiliserons des actions pour la navigation.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_navigation_buttons(infile, outfile):
+ # Configuration for each navigation button
+ button_config = [
+ ("First Page", 10.0, PredefinedAction.FIRST_PAGE, lambda p, t: p == 1),
+ ("Previous Page", 120.0, PredefinedAction.PREV_PAGE, lambda p, t: p == 1),
+ ("Next Page", 230.0, PredefinedAction.NEXT_PAGE, lambda p, t: p == t),
+ ("Last Page", 340.0, PredefinedAction.LAST_PAGE, lambda p, t: p == t),
+ ]
+
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ # Add navigation buttons to each page
+ for page in document.pages:
+ for name, x_pos, action, is_readonly_fn in button_config:
+ # Create button rectangle
+ rect = Rectangle(x_pos, 10.0, x_pos + 100, 40.0, True)
+ button = ButtonField(page, rect)
+ button.partial_name = name
+ button.value = name
+ button.characteristics.border = ap.Color.red.to_rgb()
+ button.characteristics.background = ap.Color.orange.to_rgb()
+ # Disable button when not applicable
+ button.read_only = is_readonly_fn(page.number, total_pages)
+ button.actions.on_release_mouse_btn = NamedAction(action)
+ document.form.add(button)
+
+ document.save(outfile)
+```
+
+Ce code ajoute des boutons de navigation à chaque page d'un document PDF, facilitant ainsi le déplacement des utilisateurs entre les pages. Il commence par déterminer les chemins d'accès complets aux fichiers d'entrée et de sortie à l'aide d'une méthode d'assistance. La liste button_config définit quatre types de boutons de navigation—First Page, Previous Page, Next Page, et Last Page—avec leurs positions horizontales, les actions de navigation prédéfinies qu'ils déclenchent, et une fonction lambda qui détermine si chaque bouton doit être en lecture seule sur une page donnée (par exemple, les boutons « First Page » et « Previous Page » sont en lecture seule sur la première page).
+
+Le code charge ensuite le PDF et parcourt chaque page. Pour chaque page, il boucle sur les configurations de boutons, crée une zone rectangulaire pour chaque bouton et instancie un ButtonField à cet emplacement. Chaque bouton reçoit un nom, son statut en lecture seule est défini en fonction de la page actuelle, et son action de clic est attribuée à l'action de navigation correspondante. Le bouton est ensuite ajouté aux champs de formulaire du PDF.
+
+Après que tous les boutons ont été ajoutés à toutes les pages, le document modifié est enregistré. Si des erreurs surviennent pendant ce processus, elles sont interceptées et affichées. Cette approche garantit que chaque page possède un ensemble cohérent de contrôles de navigation, améliorant la convivialité des PDF multi‑pages. Une subtilité réside dans l’utilisation de la lambda is_readonly_fn pour désactiver les boutons de navigation lorsqu’ils n’ont pas de sens (par exemple "Next Page" sur la dernière page), ce qui aide à prévenir la confusion des utilisateurs.
+
+### Utilisation des actions d\'impression
+
+Lors de l'utilisation de formulaires PDF, il est souvent nécessaire d'imprimer ces documents PDF. Cette action peut être effectuée à l'aide d'un lecteur PDF, mais il est parfois plus pratique de le faire directement depuis le document à l'aide d'un bouton spécial.
+
+En fait, c’est encore un autre exemple d’utilisation d’actions nommées. Nous allons utiliser `PredefinedAction.FILE_PRINT` (en simulant l’utilisation de l’élément de menu File‑>Print), mais vous pouvez également l’utiliser `PredefinedAction.PRINT` ou `PredefinedAction.PRINT_DIALOG`, selon vos propres objectifs.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_named_action_print(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ # Create print button with specific dimensions and position
+ rect = Rectangle(10, 10, 100, 40, True)
+ print_button = ButtonField(page, rect)
+ print_button.partial_name = "printButton"
+ print_button.value = "Print"
+ print_button.actions.on_release_mouse_btn = NamedAction(PredefinedAction.FILE_PRINT)
+
+ # Add border for better visibility
+ border = ap.annotations.Border(print_button)
+ border.width = 1
+ print_button.border = border
+
+ # Add button to the form on page 1
+ document.form.add(print_button, 1)
+ document.save(outfile)
+```
+
+Cet extrait de code montre comment ajouter un bouton "Print" à la première page d'un document PDF. Il commence par charger le PDF depuis le chemin de fichier d'entrée spécifié et sélectionne la première page (document.pages[1]).
+
+Une zone rectangulaire est définie pour la position et la taille du bouton sur la page. Un ButtonField est ensuite créé à cet emplacement, nommé "printButton", et sa valeur d'affichage est définie sur "Print". Le bouton est configuré de sorte que lorsqu'il est cliqué (plus précisément, lorsque le bouton de la souris est relâché), il déclenche l'action prédéfinie "Print File", invitant le visualiseur PDF à ouvrir la boîte de dialogue d'impression.
+
+Pour améliorer l'apparence du bouton, une bordure est créée et attribuée au bouton, avec une largeur fixée à 1 unité. Le bouton est ensuite ajouté aux champs de formulaire PDF sur la première page. Enfin, le document modifié est enregistré dans le chemin du fichier de sortie. Cette approche offre aux utilisateurs un moyen pratique d'imprimer le document directement depuis le PDF. Notez que l'efficacité de cette fonctionnalité dépend du support du visualiseur PDF pour les champs de formulaire interactifs et les actions prédéfinies.
+
+### Utilisation de l'action Masquer
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_named_action_hide(infile, outfile):
+ document = ap.Document(infile)
+ # Collect all checkbox fields in the document
+ checkboxes = [
+ field for field in document.form if is_assignable(field, CheckboxField)
+ ]
+
+ # Create the hide button
+ rect = Rectangle(10, 410, 140, 440, True)
+ hide_button = ButtonField(document.pages[1], rect)
+ hide_button.partial_name = "HideButton"
+ hide_button.value = "Hide Checkboxes"
+
+ # Add HideAction to button - will hide all checkboxes when clicked
+ hide_button.actions.on_release_mouse_btn = HideAction(checkboxes, True)
+
+ # Add button to the form on page 1
+ document.form.add(hide_button, 1)
+
+ # Save the modified PDF
+ document.save(outfile)
+```
+
+Cet extrait de code ajoute un bouton à la première page d'un PDF qui, lorsqu'il est cliqué, masque tous les champs de case à cocher dans le document. Il commence par résoudre les chemins complets des fichiers d'entrée et de sortie à l'aide d'une méthode d'assistance. Le PDF est chargé, et tous les champs de case à cocher sont collectés en filtrant les champs du formulaire pour les instances de `ap.CheckboxField`.
+
+Une zone rectangulaire est définie pour la position du nouveau bouton près du haut de la page. Un ButtonField est créé à cet emplacement, nommé "HideButton", et étiqueté "Hide Checkboxes". Le bouton est configuré de sorte que lorsqu'il est cliqué (au relâchement du bouton de la souris), il déclenche une HideAction qui masque toutes les cases à cocher collectées.
+
+Le bouton est ensuite ajouté aux champs du formulaire sur la première page, et le PDF modifié est enregistré dans le fichier de sortie. Si des erreurs surviennent durant ce processus, elles sont capturées et affichées. Cette fonctionnalité offre aux utilisateurs un moyen de masquer rapidement toutes les cases à cocher dans le PDF, ce qui peut être utile pour personnaliser l’apparence ou le flux de travail du document.
+
+### Appliquer l'action de soumission
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_submit_action(infile, outfile):
+ document = ap.Document(infile)
+
+ # Create the submit action
+ submit_action = SubmitFormAction()
+ submit_action.url = ap.FileSpecification("http://localhost:3000/submit")
+ submit_action.flags = (
+ SubmitFormAction.EXPORT_FORMAT | SubmitFormAction.SUBMIT_COORDINATES
+ )
+
+ # Create the submit button
+ rect = Rectangle(10, 10, 100, 40, True)
+ submit_button = ButtonField(document.pages[1], rect)
+ submit_button.partial_name = "SubmitButton"
+ submit_button.value = "Submit"
+ submit_button.actions.on_release_mouse_btn = submit_action
+
+ # Add the button to the form on page 1
+ document.form.add(submit_button, 1)
+
+ # Save the document
+ document.save(outfile)
+```
+
+Cette fonction ajoute un bouton « Submit » à la première page d’un formulaire PDF, permettant aux utilisateurs de soumettre les données du formulaire à un point de terminaison Web spécifié. Elle commence par construire les chemins complets pour les fichiers PDF d’entrée et de sortie, puis charge le PDF d’entrée en utilisant la bibliothèque Aspose.PDF.
+
+A `SubmitFormAction` est créé pour définir le comportement lorsque le bouton est cliqué. L'URL de l'action est définie en utilisant un `FileSpecification` pointant vers http://localhost:3000/submit, ce qui signifie que les données du formulaire seront envoyées à cette URL. La propriété flags combine `EXPORT_FORMAT` et `SUBMIT_COORDINATES`, en veillant à ce que les données du formulaire soient exportées dans un format standard et que les coordonnées du clic du bouton soient incluses dans la soumission.
+
+Une zone rectangulaire est définie pour la position et la taille du bouton sur la page. Un ButtonField est créé à cet emplacement sur la première page, nommé "SubmitButton," et sa valeur d'affichage est définie sur "Submit." L'action de soumission est assignée à l'événement de relâchement de la souris du bouton, de sorte que l'action se déclenche lorsque l'utilisateur clique sur le bouton.
+
+Enfin, le bouton est ajouté aux champs de formulaire de la première page, et le PDF modifié est enregistré dans le fichier de sortie. Si des erreurs surviennent pendant ce processus, elles sont capturées et affichées. Cette approche offre un moyen convivial pour les utilisateurs de PDF de soumettre les données du formulaire directement à un point de terminaison serveur.
+
+## Sujets de navigation associés
+
+- [Navigation et interaction dans le PDF avec Python](/pdf/fr/python-net/navigation-and-interaction/)
+- [Travailler avec les signets dans le PDF en Python](/pdf/fr/python-net/bookmarks/)
+- [Travailler avec les liens dans le PDF en Python](/pdf/fr/python-net/links/)
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md
index beeed4c9bd..21bf7f9535 100644
--- a/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md
@@ -1,160 +1,29 @@
---
-title: Travailler avec les signets dans les PDF en utilisant Python
+title: Travailler avec les signets PDF en Python
linktitle: Signets
type: docs
weight: 30
url: /fr/python-net/bookmarks/
-description: Cette section explique comment ajouter, supprimer et obtenir un signet avec Aspose.PDF pour Python via .NET.
-lastmod: "2023-02-17"
+description: Apprenez comment ajouter, supprimer, récupérer, mettre à jour et développer les signets PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment travailler avec les signets dans les PDF en utilisant Python
+Abstract: L'article aborde l'importance et l'utilité des signets dans les documents PDF. Les signets améliorent l'expérience utilisateur en permettant une navigation efficace, une organisation et une structuration des fichiers PDF, les rendant plus accessibles. Ils fonctionnent comme des liens interactifs, permettant aux utilisateurs de se déplacer rapidement vers des sections ou des pages spécifiques, à l'instar d'une table des matières. L'article fournit des conseils sur la gestion des signets, y compris comment les ajouter, les supprimer, les récupérer, les mettre à jour et les développer, permettant ainsi aux utilisateurs de gérer et visualiser efficacement le contenu PDF.
---
-
+Utiliser les signets dans un PDF est une fonction pratique. Grâce à eux, vous pouvez configurer la navigation dans vos documents, organiser et structurer les fichiers PDF, et rendre ces fichiers plus accessibles. Ils servent de liens interactifs au sein du document, permettant aux utilisateurs de naviguer rapidement vers des sections ou des pages spécifiques.
-Using bookmarks in PDF is a very useful feature. With them, you can set up navigation on your documents, organize and structure PDF files, and make such files more accessible. They act as interactive links in the document, allowing users to quickly navigate to specific sections or pages.
+Les signets PDF sont un outil pratique et essentiel pour lire les fichiers PDF. Ils permettent aux utilisateurs de se rendre rapidement à d’autres endroits dans un document PDF, de naviguer à travers les pages et de visualiser rapidement le contenu d’un PDF, comme une table des matières.
-L'utilisation des signets dans un PDF est une fonctionnalité très utile. Avec eux, vous pouvez configurer la navigation dans vos documents, organiser et structurer les fichiers PDF, et rendre ces fichiers plus accessibles. Ils agissent comme des liens interactifs dans le document, permettant aux utilisateurs de naviguer rapidement vers des sections ou des pages spécifiques.
+Utilisez les guides de signets suivants lorsque vous devez créer une navigation de type table des matières ou inspecter et mettre à jour un arbre de signets existant dans un PDF.
-PDF bookmarks are a handy and essential tool when it comes to reading PDF files. They allow users to quickly jump to other places in a PDF document, navigate through pages, and quickly view the contents of a PDF, just like a table of contents.
+## Tâches de signet couvertes
-Les signets PDF sont un outil pratique et essentiel pour la lecture des fichiers PDF. Ils permettent aux utilisateurs de sauter rapidement à d'autres endroits dans un document PDF, de naviguer à travers les pages, et de visualiser rapidement le contenu d'un PDF, tout comme une table des matières.
+Dans cette section, vous apprendrez comment :
-In this section you will learn how to:
-
-Dans cette section, vous apprendrez comment :
-
-- [Add and Delete a Bookmark](/pdf/fr/python-net/add-and-delete-bookmark/)
- - [Ajouter et Supprimer un Signet](/pdf/fr/python-net/add-and-delete-bookmark/)
-
-- [Get, Update and Expand a Bookmark](/pdf/fr/python-net/get-update-and-expand-bookmark/)
- - [Obtenir, Mettre à Jour et Développer un Signet](/pdf/fr/python-net/get-update-and-expand-bookmark/)
-
-
\ No newline at end of file
+- [Ajouter et supprimer un signet](/pdf/fr/python-net/add-and-delete-bookmark/)
+- [Obtenir, mettre à jour et développer un signet](/pdf/fr/python-net/get-update-and-expand-bookmark/)
+- [Vue d’ensemble de la navigation et de l’interaction](/pdf/fr/python-net/navigation-and-interaction/)
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md
index c50dbe6d76..71c676411b 100644
--- a/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md
@@ -1,205 +1,160 @@
---
-title: Ajouter et Supprimer un Signet en Python
-linktitle: Ajouter et Supprimer un Signet
+title: Ajouter et supprimer des signets PDF dans Python
+linktitle: Ajouter et supprimer un signet
type: docs
weight: 10
url: /fr/python-net/add-and-delete-bookmark/
-description: Vous pouvez ajouter un signet à un document PDF avec Python. Il est possible de supprimer tous les signets ou certains d'entre eux d'un document PDF.
-lastmod: "2023-02-17"
+description: Apprenez comment ajouter et supprimer des signets dans des documents PDF à l'aide de Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter et supprimer des signets avec Python
+Abstract: Cet article fournit des instructions complètes sur la gestion des signets dans les documents PDF à l'aide de la bibliothèque Aspose.PDF pour Python. Il décrit les processus d'ajout, de modification et de suppression des signets dans un PDF. L'article commence par un guide sur l'ajout d'un signet en créant un objet `OutlineItemCollection` et en l'ajoutant à la `OutlineCollection` du document. Il comprend des exemples de code démontrant la création et l'ajout de signets parents et enfants, mettant en évidence une relation hiérarchique. De plus, l'article couvre les méthodes pour supprimer tous les signets ou un signet spécifique par titre. Chaque section inclut des extraits de code Python pour illustrer les opérations, permettant aux lecteurs de mettre facilement en œuvre les fonctionnalités décrites dans leurs tâches de manipulation de PDF.
---
-
-
## Ajouter un signet à un document PDF
-Les signets sont contenus dans la collection [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) de l'objet Document, elle-même dans la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
+Les signets sont stockés dans l'objet Document [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) collection, elle‑même dans le [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) collection.
-Pour ajouter un signet à un PDF :
+Pour ajouter un signet à un PDF :
-1. Ouvrez un document PDF à l'aide de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Créez un signet et définissez ses propriétés.
-3. Ajoutez la collection [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) à la collection Outlines.
+1. Ouvrez un document PDF en utilisant [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objet.
+1. Créer un signet et définir ses propriétés.
+1. Ajouter le [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) collection vers la collection Outlines.
-Le code suivant vous montre comment ajouter un signet dans un document PDF.
+L'extrait de code suivant montre comment ajouter un signet dans un document PDF.
```python
+import aspose.pdf as ap
+import sys
+from os import path
- import aspose.pdf as ap
+def add_bookmark(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
- # Ouvrir le document
- document = ap.Document(input_pdf)
+ # Create a bookmark object
+ pdf_outline = ap.OutlineItemCollection(document.outlines)
+ pdf_outline.title = "Test Outline"
+ pdf_outline.italic = True
+ pdf_outline.bold = True
- # Créer un objet signet
- outline = ap.OutlineItemCollection(document.outlines)
- outline.title = "Test Signet"
- outline.italic = True
- outline.bold = True
- # Définir le numéro de la page de destination
- outline.action = ap.annotations.GoToAction(document.pages[1])
- # Ajouter le signet dans la collection d'outline du document.
- document.outlines.append(outline)
+ # Set the destination page number
+ pdf_outline.action = ap.annotations.GoToAction(document.pages[1])
- # Enregistrer le résultat
- document.save(output_pdf)
-```
+ # Add bookmark to the document's outline collection
+ outlines = document.outlines
+ outlines.append(pdf_outline)
+ # Save PDF document
+ document.save(outfile)
+```
-## Ajouter un Signet Enfant au Document PDF
+## Ajouter un signet enfant au Document PDF
-Les signets peuvent être imbriqués, indiquant une relation hiérarchique avec des signets parents et enfants. Cet article explique comment ajouter un signet enfant, c'est-à-dire un signet de deuxième niveau, à un PDF.
+Les signets peuvent être imbriqués, indiquant une relation hiérarchique entre les signets parents et enfants. Cet article explique comment ajouter un signet enfant, c’est‑à‑dire un signet de deuxième niveau, à un PDF.
Pour ajouter un signet enfant à un fichier PDF, ajoutez d'abord un signet parent :
1. Ouvrez un document.
-1. Ajoutez un signet à la [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/), en définissant ses propriétés.
-1. Ajoutez la OutlineItemCollection à la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) de l'objet Document.
+1. Ajoutez un signet à la [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/), définissant ses propriétés.
+1. Ajoutez la OutlineItemCollection à l'objet Document [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) collection.
-Le signet enfant est créé exactement comme le signet parent, expliqué ci-dessus, mais est ajouté à la collection Outlines du signet parent.
+Le signet enfant est créé de la même manière que le signet parent, expliqué ci‑dessus, mais il est ajouté à la collection Outlines du signet parent.
Les extraits de code suivants montrent comment ajouter un signet enfant à un document PDF.
```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
-
- # Créer un objet signet parent
- outline = ap.OutlineItemCollection(document.outlines)
- outline.title = "Parent Outline"
- outline.italic = True
- outline.bold = True
-
- # Créer un objet signet enfant
- childOutline = ap.OutlineItemCollection(document.outlines)
- childOutline.title = "Child Outline"
- childOutline.italic = True
- childOutline.bold = True
-
- # Ajouter un signet enfant dans la collection du signet parent
- outline.append(childOutline)
- # Ajouter un signet parent dans la collection de contours du document.
- document.outlines.append(outline)
-
- # Sauvegarder le résultat
- document.save(output_pdf)
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_child_bookmark(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Create a parent bookmark object
+ pdf_outline = ap.OutlineItemCollection(document.outlines)
+ pdf_outline.title = "Parent Outline"
+ pdf_outline.italic = True
+ pdf_outline.bold = True
+
+ # Create a child bookmark object
+ pdf_child_outline = ap.OutlineItemCollection(document.outlines)
+ pdf_child_outline.title = "Child Outline"
+ pdf_child_outline.italic = True
+ pdf_child_outline.bold = True
+
+ # Add child bookmark to parent bookmark's collection
+ pdf_outline.append(pdf_child_outline)
+
+ # Add parent bookmark to the document's outline collection
+ document.outlines.append(pdf_outline)
+
+ # Save PDF document
+ document.save(outfile)
```
+## Supprimer tous les signets d’un document PDF
-## Supprimer tous les signets d'un document PDF
-
-Tous les signets d'un PDF sont contenus dans la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/). Cet article explique comment supprimer tous les signets d'un fichier PDF.
+Tous les signets d’un PDF sont stockés dans le [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) collection. Cet article explique comment supprimer tous les signets d'un fichier PDF.
Pour supprimer tous les signets d'un fichier PDF :
-1. Appelez la méthode Delete de la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
-2. Enregistrez le fichier modifié en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Appelez le [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) méthode Delete de collection.
+1. Enregistrez le fichier modifié en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) object's [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode.
Les extraits de code suivants montrent comment supprimer tous les signets d'un document PDF.
```python
+import aspose.pdf as ap
+import sys
+from os import path
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
+def delete_bookmarks(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
- # Supprimer tous les signets
+ # Delete all bookmarks in the PDF document
document.outlines.delete()
- # Enregistrer le fichier mis à jour
- document.save(output_pdf)
-
+ # Save PDF document
+ document.save(outfile)
```
## Supprimer un signet particulier d'un document PDF
-Pour supprimer un signet particulier d'un fichier PDF :
+Pour supprimer un signet particulier d'un fichier PDF:
-1. Passez le titre du signet comme paramètre à la méthode Delete de la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
+1. Passez le titre du signet comme paramètre à la [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) méthode Delete de collection.
1. Ensuite, enregistrez le fichier mis à jour avec la méthode Save de l'objet Document.
-La classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) fournit la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/). La méthode [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/#methods) supprime tout signet avec le titre passé à la méthode.
+Le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe fournit le [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) collection. Le [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/#methods) La méthode supprime tout signet dont le titre est passé à la méthode.
Les extraits de code suivants montrent comment supprimer un signet particulier du document PDF.
```python
+import aspose.pdf as ap
+import sys
+from os import path
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
+def delete_bookmark(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
- # Supprimer un contour particulier par titre
+ # Delete a specific bookmark by title.
+ # Note: If multiple bookmarks have the same title, only the first matching bookmark will be deleted.
document.outlines.delete("Child Outline")
- # Enregistrer le fichier mis à jour
- document.save(output_pdf)
\ No newline at end of file
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Sujets liés aux signets
+
+- [Travailler avec les signets PDF en Python](/pdf/fr/python-net/bookmarks/)
+- [Obtenir, mettre à jour et développer les signets PDF en Python](/pdf/fr/python-net/get-update-and-expand-bookmark/)
+- [Navigation et interaction dans le PDF avec Python](/pdf/fr/python-net/navigation-and-interaction/)
+
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md
index 573613e8a4..e090518882 100644
--- a/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md
@@ -1,96 +1,32 @@
---
-title: Obtenir, Mettre à Jour et Développer un Signet en utilisant Python
-linktitle: Obtenir, Mettre à Jour et Développer un Signet
+title: Obtenir, mettre à jour et développer les signets PDF en Python
+linktitle: Obtenir, mettre à jour et développer un signet
type: docs
weight: 20
url: /fr/python-net/get-update-and-expand-bookmark/
-description: Cet article décrit comment utiliser les signets dans un fichier PDF avec notre bibliothèque Aspose.PDF pour Python.
-lastmod: "2023-02-17"
+description: Apprenez comment récupérer, mettre à jour et développer les signets dans des documents PDF en utilisant Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment utiliser les signets dans les PDF avec Python
+Abstract: Cet article fournit un guide complet sur la gestion des signets dans un document PDF à l'aide de la bibliothèque Aspose.PDF pour Python. Il commence par expliquer comment récupérer les signets d'un fichier PDF via la `OutlineCollection`, qui contient tous les signets, et détaille l'accès aux attributs des signets via la `OutlineItemCollection`. L'article décrit ensuite le processus de détermination du numéro de page associé à un signet à l'aide de la `PdfBookmarkEditor`. Il explique en outre comment gérer les structures hiérarchiques de signets en récupérant les signets enfants au sein de chaque `OutlineItemCollection`. Il couvre également la mise à jour des propriétés des signets, en montrant comment modifier les attributs des signets et enregistrer les modifications dans un PDF. Enfin, l'article traite de la nécessité d'étendre les signets lors de la visualisation d'un document, en montrant comment définir l'état d'ouverture de chaque signet pour qu'ils soient développés par défaut. Des extraits de code accompagnent chaque section, offrant des exemples pratiques d'implémentation de ces fonctionnalités.
---
-
+## Obtenir les signets
-## Obtenez les Signets
+Le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) object's [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) La collection contient tous les signets d'un fichier PDF. Cet article explique comment obtenir les signets d'un fichier PDF, et comment déterminer sur quelle page se trouve un signet particulier.
-La collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) contient tous les signets d'un fichier PDF. Cet article explique comment obtenir des signets à partir d'un fichier PDF et comment savoir sur quelle page se trouve un signet particulier.
-
-Pour obtenir les signets, parcourez la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) et obtenez chaque signet dans la OutlineItemCollection. La [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) permet d'accéder à tous les attributs du signet. Le snippet de code suivant vous montre comment obtenir des signets à partir du fichier PDF.
+Pour obtenir les signets, parcourez le [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) collection et récupérez chaque signet dans l'OutlineItemCollection. Le [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) fournit l'accès à tous les attributs du signet. Le fragment de code suivant vous montre comment récupérer les signets du fichier PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Ouvrir le document
+def get_bookmarks(input_pdf):
document = ap.Document(input_pdf)
-
- # Parcourir tous les signets
for i in range(len(document.outlines)):
outline_item = document.outlines[i + 1]
print(outline_item.title)
@@ -99,44 +35,43 @@ Pour obtenir les signets, parcourez la collection [OutlineCollection](https://re
print(outline_item.color)
```
+## Obtenir le numéro de page d’un signet
-## Obtenir le Numéro de Page d'un Signet
-
-Une fois que vous avez ajouté un signet, vous pouvez savoir sur quelle page il se trouve en obtenant le numéro de page de destination associé à l'objet Signet.
+Une fois que vous avez ajouté un signet, vous pouvez découvrir sur quelle page il se trouve en obtenant le numéro de page de destination PageNumber associé à l’objet Bookmark.
```python
-
- import aspose.pdf as ap
-
- # Créer PdfBookmarkEditor
- bookmarkEditor = ap.facades.PdfBookmarkEditor()
- # Ouvrir le fichier PDF
- bookmarkEditor.bind_pdf(input_pdf)
- # Extraire les signets
- bookmarks = bookmarkEditor.extract_bookmarks()
+from os import path
+import sys
+import aspose.pdf as ap
+
+def get_bookmark_page_number(input_pdf):
+ # Create PdfBookmarkEditor
+ bookmark_editor = ap.facades.PdfBookmarkEditor()
+ # Open PDF file
+ bookmark_editor.bind_pdf(input_pdf)
+ # Extract bookmarks
+ bookmarks = bookmark_editor.extract_bookmarks()
for bookmark in bookmarks:
- str_level_seprator = ""
+ str_level_separator = ""
for i in range(bookmark.level):
- str_level_seprator += "----"
+ str_level_separator += "----"
- print(str_level_seprator, "Titre :", bookmark.title)
- print(str_level_seprator, "Numéro de Page :", bookmark.page_number)
- print(str_level_seprator, "Action de Page :", bookmark.action)
+ print(str_level_separator, "Title:", bookmark.title)
+ print(str_level_separator, "Page Number:", bookmark.page_number)
+ print(str_level_separator, "Page Action:", bookmark.action)
```
-## Obtenir les Signets Enfants d'un Document PDF
+## Obtenir les signets enfants d'un document PDF
-Les signets peuvent être organisés dans une structure hiérarchique, avec des parents et des enfants.
- Pour obtenir tous les signets, parcourez les collections Outlines de l'objet Document. Cependant, pour obtenir également les signets enfants, parcourez également tous les signets dans chaque objet [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) obtenu dans la première boucle. Les extraits de code suivants montrent comment obtenir les signets enfants d'un document PDF.
+Les signets peuvent être organisés dans une structure hiérarchique, avec des parents et des enfants. Pour obtenir tous les signets, parcourez les collections Outlines de l'objet Document. Cependant, pour obtenir également les signets enfants, parcourez également tous les signets dans chaque [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) objet obtenu lors de la première boucle. Les extraits de code suivants montrent comment obtenir les signets enfants d'un document PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Ouvrir le document
+def get_child_bookmarks(input_pdf):
document = ap.Document(input_pdf)
-
- # Parcourir tous les signets
for i in range(len(document.outlines)):
outline_item = document.outlines[i + 1]
print(outline_item.title)
@@ -145,126 +80,65 @@ Les signets peuvent être organisés dans une structure hiérarchique, avec des
print(outline_item.color)
count = len(outline_item)
if count > 0:
- print("Signets enfants")
- # Il y a des signets enfants, alors parcourez-les également
+ print("Child Bookmarks")
+ # There are child bookmarks then loop through that as well
for j in range(len(outline_item)):
- child_outline_item = outline_item[i + 1]
+ child_outline_item = outline_item[j + 1]
print(child_outline_item.title)
print(child_outline_item.italic)
print(child_outline_item.bold)
print(child_outline_item.color)
```
-## Mettre à jour les signets dans un document PDF
+## Mettre à jour les signets dans un Document PDF
-Pour mettre à jour un signet dans un fichier PDF, d'abord, obtenez le signet particulier de la collection OutlineCollection de l'objet Document en spécifiant l'index du signet. Une fois que vous avez récupéré le signet dans l'objet [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/), vous pouvez mettre à jour ses propriétés puis enregistrer le fichier PDF mis à jour en utilisant la méthode Save. Les extraits de code suivants montrent comment mettre à jour les signets dans un document PDF.
+Pour mettre à jour un signet dans un fichier PDF, commencez par obtenir le signet particulier à partir de la collection OutlineColletion de l'objet Document en spécifiant l'index du signet. Une fois que vous avez récupéré le signet dans [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) objet, vous pouvez mettre à jour ses propriétés puis enregistrer le fichier PDF mis à jour en utilisant la méthode Save. Les extraits de code suivants montrent comment mettre à jour les signets dans un document PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Ouvrir le document
+def update_bookmarks(input_pdf, output_pdf):
+ # Open document
document = ap.Document(input_pdf)
- # Obtenir un objet signet
+ # Get a bookmark object
outline = document.outlines[1]
- # Obtenir l'objet signet enfant
+ # Get child bookmark object
child_outline = outline[1]
- child_outline.title = "Outline mis à jour"
+ child_outline.title = "Updated Outline"
child_outline.italic = True
child_outline.bold = True
- # Enregistrer la sortie
+ # Save output
document.save(output_pdf)
```
## Signets développés lors de la visualisation du document
-Les signets sont détenus dans la collection [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) de l'objet Document, elle-même dans la collection [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
- Cependant, nous pouvons avoir besoin que tous les signets soient développés lors de la visualisation du fichier PDF.
+Les signets sont stockés dans l'objet Document [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) collection, elle‑même dans le [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) collection. Cependant, il se peut que nous ayons une exigence d'avoir tous les signets développés lors de la visualisation du fichier PDF.
-Afin de satisfaire cette exigence, nous pouvons définir le statut ouvert pour chaque élément de plan/signet comme Ouvert. Le snippet de code suivant vous montre comment définir le statut ouvert pour chaque signet comme développé dans un document PDF.
+Afin de satisfaire cette exigence, nous pouvons définir le statut d'ouverture pour chaque élément de plan/signet comme Ouvert. Le fragment de code suivant vous montre comment définir le statut d'ouverture pour chaque signet comme développé dans un document PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Ouvrir le document
+def expanded_bookmarks(input_pdf, output_pdf):
document = ap.Document(input_pdf)
-
- # Définir le mode d'affichage de la page, c'est-à-dire afficher les miniatures, plein écran, afficher le panneau des pièces jointes
document.page_mode = ap.PageMode.USE_OUTLINES
- # Parcourir chaque élément de plan dans la collection de plans du fichier PDF
for i in range(len(document.outlines)):
item = document.outlines[i + 1]
- # Définir le statut ouvert pour l'élément de plan
item.open = True
-
- # Enregistrer la sortie
document.save(output_pdf)
```
-
\ No newline at end of file
+## Sujets liés aux signets
+
+- [Travailler avec les signets PDF en Python](/pdf/fr/python-net/bookmarks/)
+- [Ajouter et supprimer des signets PDF en Python](/pdf/fr/python-net/add-and-delete-bookmark/)
+- [Navigation et interaction dans le PDF avec Python](/pdf/fr/python-net/navigation-and-interaction/)
+
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/links/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/links/_index.md
new file mode 100644
index 0000000000..44aeb77434
--- /dev/null
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/links/_index.md
@@ -0,0 +1,23 @@
+---
+title: Travailler avec les liens PDF en Python
+linktitle: Liens
+type: docs
+weight: 10
+url: /fr/python-net/links/
+description: Apprenez à créer, extraire et mettre à jour les liens internes et externes dans les documents PDF à l'aide de Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer, extraire et mettre à jour les liens PDF en Python
+Abstract: Le guide Aspose.PDF for Python via .NET sur la manipulation des liens fournit un aperçu complet de la manière dont les développeurs peuvent gérer programmatiquement les hyperliens et les éléments de navigation dans les documents PDF en utilisant Python. Il couvre les opérations essentielles telles que la création de liens internes et externes, la mise à jour des destinations et de l'apparence des liens, ainsi que l'extraction des liens existants.
+---
+
+Utilisez cette section lorsque vous devez créer des liens cliquables, inspecter les annotations de lien existantes ou mettre à jour l'apparence et les destinations des liens dans les fichiers PDF.
+
+## Tâches de liens couvertes
+
+- [Créer des liens](/pdf/fr/python-net/create-links/) - apprenez simplement une façon de créer des liens dans votre fichier PDF en utilisant Python.
+- [Mettre à jour les liens](/pdf/fr/python-net/update-links/) - essayez de définir la cible sur PDF, essayez de définir la destination du lien vers une adresse web, essayez de définir la cible du lien vers un autre fichier PDF, mettez à jour la couleur du texte du lien.
+- [Extraire les liens](/pdf/fr/python-net/extract-links/) - extrayez les liens du fichier PDF en utilisant Python.
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/links/create-links/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/links/create-links/_index.md
new file mode 100644
index 0000000000..065d9cb249
--- /dev/null
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/links/create-links/_index.md
@@ -0,0 +1,147 @@
+---
+title: Créer des liens PDF en Python
+linktitle: Créer des liens
+type: docs
+weight: 10
+url: /fr/python-net/create-links/
+description: Apprenez comment créer des liens PDF internes, externes et distants en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment créer des liens dans PDF
+Abstract: Le guide Aspose.PDF for Python via .NET sur la création de liens fournit aux développeurs des instructions pratiques pour ajouter des hyperliens interactifs aux documents PDF en utilisant Python. Il couvre la création de différents types de liens, y compris ceux qui lancent des applications externes, naviguent vers des pages spécifiques du même document ou ouvrent d’autres fichiers PDF. La documentation explique comment utiliser les objets LinkAnnotation, définir des zones cliquables avec Rectangle et attribuer des actions telles que LaunchAction ou GoToRemoteAction. Avec des exemples de code clairs et des directives pas à pas, cette ressource aide les développeurs à améliorer la navigation et l’interactivité des PDF dans leurs applications Python.
+---
+
+## Liens dans les documents PDF
+
+Selon la spécification PDF 1.7 (ISO 32000-1:2008), une **annotation de lien** peut déclencher plusieurs types d'actions qui définissent ce qui se passe lorsque l'annotation est activée. Voici les actions principales prises en charge :
+
+1. **GoTo** – Navigue vers une destination dans le même document.
+1. **GoToR** – Saute vers une destination dans un autre fichier PDF (go‑to distant).
+1. **URI** – Ouvre un identifiant uniforme de ressource, généralement un lien web.
+1. **Launch** – Lance une application ou ouvre un fichier (dépendant de la plateforme et souvent restreint pour des raisons de sécurité).
+1. **Named** – Exécute une action prédéfinie, telle que passer à la page suivante ou imprimer le document.
+1. **JavaScript** – Exécute du code JavaScript intégré (utilisé avec précaution en raison de problèmes de sécurité).
+1. **SubmitForm** – Envoie les données du formulaire à une URL spécifiée.
+1. **ResetForm** – Réinitialise les champs du formulaire à leurs valeurs par défaut.
+1. **ImportData** – Importe des données dans le document depuis un fichier externe.
+
+En ajoutant un lien vers une application dans un document, il est possible de créer des liens vers des applications depuis un document. Cela est utile lorsque vous souhaitez que les lecteurs effectuent une action précise à un moment donné d’un didacticiel, par exemple, ou pour créer un document riche en fonctionnalités.
+
+Pour créer un lien d'application avec ‘LaunchAction’:
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_launch_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ border = ap.annotations.Border(link)
+ border.width = 5
+ border.dash = ap.annotations.Dash(1, 1)
+ link.color = ap.Color.green
+ link.action = ap.annotations.LaunchAction(document, "sample.pdf")
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+## Créer un lien de document PDF dans un fichier PDF
+
+### Utilisation de GoToRemoteAction
+
+Cet extrait de code montre comment ajouter une annotation de lien à une page spécifique d'un document PDF à l'aide d'une bibliothèque PDF Python.
+
+1. Ouvrez le document PDF
+1. Sélectionnez la deuxième page du document (indice 1)
+1. Créez une annotation de lien :
+1. Positionné aux coordonnées (10, 580, 120, 600)
+1. Coloré en vert
+1. Liens vers 'sample.pdf' sur sa première page
+1. Ajouter l'annotation de lien à la page
+1. Enregistrez le document modifié vers le chemin du fichier de sortie
+
+Pour créer un lien de document PDF en utilisant 'GoToRemoteAction' :
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_go_to_remote_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ link.color = ap.Color.green
+ link.action = ap.annotations.GoToRemoteAction("sample.pdf", 1)
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+### Utilisation de GoToAction
+
+Ce code montre comment ajouter une annotation de lien à une page spécifique d'un document PDF à l'aide d'Aspose.PDF for Python. Le lien apparaît sous la forme d'un rectangle vert bordé de tirets et permet à l'utilisateur de naviguer vers une autre page du même PDF. Pour créer un lien de document PDF en utilisant 'GoToAction' :
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_go_to_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ border = ap.annotations.Border(link)
+ border.width = 5
+ border.dash = ap.annotations.Dash(1, 1)
+ link.color = ap.Color.green
+ if document.pages.length >= 4:
+ link.action = ap.annotations.GoToAction(document.pages[4])
+ else:
+ link.action = ap.annotations.GoToAction(document.pages[document.pages.length])
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+### Appliquer GoToURIAction
+
+L'exemple suivant montre comment ajouter une annotation de lien à un document PDF en utilisant Aspose.PDF for Python. Le lien apparaît sous la forme d'une zone cliquable verte sur la première page et, lorsqu'on clique dessus, il ouvre la documentation Aspose.PDF for Python dans un navigateur web via une GoToURIAction.
+
+Cette fonctionnalité est utile pour intégrer des références externes utiles, de la documentation ou des liens d'assistance directement dans vos PDF.
+
+1. Chargez le Document PDF. Ouvrez le fichier PDF existant en utilisant ap.Document.
+1. Accédez à la première page. Utilisez document.pages[1] pour accéder à la première page (Aspose utilise un indice basé sur 1).
+1. Créez une annotation de lien. Créez un objet LinkAnnotation et spécifiez la zone rectangulaire cliquable en utilisant ap.Rectangle.
+1. Définir l’apparence de l'annotation. Définir la couleur de l'annotation sur vert en utilisant link.color = ap.Color.green.
+1. Attribuer une action URI. Utiliser GoToURIAction pour lier l'annotation à une URL externe.
+1. Ajouter l'annotation à la page. Ajouter l'annotation de lien configurée à la collection d'annotations de la première page.
+1. Enregistrer le document modifié. Enregistrer le document PDF mis à jour vers le chemin de sortie spécifié.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_go_to_URI_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ link.color = ap.Color.green
+ link.action = ap.annotations.GoToURIAction("https://docs.aspose.com/pdf/python")
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+## Sujets liés aux liens
+
+- [Travailler avec les liens PDF en Python](/pdf/fr/python-net/links/)
+- [Extraire les liens du PDF en Python](/pdf/fr/python-net/extract-links/)
+- [Mettre à jour les liens du PDF en utilisant Python](/pdf/fr/python-net/update-links/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/links/extract-links/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/links/extract-links/_index.md
new file mode 100644
index 0000000000..e5907e7756
--- /dev/null
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/links/extract-links/_index.md
@@ -0,0 +1,92 @@
+---
+title: Extraire les liens PDF en Python
+linktitle: Extraire les liens
+type: docs
+weight: 30
+url: /fr/python-net/extract-links/
+description: Apprenez comment extraire les annotations de lien et les hyperliens des documents PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment extraire les liens d'un PDF
+Abstract: Le guide Aspose.PDF for Python via .NET sur l'extraction des liens explique comment récupérer programmatiquement les annotations d'hyperlien à partir de documents PDF en utilisant Python. La documentation comprend des exemples de code pratiques et met en évidence comment cette fonctionnalité peut être utilisée pour des tâches telles que l'audit des liens, l'analyse de navigation ou la création de fonctionnalités de document interactives. Que vous travailliez avec des PDF d'une seule page ou que vous traitiez de gros lots, ce guide propose une approche claire et efficace de l'extraction d'hyperliens.
+---
+
+## Extraire les liens du fichier PDF
+
+Cet exemple montre comment parcourir toutes les annotations de lien sur la première page d’un PDF en utilisant Aspose.PDF for Python. Il filtre les annotations pour identifier celles de type LinkAnnotation, les convertit en toute sécurité, puis affiche leur indice de page et leur position rectangulaire sur la page.
+
+Cela peut être utilisé pour le débogage, l’analyse, ou les mises à jour automatisées des annotations de lien existantes dans un PDF.
+
+1. Chargez le document PDF. Utilisez ap.Document(path_infile) pour ouvrir le fichier.
+1. Accédez aux annotations de la première page. Utilisez document.pages[1].annotations pour récupérer toutes les annotations.
+1. Filtrez uniquement les types LinkAnnotation. Vérifiez l’annotation_type de chaque annotation.
+1. Convertissez et traitez les LinkAnnotations. Utilisez is_assignable() et cast() pour garantir un accès sécurisé aux propriétés de LinkAnnotation.
+1. Imprimer les détails de l'annotation. Afficher l'indice de page et le rectangle (emplacement) de chaque lien.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def extract_link_annotation(infile):
+
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ if is_assignable(la, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, la)
+ print(f"Page: {annotation.page_index}, location: {annotation.rect}")
+```
+
+## Extraire les hyperliens du fichier PDF
+
+Ce code montre comment extraire tous les objets LinkAnnotation de la première page d'un document PDF à l'aide d'Aspose.PDF for Python, puis identifier ceux qui contiennent une GoToURIAction. Pour chaque lien de ce type, il affiche l'indice de page et l'URI cible.
+
+Ceci est utile pour des tâches telles que :
+
+- Audit des liens externes dans un PDF
+- Extraction des URL de documentation ou de support
+- Détection des hyperliens cassés ou obsolètes
+
+1. Chargez le document PDF. Ouvrez le fichier en utilisant ap.Document.
+1. Obtenez toutes les annotations de lien de la première page. Filtrez les annotations pour n’inclure que celles de type AnnotationType.LINK.
+1. Vérifiez le type et effectuez le cast en LinkAnnotation. Assurez-vous que chaque annotation soit bien une LinkAnnotation avant d’accéder à ses propriétés.
+1. Vérifiez le type d’action du lien. Filtrez les liens qui utilisent un GoToURIAction (c’est‑à‑dire les liens vers une URL web).
+1. Extrayez et affichez l’URI et l’indice de page. Utilisez .uri pour obtenir le lien externe et .page_index pour le contexte.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def extract_hyperlinks(infile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ if is_assignable(la, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, la)
+ if is_assignable(annotation.action, ap.annotations.GoToURIAction):
+ action = cast(ap.annotations.GoToURIAction, annotation.action)
+ print(f"Page {annotation.page_index}, URI:{action.uri}")
+```
+
+## Sujets liés aux liens
+
+- [Travailler avec les liens PDF en Python](/pdf/fr/python-net/links/)
+- [Créer des liens PDF en Python](/pdf/fr/python-net/create-links/)
+- [Mettre à jour les liens du PDF en utilisant Python](/pdf/fr/python-net/update-links/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/navigation-and-interaction/links/update-links/_index.md b/fr/python-net/advanced-operations/navigation-and-interaction/links/update-links/_index.md
new file mode 100644
index 0000000000..29217e0cad
--- /dev/null
+++ b/fr/python-net/advanced-operations/navigation-and-interaction/links/update-links/_index.md
@@ -0,0 +1,114 @@
+---
+title: Mettre à jour les liens PDF en Python
+linktitle: Mettre à jour les liens
+type: docs
+weight: 20
+url: /fr/python-net/update-links/
+description: Apprenez comment mettre à jour l'apparence et les destinations des liens PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment mettre à jour les liens dans le PDF
+Abstract: Le guide Aspose.PDF for Python via .NET sur la mise à jour des liens accompagne les développeurs dans le processus de modification du comportement des hyperliens au sein des documents PDF à l'aide de Python. Il explique comment changer les destinations des liens pour qu'ils pointent vers des pages spécifiques, des sites Web externes ou même d'autres fichiers PDF. La documentation couvre également la façon d'ajuster l'apparence des annotations de lien, y compris la couleur du texte, et fournit des exemples de code pratiques pour chaque scénario. Que vous corrigiez des URL obsolètes ou amélioriez la navigation, cette ressource offre une approche claire et efficace pour gérer les liens programmatiquement.
+---
+
+## Mettre à jour la couleur du texte LinkAnnotation
+
+Cet exemple montre comment détecter toutes les annotations de lien sur la première page d'un PDF en utilisant Aspose.PDF for Python, puis surligner le texte près de chaque lien en changeant la couleur de la police en rouge. Il utilise TextFragmentAbsorber avec une zone légèrement élargie autour de chaque rectangle de lien pour trouver et modifier le texte à proximité.
+
+Cela peut être utilisé pour:
+
+- Marquer visuellement les liens dans un document
+- Améliorer l'accessibilité en mettant en évidence le contenu lié
+- Prétraitement des fichiers PDF avant la révision ou l'exportation
+
+Pour chacune de ces annotations de lien, le script récupère sa frontière rectangulaire et étend légèrement cette région pour inclure le texte voisin, permettant une identification visuelle plus large. Il applique ensuite un TextFragmentAbsorber sur cette zone agrandie afin d'extraire les fragments de texte qui s'y trouvent. Ces fragments capturés sont modifiés en changeant leur couleur de police en rouge, marquant ainsi le texte environnant pour mettre en évidence et réviser. Après avoir appliqué toutes ces modifications, le document modifié est enregistré dans le chemin de sortie, en conservant les annotations mises en surbrillance et leur texte associé.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def link_annotation_update_text_color(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ ta = ap.text.TextFragmentAbsorber()
+ rect = la.rect
+ rect.llx -= 2
+ rect.lly -= 2
+ rect.urx += 2
+ rect.ury += 2
+ ta.text_search_options = ap.text.TextSearchOptions(rect)
+ ta.visit(document.pages[1])
+ for textFragment in ta.text_fragments:
+ textFragment.text_state.foreground_color = ap.Color.red
+
+ document.save(outfile)
+```
+
+## Mettre à jour la bordure
+
+Le script se concentre sur la première page du document et filtre toutes les annotations, ne sélectionnant que celles de type LINK — ces dernières représentent généralement des éléments interactifs, tels que des hyperliens ou des déclencheurs de navigation. Pour chacune de ces annotations de lien, le code les convertit en type LinkAnnotation et met à jour leur propriété couleur en rouge, les mettant en évidence visuellement afin qu’elles se distinguent du reste du contenu. Après que toutes les annotations de lien ont été modifiées, le document mis à jour est enregistré à l’emplacement de sortie défini, en conservant le nouveau style.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def link_annotation_update_border(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ link_annotation = cast(ap.annotations.LinkAnnotation, la)
+ link_annotation.color = ap.Color.red
+
+ document.save(outfile)
+```
+
+## Mettre à jour la destination Web
+
+Une fois les chemins en place, le document original est chargé à l'aide de la bibliothèque Aspose.PDF, rendant son contenu accessible à la modification. Le script se concentre ensuite sur la première page du document, en filtrant toutes les annotations et en ne sélectionnant que celles de type lien, représentant généralement des zones cliquables ou des hyperliens. Pour éviter les erreurs de type et garantir une manipulation sûre, chaque annotation est vérifiée avec is_assignable puis convertie en type LinkAnnotation approprié. Si le lien est associé à une GoToURIAction, signifiant qu'il pointe vers une adresse web, le script met à jour cette URI pour rediriger les utilisateurs vers "https://www.aspose.com". Enfin, après que toutes les modifications souhaitées ont été appliquées, le document modifié est enregistré à l'emplacement de sortie spécifié.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def link_annotation_update_web_destination(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ if is_assignable(la, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, la)
+ if is_assignable(annotation.action, ap.annotations.GoToURIAction):
+ action = cast(ap.annotations.GoToURIAction, annotation.action)
+ action.uri = "https://www.aspose.com"
+ document.save(outfile)
+```
+
+## Sujets liés aux liens
+
+- [Travailler avec les liens PDF en Python](/pdf/fr/python-net/links/)
+- [Créer des liens PDF en Python](/pdf/fr/python-net/create-links/)
+- [Extraire les liens PDF en Python](/pdf/fr/python-net/extract-links/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/pdf-file-metadata/_index.md b/fr/python-net/advanced-operations/pdf-file-metadata/_index.md
new file mode 100644
index 0000000000..4de1836626
--- /dev/null
+++ b/fr/python-net/advanced-operations/pdf-file-metadata/_index.md
@@ -0,0 +1,147 @@
+---
+title: Travailler avec les métadonnées de fichiers PDF en Python
+linktitle: Métadonnées de fichiers PDF
+type: docs
+weight: 200
+url: /fr/python-net/pdf-file-metadata/
+description: Apprenez à extraire, mettre à jour et gérer les métadonnées de fichiers PDF et les propriétés XMP en Python à l'aide d'Aspose.PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obtenez et définissez les informations du document PDF et les métadonnées XMP en Python
+Abstract: Cet article explique comment travailler avec les métadonnées PDF dans Aspose.PDF for Python via .NET. Apprenez à lire les informations du document telles que l'auteur, le titre et les mots‑clés, à mettre à jour les propriétés du fichier, à définir les champs de métadonnées XMP et à enregistrer des préfixes de métadonnées personnalisés pour les fichiers PDF en Python.
+---
+
+Utilisez ce guide lorsque vous devez inspecter les propriétés du document, mettre à jour les informations du fichier PDF pour la recherche ou le catalogage, ou gérer les métadonnées XMP de manière programmatique en Python.
+
+## Obtenir les informations du fichier PDF
+
+Cet extrait de code montre comment extraire les métadonnées d'un document PDF à l'aide d'Aspose.PDF for Python via .NET. En accédant à la propriété info du Document, il récupère des informations clés telles que l'auteur, la date de création, les mots‑clés, la date de modification, le sujet et le titre. Cette fonctionnalité est essentielle pour les applications qui nécessitent le catalogage de documents, l'optimisation de la recherche ou la validation des propriétés du document.
+
+1. Ouvrez le fichier PDF en utilisant la classe Document
+1. Récupérez les métadonnées du document via la propriété info
+1. Affichez les informations de métadonnées. Imprimez les champs de métadonnées souhaités
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def get_pdf_file_information(infile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Get document information
+ doc_info = document.info
+
+ # Display document information
+ print(f"Author: {doc_info.author}")
+ print(f"Creation Date: {doc_info.creation_date}")
+ print(f"Keywords: {doc_info.keywords}")
+ print(f"Modify Date: {doc_info.mod_date}")
+ print(f"Subject: {doc_info.subject}")
+ print(f"Title: {doc_info.title}")
+```
+
+## Définir les informations du fichier PDF
+
+Aspose.PDF for Python via .NET vous permet de définir des informations spécifiques au fichier pour un PDF, des informations telles que l’auteur, la date de création, le sujet et le titre. Pour définir ces informations :
+
+1. Ouvrez le fichier PDF en utilisant la classe Document.
+1. Créer un [DocumentInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/documentinfo/) objet et définir les propriétés de métadonnées souhaitées.
+1. Enregistrez les modifications dans un nouveau fichier PDF en utilisant la méthode save.
+
+L'extrait de code suivant vous montre comment définir les informations du fichier PDF.
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def set_file_information(infile, outfile):
+
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Specify document information
+ doc_info = ap.DocumentInfo(document)
+ doc_info.author = "Aspose"
+ doc_info.creation_date = datetime.datetime.now()
+ doc_info.keywords = "Aspose.Pdf, DOM, API"
+ doc_info.mod_date = datetime.datetime.now()
+ doc_info.subject = "PDF Information"
+ doc_info.title = "Setting PDF Document Information"
+ doc_info.producer = "Custom producer"
+ doc_info.creator = "Custom creator"
+
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Définir les métadonnées XMP dans un fichier PDF
+
+Cet extrait de code montre comment définir ou mettre à jour programmatiquement les métadonnées XMP dans un document PDF à l'aide d'Aspose.PDF for Python via .NET. En modifiant des propriétés telles que xmp:CreateDate, xmp:Nickname et des champs définis sur mesure, vous pouvez intégrer des métadonnées standardisées dans vos fichiers PDF. Cette approche est particulièrement utile pour améliorer l'organisation des documents, faciliter la recherche et intégrer des informations essentielles directement dans le fichier.
+
+Aspose.PDF vous permet de définir des métadonnées dans un fichier PDF. Pour définir des métadonnées :
+
+1. Ouvrez le fichier PDF en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Modifiez les métadonnées XMP en attribuant des valeurs à des clés spécifiques.
+1. Enregistrez le Document PDF mis à jour.
+
+L'extrait de code suivant vous montre comment définir les métadonnées dans un fichier PDF.
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def set_xmp_metadata(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Set XMP metadata properties
+ document.metadata.add("xmp:CreateDate", datetime.datetime.now().isoformat())
+ document.metadata.add("xmp:Nickname", "Nickname")
+ document.metadata.add("xmp:CustomProperty", "Custom Value")
+
+ # Save the updated PDF document
+ document.save(outfile)
+```
+
+## Insérer des métadonnées avec un préfixe
+
+Certains développeurs doivent créer un nouvel espace de noms de métadonnées avec un préfixe. L'extrait de code suivant montre comment insérer des métadonnées avec un préfixe.
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def set_prefix_metadata(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Register a namespace URI for the 'xmp' prefix
+ document.metadata.register_namespace_uri("xmp", "http://ns.adobe.com/xap/1.0/")
+
+ # Set the metadata property using the registered prefix
+ document.metadata.add(
+ "xmp:ModifyDate", datetime.datetime.now().isoformat()
+ ) # ISO 8601 format
+
+ # Save the updated PDF document
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Opérations PDF avancées en Python](/pdf/fr/python-net/advanced-operations/)
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Travailler avec des pièces jointes PDF en Python](/pdf/fr/python-net/attachments/)
+- [Comparer des documents PDF en Python](/pdf/fr/python-net/compare-pdf-documents/)
diff --git a/fr/python-net/advanced-operations/securing-and-signing/_index.md b/fr/python-net/advanced-operations/securing-and-signing/_index.md
new file mode 100644
index 0000000000..699acfa9bb
--- /dev/null
+++ b/fr/python-net/advanced-operations/securing-and-signing/_index.md
@@ -0,0 +1,41 @@
+---
+title: Sécuriser et signer des fichiers PDF en Python
+linktitle: Sécurisation et signature de PDF
+type: docs
+weight: 210
+url: /fr/python-net/securing-and-signing/
+description: Apprenez comment signer, chiffrer, déchiffrer et sécuriser des fichiers PDF en Python, y compris les signatures numériques, les cartes à puce et les autorisations de documents.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Signez, chiffrez, déchiffrez et protégez des documents PDF en Python
+Abstract: Cette section explique comment sécuriser et signer des documents PDF en utilisant Aspose.PDF pour Python via .NET. Apprenez à appliquer des signatures numériques, à utiliser des cartes à puce et des certificats, à extraire les informations de signature et à gérer le chiffrement PDF, les mots de passe et les privilèges d'accès en Python.
+---
+
+Cette section explique comment appliquer en toute sécurité des signatures numériques aux documents PDF en utilisant Python Library. Bien que les termes signature électronique et signature numérique soient parfois utilisés de manière interchangeable, ils ne sont pas équivalents. Une signature numérique est soutenue par un [autorité de certification](https://en.wikipedia.org/wiki/Certificate_authority), fournissant un sceau de confiance qui protège le document contre la falsification. En revanche, une signature électronique est généralement utilisée pour indiquer l'intention d'une personne de signer un document, sans le même niveau de validation de sécurité.
+
+Utilisez ces guides lorsque vous devez protéger le contenu PDF, contrôler les autorisations du document, vérifier la confiance ou appliquer des signatures basées sur des certificats dans les flux de travail Python.
+
+## Tâches de sécurité et de signature couvertes
+
+Aspose.PDF prend en charge les signatures numériques :
+
+- PKCS1 avec l'algorithme de signature RSA et le hachage SHA-1.
+- PKCS7 avec algorithme de signature RSA et empreinte SHA-1.
+- PKCS7 détaché avec les algorithmes de signature DSA, RSA et ECDSA. Les algorithmes d'empreinte pris en charge dépendent de l'algorithme de signature.
+- Signature d'horodatage.
+
+Algorithmes d'empreinte pour PKCS7 détaché :
+
+- DSA - SHA-1.
+- RSA - SHA-1, SHA-256, SHA-384, SHA-512.
+- ECDSA - SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384, SHA3-512.
+
+Il est recommandé d'éviter les signatures numériques avec l'algorithme de hachage SHA-1 en raison de son manque de sécurité.
+
+- [Signer numériquement le fichier PDF](/pdf/fr/python-net/digitally-sign-pdf-file/)
+- [Définir les privilèges, chiffrer et déchiffrer le fichier PDF](/pdf/fr/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
+- [Extraire les informations d'image et de signature](/pdf/fr/python-net/extract-image-and-signature-information/)
+- [Signer le document PDF depuis une carte à puce](/pdf/fr/python-net/sign-pdf-document-from-smart-card/)
diff --git a/fr/python-net/advanced-operations/securing-and-signing/digitally-sign-pdf-file/_index.md b/fr/python-net/advanced-operations/securing-and-signing/digitally-sign-pdf-file/_index.md
new file mode 100644
index 0000000000..83066f7019
--- /dev/null
+++ b/fr/python-net/advanced-operations/securing-and-signing/digitally-sign-pdf-file/_index.md
@@ -0,0 +1,232 @@
+---
+title: Ajouter une signature numérique ou signer numériquement un PDF en Python
+linktitle: Signer numériquement le PDF
+type: docs
+weight: 10
+url: /fr/python-net/digitally-sign-pdf-file/
+description: Apprenez à signer numériquement des documents PDF, ajouter des horodatages et valider les signatures en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Signez numériquement des fichiers PDF avec Python
+Abstract: Ce guide explique comment signer numériquement des documents PDF à l'aide d'Aspose.PDF for Python via .NET. Il détaille le processus d'application de signatures numériques standard et avancées, en utilisant des certificats (PFX et PKCS#12), et la personnalisation de l'apparence et du comportement de la signature. La documentation comprend des exemples de code qui démontrent comment signer des PDF existants, ajouter des horodatages et vérifier la validité de la signature. Cela permet aux développeurs d'assurer l'authenticité, l'intégrité et la conformité des documents aux normes de signature numérique dans leurs applications Python.
+---
+
+## Signer le PDF avec des signatures numériques
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_document(infile: str, outfile: str, pfxfile: str) -> None:
+ """Sign a PDF document with a PKCS#7 certificate."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7(pfxfile, "12345")
+ signature.sign(1, True, drawing.Rectangle(300, 100, 400, 200), pkcs)
+ signature.save(outfile)
+```
+
+Une **signature détachée PKCS#7** ajoute une signature numérique à un document sans intégrer le contenu dans le bloc de signature.
+
+Utilisez ces exemples lorsque vous devez appliquer des signatures basées sur des certificats aux fichiers PDF, vérifier la validité des signatures ou ajouter des horodatages de confiance aux documents signés.
+
+L'exemple suivant signe un document PDF en utilisant une signature numérique détachée PKCS#7, appliquant la signature à la première page dans une zone rectangulaire spécifiée.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_document_PKCS7_detached(
+ infile: str,
+ outfile: str,
+ pfxfile: str,
+ password: str,
+) -> None:
+ """Sign a PDF document with a detached PKCS#7 certificate."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7Detached(
+ pfxfile,
+ password,
+ ap.DigestHashAlgorithm.SHA256,
+ )
+ signature.sign(1, True, drawing.Rectangle(300, 100, 400, 200), pkcs)
+ signature.save(outfile)
+```
+
+**Vérifier toutes les signatures numériques dans un document PDF**
+
+1. Crée une instance de PdfFileSignature qui vous permet d'interagir avec les signatures dans le PDF.
+1. Obtenez une liste des noms de signature `get_signature_names(True)`.
+1. Vérifie la première signature de la liste `verify_signature` pour se conformer au certificat spécifié.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify(infile: str) -> None:
+ """Verify all digital signatures in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_name in signature.get_signature_names(True):
+ if not signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+**Vérifier une signature avec un fichier de certificat de clé publique**
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_with_public_key_certificate1(certificate: str, infile: str) -> None:
+ """Verify a signature with a public key certificate file."""
+ with ap.facades.PdfFileSignature(infile) as file_sign:
+ signature_names = file_sign.get_signature_names(True)
+ with open(certificate, "rb") as file_stream:
+ certificate_bytes = file_stream.read()
+ print(file_sign.verify_signature(signature_names[0], certificate_bytes))
+```
+
+**Vérifier une signature avec le certificat extrait du fichier**
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_with_public_key_certificate_from_signature(infile: str) -> None:
+ """Verify a signature with the certificate extracted from the file."""
+ with ap.facades.PdfFileSignature(infile) as file_sign:
+ signature_names = file_sign.get_signature_names(True)
+ certificate = []
+ if file_sign.try_extract_certificate(signature_names[0], certificate):
+ print(file_sign.verify_signature(signature_names[0], certificate[0]))
+ else:
+ print(False)
+```
+
+**Vérifier les signatures avec la validation de la chaîne de certificats activée**
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_signature_with_certificate_check(infile: str) -> None:
+ """Verify signatures with certificate-chain validation enabled."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_name in signature.get_signature_names(True):
+ options = ap.security.ValidationOptions()
+ options.validation_mode = ap.security.ValidationMode.STRICT
+ options.validation_method = ap.security.ValidationMethod.AUTO
+ options.check_certificate_chain = True
+ options.request_timeout = 20000
+ validation_result = []
+ verified = signature.verify_signature(
+ signature_name,
+ options,
+ validation_result,
+ )
+ print(f"Certificate validation result: {validation_result[0].status}")
+ print(f"Is verified: {verified}")
+```
+
+## Ajouter un horodatage à la signature numérique
+
+### Comment signer numériquement un PDF avec horodatage
+
+Aspose.PDF for Python prend en charge la signature numérique du PDF avec un serveur d'horodatage ou un service Web.
+
+Afin d’accomplir cette exigence, le [TimestampSettings](https://reference.aspose.com/pdf/python-net/aspose.pdf/timestampsettings/) Une classe a été ajoutée à l'espace de noms Aspose.PDF. Veuillez consulter le fragment de code suivant qui récupère l'horodatage et l'ajoute au document PDF :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_with_time_stamp_server(
+ infile: str,
+ outfile: str,
+ pfxfile: str,
+ password: str,
+) -> None:
+ """Sign a PDF document and apply a timestamp from an external server."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7(pfxfile, password)
+ pkcs.timestamp_settings = ap.TimestampSettings(
+ "https://freetsa.org/tsr",
+ "",
+ ap.DigestHashAlgorithm.SHA256,
+ )
+ rect = drawing.Rectangle(100, 100, 200, 100)
+ signature.sign(
+ 1, "Signature Reason", "Contact", "Location", True, rect, pkcs
+ )
+ signature.save(outfile)
+```
+
+## Signer des documents PDF en utilisant ECDSA
+
+Signer des documents PDF en utilisant ECDSA (Elliptic Curve Digital Signature Algorithm) implique d'utiliser la cryptographie à courbes elliptiques pour générer des signatures numériques.
+
+L'extrait de code ci‑dessus illustre comment appliquer une signature numérique détachée PKCS#7 à un document PDF en utilisant Aspose.PDF for Python. En chargeant le document, en configurant l'apparence de la signature et les paramètres de sécurité, puis en enregistrant le résultat, cet exemple démontre un flux de travail complet et fiable pour signer numériquement des fichiers PDF.
+
+Cette méthode garantit l'authenticité et l'intégrité du document en incorporant une signature sécurisée et vérifiable sur la première page. L'utilisation de SHA-256 comme algorithme de hachage répond aux normes cryptographiques modernes, tandis que la possibilité de contrôler le placement de la signature offre une flexibilité pour les marques d'approbation visibles.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_ecdsa(infile: str, outfile: str, pfxfile: str, password: str) -> None:
+ """Sign a PDF document with an ECDSA signature."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7Detached(
+ pfxfile,
+ password,
+ ap.DigestHashAlgorithm.SHA256,
+ )
+ signature.sign(1, True, drawing.Rectangle(300, 100, 400, 200), pkcs)
+ signature.save(outfile)
+```
+
+**Vérifier les signatures ECDSA dans un document PDF**
+
+```python
+def verify_ecdsa(infile: str) -> None:
+ """Verify ECDSA signatures in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ if not signature.contains_signature():
+ raise Exception("Not contains signature")
+
+ for signature_name in signature.get_signature_names(True):
+ if not signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+## Sujets de sécurité associés
+
+- [Sécurisez et signez les fichiers PDF en Python](/pdf/fr/python-net/securing-and-signing/)
+- [Extraire les informations d'image et de signature en Python](/pdf/fr/python-net/extract-image-and-signature-information/)
+- [Signer des documents PDF à partir d'une carte à puce en Python](/pdf/fr/python-net/sign-pdf-document-from-smart-card/)
+- [Chiffrer et déchiffrer des fichiers PDF en Python](/pdf/fr/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/securing-and-signing/extract-signature-info/_index.md b/fr/python-net/advanced-operations/securing-and-signing/extract-signature-info/_index.md
new file mode 100644
index 0000000000..56fc41a160
--- /dev/null
+++ b/fr/python-net/advanced-operations/securing-and-signing/extract-signature-info/_index.md
@@ -0,0 +1,170 @@
+---
+title: Extraire les informations de signature du PDF en Python
+linktitle: Extraire les détails de la signature
+type: docs
+weight: 20
+url: /fr/python-net/extract-image-and-signature-information/
+description: Apprenez comment extraire les images de signature, les certificats et les détails de signature numérique des fichiers PDF avec Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extrayez les images de signature et les détails des certificats des PDF avec Python
+Abstract: Cet article explique comment extraire les informations d'image et de signature numérique des documents PDF à l'aide d'Aspose.PDF for Python. Apprenez comment récupérer les images de signature, extraire les données du certificat, inspecter les algorithmes de signature et détecter les signatures compromises dans les fichiers PDF signés.
+---
+
+## Extraire l'image d'un champ de signature
+
+Aspose.PDF for Python via .NET vous permet de récupérer l'image visuelle intégrée dans un [SignatureField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/signaturefield/). Ceci est utile lorsque vous devez afficher ou archiver l'apparence de la signature sans rendre le PDF complet.
+
+L'exemple ci-dessous parcourt tous les champs de formulaire, et trouve chacun d'eux. `SignatureField`, et enregistre son image sous forme de fichier JPEG:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def extract_images_from_signature_field(infile: str, outfile: str) -> None:
+ """Extract the image stored in a signature field."""
+ with ap.Document(infile) as document:
+ for field in document.form:
+ if not isinstance(field, ap.forms.SignatureField):
+ continue
+
+ image_stream = field.extract_image()
+ if image_stream is None:
+ continue
+
+ image = drawing.Bitmap.from_stream(image_stream)
+ image.save(outfile, drawing.imaging.ImageFormat.jpeg)
+```
+
+## Lire les détails de l'algorithme de signature
+
+Utiliser `PdfFileSignature.get_signatures_info()` lire les métadonnées cryptographiques pour chaque signature d'un document — y compris l'algorithme de hachage, le type d'algorithme, la norme cryptographique et le nom de la signature :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def get_signatures_info(infile: str) -> None:
+ """Print information about all signatures in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_info in signature.get_signatures_info():
+ print(signature_info.DIGEST_HASH_ALGORITHM)
+ print(signature_info.ALGORITHM_TYPE)
+ print(signature_info.CRYPTOGRAPHIC_STANDARD)
+ print(signature_info.signature_name)
+```
+
+## Extraire un certificat numérique d'un champ de signature
+
+Utilisez le [extract_certificate()](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/signaturefield/#methods) méthode sur un `SignatureField` pour récupérer le certificat intégré sous forme de flux d'octets et l'enregistrer sur le disque pour une validation externe :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def extract_certificate(infile: str, outfile: str) -> None:
+ """Extract a certificate from a signature field and save it to disk."""
+ with ap.Document(infile, password="owner") as document:
+ for field in document.form:
+ if not isinstance(field, ap.forms.SignatureField):
+ continue
+
+ certificate_stream = field.extract_certificate()
+ if certificate_stream is None:
+ continue
+
+ with certificate_stream:
+ bytes_data = bytearray(certificate_stream.length)
+ certificate_stream.read(bytes_data, 0, len(bytes_data))
+ with open(outfile, "wb") as file_stream:
+ file_stream.write(bytes_data)
+ return
+```
+
+## Extraire les certificats en utilisant la façade PdfFileSignature
+
+`PdfFileSignature.try_extract_certificate()` fournit une méthode alternative pour récupérer les certificats par nom de signature. L'exemple suivant parcourt tous les noms de signature et tente l'extraction pour chacun :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def extract_certificate_try_extract_certificate_method(infile: str) -> None:
+ """Extract certificates with the try_extract_certificate facade method."""
+ with ap.Document(infile, password="owner") as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_name in signature.get_signature_names(True):
+ certificate = []
+ if signature.try_extract_certificate(signature_name, certificate):
+ print("The certificate extraction succeeded")
+```
+
+## Vérifier les signatures numériques externes
+
+Pour confirmer qu'un document n'a pas été modifié après la signature, vérifiez chaque signature externe en utilisant `PdfFileSignature.verify_signature()`. L'exemple ci-dessous lève une exception pour toute signature qui échoue à la vérification :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_external_signature(infile: str) -> None:
+ """Verify an external signature in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as pdf_signature:
+ for signature_name in pdf_signature.get_signature_names(True):
+ if not pdf_signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+## Détecter les signatures compromises
+
+`SignaturesCompromiseDetector` vérifie si des signatures numériques dans un document ont été invalidées par des modifications ultérieures. Utilisez ceci dans les flux de travail juridiques, financiers ou de conformité où l’intégrité du document doit être garantie.
+
+L'exemple ci-dessous vérifie les signatures compromises et rapporte leurs noms ainsi que la couverture globale des signatures du document :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def check(infile: str) -> None:
+ """Check whether a PDF contains compromised signatures."""
+ with ap.Document(infile) as document:
+ detector = ap.SignaturesCompromiseDetector(document)
+ result = []
+
+ if detector.check(result):
+ print("No signature compromise detected")
+ return
+
+ if result[0].has_compromised_signatures:
+ print(
+ f"Count of compromised signatures: {len(result[0].COMPROMISED_SIGNATURES)}"
+ )
+ for signature_name in result[0].COMPROMISED_SIGNATURES:
+ print(f"Signature name: {signature_name.FULL_NAME}")
+
+ print(result[0].signatures_coverage)
+```
+
+## Sujets de sécurité associés
+
+- [Sécurisez et signez les fichiers PDF en Python](/pdf/fr/python-net/securing-and-signing/)
+- [Signer numériquement des fichiers PDF en Python](/pdf/fr/python-net/digitally-sign-pdf-file/)
+- [Signer des documents PDF à partir d'une carte à puce en Python](/pdf/fr/python-net/sign-pdf-document-from-smart-card/)
+- [Chiffrer et déchiffrer des fichiers PDF en Python](/pdf/fr/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
diff --git a/fr/python-net/advanced-operations/securing-and-signing/set-privileges/_index.md b/fr/python-net/advanced-operations/securing-and-signing/set-privileges/_index.md
new file mode 100644
index 0000000000..7087305faf
--- /dev/null
+++ b/fr/python-net/advanced-operations/securing-and-signing/set-privileges/_index.md
@@ -0,0 +1,228 @@
+---
+title: Chiffrer et déchiffrer des fichiers PDF en Python
+linktitle: Chiffrer et déchiffrer un fichier PDF
+type: docs
+weight: 70
+url: /fr/python-net/set-privileges-encrypt-and-decrypt-pdf-file/
+description: Apprenez à définir les privilèges PDF, chiffrer les fichiers, déchiffrer les PDF protégés et modifier les mots de passe en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définissez les autorisations PDF et gérez le chiffrement en Python
+Abstract: Cette page de documentation explique comment définir les privilèges d'un document, appliquer le chiffrement et déchiffrer des fichiers PDF à l'aide d'Aspose.PDF for Python. Elle guide les développeurs dans la configuration des mots de passe utilisateur et propriétaire, ainsi que dans la définition des restrictions d'accès (comme l'impression, la copie ou la modification). Des exemples de code illustrent comment protéger le contenu sensible et gérer la sécurité des PDF efficacement au sein des applications Python, garantissant un accès contrôlé et la confidentialité des données.
+---
+
+La gestion de la sécurité des documents est essentielle lorsqu'on travaille avec du contenu sensible ou crucial pour l'entreprise. Aspose.PDF for Python via .NET fournit une API robuste pour appliquer programmatiquement le chiffrement, contrôler l'accès via les autorisations et déchiffrer les fichiers PDF protégés.
+
+Cet article guide les développeurs Python à travers des exemples pratiques pour définir les privilèges, appliquer et supprimer le chiffrement, modifier les mots de passe et détecter les états de protection — le tout dans le cadre d’un flux de travail PDF.
+
+Aspose.PDF for Python via .NET donne aux développeurs un contrôle total sur la sécurité des PDF:
+
+**Définir les privilèges** - Contrôle d'accès granulaire à l'aide des autorisations.
+**Chiffrer le fichier** - Appliquer le chiffrement AES ou RC4 avec des mots de passe personnalisés.
+**Déchiffrer le fichier** - Supprimer la sécurité à l'aide du mot de passe propriétaire.
+**Changer les mots de passe** - Faire pivoter ou mettre à jour les informations d\u00e9\u00a0identification sans alt\u00e9rer le contenu.
+**Inspecter la sécurité** - Détecter l'état du chiffrement ou les types de mot de passe requis.
+
+Utilisez cette page lorsque vous devez protéger des documents PDF avec des mots de passe, restreindre l'impression ou la copie, faire pivoter les informations d'identification, ou vérifier si un document est chiffré.
+
+## Définir les privilèges sur un fichier PDF existant
+
+Vous pouvez restreindre ou autoriser des opérations spécifiques (par exemple, l'impression, la copie, le remplissage de formulaires) en attribuant des mots de passe utilisateur et propriétaire ainsi que des privilèges d'accès.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def set_privileges_on_existing_pdf_file(infile: str, outfile: str) -> None:
+ """Set restricted privileges on an existing PDF document."""
+ with ap.Document(infile) as document:
+ document_privilege = ap.facades.DocumentPrivilege.forbid_all
+ document_privilege.allow_screen_readers = True
+ document.encrypt(
+ "user",
+ "owner",
+ document_privilege,
+ ap.CryptoAlgorithm.AESx128,
+ False,
+ )
+ document.save(outfile)
+```
+
+## Chiffrer le fichier PDF en utilisant différents types de chiffrement et algorithmes
+
+Le chiffrement d'un PDF garantit que seuls les utilisateurs disposant d'identifiants valides peuvent ouvrir ou modifier le fichier.
+
+>Termes clés :
+
+- Mot de passe utilisateur. Requis pour ouvrir le document.
+
+- Mot de passe propriétaire. Nécessaire pour modifier les autorisations ou supprimer le chiffrement.
+
+- KeySize. Utilisez AE_SX128 pour une sécurité maximale dans les flux de travail modernes.
+
+Le fragment de code suivant vous montre comment chiffrer des fichiers PDF.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def encrypt_pdf_file(infile: str, outfile: str) -> None:
+ """Encrypt a PDF document with user and owner passwords."""
+ with ap.Document(infile) as document:
+ document.encrypt(
+ "user",
+ "owner",
+ ap.Permissions.EXTRACT_CONTENT,
+ ap.CryptoAlgorithm.AESx128,
+ )
+ document.save(outfile)
+```
+
+## Décrypter le fichier PDF en utilisant le mot de passe propriétaire
+
+Pour supprimer la protection par mot de passe et rétablir l'accès complet :
+
+1. Charge le PDF chiffré en utilisant le mot de passe correct ('password' est le mot de passe utilisateur ou propriétaire).
+1. Supprime toutes les protections par mot de passe et les paramètres de chiffrement du document.
+1. Enregistre le PDF désormais non protégé dans le fichier de sortie spécifié.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def decrypt_pdf_file(infile: str, outfile: str) -> None:
+ """Decrypt a password-protected PDF document."""
+ with ap.Document(infile, "password") as document:
+ document.decrypt()
+ document.save(outfile)
+```
+
+## Chiffrer et déchiffrer un PDF avec des certificats à clé publique
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def pub_sec_encryption(
+ crypto_algorithm,
+ pub_cert: str,
+ in_pfx: str,
+ outfile: str,
+) -> None:
+ """Demonstrate public-key encryption and decryption."""
+ pfx_password = "12345"
+
+ with ap.Document() as document:
+ document.info.title = "TestTitle"
+ document.info.author = "TestAuthor"
+ page = document.pages.add()
+ page.paragraphs.add(ap.text.TextFragment("Hello World!"))
+
+ with open(pub_cert, "rb") as file_stream:
+ byte_content = file_stream.read()
+
+ document.encrypt(
+ ap.Permissions.PRINT_DOCUMENT,
+ crypto_algorithm,
+ [byte_content],
+ )
+ document.save(outfile)
+
+ with ap.Document(
+ outfile,
+ ap.security.CertificateEncryptionOptions(pub_cert, in_pfx, pfx_password),
+ ) as document:
+ print(document.info.title)
+ print(document.info.author)
+
+ text_absorber = ap.text.TextAbsorber()
+ document.pages[1].accept(text_absorber)
+ print(text_absorber.text)
+
+ document.decrypt()
+ document.save(path.join(path.dirname(outfile), "pubsec_decrypted_out.pdf"))
+```
+
+## Modifier le mot de passe d’un fichier PDF
+
+Mettre à jour les informations d'identification de sécurité (mot de passe utilisateur et propriétaire) d'un document PDF tout en préservant son contenu et sa structure.
+
+1. Ouvre le PDF en utilisant le mot de passe propriétaire existant ('owner'), ce qui donne un accès complet, y compris la permission de modifier les paramètres de sécurité.
+1. Remplace les anciens mots de passe par un nouveau mot de passe utilisateur ('newuser') et un nouveau mot de passe propriétaire ('newowner').
+1. Enregistre le PDF avec les paramètres de mot de passe mis à jour.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def change_password(infile: str, outfile: str) -> None:
+ """Change the passwords of a password-protected PDF document."""
+ with ap.Document(infile, "owner") as document:
+ document.change_passwords("owner", "newuser", "newowner")
+ document.save(outfile)
+```
+
+## Comment - déterminer si le PDF source est protégé par mot de passe
+
+### Déterminez le mot de passe correct à partir du tableau
+
+Dans certains scénarios, vous pourriez devoir identifier le mot de passe correct parmi une liste de candidats potentiels afin d'accéder à un PDF sécurisé. Le fragment de code ci‑dessous montre comment vérifier si un fichier PDF est protégé par mot de passe, puis tenter de le débloquer en parcourant une liste prédéfinie de mots de passe à l'aide d'Aspose.PDF for Python via .NET.
+
+Le processus comprend :
+
+1. Utilisation de PdfFileInfo pour détecter si le PDF est chiffré.
+1. Essaye d'ouvrir le PDF avec chaque mot de passe en utilisant ap.Document().
+1. Si l'opération réussit, il affiche le nombre de pages.
+1. Sinon, il intercepte l'exception et signale le mot de passe incorrect.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def determine_correct_password_from_array(infile: str) -> None:
+ """Try a list of passwords until the document opens successfully."""
+ with ap.facades.PdfFileInfo() as pdf_file_info:
+ pdf_file_info.bind_pdf(infile)
+ print(f"File is password protected {pdf_file_info.is_encrypted}")
+
+ passwords = ["test", "test1", "test2", "test3", "sample"]
+
+ for password in passwords:
+ try:
+ with ap.Document(infile, password) as document:
+ if len(document.pages) > 0:
+ print(f"Password = {password} is correct")
+ print(f"Number of pages in document = {len(document.pages)}")
+ break
+ except Exception:
+ print(f"Password = {password} is not correct")
+```
+
+## Sujets de sécurité associés
+
+- [Sécurisez et signez les fichiers PDF en Python](/pdf/fr/python-net/securing-and-signing/)
+- [Signer numériquement des fichiers PDF en Python](/pdf/fr/python-net/digitally-sign-pdf-file/)
+- [Extraire les informations de signature du PDF en Python](/pdf/fr/python-net/extract-image-and-signature-information/)
+- [Signer des documents PDF à partir d'une carte à puce en Python](/pdf/fr/python-net/sign-pdf-document-from-smart-card/)
+
diff --git a/fr/python-net/advanced-operations/securing-and-signing/sign-pdf-document-from-smart-card/_index.md b/fr/python-net/advanced-operations/securing-and-signing/sign-pdf-document-from-smart-card/_index.md
new file mode 100644
index 0000000000..bd27fc883f
--- /dev/null
+++ b/fr/python-net/advanced-operations/securing-and-signing/sign-pdf-document-from-smart-card/_index.md
@@ -0,0 +1,131 @@
+---
+title: Signer des documents PDF à partir d'une carte à puce en Python
+linktitle: Signature PDF avec carte à puce
+type: docs
+weight: 30
+url: /fr/python-net/sign-pdf-document-from-smart-card/
+description: Apprenez comment signer des documents PDF avec des cartes à puce et des certificats externes en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Signer des documents PDF à partir d'une carte à puce avec Python
+Abstract: Ce guide explique comment signer numériquement des documents PDF à l'aide d'une carte à puce avec Aspose.PDF for Python via .NET. Il montre comment accéder aux certificats stockés sur des périphériques matériels (tels que des jetons USB ou des cartes à puce) via le Windows Certificate Store et les utiliser pour signer des fichiers PDF. La documentation comprend des exemples de code qui montrent comment localiser le certificat approprié, configurer les propriétés de la signature et intégrer la signature numérique dans le PDF. Cela permet une signature sécurisée, prise en charge par le matériel, conforme aux normes de signature numérique, adaptée aux flux de travail d'entreprise et juridiques à haute confiance.
+---
+
+Aspose.PDF fournit des capacités robustes pour l'intégration des composants de signature visuelle et cryptographique, garantissant à la fois l'authenticité et une présentation professionnelle dans les documents PDF signés numériquement.
+
+Utilisez ce flux de travail lorsque votre processus de signature dépend de certificats stockés sur des appareils matériels tels que les cartes à puce, les jetons USB ou les magasins de certificats gérés.
+
+## Signer avec une carte à puce en utilisant le champ de signature
+
+Cet exemple montre comment signer numériquement un document PDF à l'aide d'un certificat externe avec Aspose.PDF for Python et appliquer une image d'apparence de signature personnalisée :
+
+1. Ouverture du document PDF.
+1. Création d'un objet PdfFileSignature et liaison de celui-ci au document.
+1. Récupération d'un certificat numérique local à l'aide d'une méthode personnalisée `get_local_certificate()`.
+1. Configuration d'une ExternalSignature basée sur le certificat sélectionné.
+1. Appliquer une image personnalisée d'apparence de signature (par ex., un logo d'entreprise ou une signature manuscrite).
+1. Signer numériquement la première page du document avec les métadonnées spécifiées (raison, contact, emplacement).
+1. Enregistrer le document signé dans un nouveau fichier de sortie.
+
+Cette méthode est idéale pour les cas où les signatures doivent être appliquées de manière programmatique à l'aide de certificats externes—tels que des jetons matériels, des magasins de certificats ou des fournisseurs de confiance—et présentées avec une mise en page visuelle personnalisée.
+
+Voici les extraits de code pour signer un document PDF à partir d'une carte à puce :
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_with_smart_card(infile: str, outfile: str, pngfile: str) -> None:
+ """Sign a PDF document using a smart-card certificate."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature() as pdf_signature:
+ pdf_signature.bind_pdf(document)
+ external_signature = ap.forms.ExternalSignature(get_local_certificate())
+ pdf_signature.signature_appearance = pngfile
+ pdf_signature.sign(
+ 1,
+ "Reason",
+ "Contact",
+ "Location",
+ True,
+ drawing.Rectangle(100, 100, 200, 200),
+ external_signature,
+ )
+ pdf_signature.save(outfile)
+```
+
+## Vérifier les signatures numériques
+
+Cet extrait de code montre comment vérifier les signatures numériques dans un document PDF en utilisant Aspose.PDF for Python:
+
+1. Ouverture du fichier PDF.
+1. Création d'un 'PdfFileSignature object' et liaison au document.
+1. Récupération de la liste de tous les noms de champs de signature en utilisant 'get_signature_names()'.
+1. Itération à travers chaque signature et vérification de sa validité avec 'verify_signature()'.
+1. Lever une exception si une signature échoue la vérification.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_external_signature(infile: str) -> None:
+ """Verify an external signature in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as pdf_signature:
+ for signature_name in pdf_signature.get_signature_names(True):
+ if not pdf_signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+## Signer avec un certificat externe
+
+Cet extrait de code montre comment ajouter et signer un champ de signature numérique dans un document PDF en utilisant Aspose.PDF for Python avec un certificat externe :
+
+1. Ouverture du fichier PDF en tant que flux binaire.
+1. Création d'un SignatureField et placement sur la première page du document à une position spécifiée.
+1. Récupération d'un certificat numérique local à l'aide d'une méthode personnalisée `get_local_certificate()`.
+1. Configuration d'un ExternalSignature avec des métadonnées telles que l'autorité, le motif et les coordonnées.
+1. Attribuer un nom de champ unique au champ de signature (partial_name = "sig1").
+1. Ajouter le champ de signature aux champs de formulaire du PDF.
+1. Signer le champ avec le certificat externe.
+1. Enregistrer le document signé dans un fichier de sortie.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def get_signature_info_using_signature_field(infile: str, outfile: str) -> None:
+ """Create a signature field and sign it with an external certificate."""
+ with open(infile, "rb+") as file_stream:
+ document = ap.Document(file_stream)
+ signature_field = ap.forms.SignatureField(
+ document.pages[1],
+ ap.Rectangle(100, 400, 10, 10, True),
+ )
+ selected_certificate = get_local_certificate()
+ external_signature = ap.forms.ExternalSignature(selected_certificate)
+ external_signature.authority = "Me"
+ external_signature.reason = "Reason"
+ external_signature.contact_info = "Contact"
+ signature_field.partial_name = "sig1"
+ document.form.add(signature_field, 1)
+ signature_field.sign(external_signature)
+ document.save(outfile)
+```
+
+## Sujets de sécurité associés
+
+- [Sécurisez et signez les fichiers PDF en Python](/pdf/fr/python-net/securing-and-signing/)
+- [Signer numériquement des fichiers PDF en Python](/pdf/fr/python-net/digitally-sign-pdf-file/)
+- [Extraire les informations de signature du PDF en Python](/pdf/fr/python-net/extract-image-and-signature-information/)
+- [Chiffrer et déchiffrer des fichiers PDF en Python](/pdf/fr/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
+
diff --git a/fr/python-net/advanced-operations/working-with-documents/_index.md b/fr/python-net/advanced-operations/working-with-documents/_index.md
index 6040d772eb..9008ddf18f 100644
--- a/fr/python-net/advanced-operations/working-with-documents/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/_index.md
@@ -1,157 +1,33 @@
---
-title: Travailler avec des documents PDF en utilisant Python
+title: Travailler avec des documents PDF en Python
linktitle: Travailler avec des documents
type: docs
weight: 10
url: /fr/python-net/working-with-documents/
-description: Cet article vous décrit quelles manipulations peuvent être effectuées avec le document avec la bibliothèque Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-12"
+description: Apprenez comment créer, formater, manipuler, optimiser, fusionner, scinder et gérer des documents PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer, formater, fusionner, scinder et optimiser des documents PDF en Python
+Abstract: Cette section explique comment travailler avec des documents PDF à l'aide d'Aspose.PDF for Python via .NET. Apprenez à créer des fichiers PDF, à formater les propriétés du document, à manipuler la structure du contenu, à optimiser la taille du fichier, à fusionner et à scinder des PDF, et à gérer les calques de contenu optionnels dans les flux de travail Python.
---
-
+Les fichiers PDF sont conçus pour l'échange sûr et de haute qualité de documents, quel que soit le logiciel ou le système d'exploitation utilisé pour les visualiser. Ils peuvent être ouverts et consultés sur de nombreux appareils et systèmes d'exploitation, y compris les ordinateurs, les tablettes et les smartphones. Aujourd'hui, ces documents peuvent contenir des images, des tableaux, divers éléments interactifs, etc.
-PDF files sont conçus pour l'échange sûr et de haute qualité de documents, quel que soit le logiciel ou le système d'exploitation utilisé pour les visualiser. Ils peuvent être ouverts et consultés sur de nombreux appareils et systèmes d'exploitation, y compris les ordinateurs, les tablettes, et les smartphones. Aujourd'hui, de tels documents peuvent contenir des images, des tableaux, divers éléments interactifs, etc.
+Les documents PDF peuvent être visualisés et imprimés, mais ils ne sont pas toujours facilement éditables. Cependant, le **Aspose.PDF for Python via .NET** vous aidera à faire face même à la tâche la plus difficile lors du travail avec les PDF.
-Les documents PDF peuvent être consultés et imprimés, mais pas toujours facilement modifiés. Cependant, la **bibliothèque Aspose.PDF pour Python** vous aidera à faire face même à la tâche la plus difficile en travaillant avec des PDF.
+Utilisez cette section lorsque vous devez travailler avec des flux de travail PDF sur l'ensemble du document en Python, tels que la création de fichiers, la validation des normes, l'optimisation de la taille, la combinaison de plusieurs PDF ou la division de gros documents en plus petits.
-Vous êtes en mesure de faire ce qui suit :
+## Tâches de Document couvertes
-- [Créer un document PDF](/pdf/fr/python-net/create-pdf-document/) - créer un document PDF simple.
-- [Mise en forme d'un document PDF](/pdf/fr/python-net/formatting-pdf-document/) - créer un document, obtenir et définir les propriétés du document, intégrer des polices, et d'autres opérations avec des fichiers PDF.
+Vous pouvez faire ce qui suit :
-- [Manipuler un document PDF](/pdf/fr/python-net/manipulate-pdf-document/) - valider un document PDF pour la norme PDF A, travailler avec le sommaire, définir la date d'expiration du PDF, etc.
+- [Créer un document PDF](/pdf/fr/python-net/create-pdf-document/) - créer un document PDF simple.
+- [Formater le document PDF](/pdf/fr/python-net/formatting-pdf-document/) - créer un document, obtenir et définir les propriétés du document, intégrer des polices, et d'autres opérations avec des fichiers PDF.
+- [Manipuler le document PDF](/pdf/fr/python-net/manipulate-pdf-document/) - valider un document PDF pour la norme PDF A, travailler avec la TOC, définir la date d'expiration du PDF, etc.
- [Optimiser PDF](/pdf/fr/python-net/optimize-pdf/) - optimiser le contenu des pages, optimiser la taille du fichier, supprimer les objets inutilisés, compresser toutes les images pour une optimisation réussie du document.
-- [Fusionner PDF](/pdf/fr/python-net/merge-pdf-documents/) - fusionner plusieurs fichiers PDF en un seul document PDF en utilisant Python.
+- [Fusionner PDF](/pdf/fr/python-net/merge-pdf-documents/) - fusionner plusieurs fichiers PDF en un seul document PDF à l'aide de Python.
- [Diviser PDF](/pdf/fr/python-net/split-document/) - diviser les pages PDF en fichiers PDF individuels dans vos applications Python.
- [Travailler avec les titres](/pdf/fr/python-net/working-with-headings/) - vous pouvez créer une numérotation dans les titres de votre document PDF avec Python.
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
index fd5590108a..6647ef8332 100644
--- a/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
@@ -1,105 +1,94 @@
---
-
-title: Comment créer un PDF en utilisant Python
-linktitle: Créer un document PDF
-type: docs
-weight: 10
-url: /fr/python-net/create-pdf-document/
-description: Créez et formatez le document PDF avec Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-12"
-sitemap:
- changefreq: "monthly"
- priority: 0.7
+title: Créer des fichiers PDF en Python
+linktitle: Créer un document PDF
+type: docs
+weight: 10
+url: /fr/python-net/create-pdf-document/
+description: Apprenez comment créer des fichiers PDF et générer des PDF consultables en Python en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un fichier PDF avec Python
+Abstract: Aspose.PDF for Python via .NET est une API polyvalente conçue pour les développeurs afin de manipuler les fichiers PDF au sein d’applications Python ciblant le framework .NET. Elle permet aux utilisateurs de créer, charger, modifier et convertir des documents PDF sans effort. Cet article propose un guide étape par étape pour créer un fichier PDF simple à l’aide d’Aspose.PDF. Le processus consiste à initialiser un objet `Document`, à ajouter une `Page` au document, à insérer un `TextFragment` dans les paragraphes de la page, puis à enregistrer le fichier au format PDF. L’extrait de code Python inclus illustre ces étapes en créant un document PDF contenant le texte "Hello World!". Cette API simplifie la gestion des PDF avec un code minimal, améliorant la productivité des développeurs travaillant avec des PDF dans les environnements .NET.
---
-
-
-
-**Aspose.PDF pour Python via .NET** est une API de manipulation de PDF qui permet aux développeurs de créer, charger, modifier et convertir des fichiers PDF directement à partir d'applications Python pour .NET avec seulement quelques lignes de code.
+**Aspose.PDF for Python via .NET** est une API de manipulation de PDF qui permet aux développeurs de créer, charger, modifier et convertir des fichiers PDF directement depuis Python pour les applications .NET en seulement quelques lignes de code.
+
+Utilisez ces exemples lorsque vous devez générer de nouveaux fichiers PDF à partir de zéro ou convertir la sortie OCR en documents PDF recherchables en Python.
## Comment créer un fichier PDF simple
-Pour créer un PDF en utilisant Python via .NET avec Aspose.PDF, vous pouvez suivre ces étapes :
+Pour créer un PDF en utilisant Python via .NET avec Aspose.PDF, vous pouvez suivre ces étapes :
-1. Créez un objet de la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
-1. Ajoutez un objet [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à la collection [pages](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) de l'objet Document
-1. Ajoutez [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) à la collection [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) de la page
+1. Créez un objet de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe
+1. Ajouter un [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) objet à le [pages](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) collection de le Document objet
+1. Ajouter [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) à [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) collection de la page
1. Enregistrez le document PDF résultant
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Initialiser l'objet document
+def create_new_document(output_pdf):
+ """Create a simple PDF with a single “Hello World!” page."""
document = ap.Document()
- # Ajouter une page
page = document.pages.add()
- # Ajouter du texte à la nouvelle page
page.paragraphs.add(ap.text.TextFragment("Hello World!"))
- # Enregistrer le PDF mis à jour
document.save(output_pdf)
-```
\ No newline at end of file
+```
+
+## Comment créer un document PDF consultable
+
+Aspose.PDF for Python via .NET permet de créer et de manipuler des documents PDF existants. Lors de l'ajout d'éléments Text à un fichier PDF, le PDF résultant est consultable. Cependant, lors de la conversion d'une image contenant du texte en fichier PDF, le contenu du PDF résultant n'est pas consultable. Comme solution de contournement, nous pouvons appliquer l'OCR au fichier résultant afin qu'il devienne consultable.
+
+Le code complet suivant permet de répondre à cette exigence :
+
+1. Chargez le PDF en utilisant 'ap.Document'.
+1. Configurez la résolution de rendu.
+1. Utilisez 'PngDevice.process' pour convertir la page PDF sélectionnée en image.
+1. Exécutez l’OCR sur l’image générée.
+1. Créez un nouveau PDF à partir de la sortie OCR.
+1. Enregistrez le PDF consultable.
+
+```python
+import aspose.pdf as ap
+import io
+
+# Requires: pip install pytesseract
+# Also ensure the Tesseract OCR engine is installed and available on your system PATH.
+import pytesseract
+from pathlib import Path
+
+
+# Path to the source PDF
+input_pdf_path = "input.pdf"
+# Path for the temporary image
+temp_image_path = "temp_image.png"
+# Path for the searchable PDF
+output_pdf_path = "output_searchable.pdf"
+page_number = 1
+image_stream = io.FileIO(temp_image_path, "w")
+try:
+ document = ap.Document(input_pdf_path)
+ resolution = ap.devices.Resolution(300)
+ png_device = ap.devices.PngDevice(resolution)
+ png_device.process(document.pages[page_number], image_stream)
+ image_stream.close()
+ pdf = pytesseract.image_to_pdf_or_hocr(temp_image_path, extension="pdf")
+ document = ap.Document(io.BytesIO(pdf))
+ document.save(output_pdf_path)
+finally:
+ image_file = Path(temp_image_path)
+ image_file.unlink(missing_ok=True)
+```
+
+## Sujets de documents associés
+
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Formater des documents PDF en Python](/pdf/fr/python-net/formatting-pdf-document/)
+- [Manipuler des documents PDF en Python](/pdf/fr/python-net/manipulate-pdf-document/)
+- [Optimiser les fichiers PDF en Python](/pdf/fr/python-net/optimize-pdf/)
+
diff --git a/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/example.png b/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/example.png
new file mode 100644
index 0000000000..67f77f8bfa
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-documents/create-pdf-document/example.png differ
diff --git a/fr/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md
index 8df6986889..8ed5f090ee 100644
--- a/fr/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md
@@ -1,389 +1,256 @@
---
-title: Formatage du document PDF en utilisant Python
-linktitle: Formatage du document PDF
+title: Formater des documents PDF en Python
+linktitle: Mise en forme du document PDF
type: docs
weight: 11
url: /fr/python-net/formatting-pdf-document/
-description: Créer et formater le document PDF avec Aspose.PDF pour Python via .NET. Utilisez le prochain extrait de code pour résoudre vos tâches.
-lastmod: "2023-04-12"
+description: Apprenez à formater les documents PDF, à incorporer des polices, à contrôler les paramètres du visualiseur et à ajuster les options d'affichage en Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Formater des documents PDF avec Python
+Abstract: L'article propose un guide complet sur la manipulation et le formatage des documents PDF à l'aide de la bibliothèque Aspose.PDF en Python. Il couvre divers aspects de la personnalisation des PDF, notamment la configuration des propriétés de la fenêtre du document et de l'affichage des pages, telles que le centrage de la fenêtre, la direction de lecture et la dissimulation des éléments de l'interface utilisateur. L'article explique comment récupérer et définir ces propriétés programmatiquement en utilisant la classe `Document`. En outre, il aborde la gestion des polices, détaillant comment intégrer les polices Standard Type 1 et d'autres polices dans les PDF, assurant la portabilité du document et la cohérence visuelle sur différents systèmes. Il met également en avant des techniques pour définir un nom de police par défaut, récupérer toutes les polices d'un PDF et améliorer l'intégration des polices à l'aide de `FontSubsetStrategy`. De plus, l'article développe l'ajustement du facteur de zoom des documents PDF en utilisant la classe `GoToAction` et la configuration des propriétés prédéfinies de la boîte de dialogue d'impression, y compris les options d'impression recto‑verso. Des extraits de code accompagnent chaque section, fournissant des exemples pratiques pour implémenter ces fonctionnalités.
---
-
-
-
-## Mise en Forme du Document PDF
-
-### Obtenir les Propriétés de la Fenêtre du Document et de l'Affichage des Pages
-
-Ce sujet vous aide à comprendre comment obtenir les propriétés de la fenêtre du document, de l'application de visualisation, et comment les pages sont affichées. Pour définir ces propriétés :
-
-Ouvrez le fichier PDF en utilisant la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Maintenant, vous pouvez définir les propriétés de l'objet Document, telles que
-
-- CenterWindow – Centre la fenêtre du document sur l'écran. Par défaut : faux.
-- Direction – Ordre de lecture. Cela détermine comment les pages sont disposées lorsqu'elles sont affichées côte à côte. Par défaut : de gauche à droite.
-- DisplayDocTitle – Affiche le titre du document dans la barre de titre de la fenêtre du document. Par défaut : faux (le titre est affiché).
-- HideMenuBar – Masquer ou afficher la barre de menu de la fenêtre du document. Par défaut : faux (la barre de menu est affichée).
-- HideToolBar – Masquer ou afficher la barre d'outils de la fenêtre du document. Par défaut : faux (la barre d'outils est affichée).
-- HideWindowUI – Masquer ou afficher des éléments de la fenêtre du document comme les barres de défilement.
- Default: false (Les éléments de l'interface utilisateur sont affichés).
-- NonFullScreenPageMode – Comment le document est affiché lorsqu'il n'est pas en mode plein écran.
-- PageLayout – La mise en page.
-- PageMode – Comment le document est affiché lorsqu'il est ouvert pour la première fois. Les options sont afficher les miniatures, plein écran, afficher le panneau des pièces jointes.
-
-Le fragment de code suivant vous montre comment obtenir les propriétés à l'aide de la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Obtenir différentes propriétés du document
- # Position de la fenêtre du document - Par défaut : faux
- print("CenterWindow :", document.center_window)
+Ce guide est utile lorsque vous devez contrôler le comportement du visualiseur PDF, l'intégration de polices, les paramètres d'affichage par défaut ou les préférences d'impression dans des documents générés en Python.
- # Ordre de lecture prédominant ; détermine la position de la page
- # Lorsqu'elle est affichée côte à côte - Par défaut : L2R
- print("Direction :", document.direction)
+## Mise en forme du document PDF
- # Si la barre de titre de la fenêtre doit afficher le titre du document
- # Si faux, la barre de titre affiche le nom du fichier PDF - Par défaut : faux
- print("DisplayDocTitle :", document.display_doc_title)
+### Obtenir les propriétés d’affichage de la fenêtre du document et de la page
- # Si la fenêtre du document doit être redimensionnée pour s'adapter à la taille de
- # La première page affichée - Par défaut : faux
- print("FitWindow :", document.fit_window)
+Ce sujet vous aide à comprendre comment obtenir les propriétés de la fenêtre du document, de l'application de visualisation, et comment les pages sont affichées. Pour définir ces propriétés :
- # Si la barre de menu de l'application de visualisation doit être cachée - Par défaut : faux
- print("HideMenuBar :", document.hide_menubar)
+Ouvrez le fichier PDF en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe. Maintenant, vous pouvez définir les propriétés de l'objet Document, telles que
- # Si la barre d'outils de l'application de visualisation doit être cachée - Par défaut : faux
- print("HideToolBar :", document.hide_tool_bar)
+- CenterWindow – Centrer la fenêtre du document à l'écran. Valeur par défaut : false.
+- Direction – Ordre de lecture. Ceci détermine comment les pages sont disposées lorsqu'elles sont affichées côte à côte. Par défaut : de gauche à droite.
+- DisplayDocTitle – Affiche le titre du document dans la barre de titre de la fenêtre du document. Valeur par défaut : false (le titre est affiché).
+- HideMenuBar – Masquer ou afficher la barre de menu de la fenêtre du document. Par défaut : false (la barre de menu est affichée).
+- HideToolBar – Masquer ou afficher la barre d'outils de la fenêtre du document. Par défaut : false (la barre d'outils est affichée).
+- HideWindowUI – Masquer ou afficher les éléments de la fenêtre du document, comme les barres de défilement. Par défaut : false (les éléments d’interface sont affichés).
+- NonFullScreenPageMode – Comment le document est affiché lorsqu’il n’est pas en mode plein écran.
+- PageLayout – La mise en page.
+- PageMode – Comment le document est affiché lors de la première ouverture. Les options sont afficher les vignettes, plein écran, afficher le panneau des pièces jointes.
- # Si des éléments de l'interface utilisateur tels que les barres de défilement doivent être cachés
- # Et ne laissant que le contenu de la page affiché - Par défaut : faux
- print("HideWindowUI :", document.hide_window_ui)
+Le fragment de code suivant vous montre comment obtenir les propriétés en utilisant [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
- # Mode de page du document. Comment afficher le document lors de la sortie du mode plein écran.
- print("NonFullScreenPageMode :", document.non_full_screen_page_mode)
+```python
+import aspose.pdf as ap
- # La mise en page c'est-à-dire une seule page, une colonne
- print("PageLayout :", document.page_layout)
- # Comment le document doit s'afficher lorsqu'il est ouvert
- # C'est-à-dire afficher les miniatures, plein écran, afficher le panneau des pièces jointes
- print("pageMode :", document.page_mode)
+def get_document_window(input_pdf, output_pdf):
+ """Print document window metadata for inspection."""
+ document = ap.Document(input_pdf)
+ print("CenterWindow:", document.center_window)
+ print("Direction:", document.direction)
+ print("DisplayDocTitle:", document.display_doc_title)
+ print("FitWindow:", document.fit_window)
+ print("HideMenuBar:", document.hide_menubar)
+ print("HideToolBar:", document.hide_tool_bar)
+ print("HideWindowUI:", document.hide_window_ui)
+ print("NonFullScreenPageMode:", document.non_full_screen_page_mode)
+ print("PageLayout:", document.page_layout)
+ print("PageMode:", document.page_mode)
```
-### Définir les propriétés de la fenêtre du document et de l'affichage de la page
+### Définir les propriétés d'affichage de la fenêtre du Document et de la Page
-Ce sujet explique comment définir les propriétés de la fenêtre du document, de l'application de visualisation et de l'affichage de la page. Pour définir ces différentes propriétés :
+Ce sujet explique comment définir les propriétés de la fenêtre du document, de l'application de visualisation et de l'affichage de la page. Pour définir ces différentes propriétés :
-1. Ouvrez le fichier PDF en utilisant la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Définissez les propriétés de l'objet Document.
-3. Enregistrez le fichier PDF mis à jour en utilisant la méthode save.
+1. Ouvrez le fichier PDF en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Définissez les propriétés de l'objet Document.
+1. Enregistrez le fichier PDF mis à jour en utilisant la méthode save.
-Les propriétés disponibles sont :
+Propriétés disponibles :
-- CenterWindow
+- Centrer la fenêtre
- Direction
-- DisplayDocTitle
-- FitWindow
-- HideMenuBar
-- HideToolBar
-- HideWindowUI
-- NonFullScreenPageMode
-- PageLayout
-- PageMode
+- AfficherDocTitre
+- Ajuster à la fenêtre
+- Masquer la barre de menus
+- Masquer la barre d'outils
+- MasquerInterfaceFenêtre
+- ModePageNonPleinEcran
+- Mise en page
+- ModePage
-Chacune est utilisée et décrite dans le code ci-dessous. Le code suivant vous montre comment définir les propriétés en utilisant la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+Chacun est utilisé et décrit dans le code ci‑dessous. Le fragment de code suivant montre comment définir les propriétés en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Ouvrir le document
+def set_document_window(input_pdf, output_pdf):
+ """Set document window properties and save the result."""
document = ap.Document(input_pdf)
- # Définir différentes propriétés du document
- # Spécifier pour positionner la fenêtre du document - Par défaut : faux
document.center_window = True
-
- # Ordre de lecture prédominant ; détermine la position de la page
- # Lorsqu'elle est affichée côte à côte - Par défaut : L2R
document.direction = ap.Direction.R2L
-
- # Spécifier si la barre de titre de la fenêtre doit afficher le titre du document
- # Si faux, la barre de titre affiche le nom du fichier PDF - Par défaut : faux
document.display_doc_title = True
-
- # Spécifier si redimensionner la fenêtre du document pour s'adapter à la taille de
- # La première page affichée - Par défaut : faux
document.fit_window = True
-
- # Spécifier si masquer la barre de menu de l'application de visualisation - Par défaut : faux
document.hide_menubar = True
-
- # Spécifier si masquer la barre d'outils de l'application de visualisation - Par défaut : faux
document.hide_tool_bar = True
-
- # Spécifier si masquer les éléments de l'interface utilisateur comme les barres de défilement
- # Et laisser seulement le contenu de la page affiché - Par défaut : faux
document.hide_window_ui = True
-
- # Mode de page du document. spécifier comment afficher le document en quittant le mode plein écran.
document.non_full_screen_page_mode = ap.PageMode.USE_OC
-
- # Spécifier la mise en page, c'est-à-dire une seule page, une colonne
document.page_layout = ap.PageLayout.TWO_COLUMN_LEFT
-
- # Spécifier comment le document doit s'afficher lorsqu'il est ouvert
- # C'est-à-dire afficher les vignettes, plein écran, afficher le panneau des pièces jointes
document.page_mode = ap.PageMode.USE_THUMBS
- # Enregistrer le fichier PDF mis à jour
document.save(output_pdf)
```
+### Intégration des polices de type 1 standard
-### Incorporation de polices Type 1 standard
-
-Certains documents PDF contiennent des polices d'un ensemble de polices Adobe spécial. Les polices de cet ensemble sont appelées "Polices Type 1 standard". Cet ensemble comprend 14 polices et l'intégration de ce type de polices nécessite l'utilisation de drapeaux spéciaux, c'est-à-dire [embed_standard_fonts](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties). Voici l'extrait de code qui peut être utilisé pour obtenir un document avec toutes les polices intégrées, y compris les Polices Type 1 standard :
+Some PDF documents have fonts from a special Adobe font set. Fonts from this set are called “Standard Type 1 Fonts”. This set includes 14 fonts and embedding this type of fonts requires using of special flags i.e [embed_standard_fonts](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties). Le fragment de code suivant peut être utilisé pour obtenir un document avec toutes les polices incorporées, y compris les polices Type 1 standard :
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Charger un document PDF existant
+def embedded_fonts(input_pdf, output_pdf):
+ """Ensure fonts in an existing PDF are embedded."""
document = ap.Document(input_pdf)
- # Définir la propriété EmbedStandardFonts du document
document.embed_standard_fonts = True
+
for page in document.pages:
- if page.resources.fonts != None:
+ if page.resources.fonts:
for page_font in page.resources.fonts:
- # Vérifier si la police est déjà incorporée
if not page_font.is_embedded:
page_font.is_embedded = True
document.save(output_pdf)
```
-### Incorporation des polices lors de la création d'un PDF
+### Intégration des polices lors de la création de PDF
-Si vous devez utiliser une police autre que les 14 polices de base prises en charge par Adobe Reader, vous devez intégrer la description de la police lors de la génération du fichier PDF. Si les informations sur la police ne sont pas intégrées, Adobe Reader les prendra du système d'exploitation si elles sont installées sur le système, ou il construira une police de substitution selon le descripteur de police dans le PDF.
+Si vous devez utiliser une police autre que les 14 polices de base prises en charge par Adobe Reader, vous devez intégrer la description de la police lors de la génération du fichier PDF. Si les informations de police ne sont pas intégrées, Adobe Reader les prendra du système d’exploitation si elle est installée sur le système, ou il construira une police de substitution selon le descripteur de police dans le PDF.
->Veuillez noter que la police intégrée doit être installée sur la machine hôte, c'est-à-dire dans le cas du code suivant, la police 'Univers Condensed' est installée sur le système.
+>Veuillez noter que la police incorporée doit être installée sur la machine hôte, c.-à-d. dans le cas du code suivant, la police ‘Univers Condensed’ est installée sur le système.
-Nous utilisons la propriété 'is_embedded' pour intégrer les informations de police dans le fichier PDF. Définir la valeur de cette propriété sur 'True' intégrera le fichier de police complet dans le PDF, sachant que cela augmentera la taille du fichier PDF. Voici l'extrait de code qui peut être utilisé pour intégrer les informations de police dans le PDF.
+Nous utilisons la propriété 'is_embedded' pour intégrer les informations de police dans le fichier PDF. Définir la valeur de cette propriété sur 'True' intégrera le fichier de police complet dans le PDF, en sachant que cela augmentera la taille du fichier PDF. Voici le fragment de code qui peut être utilisé pour intégrer les informations de police dans le PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Instancier un objet Pdf en appelant son constructeur vide
- doc = ap.Document()
-
- # Créer une section dans l'objet Pdf
- page = doc.pages.add()
+def embedded_fonts_in_new_document(input_pdf, output_pdf):
+ """Embed fonts while generating a document from scratch."""
+ document = ap.Document()
+ page = document.pages.add()
fragment = ap.text.TextFragment("")
- segment = ap.text.TextSegment(" Ceci est un texte d'exemple utilisant une police personnalisée.")
- ts = ap.text.TextState()
- ts.font = ap.text.FontRepository.find_font("Arial")
- ts.font.is_embedded = True
- segment.text_state = ts
+ segment = ap.text.TextSegment(" This is a sample text using Custom font.")
+ text_state = ap.text.TextState()
+ text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_state.font.is_embedded = True
+ segment.text_state = text_state
fragment.segments.append(segment)
page.paragraphs.add(fragment)
- # Enregistrer le document PDF
- doc.save(output_pdf)
+ document.save(output_pdf)
```
+### Définir le nom de police par défaut lors de l'enregistrement du PDF
-### Définir le nom de police par défaut lors de l'enregistrement en PDF
-
-Lorsqu'un document PDF contient des polices qui ne sont pas disponibles dans le document lui-même et sur l'appareil, l'API remplace ces polices par la police par défaut. Si la police est disponible (installée sur l'appareil ou intégrée dans le document), le PDF de sortie doit avoir la même police (ne doit pas être remplacée par la police par défaut). La valeur de la police par défaut doit contenir le nom de la police (pas le chemin vers les fichiers de police). Nous avons implémenté une fonctionnalité pour définir le nom de police par défaut lors de l'enregistrement d'un document en tant que PDF. Le snippet de code suivant peut être utilisé pour définir la police par défaut :
+Lorsqu'un document PDF contient des polices qui ne sont pas disponibles dans le document lui‑même et sur l'appareil, l'API remplace ces polices par la police par défaut. Si la police est disponible (installée sur l'appareil ou incorporée dans le document), le PDF généré doit conserver la même police (ne doit pas être remplacée par la police par défaut). La valeur de la police par défaut doit contenir le nom de la police (et non le chemin vers les fichiers de police). Nous avons implémenté une fonctionnalité permettant de définir le nom de la police par défaut lors de l'enregistrement d'un document au format PDF. Le fragment de code suivant peut être utilisé pour définir la police par défaut :
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Charger un document PDF existant avec une police manquante
+def set_default_font(input_pdf, output_pdf):
+ """Assign a fallback font when saving a PDF."""
document = ap.Document(input_pdf)
- pdfSaveOptions = ap.PdfSaveOptions()
- # Spécifier le nom de police par défaut
- newName = "Arial"
- pdfSaveOptions.default_font_name = newName
- document.save(output_pdf, pdfSaveOptions)
+ save_options = ap.PdfSaveOptions()
+ save_options.default_font_name = "Arial"
+ document.save(output_pdf, save_options)
```
-### Obtenir toutes les polices d'un document PDF
+### Obtenir toutes les polices du PDF Document
-Dans le cas où vous souhaitez obtenir toutes les polices d'un document PDF, vous pouvez utiliser la méthode [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) fournie dans la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
- Veuillez vérifier l'extrait de code suivant afin d'obtenir toutes les polices d'un document PDF existant :
+Dans le cas où vous souhaitez obtenir toutes les polices d’un document PDF, vous pouvez utiliser [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) méthode fournie dans [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe. Veuillez vérifier le fragment de code suivant afin d'obtenir toutes les polices d'un document PDF existant :
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document(input_pdf)
- fonts = doc.font_utilities.get_all_fonts()
- for font in fonts:
+def get_all_fonts(input_pdf, output_pdf):
+ """Print all fonts referenced by a document."""
+ document = ap.Document(input_pdf)
+ for font in document.font_utilities.get_all_fonts():
print(font.font_name)
```
-### Améliorer l'Incorporation des Polices en utilisant FontSubsetStrategy
+### Améliorer l'intégration des polices en utilisant FontSubsetStrategy
-L'extrait de code suivant montre comment définir la propriété [FontSubsetStrategy](https://reference.aspose.com/pdf/python-net/aspose.pdf/fontsubsetstrategy/) utilisée dans [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) :
+Le fragment de code suivant montre comment définir [FontSubsetStrategy](https://reference.aspose.com/pdf/python-net/aspose.pdf/fontsubsetstrategy/) utilisé [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) propriété:
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- doc = ap.Document(input_pdf)
- # Toutes les polices seront incorporées en tant que sous-ensemble dans le document en cas de SubsetAllFonts.
- doc.font_utilities.subset_fonts(ap.FontSubsetStrategy.SUBSET_ALL_FONTS)
- # Le sous-ensemble de polices sera incorporé pour les polices entièrement intégrées mais les polices qui ne sont pas intégrées dans le document ne seront pas affectées.
- doc.font_utilities.subset_fonts(ap.FontSubsetStrategy.SUBSET_EMBEDDED_FONTS_ONLY)
- doc.save(output_pdf)
-```
-
-### Obtenir-Définir le Facteur de Zoom du Fichier PDF
-
-Parfois, vous souhaitez déterminer quel est le facteur de zoom actuel d'un document PDF. Avec Aspose.Pdf, vous pouvez connaître la valeur actuelle ainsi qu'en définir une.
-La propriété Destination de la classe [GoToAction](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/gotoaction/) vous permet d'obtenir la valeur de zoom associée à un fichier PDF. De même, elle peut être utilisée pour définir le facteur de zoom d'un fichier.
-
-#### Définir le Facteur de Zoom
+def improve_fonts_embedding(input_pdf, output_pdf):
+ """Apply different font subset strategies to reduce file size."""
+ document = ap.Document(input_pdf)
-Le snippet de code suivant montre comment définir le facteur de zoom d'un fichier PDF.
+ document.font_utilities.subset_fonts(ap.FontSubsetStrategy.SUBSET_ALL_FONTS)
+ document.font_utilities.subset_fonts(
+ ap.FontSubsetStrategy.SUBSET_EMBEDDED_FONTS_ONLY
+ )
-```python
+ document.save(output_pdf)
+```
- import aspose.pdf as ap
+### Obtenir‑définir le facteur de zoom du fichier PDF
- # Instancier un nouvel objet Document
- doc = ap.Document(input_pdf)
+Parfois, vous souhaitez déterminer quel est le facteur de zoom actuel d’un document PDF. Avec Aspose.Pdf, vous pouvez connaître la valeur actuelle ainsi qu’en définir une.
- action = ap.annotations.GoToAction(ap.annotations.XYZExplicitDestination(1, 0.0, 0.0, 0.5))
- doc.open_action = action
- # Enregistrer le document
- doc.save(output_pdf)
-```
+Le [GoToAction](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/gotoaction/) La propriété Destination de la classe permet d'obtenir la valeur de zoom associée à un fichier PDF. De même, elle peut être utilisée pour définir le facteur de zoom d'un fichier.
-#### Obtenir le Facteur de Zoom
+#### Définir le facteur de zoom
-Le snippet de code suivant montre comment obtenir le facteur de zoom d'un fichier PDF.
+L'extrait de code suivant montre comment définir le facteur de zoom d'un fichier PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Instancier un nouvel objet Document
- doc = ap.Document(input_pdf)
- # Créer un objet GoToAction
- action = doc.open_action
+def set_zoom_factor(input_pdf, output_pdf):
+ """Set an initial zoom level via document open action."""
+ document = ap.Document(input_pdf)
- # Obtenir le facteur de zoom du fichier PDF
- print(action.destination.zoom)
+ action = ap.annotations.GoToAction(
+ ap.annotations.XYZExplicitDestination(1, 0.0, 0.0, 0.5)
+ )
+ document.open_action = action
+ document.save(output_pdf)
```
+#### Obtenir le facteur de zoom
-### Définition des Propriétés Prédéfinies pour la Boîte de Dialogue d'Impression
-
-Aspose.PDF permet de définir les membres [DUPLEX_FLIP_LONG_EDGE](https://reference.aspose.com/pdf/python-net/aspose.pdf/printduplex/#members) d'un document PDF. Cela vous permet de modifier la propriété DuplexMode d'un document PDF qui est définie sur simplex par défaut. Cela peut être réalisé en utilisant deux méthodologies différentes comme illustré ci-dessous.
+L'extrait de code suivant montre comment obtenir le facteur de zoom d'un fichier PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document()
- doc.pages.add()
- doc.duplex = ap.PrintDuplex.DUPLEX_FLIP_LONG_EDGE
- doc.save(output_pdf)
-```
-
-### Définition des Propriétés Prédéfinies pour la Boîte de Dialogue d'Impression en Utilisant l'Éditeur de Contenu PDF
-
-```python
+def get_zoom_factor(input_pdf, output_pdf):
+ """Print the zoom level configured in the document open action."""
+ document = ap.Document(input_pdf)
- import aspose.pdf as ap
+ action = document.open_action
+ if action and action.destination:
+ print("Zoom:", action.destination.zoom)
+ else:
+ print("Zoom: not set")
+```
- ed = ap.facades.PdfContentEditor()
- ed.bind_pdf(input_pdf)
- if (ed.get_viewer_preference() & ap.facades.ViewerPreference.DUPLEX_FLIP_SHORT_EDGE) > 0:
- print("Le fichier a une inversion dupliquée bord court")
+## Sujets de documents associés
- ed.change_viewer_preference(ap.facades.ViewerPreference.DUPLEX_FLIP_SHORT_EDGE)
- ed.save(output_pdf)
-```
\ No newline at end of file
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Créer des fichiers PDF en Python](/pdf/fr/python-net/create-pdf-document/)
+- [Manipuler des documents PDF en Python](/pdf/fr/python-net/manipulate-pdf-document/)
+- [Optimiser les fichiers PDF en Python](/pdf/fr/python-net/optimize-pdf/)
diff --git a/fr/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md
index 6834afcd4c..0d25272bae 100644
--- a/fr/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md
@@ -1,198 +1,118 @@
---
-title: Manipuler un document PDF en Python via .NET
-linktitle: Manipuler un document PDF
+title: Manipuler les documents PDF en Python
+linktitle: Manipuler le document PDF
type: docs
weight: 20
url: /fr/python-net/manipulate-pdf-document/
-description: Cet article contient des informations sur la façon de valider un document PDF pour la norme PDF A en utilisant Python, comment travailler avec le TOC, comment définir une date d'expiration pour le PDF, etc.
-lastmod: "2023-04-13"
+description: Apprenez à valider, structurer et modifier des documents PDF en Python, y compris la gestion de la TOC et les vérifications PDF/A.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Guide sur la manipulation de documents PDF avec Python
+Abstract: Cet article fournit un guide complet sur la manipulation de documents PDF avec Python, en particulier avec la bibliothèque Aspose.PDF. Il couvre plusieurs fonctionnalités, y compris la validation de documents PDF pour la conformité PDF/A-1a et PDF/A-1b en utilisant la méthode `validate` de la classe `Document`. Il détaille également comment ajouter, personnaliser et gérer une Table des matières (TOC) dans les fichiers PDF, comme définir différents TabLeaderTypes, masquer les numéros de page et personnaliser la numérotation des pages avec un préfixe. De plus, l'article explique comment définir une date d'expiration pour un document PDF en incorporant du JavaScript pour restreindre l'accès et comment aplatir les formulaires remplissables d'un PDF afin de les rendre non éditables. Chaque section est accompagnée d'extraits de code démontrant la mise en œuvre de ces fonctionnalités avec Aspose.PDF en Python.
---
-
-
-
-## Manipuler un document PDF en Python
-
-## Valider un document PDF pour la norme PDF A (A 1A et A 1B)
-
-Pour valider un document PDF pour la compatibilité avec PDF/A-1a ou PDF/A-1b, utilisez la méthode [validate](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) de la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Cette méthode vous permet de spécifier le nom du fichier dans lequel le résultat doit être enregistré et le type de validation requis de l'énumération PdfFormat : PDF_A_1A ou PDF_A_1B.
-
-L'exemple de code suivant montre comment valider un document PDF pour PDF/A-1A.
+
+Cette page est utile lorsque vous devez valider la conformité des PDF, créer ou personnaliser une table des matières, définir le comportement d'expiration du document, ou aplatir les PDF remplissables dans les flux de travail Python.
+
+## Manipuler le Document PDF en Python
+
+## Valider le document PDF pour la norme PDF/A (A 1A et A 1B)
+
+Pour valider un document PDF pour la compatibilité PDF/A-1a ou PDF/A-1b, utilisez le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe [validate](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode. Cette méthode vous permet de spécifier le nom du fichier dans lequel le résultat doit être enregistré et le type de validation requis, l'énumération PdfFormat : PDF_A_1A ou PDF_A_1B.
+
+L'extrait de code suivant vous montre comment valider un document PDF pour PDF/A-1A.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Ouvrir le document
+def validate_pdfa_standard_a1a(input_pdf, output_pdf):
document = ap.Document(input_pdf)
-
- # Valider le PDF pour PDF/A-1a
- document.validate(output_xml, ap.PdfFormat.PDF_A_1A)
+ document.validate(output_pdf, ap.PdfFormat.PDF_A_1A)
```
-L'exemple de code suivant montre comment valider un document PDF pour PDF/A-1b.
+Le fragment de code suivant vous montre comment valider un document PDF pour PDF/A-1b.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Ouvrir le document
+def validate_pdfa_standard_a1b(input_pdf, output_pdf):
document = ap.Document(input_pdf)
-
- # Valider le PDF pour PDF/A-1b
- document.validate(output_xml, ap.PdfFormat.PDF_A_1B)
+ document.validate(output_pdf, ap.PdfFormat.PDF_A_1B)
```
-
## Travailler avec TOC
-### Ajouter TOC à un PDF existant
+### Ajouter une table des matières au PDF existant
-TOC dans un PDF signifie "Table des matières". C'est une fonctionnalité qui permet aux utilisateurs de naviguer rapidement dans un document en fournissant une vue d'ensemble de ses sections et titres.
+TOC dans PDF signifie "Table of Contents". C’est une fonctionnalité qui permet aux utilisateurs de naviguer rapidement dans un document en fournissant un aperçu de ses sections et titres.
-Pour ajouter une TOC à un fichier PDF existant, utilisez la classe Heading dans l'espace de noms [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/). L'espace de noms [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/) peut à la fois créer de nouveaux fichiers PDF et manipuler des fichiers PDF existants. Pour ajouter une TOC à un PDF existant, utilisez l'espace de noms Aspose.Pdf. L'extrait de code suivant montre comment créer une table des matières à l'intérieur d'un fichier PDF existant en utilisant Python via .NET.
+Pour ajouter une TOC à un fichier PDF existant, utilisez la classe Heading dans le [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/) espace de noms. Le [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/) L'espace de noms peut à la fois créer de nouveaux fichiers PDF et manipuler des fichiers PDF existants. Pour ajouter une TOC à un PDF existant, utilisez l'espace de noms Aspose.Pdf. Le fragment de code suivant montre comment créer une table des matières dans un fichier PDF existant en utilisant Python via .NET.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Charger un fichier PDF existant
- doc = ap.Document(input_pdf)
- # Accéder à la première page du fichier PDF
- tocPage = doc.pages.insert(1)
-
- # Créer un objet pour représenter les informations du TOC
- tocInfo = ap.TocInfo()
- title = ap.text.TextFragment("Table des matières")
+def add_table_of_contents(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.insert(1)
+ toc_info = ap.TocInfo()
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 20
title.text_state.font_style = ap.text.FontStyles.BOLD
+ toc_info.title = title
+ toc_page.toc_info = toc_info
- # Définir le titre pour le TOC
- tocInfo.title = title
- tocPage.toc_info = tocInfo
-
- # Créer des objets chaîne qui seront utilisés comme éléments du TOC
- titles = ["Première page", "Deuxième page", "Troisième page", "Quatrième page"]
- for i in range(0, 2):
- # Créer un objet Heading
- heading2 = ap.Heading(1)
- segment2 = ap.text.TextSegment()
- heading2.toc_page = tocPage
- heading2.segments.append(segment2)
-
- # Spécifier la page de destination pour l'objet heading
- heading2.destination_page = doc.pages[i + 2]
-
- # Page de destination
- heading2.top = doc.pages[i + 2].rect.height
-
- # Coordonnée de destination
- segment2.text = titles[i]
-
- # Ajouter le heading à la page contenant le TOC
- tocPage.paragraphs.add(heading2)
-
- # Enregistrer le document mis à jour
- doc.save(output_pdf)
+ titles = ["First page", "Second page"]
+ for index, title_text in enumerate(titles[:2]):
+ heading = ap.Heading(1)
+ segment = ap.text.TextSegment(title_text)
+ heading.toc_page = toc_page
+ heading.segments.append(segment)
+ destination_page = document.pages[index + 2]
+ heading.destination_page = destination_page
+ heading.top = destination_page.rect.height
+ toc_page.paragraphs.add(heading)
+
+ document.save(output_pdf)
```
+### Définir un TabLeaderType différent pour chaque niveau de TOC
-### Définir différents TabLeaderType pour différents niveaux de TOC
-
-Aspose.PDF pour Python permet également de définir différents TabLeaderType pour différents niveaux de TOC. Vous devez définir la propriété [line_dash](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/).
+Aspose.PDF for Python permet également de définir différents TabLeaderType pour différents niveaux de TOC. Vous devez définir [line_dash](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) propriété de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/).
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document()
- tocPage = doc.pages.add()
+def set_toc_levels(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.add()
toc_info = ap.TocInfo()
-
- # définir le LeaderType
toc_info.line_dash = ap.text.TabLeaderType.SOLID
- title = ap.text.TextFragment("Table des Matières")
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 30
toc_info.title = title
-
- # Ajouter la section de la liste à la collection de sections du document Pdf
- tocPage.toc_info = toc_info
- # Définir le format de la liste à quatre niveaux en définissant les marges de gauche
- # et
- # les paramètres de format de texte de chaque niveau
+ toc_page.toc_info = toc_info
toc_info.format_array_length = 4
toc_info.format_array[0].margin.left = 0
toc_info.format_array[0].margin.right = 30
toc_info.format_array[0].line_dash = ap.text.TabLeaderType.DOT
- toc_info.format_array[0].text_state.font_style = ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ toc_info.format_array[0].text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
toc_info.format_array[1].margin.left = 10
toc_info.format_array[1].margin.right = 30
toc_info.format_array[1].line_dash = 3
@@ -205,226 +125,146 @@ Aspose.PDF pour Python permet également de définir différents TabLeaderType p
toc_info.format_array[3].margin.right = 30
toc_info.format_array[3].text_state.font_style = ap.text.FontStyles.BOLD
- # Créer une section dans le document Pdf
- page = doc.pages.add()
-
- # Ajouter quatre titres dans la section
- for Level in range(1, 5):
- heading2 = ap.Heading(Level)
- segment2 = ap.text.TextSegment()
- heading2.segments.append(segment2)
- heading2.is_auto_sequence = True
- heading2.toc_page = tocPage
- segment2.text = "Titre Exemple" + str(Level)
- heading2.text_state.font = ap.text.FontRepository.find_font("Arial")
-
- # Ajouter le titre dans la Table des Matières.
- heading2.is_in_list = True
- page.paragraphs.add(heading2)
-
- # enregistrer le Pdf
- doc.save(output_pdf)
+ page = document.pages.add()
+ for level in range(1, 5):
+ heading = ap.Heading(level)
+ heading.is_auto_sequence = True
+ heading.toc_page = toc_page
+ heading.text_state.font = ap.text.FontRepository.find_font("Arial")
+ segment = ap.text.TextSegment(f"Sample Heading{level}")
+ heading.segments.append(segment)
+ heading.is_in_list = True
+ page.paragraphs.add(heading)
+
+ document.save(output_pdf)
```
+### Masquer les numéros de page dans le TOC
-### Masquer les numéros de page dans le sommaire
-
-Dans le cas où vous ne souhaitez pas afficher les numéros de page avec les en-têtes dans le sommaire, vous pouvez utiliser la propriété [is_show_page_numbers](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) de la classe [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) comme false. Veuillez consulter l'extrait de code suivant pour masquer les numéros de page dans le sommaire :
+Dans le cas où vous ne voulez pas afficher les numéros de page, ainsi que les titres dans le TOC, vous pouvez utiliser [is_show_page_numbers](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) propriété de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) Classe comme false. Veuillez vérifier le fragment de code suivant pour masquer les numéros de page dans la table des matières :
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document()
- toc_page = doc.pages.add()
+def hide_page_numbers_in_toc(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.add()
toc_info = ap.TocInfo()
- title = ap.text.TextFragment("Table des Matières")
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 20
title.text_state.font_style = ap.text.FontStyles.BOLD
toc_info.title = title
- # Ajouter la section de liste à la collection de sections du document Pdf
+ toc_info.is_show_page_numbers = False
toc_page.toc_info = toc_info
- # Définir le format de la liste à quatre niveaux en configurant les marges de gauche et
- # les paramètres de format de texte de chaque niveau
- toc_info.is_show_page_numbers = False
toc_info.format_array_length = 4
toc_info.format_array[0].margin.right = 0
- toc_info.format_array[0].text_state.font_style = ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ toc_info.format_array[0].text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
toc_info.format_array[1].margin.left = 30
toc_info.format_array[1].text_state.underline = True
toc_info.format_array[1].text_state.font_size = 10
toc_info.format_array[2].text_state.font_style = ap.text.FontStyles.BOLD
toc_info.format_array[3].text_state.font_style = ap.text.FontStyles.BOLD
- page = doc.pages.add()
- # Ajouter quatre en-têtes dans la section
- for Level in range(1, 5):
- heading2 = ap.Heading(Level)
- segment2 = ap.text.TextSegment()
- heading2.toc_page = toc_page
- heading2.segments.append(segment2)
- heading2.is_auto_sequence = True
- segment2.text = "Ceci est l'en-tête du niveau " + str(Level)
- heading2.is_in_list = True
- page.paragraphs.add(heading2)
- doc.save(output_pdf)
+ page = document.pages.add()
+ for level in range(1, 2):
+ heading = ap.Heading(level)
+ heading.toc_page = toc_page
+ heading.is_auto_sequence = True
+ heading.is_in_list = True
+ segment = ap.text.TextSegment(f"this is heading of level {level}")
+ heading.segments.append(segment)
+ page.paragraphs.add(heading)
+
+ document.save(output_pdf)
```
+### Personnaliser les numéros de page lors de l'ajout de la TOC
-### Personnaliser les numéros de page lors de l'ajout de la table des matières
-
-Il est courant de personnaliser la numérotation des pages dans la table des matières lors de l'ajout de celle-ci dans un document PDF. Par exemple, nous pourrions avoir besoin d'ajouter un préfixe avant le numéro de page comme P1, P2, P3, etc. Dans ce cas, Aspose.PDF pour Python fournit la propriété [page_numbers_prefix](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) de la classe [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) qui peut être utilisée pour personnaliser les numéros de page comme montré dans l'exemple de code suivant.
+Il est courant de personnaliser la numérotation des pages dans la TOC lors de l'ajout de la TOC dans un document PDF. Par exemple, nous pourrions avoir besoin d'ajouter un préfixe avant le numéro de page comme P1, P2, P3, etc. Dans un tel cas, Aspose.PDF for Python fournit [page_numbers_prefix](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) propriété de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) classe pouvant être utilisée pour personnaliser les numéros de page comme illustré dans l'exemple de code suivant.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Charger un fichier PDF existant
- doc = ap.Document(input_pdf)
- # Accéder à la première page du fichier PDF
- toc_page = doc.pages.insert(1)
- # Créer un objet pour représenter les informations de la table des matières
+def customize_page_numbers_in_toc(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.insert(1)
toc_info = ap.TocInfo()
- title = ap.text.TextFragment("Table des Matières")
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 20
title.text_state.font_style = ap.text.FontStyles.BOLD
- # Définir le titre pour la table des matières
toc_info.title = title
toc_info.page_numbers_prefix = "P"
toc_page.toc_info = toc_info
- for i in range(len(doc.pages)):
- # Créer un objet de titre
- heading2 = ap.Heading(1)
- segment2 = ap.text.TextSegment()
- heading2.toc_page = toc_page
- heading2.segments.append(segment2)
- # Spécifier la page de destination pour l'objet de titre
- heading2.destination_page = doc.pages[i + 1]
- # Page de destination
- heading2.top = doc.pages[i + 1].rect.height
- # Coordonnée de destination
- segment2.text = "Page " + str(i)
- # Ajouter le titre à la page contenant la table des matières
- toc_page.paragraphs.add(heading2)
-
- # Enregistrer le document mis à jour
- doc.save(output_pdf)
-```
+ for index, page in enumerate(document.pages, start=1):
+ heading = ap.Heading(1)
+ heading.toc_page = toc_page
+ heading.destination_page = page
+ heading.top = page.rect.height
+ segment = ap.text.TextSegment(f"Page {index}")
+ heading.segments.append(segment)
+ toc_page.paragraphs.add(heading)
+ document.save(output_pdf)
+```
-## Comment définir la date d'expiration d'un PDF
+## Comment définir la date d'expiration du PDF
-Nous appliquons des privilèges d'accès sur les fichiers PDF afin qu'un certain groupe d'utilisateurs puisse accéder à des fonctionnalités/objets particuliers des documents PDF. Afin de restreindre l'accès au fichier PDF, nous appliquons généralement un cryptage et nous pouvons avoir besoin de définir l'expiration du fichier PDF, de sorte que l'utilisateur accédant/visualisant le document reçoive une invite valide concernant l'expiration du fichier PDF.
+Nous appliquons des privilèges d'accès sur les fichiers PDF afin qu'un groupe particulier d'utilisateurs puisse accéder à des fonctionnalités/objets spécifiques des documents PDF. Pour restreindre l'accès aux fichiers PDF, nous utilisons généralement le chiffrement et il peut y avoir une exigence de définir une expiration du fichier PDF, afin que l'utilisateur accédant/visualisant le document reçoive une invite valide concernant l'expiration du fichier PDF.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Instancier un objet Document
- doc = ap.Document()
- # Ajouter une page à la collection de pages du fichier PDF
- doc.pages.add()
- # Ajouter un fragment de texte à la collection de paragraphes de l'objet page
- doc.pages[1].paragraphs.add(ap.text.TextFragment("Bonjour le monde..."))
- # Créer un objet JavaScript pour définir la date d'expiration du PDF
- javaScript = ap.annotations.JavascriptAction(
+def set_pdf_expiry_date(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ document.pages.add()
+ document.pages[1].paragraphs.add(ap.text.TextFragment("Hello World..."))
+ script = ap.annotations.JavascriptAction(
"var year=2017;"
- + "var month=5;"
- + "today = new Date(); today = new Date(today.getFullYear(), today.getMonth());"
- + "expiry = new Date(year, month);"
- + "if (today.getTime() > expiry.getTime())"
- + "app.alert('Le fichier est expiré. Vous avez besoin d'un nouveau.');"
+ "var month=5;"
+ "today = new Date(); today = new Date(today.getFullYear(), today.getMonth());"
+ "expiry = new Date(year, month);"
+ "if (today.getTime() > expiry.getTime())"
+ "app.alert('The file is expired. You need a new one.');"
)
- # Définir JavaScript comme action d'ouverture du PDF
- doc.open_action = javaScript
-
- # Enregistrer le document PDF
- doc.save(output_pdf)
+ document.open_action = script
+ document.save(output_pdf)
```
+## Aplatir le PDF remplissable en Python
-## Aplatir un PDF remplissable en Python
-
-Les documents PDF incluent souvent des formulaires avec des widgets interactifs remplissables tels que des boutons radio, des cases à cocher, des zones de texte, des listes, etc. Pour le rendre non modifiable à des fins d'application variées, nous devons aplatir le fichier PDF. Aspose.PDF fournit la fonction pour aplatir votre PDF en Python avec seulement quelques lignes de code :
+Les documents PDF incluent souvent des formulaires avec des widgets interactifs remplissables tels que des boutons radio, des cases à cocher, des zones de texte, des listes, etc. Pour les rendre non modifiables à diverses fins d'application, nous devons aplatir le fichier PDF.
+Aspose.PDF fournit la fonction pour aplatir votre PDF en Python avec seulement quelques lignes de code :
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Charger le formulaire PDF source
- doc = ap.Document(input_pdf)
-
- # Aplatir le PDF remplissable
- if len(doc.form.fields) > 0:
- for item in doc.form.fields:
- item.flatten()
- # Enregistrer le document mis à jour
- doc.save(output_pdf)
+def flatten_fillable_pdf(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ if document.form and document.form.fields:
+ for field in document.form.fields:
+ field.flatten()
+ document.save(output_pdf)
```
-
\ No newline at end of file
+## Sujets de documents associés
+
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Formater des documents PDF en Python](/pdf/fr/python-net/formatting-pdf-document/)
+- [Créer des fichiers PDF en Python](/pdf/fr/python-net/create-pdf-document/)
+- [Optimiser les fichiers PDF en Python](/pdf/fr/python-net/optimize-pdf/)
diff --git a/fr/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md b/fr/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md
index 02404a367d..d2e9d7cc15 100644
--- a/fr/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md
@@ -1,184 +1,276 @@
---
-title: Comment Fusionner des PDF en utilisant Python
+title: Fusionner des fichiers PDF en Python
linktitle: Fusionner des fichiers PDF
type: docs
weight: 50
url: /fr/python-net/merge-pdf-documents/
-description: Cette page explique comment fusionner des documents PDF en un seul fichier PDF avec Python.
-lastmod: "2023-04-14"
+description: Apprenez à fusionner plusieurs fichiers PDF en un seul document avec Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Combinez les pages PDF en utilisant Python.
+Abstract: Cet article répond au besoin commun de fusionner plusieurs fichiers PDF en un seul document, un processus précieux pour organiser et optimiser le stockage et le partage du contenu PDF. Il explore l'utilisation d'Aspose.PDF for Python via .NET pour combiner efficacement les fichiers PDF, en reconnaissant que la fusion de PDF en Python peut être difficile sans bibliothèques tierces. L'article fournit un guide étape par étape pour concaténer les fichiers PDF – création d'un nouveau document, fusion des fichiers et sauvegarde du document fusionné. Un extrait de code montre l'implémentation en utilisant Aspose.PDF, mettant en avant la capacité de la bibliothèque à rationaliser le processus de fusion. De plus, il présente Aspose.PDF Merger, un outil en ligne pour fusionner les PDF, permettant aux utilisateurs d'explorer la fonctionnalité dans un environnement web.
---
-
-
## Fusionner ou combiner plusieurs PDF en un seul PDF en Python
-Combiner des fichiers PDF est une requête très populaire parmi les utilisateurs. Cela peut être utile lorsque vous avez plusieurs fichiers PDF que vous souhaitez partager ou stocker ensemble en tant qu'un seul document.
+Combiner des fichiers PDF est une requête très populaire parmi les utilisateurs. Cela peut être utile lorsque vous avez plusieurs fichiers PDF que vous souhaitez partager ou stocker ensemble en un seul document.
+
+La fusion de fichiers PDF peut vous aider à organiser vos documents, libérer de l'espace de stockage sur votre PC et partager plusieurs fichiers PDF avec d’autres en les combinant en un seul document.
+
+La fusion de PDF en Python via .NET n'est pas une tâche simple sans utiliser de bibliothèque tierce.
+Cet article montre comment fusionner plusieurs fichiers PDF en un seul document PDF à l'aide d'Aspose.PDF for Python via .NET.
-Fusionner des fichiers PDF peut vous aider à organiser vos documents, à libérer de l'espace de stockage sur votre PC et à partager plusieurs fichiers PDF avec d'autres en les combinant en un seul document.
+## Fusionner des fichiers PDF en utilisant Python et le DOM
-Fusionner des PDF en Python via .NET n'est pas une tâche simple sans utiliser une bibliothèque tierce. Cet article montre comment fusionner plusieurs fichiers PDF en un seul document PDF en utilisant Aspose.PDF pour Python via .NET.
+Concaténer deux fichiers PDF :
-## Fusionner des fichiers PDF en utilisant Python et DOM
+1. Créer un nouveau document.
+1. Fusionner les fichiers PDF
+1. Enregistrer le document fusionné
-Pour concaténer deux fichiers PDF :
+Combiner plusieurs documents PDF en un seul fichier:
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_two_documents(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ document1.pages.add(document2.pages)
+ document1.save(outfile)
+```
-1. Créez deux objets [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), chacun contenant l'un des fichiers PDF d'entrée.
+## Ajouter une plage de pages d’un PDF à un autre
-1. Ensuite, appelez la méthode [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) pour l'objet Document auquel vous souhaitez ajouter l'autre fichier PDF.
-1. Passez la collection PageCollection du deuxième objet Document à la méthode [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) de la première collection PageCollection.
-1. Enfin, enregistrez le fichier PDF de sortie en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+Copier et ajouter une plage de pages spécifique d'un document PDF source à un document PDF de destination en utilisant Aspose.PDF for Python.
-Le snippet de code suivant montre comment concaténer des fichiers PDF.
+1. Ouvrez les fichiers PDF en utilisant la classe Document.
+1. Vérifiez si le document source possède des pages.
+1. Valider la plage de pages.
+1. Ignorer l'opération si la page de début est supérieure à la page de fin.
+1. Itérer à travers la plage de pages.
+1. Ajouter des pages au document de destination.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
- # Ouvrir le premier document
- document1 = ap.Document(input_pdf_1)
- # Ouvrir le deuxième document
- document2 = ap.Document(input_pdf_2)
+def _append_page_range(source_document, destination_document, start_page, end_page):
+ total_pages = len(source_document.pages)
+ if total_pages == 0:
+ return
- # Ajouter les pages du deuxième document au premier
- document1.pages.add(document2.pages)
+ start = max(1, start_page)
+ end = min(end_page, total_pages)
+ if start > end:
+ return
+
+ for page_number in range(start, end + 1):
+ destination_document.pages.add(source_document.pages[page_number])
+```
+
+## Fusionner plusieurs documents PDF en un seul
+
+Cet extrait de code explique comment fusionner plusieurs fichiers PDF en un seul document :
+
+1. Créer un document de sortie vide.
+1. Parcourir les fichiers d'entrée.
+1. Chargez chaque document source.
+1. Déterminer la plage de pages.
+1. Ajouter des pages au document de sortie.
+1. Répétez pour tous les documents.
+1. Enregistrez le PDF fusionné.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_multiple_documents(input_files, outfile):
+ output_document = ap.Document()
+
+ for input_file in input_files:
+ source_document = ap.Document(input_file)
+ _append_page_range(
+ source_document, output_document, 1, len(source_document.pages)
+ )
+
+ output_document.save(outfile)
+```
+
+## Fusionner les plages de pages sélectionnées de plusieurs PDF
+
+1. Chargez les documents PDF source.
+1. Créer un document de sortie.
+1. Définissez les plages de pages pour chaque document.
+1. Ajouter les pages du premier document.
+1. Ajouter les pages du deuxième document.
+1. Combinez les pages dans l'ordre souhaité.
+1. Enregistrez le PDF fusionné.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_selected_page_ranges(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ output_document = ap.Document()
+
+ _append_page_range(document1, output_document, 1, 2)
+ _append_page_range(document2, output_document, 2, 3)
+
+ output_document.save(outfile)
+```
+
+## Insérer un PDF dans un autre à une position spécifique
+
+1. Chargez la base et insérez les documents.
+1. Créer un document de sortie.
+1. Déterminer le nombre total de pages dans le document de base.
+1. Valider l'indice d'insertion.
+1. Ajouter des pages avant le point d'insertion.
+1. Ajouter toutes les pages du document d'insertion.
+1. Ajouter les pages restantes du document de base.
+1. Enregistrez le PDF résultant.
- # Enregistrer le fichier de sortie concaténé
- document1.save(output_pdf)
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_insert_document_at_position(infile1, infile2, insert_after_page, outfile):
+ base_document = ap.Document(infile1)
+ insert_document = ap.Document(infile2)
+ output_document = ap.Document()
+
+ base_total_pages = len(base_document.pages)
+ insert_index = max(0, min(insert_after_page, base_total_pages))
+
+ _append_page_range(base_document, output_document, 1, insert_index)
+ _append_page_range(insert_document, output_document, 1, len(insert_document.pages))
+ _append_page_range(
+ base_document, output_document, insert_index + 1, base_total_pages
+ )
+
+ output_document.save(outfile)
+```
+
+## Fusionner les PDF en alternant les pages
+
+Cet exemple montre comment fusionner deux documents PDF en alternant leurs pages à l'aide d'Aspose.PDF for Python.
+
+1. Chargez les documents PDF d'entrée.
+1. Créer un document de sortie.
+1. Obtenez le nombre de pages dans chaque document.
+1. Calculez le nombre maximal de pages.
+1. Itérer à travers les numéros de page.
+1. Ajouter les pages alternativement.
+1. Gérer des nombres de pages inégaux.
+1. Enregistrez le PDF fusionné.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_alternating_pages(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ output_document = ap.Document()
+
+ document1_pages = len(document1.pages)
+ document2_pages = len(document2.pages)
+ max_pages = max(document1_pages, document2_pages)
+
+ for page_number in range(1, max_pages + 1):
+ if page_number <= document1_pages:
+ output_document.pages.add(document1.pages[page_number])
+ if page_number <= document2_pages:
+ output_document.pages.add(document2.pages[page_number])
+
+ output_document.save(outfile)
+```
+
+## Fusionner des PDF avec des séparateurs de section et des signets
+
+Fusionnez plusieurs documents PDF en un seul fichier avec des sections structurées et des signets de navigation en utilisant Aspose.PDF pour Python.
+
+1. Créer un document de sortie.
+1. Parcourir les fichiers d'entrée.
+1. Chargez le document source.
+1. Ajouter une page de séparation.
+1. Créer un signet de section.
+1. Ajouter les pages du document source.
+1. Suivez la première page de contenu.
+1. Ajoutez un signet de contenu imbriqué (facultatif).
+1. Répétez pour tous les documents.
+1. Enregistrez le PDF fusionné.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_with_section_separators_and_bookmarks(input_files, outfile):
+ output_document = ap.Document()
+
+ for section_index, input_file in enumerate(input_files, start=1):
+ source_document = ap.Document(input_file)
+ source_page_count = len(source_document.pages)
+
+ separator_page = output_document.pages.add()
+ separator_page.paragraphs.add(
+ ap.text.TextFragment(
+ f"Section {section_index}: {path.basename(input_file)}"
+ )
+ )
+
+ section_bookmark = ap.OutlineItemCollection(output_document.outlines)
+ section_bookmark.title = f"Section {section_index}"
+ section_bookmark.action = ap.annotations.GoToAction(separator_page)
+ output_document.outlines.append(section_bookmark)
+
+ first_content_page_number = len(output_document.pages) + 1
+ _append_page_range(source_document, output_document, 1, source_page_count)
+
+ if source_page_count > 0 and first_content_page_number <= len(
+ output_document.pages
+ ):
+ content_bookmark = ap.OutlineItemCollection(output_document.outlines)
+ content_bookmark.title = f"Section {section_index} Content"
+ content_bookmark.action = ap.annotations.GoToAction(
+ output_document.pages[first_content_page_number]
+ )
+ section_bookmark.append(content_bookmark)
+
+ output_document.save(outfile)
```
## Exemple en direct
-[Aspose.PDF Merger](https://products.aspose.app/pdf/merger) est une application web gratuite en ligne qui vous permet d'explorer comment fonctionne la fonctionnalité de fusion de présentations.
+[Aspose.PDF Merger](https://products.aspose.app/pdf/merger) est une application web gratuite en ligne qui vous permet d'examiner le fonctionnement de la fonctionnalité de fusion de présentations.
[](https://products.aspose.app/pdf/merger)
-
\ No newline at end of file
+## Sujets de documents associés
+
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Diviser les fichiers PDF en Python](/pdf/fr/python-net/split-document/)
+- [Optimiser les fichiers PDF en Python](/pdf/fr/python-net/optimize-pdf/)
+- [Manipuler des documents PDF en Python](/pdf/fr/python-net/manipulate-pdf-document/)
+
diff --git a/fr/python-net/advanced-operations/working-with-documents/merge-pdf/merger.png b/fr/python-net/advanced-operations/working-with-documents/merge-pdf/merger.png
new file mode 100644
index 0000000000..c7977aa68d
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-documents/merge-pdf/merger.png differ
diff --git a/fr/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md
index ad00fd0f7b..9e0a9459f3 100644
--- a/fr/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md
@@ -1,401 +1,359 @@
---
-title: Optimiser, Compresser ou Réduire la Taille du PDF en Python
-linktitle: Optimiser PDF
+title: Optimiser les fichiers PDF en Python
+linktitle: Optimiser le PDF
type: docs
weight: 30
url: /fr/python-net/optimize-pdf/
-description: Optimiser le fichier PDF, réduire toutes les images, réduire la taille du PDF, désintégrer les polices, supprimer les objets inutilisés avec Python.
-lastmod: "2023-04-17"
+description: Apprenez à optimiser, compresser et réduire la taille des fichiers PDF en Python avec Aspose.PDF.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Compressez les pages PDF en utilisant Python.
+Abstract: Cet article fournit un guide complet sur l'optimisation des fichiers PDF afin de réduire leur taille et d'améliorer les performances sur diverses plateformes, telles que les pages Web, les e‑mails et les systèmes de stockage. Les techniques d'optimisation comprennent la réduction de la taille des images, la suppression des ressources inutilisées et le désintégration des polices. Des méthodes spécifiques pour optimiser les PDF pour le Web et réduire la taille globale du fichier sont abordées, en utilisant les méthodes `Optimize` et `OptimizeResources` dans Aspose.PDF for Python. La personnalisation des stratégies d'optimisation est possible via `OptimizationOptions`, permettant des actions ciblées comme la compression des images, la suppression des objets et flux inutilisés, la liaison des flux dupliqués et le désintégration des polices. Des stratégies supplémentaires couvrent l'aplatissement des annotations, la suppression des champs de formulaire et la conversion des fichiers PDF de RVB en niveaux de gris pour réduire davantage la taille. L'article met également en avant l'utilisation de la compression FlateDecode pour l'optimisation des images, garantissant une gestion efficace des fichiers PDF tout en maintenant la qualité et la fonctionnalité.
---
-
-
-
-Un document PDF peut parfois contenir des données supplémentaires. Réduire la taille d'un fichier PDF vous aidera à optimiser le transfert réseau et le stockage. Cela est particulièrement utile pour la publication sur des pages web, le partage sur les réseaux sociaux, l'envoi par e-mail ou l'archivage dans le stockage. Nous pouvons utiliser plusieurs techniques pour optimiser les PDF :
-
-- Optimiser le contenu des pages pour la navigation en ligne
+
+Un document PDF peut parfois contenir des données supplémentaires. Réduire la taille d'un fichier PDF vous aidera à optimiser le transfert réseau et le stockage. Cela est particulièrement pratique pour la publication sur des pages web, le partage sur les réseaux sociaux, l'envoi par e‑mail ou l'archivage. Nous pouvons utiliser plusieurs techniques pour optimiser le PDF :
+
+Utilisez cette page lorsque vous devez réduire la taille du PDF pour la diffusion sur le Web, le partage par e‑mail, les économies de stockage ou une sortie adaptée à l’impression, sans reconstruire le document à partir de zéro.
+
+- Optimiser le contenu de la page pour la navigation en ligne
- Réduire ou compresser toutes les images
-- Activer la réutilisation du contenu des pages
-- Fusionner les flux en double
-- Désembedder les polices
+- Activer la réutilisation du contenu de la page
+- Fusionner les flux dupliqués
+- Désincorporer les polices
- Supprimer les objets inutilisés
-- Supprimer les champs de formulaire aplatis
+- Supprimer l’aplatissement des champs de formulaire
- Supprimer ou aplatir les annotations
{{% alert color="primary" %}}
- Une explication détaillée des méthodes d'optimisation peut être trouvée dans la page Vue d'ensemble des méthodes d'optimisation.
+ Une explication détaillée des méthodes d'optimisation se trouve sur la page Aperçu des méthodes d'optimisation.
{{% /alert %}}
-## Optimiser un document PDF pour le Web
+## Optimiser le document PDF pour le Web
-L'optimisation, ou linéarisation pour le Web, fait référence au processus de rendre un fichier PDF adapté à la navigation en ligne à l'aide d'un navigateur web. Pour optimiser un fichier pour l'affichage sur le web :
+L'optimisation, ou linéarisation pour le Web, désigne le processus consistant à rendre un fichier PDF adapté à la navigation en ligne à l'aide d'un navigateur Web. Pour optimiser un fichier pour l'affichage Web :
-1. Ouvrez le document d'entrée dans un objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Utilisez la méthode [Optimize](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-1. Enregistrez le document optimisé en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Ouvrez le document d'entrée dans un [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objet.
+1. Utilisez le [Optimize](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode.
+1. Enregistrez le document optimisé en utilisant le [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode.
-Le snippet de code suivant montre comment optimiser un document PDF pour le web.
+Le fragment de code suivant montre comment optimiser un document PDF pour le Web.
-```python
-
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Optimiser pour le web
+def optimize_pdf(infile, outfile):
+ document = ap.Document(infile)
document.optimize()
-
- # Enregistrer le document de sortie
- document.save(output_pdf)
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
## Réduire la taille du PDF
-La méthode [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) vous permet de réduire la taille du document en éliminant les informations inutiles. Par défaut, cette méthode fonctionne comme suit :
+Le [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) La méthode vous permet de réduire la taille du document en éliminant les informations inutiles. Par défaut, cette méthode fonctionne comme suit :
- Les ressources qui ne sont pas utilisées sur les pages du document sont supprimées
-- Les ressources égales sont fusionnées en un seul objet
-
-- Les objets non utilisés sont supprimés
+- Les ressources égales sont regroupées en un seul objet
+- Les objets inutilisés sont supprimés
-Le snippet ci-dessous est un exemple. Notez cependant que cette méthode ne peut pas garantir la réduction du document.
+L'extrait ci-dessous est un exemple. Notez cependant que cette méthode ne peut garantir une réduction du document.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Optimiser le document PDF. Notez cependant que cette méthode ne peut pas garantir la réduction du document
+def reduce_size_pdf(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Optimize PDF document. Note, though, that this method cannot guarantee document shrinking
document.optimize_resources()
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-## Gestion de la Stratégie d'Optimisation
+## Gestion de la stratégie d'optimisation
-Nous pouvons également personnaliser la stratégie d'optimisation. Actuellement, la méthode [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) utilise 5 techniques. Ces techniques peuvent être appliquées en utilisant la méthode OptimizeResources() avec le paramètre [OptimizationOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/optimizationoptions/).
+Nous pouvons également personnaliser la stratégie d'optimisation. Actuellement, le [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) La méthode utilise 5 techniques. Ces techniques peuvent être appliquées en utilisant la méthode OptimizeResources() avec le [OptimizationOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/optimizationoptions/) paramètre.
-### Réduire ou Compresser Toutes les Images
+### Réduction ou compression de toutes les images
-Nous avons deux façons de travailler avec les images : réduire la qualité de l'image et/ou changer leur résolution.
- Dans tous les cas, [ImageCompressionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/imagecompressionoptions/) devrait être appliqué. Dans l'exemple suivant, nous réduisons les images en diminuant la qualité de l'image à 50.
+Nous avons deux façons de travailler avec les images : réduire la qualité de l'image et/ou changer leur résolution. Dans tous les cas, [ImageCompressionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/imagecompressionoptions/) doit être appliqué. Dans l'exemple suivant, nous réduisons les images en diminuant ImageQuality à 50.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Initialiser OptimizationOptions
+def shrinking_or_compressing_all_images(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Initialize OptimizationOptions
optimizeOptions = ap.optimization.OptimizationOptions()
- # Définir l'option CompressImages
+ # Set CompressImages option
optimizeOptions.image_compression_options.compress_images = True
- # Définir l'option ImageQuality
+ # Set ImageQuality option
optimizeOptions.image_compression_options.image_quality = 50
- # Optimiser le document PDF en utilisant OptimizationOptions
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
### Suppression des objets inutilisés
-Un document PDF contient parfois des objets PDF qui ne sont référencés par aucun autre objet dans le document. Cela peut se produire, par exemple, lorsqu'une page est supprimée de l'arborescence des pages du document mais que l'objet de la page lui-même n'est pas supprimé. Supprimer ces objets ne rend pas le document invalide mais le réduit plutôt.
+Un document PDF contient parfois des objets PDF qui ne sont référencés par aucun autre objet du document. Cela peut se produire, par exemple, lorsqu’une page est supprimée de l’arborescence des pages du document mais que l’objet de la page lui‑même n’est pas supprimé. La suppression de ces objets ne rend pas le document invalide, mais le réduit.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Définir l'option RemoveUsedObject
+def removing_unused_objects(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set RemoveUnusedObjects option
optimizeOptions = ap.optimization.OptimizationOptions()
optimizeOptions.remove_unused_objects = True
- # Optimiser le document PDF en utilisant OptimizationOptions
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
### Suppression des flux inutilisés
-Parfois, le document contient des flux de ressources inutilisés. These streams are not “unused objects” because they are referenced from a page resource dictionary. Thus, they are not removed with a “remove unused objects” method. But these streams are never used with the page contents. This may happen in cases when an image has been removed from the page but not from the page resources. Also, this situation often occurs when pages are extracted from the document and document pages have “common” resources, that is, the same Resources object. Page contents are analyzed in order to determine if a resource stream is used or not. Unused streams are removed. It sometimes decreases the document size. The use of this technique is similar to the previous step:
+Parfois, le document contient des flux de ressources inutilisés. Ces flux ne sont pas « unused objects » car ils sont référencés depuis le dictionnaire de ressources d’une page. Ainsi, ils ne sont pas supprimés avec la méthode « remove unused objects ». Mais ces flux ne sont jamais utilisés avec le contenu des pages. Cela peut se produire dans les cas où une image a été supprimée de la page mais pas des ressources de la page. De plus, cette situation survient souvent lorsque des pages sont extraites du document et que les pages du document ont des ressources « common », c’est‑à‑dire le même objet Resources. Le contenu des pages est analysé afin de déterminer si un flux de ressources est utilisé ou non. Les flux inutilisés sont supprimés. Cela diminue parfois la taille du document. L’utilisation de cette technique est similaire à l’étape précédente :
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Définir l'option RemoveUsedStreams
+def removing_unused_streams(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set RemoveUnusedStreams option
optimizeOptions = ap.optimization.OptimizationOptions()
optimizeOptions.remove_unused_streams = True
- # Optimiser le document PDF en utilisant OptimizationOptions
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Liaison des Flux en Double
+### Lier les flux dupliqués
-Certains documents peuvent contenir plusieurs flux de ressources identiques (comme des images, par exemple). Cela peut se produire, par exemple, lorsqu'un document est concaténé avec lui-même. Le document de sortie contient deux copies indépendantes du même flux de ressources. Nous analysons tous les flux de ressources et les comparons. Si des flux sont dupliqués, ils sont fusionnés, c'est-à-dire qu'une seule copie est conservée. Les références sont modifiées en conséquence, et les copies de l'objet sont supprimées. Dans certains cas, cela permet de réduire la taille du document.
+Certains documents peuvent contenir plusieurs flux de ressources identiques (comme des images, par exemple). Cela peut se produire, par exemple lorsqu'un document est concaténé avec lui‑même. Le document de sortie contient deux copies indépendantes du même flux de ressources. Nous analysons tous les flux de ressources et les comparons. Si des flux sont dupliqués, ils sont fusionnés, c’est‑à‑dire qu’il ne reste qu’une seule copie. Les références sont modifiées en conséquence, et les copies de l’objet sont supprimées. Dans certains cas, cela aide à réduire la taille du document.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Définir l'option LinkDuplicateStreams
+def linking_duplicate_streams(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set link_duplicate_streams option
optimizeOptions = ap.optimization.OptimizationOptions()
- optimizeOptions.link_duplcate_streams = True
- # Optimiser le document PDF en utilisant OptimizationOptions
+ optimizeOptions.link_duplicate_streams = True
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Désintégration des Polices
+### Désincorporation des polices
-Si le document utilise des polices intégrées, cela signifie que toutes les données de police sont stockées dans le document.
- L'avantage est que le document est consultable, que la police soit installée sur la machine de l'utilisateur ou non. Mais l'incorporation des polices rend le document plus volumineux. La méthode de suppression des polices intégrées supprime toutes les polices intégrées. Ainsi, la taille du document diminue, mais le document lui-même peut devenir illisible si la police correcte n'est pas installée.
+Si le document utilise des polices incorporées, cela signifie que toutes les données de police sont stockées dans le document. L'avantage est que le document peut être visualisé quel que soit le fait que la police soit installée ou non sur la machine de l'utilisateur. Cependant, l'incorporation de polices augmente la taille du document. La méthode de désincorporation des polices supprime toutes les polices incorporées. Ainsi, la taille du document diminue, mais le document lui‑même peut devenir illisible si la police correcte n'est pas installée.
```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Définir l'option UnembedFonts
- optimizeOptions = ap.optimization.OptimizationOptions()
- optimizeOptions.unembed_fonts = True
- # Optimiser le document PDF en utilisant OptimizationOptions
- document.optimize_resources(optimizeOptions)
- # Enregistrer le document mis à jour
- document.save(output_pdf)
- file_stats_1 = os.stat(input_pdf)
- file_stats_2 = os.stat(output_pdf)
+import aspose.pdf as ap
+from os import path, stat
+import sys
+
+
+def unembed_fonts(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set unembed_fonts option
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.unembed_fonts = True
+ # Optimize PDF document using OptimizationOptions
+ document.optimize_resources(optimize_options)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
print(
- "Taille du fichier original : {}. Taille du fichier réduite : {}".format(
+ "Original file size: {}. Reduced file size: {}".format(
file_stats_1.st_size, file_stats_2.st_size
)
)
```
-Les ressources d'optimisation appliquent ces méthodes au document. Si l'une de ces méthodes est appliquée, la taille du document diminuera probablement. Si aucune de ces méthodes n'est appliquée, la taille du document ne changera pas, ce qui est évident.
+Les ressources d'optimisation appliquent ces méthodes au document. Si l'une de ces méthodes est appliquée, la taille du document diminuera très probablement. Si aucune de ces méthodes n'est appliquée, la taille du document ne changera pas, ce qui est évident.
-## Moyens supplémentaires pour réduire la taille du document PDF
+## Moyens supplémentaires pour réduire la taille du Document PDF
-### Suppression ou aplatissement des annotations
+### Suppression ou aplatissage des annotations
-Les annotations peuvent être supprimées lorsqu'elles sont inutiles. Lorsqu'elles sont nécessaires mais ne nécessitent pas de modifications supplémentaires, elles peuvent être aplaties. Ces deux techniques réduiront la taille du fichier.
+Les annotations peuvent être supprimées lorsqu'elles ne sont pas nécessaires. Lorsqu'elles sont nécessaires mais ne nécessitent pas d'édition supplémentaire, elles peuvent être aplaties. Les deux techniques permettront de réduire la taille du fichier.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Aplatir les annotations
+def flatten_annotations(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Flatten annotations
for page in document.pages:
for annotation in page.annotations:
annotation.flatten()
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
```
-### Suppression des champs de formulaire
+### Suppression des Form Fields
Si le document PDF contient des AcroForms, nous pouvons essayer de réduire la taille du fichier en aplatissant les champs de formulaire.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Charger le formulaire PDF source
- doc = ap.Document(input_pdf)
+def flatten_forms(infile, outfile):
+ # Load source PDF form
+ doc = ap.Document(infile)
- # Aplatir les formulaires
+ # Flatten Forms
if len(doc.form.fields) > 0:
for item in doc.form.fields:
item.flatten()
- # Enregistrer le document mis à jour
- doc.save(output_pdf)
+ # Save the updated document
+ doc.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Convertir un PDF de l'espace colorimétrique RGB en niveaux de gris
+### Convertir un PDF de l'espace colorimétrique RVB en niveaux de gris
-Un fichier PDF comprend du texte, des images, des pièces jointes, des annotations, des graphiques et d'autres objets. Vous pouvez rencontrer le besoin de convertir un PDF de l'espace colorimétrique RGB en niveaux de gris afin qu'il soit plus rapide lors de l'impression de ces fichiers PDF. De plus, lorsque le fichier est converti en niveaux de gris, la taille du document est également réduite, mais cela peut également entraîner une diminution de la qualité du document. Cette fonctionnalité est actuellement prise en charge par la fonctionnalité Pre-Flight d'Adobe Acrobat, mais en ce qui concerne l'automatisation de bureau, Aspose.PDF est une solution ultime pour fournir de tels avantages pour les manipulations de documents. Pour répondre à cette exigence, le code suivant peut être utilisé.
+Un fichier PDF comprend du texte, des images, des pièces jointes, des annotations, des graphiques et d'autres objets. Vous pourriez rencontrer le besoin de convertir un PDF de l'espace couleur RGB en niveaux de gris afin que l'impression de ces fichiers PDF soit plus rapide. De plus, lorsque le fichier est converti en niveaux de gris, la taille du document est également réduite, mais cela peut également entraîner une diminution de la qualité du document. Cette fonctionnalité est actuellement prise en charge par la fonctionnalité Pre-Flight d'Adobe Acrobat, mais lorsqu'il s'agit d'automatisation de bureau, Aspose.PDF est une solution ultime pour offrir de tels avantages lors des manipulations de documents. Pour répondre à ce besoin, le fragment de code suivant peut être utilisé.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Charger le fichier PDF source
- document = ap.Document(input_pdf)
+def сonvert_PDF_from_RGB_colorspace_to_grayscale(infile, outfile):
+ document = ap.Document(infile)
strategy = ap.RgbToDeviceGrayConversionStrategy()
for page in document.pages:
- # Convertir l'image de l'espace colorimétrique RGB en niveaux de gris
+ # Convert the RGB colorspace image to GrayScale colorspace
strategy.convert(page)
- # Enregistrer le fichier résultant
- document.save(output_pdf)
+ # Save resultant file
+ document.save(outfile)
```
-
### Compression FlateDecode
-Aspose.PDF pour Python via .NET prend en charge la compression FlateDecode pour la fonctionnalité d'optimisation PDF. Le code ci-dessous montre comment utiliser l'option dans l'optimisation pour stocker des images avec la compression **FlateDecode** :
+Aspose.PDF for Python via .NET fournit la prise en charge de la compression FlateDecode pour la fonctionnalité d'optimisation PDF. Le fragment de code suivant montre comment utiliser l'option d'Optimisation pour stocker les images avec la compression **FlateDecode** :
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
+
- import aspose.pdf as ap
+def using_flatedecode_compression(infile, outfile):
- # Ouvrir le document
- doc = ap.Document(input_pdf)
- # Initialiser les options d'optimisation
+ # Open Document
+ doc = ap.Document(infile)
+ # Initialize OptimizationOptions
optimizationOptions = ap.optimization.OptimizationOptions()
- # Pour optimiser l'image en utilisant la compression FlateDecode, définir les options d'optimisation sur Flate
- optimizationOptions.image_compression_options.encoding = ap.optimization.ImageEncoding.FLATE
- # Définir les options d'optimisation
+ # To optimise image using FlateDecode Compression set optimization options to Flate
+ optimizationOptions.image_compression_options.encoding = (
+ ap.optimization.ImageEncoding.FLATE
+ )
+ # Set Optimization Options
doc.optimize_resources(optimizationOptions)
- # Enregistrer le document
- doc.save(output_pdf)
+ # Save Document
+ doc.save(outfile)
```
-
\ No newline at end of file
+## Sujets de documents associés
+
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Fusionner des fichiers PDF en Python](/pdf/fr/python-net/merge-pdf-documents/)
+- [Diviser les fichiers PDF en Python](/pdf/fr/python-net/split-document/)
+- [Manipuler des documents PDF en Python](/pdf/fr/python-net/manipulate-pdf-document/)
+
diff --git a/fr/python-net/advanced-operations/working-with-documents/split-pdf/_index.md b/fr/python-net/advanced-operations/working-with-documents/split-pdf/_index.md
index bf042d701c..0f8a6c61c0 100644
--- a/fr/python-net/advanced-operations/working-with-documents/split-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-documents/split-pdf/_index.md
@@ -1,178 +1,372 @@
---
-title: Diviser un PDF par programmation en Python
+title: Diviser des fichiers PDF en Python
linktitle: Diviser des fichiers PDF
type: docs
weight: 60
url: /fr/python-net/split-pdf-document/
-description: Ce sujet montre comment diviser les pages PDF en fichiers PDF individuels dans vos applications Python.
-lastmod: "2023-04-17"
+description: Apprenez à diviser les pages PDF en fichiers PDF séparés en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Division des pages PDF avec Python
+Abstract: L'article traite du processus de division des pages PDF en fichiers individuels à l'aide de Python, en soulignant l'utilité d'une telle fonctionnalité pour la gestion de documents PDF volumineux. Il fait référence à l'Aspose.PDF Splitter, un outil en ligne conçu pour démontrer la fonctionnalité de découpage de PDF. L'article fournit une méthode détaillée pour réaliser cela dans les applications Python, impliquant l'itération sur les pages d'un document PDF via le `Document` object's `PageCollection`. Pour chaque page, un nouvel objet `Document` est créé, la page y est ajoutée, et le nouveau fichier PDF est enregistré à l'aide de la méthode `save()`. Un extrait de code Python joint illustre ce processus, montrant les étapes nécessaires pour diviser un document PDF en fichiers séparés en itérant sur ses pages et en enregistrant chacune comme PDF individuel.
---
-
-
-
-Diviser les pages PDF peut être une fonctionnalité utile pour ceux qui souhaitent diviser un fichier volumineux en pages séparées ou groupes de pages.
+
+Diviser les pages PDF peut être une fonctionnalité utile pour ceux qui souhaitent scinder un gros fichier en pages séparées ou en groupes de pages.
+
+Utilisez ce flux de travail lorsque vous devez diviser de gros PDF en fichiers d’une page ou en ensembles de documents plus petits pour la distribution, la révision ou le traitement en aval.
## Exemple en direct
[Aspose.PDF Splitter](https://products.aspose.app/pdf/splitter) est une application web gratuite en ligne qui vous permet d'examiner comment fonctionne la fonctionnalité de division de présentation.
-[](https://products.aspose.app/pdf/splitter)
+[](https://products.aspose.app/pdf/splitter)
+
+Ce sujet montre comment diviser les pages PDF en fichiers PDF individuels dans vos applications Python. Pour diviser les pages PDF en fichiers PDF à page unique en utilisant Python, les étapes suivantes peuvent être suivies :
+
+1. Parcourir les pages du document PDF à travers le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) de l'objet [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) collection
+1. Pour chaque itération, créez un nouvel objet Document et ajoutez l'individuel [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) objet dans le document vide
+1. Enregistrez le nouveau PDF en utilisant [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode
+
+## Diviser le PDF en plusieurs fichiers ou PDF séparés en Python
+
+L'extrait de code Python suivant vous montre comment diviser les pages PDF en fichiers PDF individuels.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents(infile, outdir):
+ document = ap.Document(infile)
+ for page_num in range(1, len(document.pages) + 1):
+ with ap.Document() as new_document:
+ new_document.pages.add(document.pages[page_num])
+ new_document.save(path.join(outdir, f"Page_{page_num}.pdf"))
+```
+
+## Diviser un PDF en deux parties égales
+
+1. Chargez le document PDF.
+1. Déterminer le nombre total de pages.
+1. Calculez le point milieu.
+1. Créez le premier document de sortie.
+1. Supprimez les pages de la seconde moitié du premier document.
+1. Enregistrez la première partie.
+1. Créer le deuxième document de sortie.
+1. Supprimer les pages de la première moitié du deuxième document.
+1. Enregistrez la deuxième partie.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_into_two_parts(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+ mid_point = total_pages // 2
+
+ # First part
+ with ap.Document(infile) as first_document:
+ first_part_range = range(mid_point + 1, total_pages + 1)
+ first_document.pages.delete(first_part_range)
+ first_document.save(path.join(outdir, "Part_1.pdf"))
+
+ # Second part
+ with ap.Document(infile) as second_document:
+ second_part_range = range(1, mid_point + 1)
+ second_document.pages.delete(second_part_range)
+ second_document.save(path.join(outdir, "Part_2.pdf"))
+```
+
+## Diviser un PDF en plusieurs fichiers toutes les N pages
+
+Divisez un document PDF en plusieurs fichiers plus petits en fonction d'un nombre fixe de pages à l'aide d'Aspose.PDF for Python.
+
+1. Chargez le document PDF.
+1. Déterminer le nombre total de pages.
+1. Définir les pages par partie.
+1. Parcourir le document par blocs.
+1. Calculez la plage de pages pour chaque partie.
+1. Créer un nouveau document pour chaque partie.
+1. Copiez les pages dans le nouveau document.
+1. Enregistrez le document découpé.
+1. Répéter jusqu'à ce que toutes les pages soient traitées.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_every_n_pages(infile, outdir, pages_per_part=3):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ part_index = 1
+ for start_page in range(1, total_pages + 1, pages_per_part):
+ end_page = min(start_page + pages_per_part - 1, total_pages)
+
+ with ap.Document() as part_document:
+ for page_num in range(start_page, end_page + 1):
+ part_document.pages.add(document.pages[page_num])
+ part_document.save(
+ path.join(outdir, f"Every_{pages_per_part}_Part_{part_index}.pdf")
+ )
+
+ part_index += 1
+```
+
+## Diviser un PDF par plages de pages personnalisées
+
+Divisez un document PDF en plusieurs fichiers en fonction de plages de pages définies sur mesure à l'aide d'Aspose.PDF pour Python.
+
+1. Chargez le document PDF.
+1. Déterminer le nombre total de pages.
+1. Créez une liste de tuples représentant les intervalles (start_page, end_page).
+1. Parcourir les plages définies.
+1. Valider la page de démarrage.
+1. Ajuster la page de fin.
+1. Validez la plage effective.
+1. Créer un nouveau document pour chaque plage.
+1. Copiez les pages dans le nouveau document.
+1. Enregistrez chaque document découpé.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
-Ce sujet montre comment diviser les pages PDF en fichiers PDF individuels dans vos applications Python. Pour diviser des pages PDF en fichiers PDF d'une seule page à l'aide de Python, les étapes suivantes peuvent être suivies :
-1. Parcourir les pages du document PDF à travers la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
-1. Pour chaque itération, créer un nouvel objet Document et ajouter l'objet [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) individuel dans le document vide
+def split_documents_by_page_ranges(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+ # Define ranges as (start_page, end_page). Use None to indicate last page.
+ ranges = [(1, 3), (4, 6), (7, None)]
-1. Enregistrez le nouveau PDF en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods)
+ for index, (start_page, end_page) in enumerate(ranges, start=1):
+ if start_page > total_pages:
+ continue
-## Diviser un PDF en plusieurs fichiers ou pdfs séparés en Python
+ effective_end = total_pages if end_page is None else min(end_page, total_pages)
+ if start_page > effective_end:
+ continue
-Le fragment de code Python suivant vous montre comment diviser les pages d'un PDF en fichiers PDF individuels.
+ with ap.Document() as range_document:
+ for page_num in range(start_page, effective_end + 1):
+ range_document.pages.add(document.pages[page_num])
+ range_document.save(
+ path.join(outdir, f"Range_{index}_{start_page}_to_{effective_end}.pdf")
+ )
+```
+
+## Diviser un PDF en première page et les pages restantes
+
+Séparez la première page d'un document PDF du reste des pages en utilisant Aspose.PDF for Python.
+
+1. Chargez le document PDF.
+1. Déterminer le nombre total de pages.
+1. Vérifiez si le document est vide.
+1. Créer un document pour la première page.
+1. Ajouter la première page.
+1. Enregistrez le document de la première page.
+1. Vérifiez s'il y a des pages supplémentaires.
+1. Créer un document pour les pages restantes.
+1. Copier les pages restantes.
+1. Enregistrez le document des pages restantes.
```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_first_page_and_rest(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
- import aspose.pdf as ap
+ if total_pages == 0:
+ return
- # Ouvrir le document
- document = ap.Document(input_pdf)
+ with ap.Document() as first_page_document:
+ first_page_document.pages.add(document.pages[1])
+ first_page_document.save(path.join(outdir, "First_Page.pdf"))
- page_count = 1
+ if total_pages == 1:
+ return
- # Boucle à travers toutes les pages
- for pdfPage in document.pages:
- new_document = ap.Document()
- new_document.pages.add(pdfPage)
- new_document.save(output_path + "_page_" + str(page_count) + ".pdf")
- page_count = page_count + 1
+ with ap.Document() as remaining_pages_document:
+ for page_num in range(2, total_pages + 1):
+ remaining_pages_document.pages.add(document.pages[page_num])
+ remaining_pages_document.save(path.join(outdir, "Remaining_Pages.pdf"))
```
-
\ No newline at end of file
+## Diviser un PDF en dernière page et pages précédentes
+
+Extrayez la dernière page d'un document PDF et séparez‑la des pages restantes en utilisant Aspose.PDF for Python.
+
+1. Chargez le document PDF.
+1. Déterminer le nombre total de pages.
+1. Vérifiez si le document est vide.
+1. Créez un document pour la dernière page.
+1. Ajouter la dernière page.
+1. Enregistrez le Document de la dernière page.
+1. Vérifier les documents d'une seule page.
+1. Supprimez la dernière page du document original.
+1. Enregistrez les pages restantes.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_last_page_and_rest(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ if total_pages == 0:
+ return
+
+ with ap.Document() as last_page_document:
+ last_page_document.pages.add(document.pages[total_pages])
+ last_page_document.save(path.join(outdir, "Last_Page.pdf"))
+
+ if total_pages == 1:
+ return
+
+ document.pages.delete(total_pages) # Remove last page from original document
+ document.save(path.join(outdir, "Previous_Pages.pdf"))
+```
+
+## Diviser un PDF en trois parties
+
+Divisez un document PDF en trois parties distinctes à l'aide d'Aspose.PDF for Python.
+
+1. Chargez le document PDF.
+1. Déterminer le nombre total de pages.
+1. Vérifiez si le document est vide.
+1. Calculer la taille de la pièce.
+1. Parcourir les trois parties.
+1. Déterminer la plage de pages pour chaque partie.
+1. Validez la plage de pages.
+1. Créer un nouveau document pour chaque partie.
+1. Copier les pages dans le document part.
+1. Enregistrez chaque partie.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_into_three_parts(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ if total_pages == 0:
+ return
+
+ part_size = max(1, (total_pages + 2) // 3)
+
+ for part_index in range(3):
+ start_page = part_index * part_size + 1
+ end_page = min((part_index + 1) * part_size, total_pages)
+
+ if start_page > total_pages:
+ break
+
+ with ap.Document() as part_document:
+ for page_num in range(start_page, end_page + 1):
+ part_document.pages.add(document.pages[page_num])
+ part_document.save(path.join(outdir, f"Three_Parts_{part_index + 1}.pdf"))
+```
+
+## Diviseur de pages PDF personnalisé
+
+Divisez un document PDF en plusieurs fichiers en fonction de groupes de pages définis sur mesure en utilisant Aspose.PDF for Python.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_custom_page_groups(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+ groups = [
+ [1, 2, 5],
+ [3, 4, 6, 7],
+ ]
+
+ for group_index, group in enumerate(groups, start=1):
+ valid_pages = [page_num for page_num in group if 1 <= page_num <= total_pages]
+ if not valid_pages:
+ continue
+
+ with ap.Document() as group_document:
+ for page_num in valid_pages:
+ group_document.pages.add(document.pages[page_num])
+ group_document.save(path.join(outdir, f"Custom_Group_{group_index}.pdf"))
+```
+
+## Diviser le PDF en pages individuelles avec des noms de fichiers stables
+
+Divisez un document PDF en pages individuelles et enregistrez-les avec des noms de fichiers stables en utilisant Aspose.PDF for Python.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_with_stable_filenames(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ for page_num in range(1, total_pages + 1):
+ with ap.Document() as new_document:
+ new_document.pages.add(document.pages[page_num])
+ new_document.save(path.join(outdir, f"Page_{page_num:03d}.pdf"))
+```
+
+## Diviser le PDF en pages impaires et paires
+
+Divisez un document PDF en deux fichiers distincts contenant respectivement les pages impaires et les pages paires en utilisant Aspose.PDF for Python.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_odd_even_pages(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ # Odd pages document
+ with ap.Document(infile) as document:
+ with ap.Document() as odd_document:
+ for page_num in range(1, total_pages + 1, 2):
+ odd_document.pages.add(document.pages[page_num])
+ odd_document.save(path.join(outdir, "Odd_Pages.pdf"))
+
+ with ap.Document() as even_document:
+ for page_num in range(2, total_pages + 1, 2):
+ even_document.pages.add(document.pages[page_num])
+ even_document.save(path.join(outdir, "Even_Pages.pdf"))
+```
+
+## Sujets liés au document
+
+- [Travailler avec des documents PDF en Python](/pdf/fr/python-net/working-with-documents/)
+- [Fusionner des fichiers PDF en Python](/pdf/fr/python-net/merge-pdf-documents/)
+- [Optimiser les fichiers PDF en Python](/pdf/fr/python-net/optimize-pdf/)
+- [Manipuler des documents PDF en Python](/pdf/fr/python-net/manipulate-pdf-document/)
+
diff --git a/fr/python-net/advanced-operations/working-with-documents/split-pdf/splitter.png b/fr/python-net/advanced-operations/working-with-documents/split-pdf/splitter.png
new file mode 100644
index 0000000000..ede55d9927
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-documents/split-pdf/splitter.png differ
diff --git a/fr/python-net/advanced-operations/working-with-documents/working-with-headings/_index.md b/fr/python-net/advanced-operations/working-with-documents/working-with-headings/_index.md
deleted file mode 100644
index 0f1b72c778..0000000000
--- a/fr/python-net/advanced-operations/working-with-documents/working-with-headings/_index.md
+++ /dev/null
@@ -1,218 +0,0 @@
----
-title: Travailler avec les En-têtes dans PDF
-type: docs
-weight: 40
-url: /fr/python-net/working-with-headings/
-description: Créez une numérotation dans l'en-tête de votre document PDF avec Python. Aspose.PDF pour Python via .NET offre différents types de styles de numérotation.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Appliquer le style de numérotation dans les titres
-
-Les titres sont les parties importantes de tout document. Les écrivains essaient toujours de rendre les titres plus visibles et significatifs pour leurs lecteurs. S'il y a plus d'un titre dans un document, un écrivain a plusieurs options pour organiser ces titres. L'une des approches les plus courantes pour organiser les titres est d'écrire les titres dans le style de numérotation.
-
-[Aspose.PDF pour Python via .NET](/pdf/fr/python-net/) offre de nombreux styles de numérotation prédéfinis. Ces styles de numérotation prédéfinis sont stockés dans une énumération, [NumberingStyle](https://reference.aspose.com/pdf/python-net/aspose.pdf/numberingstyle/). Les valeurs prédéfinies de l'énumération NumberingStyle et leurs descriptions sont données ci-dessous :
-
-|**Types de titres**|**Description**|
-| :- | :- |
-|NumeralsArabic|Type arabe, par exemple, 1,1.1,...|
-|NumeralsRomanUppercase|Type romain majuscule, par exemple, I,I.II, ...|
-|NumeralsRomanLowercase|Type romain minuscule, par exemple, i,i.ii, ...|
-|LettersUppercase|Type anglais majuscule, par exemple, A,A.B, ...|
-
-|LettersLowercase|Type anglais minuscule, par exemple, a,a.b, ...|
-La propriété [style](https://reference.aspose.com/pdf/python-net/aspose.pdf/heading/#properties) de la classe [Heading](https://reference.aspose.com/pdf/python-net/aspose.pdf/heading/) est utilisée pour définir les styles de numérotation des titres.
-
-|**Figure : Styles de numérotation prédéfinis**|
-| :- |
-Le code source, pour obtenir le résultat montré dans la figure ci-dessus, est donné ci-dessous dans l'exemple.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- document.page_info.width = 612.0
- document.page_info.height = 792.0
- document.page_info.margin = ap.MarginInfo()
- document.page_info.margin.left = 72
- document.page_info.margin.right = 72
- document.page_info.margin.top = 72
- document.page_info.margin.bottom = 72
-
- page = document.pages.add()
- page.page_info.width = 612.0
- page.page_info.height = 792.0
- page.page_info.margin = ap.MarginInfo()
- page.page_info.margin.left = 72
- page.page_info.margin.right = 72
- page.page_info.margin.top = 72
- page.page_info.margin.bottom = 72
-
- float_box = ap.FloatingBox()
- float_box.margin = page.page_info.margin
-
- page.paragraphs.add(float_box)
-
- heading = ap.Heading(1)
- heading.is_in_list = True
- heading.start_number = 1
- heading.text = "Liste 1"
- heading.style = ap.NumberingStyle.NUMERALS_ROMAN_LOWERCASE
- heading.is_auto_sequence = True
-
- float_box.paragraphs.add(heading)
-
- heading2 = ap.Heading(1)
- heading2.is_in_list = True
- heading2.start_number = 13
- heading2.text = "Liste 2"
- heading2.style = ap.NumberingStyle.NUMERALS_ROMAN_LOWERCASE
- heading2.is_auto_sequence = True
-
- float_box.paragraphs.add(heading2)
-
- heading3 = ap.Heading(2)
- heading3.is_in_list = True
- heading3.start_number = 1
- heading3.text = "la valeur, à la date d'effet du plan, de la propriété à distribuer selon le plan en raison de chaque permis"
- heading3.style = ap.NumberingStyle.LETTERS_LOWERCASE
- heading3.is_auto_sequence = True
-
- float_box.paragraphs.add(heading3)
- document.save(output_pdf)
-```
-
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-forms/_index.md b/fr/python-net/advanced-operations/working-with-forms/_index.md
index fd23f873f5..c3105610c5 100644
--- a/fr/python-net/advanced-operations/working-with-forms/_index.md
+++ b/fr/python-net/advanced-operations/working-with-forms/_index.md
@@ -1,154 +1,22 @@
---
-title: Travailler avec des formulaires en utilisant Python
-linktitle: Travailler avec des formulaires
+title: Travailler avec les formulaires en Python
+linktitle: Travailler avec les formulaires
type: docs
weight: 60
url: /fr/python-net/working-with-forms/
-description: Cette section décrit comment travailler avec les AcroForms dans les documents PDF avec Aspose.PDF. pour Python via .NET.
-lastmod: "2023-02-17"
+description: Cette section décrit comment travailler avec AcroForms dans les documents PDF avec Aspose.PDF pour Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment travailler avec les formulaires en Python
+Abstract: Cet article décrit une méthode simple pour remplir programmatiquement des documents PDF à l'aide de la bibliothèque Aspose.PDF for Python via .NET. Il met en avant le processus d'utilisation de la bibliothèque pour identifier et cartographier les champs dans les PDF existants qui utilisent les AcroForms. Les AcroForms sont des formulaires électroniques qui permettent aux utilisateurs de remplir, soumettre et stocker des informations de manière efficace, servant d'outil pratique pour la collecte de données. De plus, l'article fournit des informations sur la création de formulaires, le remplissage des champs de formulaire, l'extraction de données et la gestion des champs dans les PDF à l'aide de la bibliothèque Python.
---
-
-
-This section describes a quick and simple approach to programmatically completing a PDF document through the use of the Aspose.PDF for Python via .NET Library. The section also discusses how one might go about using the Aspose.PDF for Python to discover and map the fields available within an existing PDF with AcroForms.
-
-Cette section décrit une approche rapide et simple pour compléter un document PDF de manière programmatique en utilisant la bibliothèque Aspose.PDF pour Python via .NET. La section discute également de la manière dont on pourrait utiliser Aspose.PDF pour Python pour découvrir et mapper les champs disponibles dans un PDF existant avec AcroForms.
-
-AcroForms allows users to fill in, submit and store the forms electronically, making them a convenient and efficient way to collect information.
+Cette section décrit une approche rapide et simple pour remplir programmatiquement un document PDF en utilisant la bibliothèque Aspose.PDF for Python via .NET. La section aborde également la manière dont on peut utiliser Aspose.PDF for Python pour découvrir et cartographier les champs disponibles dans un PDF existant contenant des AcroForms.
AcroForms permet aux utilisateurs de remplir, soumettre et stocker les formulaires électroniquement, ce qui en fait un moyen pratique et efficace de collecter des informations.
-- [AcroForms](/pdf/fr/python-net/acroforms/) - create form, fill form field, extract data from form, add and remove fields in your PDF with Python library.
-
-- [AcroForms](/pdf/fr/python-net/acroforms/) - créer un formulaire, remplir un champ de formulaire, extraire des données du formulaire, ajouter et supprimer des champs dans votre PDF avec la bibliothèque Python.
-
-
\ No newline at end of file
+- [AcroForms](/pdf/fr/python-net/acroforms/) - créer un formulaire, remplir le champ de formulaire, extraire les données du formulaire, ajouter et supprimer des champs dans votre PDF avec la bibliothèque Python.
+- [Formulaires XFA](/pdf/fr/python-net/xfa-forms/) - convertir XFA, utilisation de IgnoreNeedsRendering.
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/_index.md
index 62fb27e6e5..270cad63c8 100644
--- a/fr/python-net/advanced-operations/working-with-forms/acroforms/_index.md
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/_index.md
@@ -1,158 +1,33 @@
---
-title: Travailler avec AcroForms en utilisant Python
+title: Travailler avec AcroForms en Python
linktitle: AcroForms
type: docs
weight: 10
url: /fr/python-net/acroforms/
-description: Avec Aspose.PDF pour Python, vous pouvez créer un formulaire à partir de zéro, remplir le champ de formulaire dans un document PDF, extraire des données du formulaire, etc.
-lastmod: "2023-02-17"
+description: Apprenez comment créer, remplir, extraire, importer, exporter et gérer les champs AcroForm dans des documents PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Guide pour travailler avec AcroForms en Python
+Abstract: Cette section présente les AcroForms et explique comment travailler avec les formulaires PDF interactifs en utilisant Aspose.PDF for Python via .NET. Elle couvre les flux de travail essentiels tels que la création de formulaires, le remplissage des champs, l'extraction des valeurs, l'importation et l'exportation des données de formulaire, ainsi que la modification ou la suppression des champs de formulaire. Ces tutoriels vous aident à créer des pipelines de traitement de formulaires pratiques pour des scénarios d'automatisation de documents.
---
-
-
## Fondamentaux des AcroForms
-**AcroForms** - technologie unique de formulaire PDF d'Adobe. AcroForms est un formulaire orienté page. Ils sont apparus pour la première fois en 1998. Ils acceptent les entrées sous forme de format de données ou FDF et de format de données XML ou xFDF. Les fournisseurs tiers prennent en charge les AcroForms. Lorsque Adobe a introduit les AcroForms, ils les ont appelés le "formulaire PDF, qui est l'auteur d'Adobe Acrobat Pro/Standard et n'est pas un type spécial de formulaire XFA statique ou dynamique. Les AcroForms sont portables et fonctionnent sur toutes les plateformes.
-
-Vous pouvez utiliser les AcroForms pour ajouter des pages supplémentaires au document de formulaire PDF. Grâce au concept de Modèles, vous pouvez utiliser les AcroForms pour prendre en charge le remplissage du formulaire avec plusieurs enregistrements de base de données.
-
-PDF 1.7 prend en charge deux méthodes différentes pour intégrer des données et des formulaires PDF.
+AcroForms sont des formulaires PDF interactifs, orientés page, introduits par Adobe et inclus dans la spécification PDF depuis la version 1.2. Ils sont largement pris en charge et peuvent être utilisés pour la capture de données, la validation et l'échange dans des flux de travail multiplateformes.
-*AcroForms (également connus sous le nom de formulaires Acrobat)*, introduits et inclus dans la spécification du format PDF 1.2.
+Dans les flux de travail basés sur AcroForm, les données de formulaire peuvent être échangées dans des formats tels que FDF et XFDF. Cela rend les AcroForms adaptés aux scénarios où vous devez préremplir les champs à partir de systèmes externes, extraire les valeurs soumises ou synchroniser les données de formulaire entre des documents.
-Pour un apprentissage plus détaillé des capacités de la bibliothèque Java, consultez les articles suivants :
+Aspose.PDF for Python via .NET fournit des API permettant de créer et de gérer les AcroForms de manière programmatique, y compris le remplissage des champs, l'exportation des données, la modification de la structure du formulaire et l'ajout d'actions de soumission.
-- [Créer AcroForm](/pdf/fr/python-net/create-form) - créer un formulaire à partir de zéro avec Python.
-- [Remplir AcroForm](/pdf/fr/python-net/fill-form) - remplir le champ de formulaire dans votre document PDF.
-- [Extraire AcroForm](/pdf/fr/python-net/extract-form) - obtenir la valeur de tous ou d'un champ individuel du document PDF.
+Pour des exemples pratiques, consultez les articles suivants :
-
\ No newline at end of file
+- [Créer AcroForm](/pdf/fr/python-net/create-form/) - créer un formulaire à partir de zéro.
+- [Remplir AcroForm](/pdf/fr/python-net/fill-form/) - remplir les champs de formulaire dans un document PDF.
+- [Extraire AcroForm](/pdf/fr/python-net/extract-form/) - extraire les valeurs de tous les champs ou d'un champ spécifique.
+- [Importer et exporter des données de formulaire](/pdf/fr/python-net/import-export-form-data/) - importer et exporter les données de formulaire dans des formats courants.
+- [Modification d'AcroForm](/pdf/fr/python-net/modifying-form/) - modifier les propriétés des champs AcroForm.
+- [Supprimer les formulaires du PDF](/pdf/fr/python-net/remove-form/) - supprimer les champs de formulaire d'un document PDF.
+- [Publication de formulaires](/pdf/fr/python-net/posting-form/) - ajouter une fonctionnalité d'envoi à un formulaire PDF.
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md
index ac1c1d2fcc..3e5723ef75 100644
--- a/fr/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md
@@ -1,184 +1,255 @@
---
-title: Créer un AcroForm - Créer un PDF remplissable en Python
-linktitle: Créer un AcroForm
+title: Créer AcroForm - Créer un PDF remplissable en Python
+linktitle: Créer AcroForm
type: docs
weight: 10
url: /fr/python-net/create-form/
-description: Avec Aspose.PDF pour Python, vous pouvez créer un formulaire à partir de zéro dans votre fichier PDF
-lastmod: "2023-02-17"
+description: Créez des champs AcroForm à partir de zéro dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment créer un AcroForm dans un PDF en utilisant Python
+Abstract: Cet article explique comment créer des champs AcroForm dans des documents PDF en utilisant Aspose.PDF for Python via .NET. Il couvre la création de champs de base avec TextBoxField, la personnalisation de l'apparence des zones de texte à plusieurs widgets, ainsi que des types de champs supplémentaires tels que les boutons radio, les listes déroulantes, les cases à cocher, les listes, les champs de signature et les champs de code‑barres. Ces exemples vous aident à créer des formulaires PDF interactifs pour la collecte de données et les flux de travail d'automatisation de documents.
---
-
-
-
-## Créer un formulaire à partir de zéro
-
-### Ajouter un champ de formulaire dans un document PDF
-
-La classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) fournit une collection nommée [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) qui vous aide à gérer les champs de formulaire dans un document PDF.
-
-Pour ajouter un champ de formulaire :
-
-1. Créez le champ de formulaire que vous souhaitez ajouter.
-1. Appelez la méthode [add](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/#methods) de la collection Form.
-
-### Ajouter un TextBoxField
-
-L'exemple ci-dessous montre comment ajouter un [TextBoxField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/).
+
+## Créer Form à partir de zéro
+
+### Ajouter FormField dans un Document PDF
+
+Le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) la classe fournit une collection nommée [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) qui vous aide à gérer les champs de formulaire dans un document PDF.
+
+Pour ajouter un champ de formulaire :
+
+1. Créez le champ de formulaire que vous voulez ajouter.
+1. Appelez la collection Form [add](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/#methods) méthode.
+
+### Ajout de TextBoxField
+
+L'exemple suivant montre comment ajouter un [TextBoxField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/).
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_text_box_field(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ rectangle = ap.Rectangle(10, 600, 110, 620, True)
+ text_box_field = ap.forms.TextBoxField(page, rectangle)
+ text_box_field.partial_name = "textbox1"
+ text_box_field.value = "Text Box"
+
+ text_box_field.default_appearance = ap.annotations.DefaultAppearance(
+ "Arial", 10, drawing.Color.dark_blue
+ )
+
+ border = ap.annotations.Border(text_box_field)
+ border.width = 1
+ border.style = ap.annotations.BorderStyle.DASHED
+ border.dash = ap.annotations.Dash(3, 3)
+ text_box_field.border = border
+
+ text_box_field.characteristics.border = ap.Color.red.to_rgb()
+ text_box_field.characteristics.background = ap.Color.yellow.to_rgb()
+
+ document.form.add(text_box_field, 1)
+ document.save(output_file_name)
+```
+
+### Champ de zone de texte multi-widget dans le PDF
+
+Créer un champ de formulaire de zone de texte avec plusieurs apparences de widget dans un PDF en utilisant Python et Aspose.PDF. Il place plusieurs zones de saisie de texte sur une page, applique différentes polices et couleurs à chaque widget, personnalise les bordures et définit le style d'arrière-plan pour un formulaire PDF interactif.
+
+1. Créer un nouveau Document PDF.
+1. Définir les positions des champs de texte.
+1. Créer différentes apparences par défaut.
+1. Créer un champ de zone texte.
+1. Appliquer l'apparence à chaque widget.
+1. Personnaliser le style de bordure.
+1. Ajouter un champ au formulaire.
+1. Enregistrer le fichier PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_text_box_field_nt(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ rects = [
+ ap.Rectangle(10, 600, 110, 620, normalize_coordinates=True),
+ ap.Rectangle(10, 630, 110, 650, normalize_coordinates=True),
+ ap.Rectangle(10, 660, 110, 680, normalize_coordinates=True),
+ ]
+
+ default_appearances = [
+ ap.annotations.DefaultAppearance("Arial", 10, drawing.Color.dark_blue),
+ ap.annotations.DefaultAppearance("Helvetica", 12, drawing.Color.dark_green),
+ ap.annotations.DefaultAppearance(
+ ap.text.FontRepository.find_font("Calibri"), 14, drawing.Color.dark_magenta
+ ),
+ ]
+
+ text_box_field = ap.forms.TextBoxField(page, rects)
+ text_box_field.partial_name = "textbox1"
+ text_box_field.value = "Some text"
+
+ for i, widget in enumerate(text_box_field):
+ widget.default_appearance = default_appearances[i]
+
+ border = ap.annotations.Border(text_box_field)
+ border.width = 1
+ border.style = ap.annotations.BorderStyle.DASHED
+ border.dash = ap.annotations.Dash(3, 3)
+ text_box_field.border = border
+
+ text_box_field.characteristics.border = ap.Color.red.to_rgb()
+ text_box_field.characteristics.background = ap.Color.yellow.to_rgb()
+
+ document.form.add(text_box_field)
+ document.save(output_file_name)
+```
+
+## Ajout d'autres champs de formulaire
+
+Les extraits de code suivants montrent comment ajouter différents types de champs, tels que des boutons radio, des boîtes combinées, des cases à cocher, des listes déroulantes, des champs de signature et des champs de code‑barres. Chaque fonction crée un nouveau document PDF, ajoute un champ cible avec les options sélectionnées et enregistre le fichier mis à jour.
+
+1. Ajouter un champ de bouton radio
+1. Ajouter un champ Combo Box
+1. Ajouter un champ de case à cocher
+1. Ajouter un champ de zone de liste
+1. Ajouter un champ de signature
+1. Ajouter un champ de code-barres
+
+### Ajouter un champ de bouton radio
```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_radio_button(output_file_name):
+ document = ap.Document()
+ document.pages.add()
+
+ radio = ap.forms.RadioButtonField(document.pages[1])
+ radio.add_option(
+ "Option 1", ap.Rectangle(100, 640, 120, 680, normalize_coordinates=True)
+ )
+ radio.add_option(
+ "Option 2", ap.Rectangle(140, 640, 160, 680, normalize_coordinates=True)
+ )
+
+ document.form.add(radio)
+ document.save(output_file_name)
+```
- import aspose.pdf as ap
+### Ajouter un champ Combo Box
- # Ouvrir le document
- pdfDocument = ap.Document(input_file)
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_combo_box(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ combo = ap.forms.ComboBoxField(
+ page, ap.Rectangle(100, 640, 150, 656, normalize_coordinates=True)
+ )
+ combo.add_option("Red")
+ combo.add_option("Yellow")
+ combo.add_option("Green")
+ combo.add_option("Blue")
+ combo.selected = 3
+
+ document.form.add(combo)
+ document.save(output_file_name)
+```
- # Créer un champ
- textBoxField = ap.forms.TextBoxField(pdfDocument.pages[1], ap.Rectangle(100, 200, 300, 300, True))
- textBoxField.partial_name = "textbox1"
- textBoxField.value = "Text Box"
+### Ajouter un champ de case à cocher
- border = ap.annotations.Border(textBoxField)
- border.width = 5
- border.dash = ap.annotations.Dash(1, 1)
- textBoxField.border = border
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
- textBoxField.color = ap.Color.green
+def add_checkbox_field_to_pdf(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
- # Ajouter le champ au document
- pdfDocument.form.add(textBoxField, 1)
+ checkbox = ap.forms.CheckboxField(
+ page, ap.Rectangle(50, 620, 100, 650, normalize_coordinates=True)
+ )
+ checkbox.characteristics.background = ap.Color.aqua.to_rgb()
+ checkbox.style = ap.forms.BoxStyle.CIRCLE
+
+ document.form.add(checkbox)
+ document.save(output_file_name)
+```
- # Enregistrer le PDF modifié
- pdfDocument.save(output_pdf)
+### Ajouter un champ de zone de liste
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_list_box_field_to_pdf(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ list_box = ap.forms.ListBoxField(
+ page, ap.Rectangle(50, 650, 100, 700, normalize_coordinates=True)
+ )
+ list_box.partial_name = "list"
+ list_box.add_option("Red")
+ list_box.add_option("Green")
+ list_box.add_option("Blue")
+
+ document.form.add(list_box)
+ document.save(output_file_name)
+```
+
+### Ajouter un champ de signature
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_signature_field(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ signature_field = ap.forms.SignatureField(
+ page, ap.Rectangle(100, 700, 200, 800, True)
+ )
+ signature_field.partial_name = "Signature1"
+ document.form.add(signature_field)
+ document.save(output_file_name)
+```
+
+### Ajouter un champ de code-barres
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_barcode_field(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ barcode = ap.forms.BarcodeField(page, ap.Rectangle(100, 700, 200, 740, True))
+ barcode.partial_name = "Barcode1"
+ barcode.add_barcode("1234567890")
+ document.form.add(barcode)
+ document.save(output_file_name)
```
+## Sujets associés
-
\ No newline at end of file
+- [Remplir AcroForm](/pdf/fr/python-net/fill-form/)
+- [Extraire AcroForm](/pdf/fr/python-net/extract-form/)
+- [Modification d'AcroForm](/pdf/fr/python-net/modifying-form/)
+- [Importer et exporter les données du Form](/pdf/fr/python-net/import-export-form-data/)
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md
index 1600fc4d69..ac8d59333e 100644
--- a/fr/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md
@@ -1,99 +1,53 @@
---
-title: Extraire AcroForm - Extraire les données de formulaire d'un PDF en Python
+title: Extraire AcroForm - Extraire les données du formulaire du PDF en Python
linktitle: Extraire AcroForm
type: docs
weight: 30
url: /fr/python-net/extract-form/
-description: Extraire le formulaire de votre document PDF avec la bibliothèque Aspose.PDF pour Python. Obtenez la valeur d'un champ individuel du fichier PDF.
-lastmod: "2023-02-17"
+description: Extraire les valeurs des champs AcroForm dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment obtenir les données du formulaire d'un PDF en utilisant Python
+Abstract: Cet article montre comment extraire les données des champs AcroForm dans les documents PDF en utilisant Aspose.PDF for Python via .NET. L'exemple parcourt les noms des champs de formulaire, lit les valeurs en utilisant la façade Form, et renvoie un dictionnaire pour le traitement en aval. Ce flux de travail est utile pour le reporting, la validation et l'intégration avec des systèmes externes.
---
-
+## Extraire les données du Form
-## Extraire des données du formulaire
+### Obtenir les valeurs de tous les champs d'un document PDF
-### Obtenir les valeurs de tous les champs du document PDF
+Pour lire les valeurs de tous les champs d'un document PDF, parcourez les noms des champs du formulaire et récupérez chaque valeur depuis le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade.
-Pour obtenir les valeurs de tous les champs dans un document PDF, vous devez naviguer à travers tous les champs de formulaire et ensuite obtenir la valeur en utilisant la propriété Value. Obtenez chaque champ de la collection Form, dans le type de champ de base appelé [Field](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/field/) et accédez à sa propriété [value](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/field/#properties).
+Utilisez les étapes suivantes :
-Les extraits de code Python suivants montrent comment obtenir les valeurs de tous les champs d'un document PDF.
+1. Lier le PDF d'entrée à un `Form` objet.
+1. Parcourir `field_names`.
+1. Lire chaque valeur avec `get_field()`.
+1. Stocker les valeurs dans un dictionnaire.
+1. Retourner ou traiter les valeurs extraites.
+
+L'extrait de code Python suivant montre cette approche.
```python
+import aspose.pdf as ap
+
+
+def get_values_from_all_fields(input_file_name):
+ form = ap.facades.Form(input_file_name)
+
+ form_values = {}
+ for field_name in form.field_names:
+ form_values[field_name] = form.get_field(field_name)
- import aspose.pdf as ap
+ print(form_values)
+ return form_values
+```
- # Ouvrir le document
- pdfDocument = ap.Document(input_file)
+## Sujets associés
- # Obtenir les valeurs de tous les champs
- for formField in pdfDocument.form.fields:
- # Analyser les noms et les valeurs si nécessaire
- print("Nom du champ : " + formField.partial_name)
- print("Valeur : " + str(formField.value))
\ No newline at end of file
+- [Créer AcroForm](/pdf/fr/python-net/create-form/)
+- [Remplir AcroForm](/pdf/fr/python-net/fill-form/)
+- [Importer et exporter des données de formulaire](/pdf/fr/python-net/import-export-form-data/)
+- [Modification d'AcroForm](/pdf/fr/python-net/modifying-form/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md
index 15915c0169..b255ee2a4a 100644
--- a/fr/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md
@@ -1,164 +1,53 @@
---
-title: Remplir AcroForm - Remplir le formulaire PDF en utilisant Python
+title: Remplir AcroForm - Remplir le formulaire PDF à l'aide de Python
linktitle: Remplir AcroForm
type: docs
weight: 20
url: /fr/python-net/fill-form/
-description: Vous pouvez remplir des formulaires dans votre document PDF avec la bibliothèque Aspose.PDF pour Python.
-lastmod: "2023-02-17"
+description: Remplir les champs AcroForm dans un document PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment remplir un champ de formulaire dans PDF à l'aide de Python
+Abstract: Cet article explique comment remplir les champs AcroForm dans un document PDF en utilisant Aspose.PDF for Python via .NET. L'exemple utilise la façade Form, mappe les noms de champs à de nouvelles valeurs dans un dictionnaire, met à jour les champs correspondants et enregistre le PDF de sortie. Cette approche est utile pour les flux de travail automatisés de remplissage de documents et le traitement en masse des formulaires.
---
-
+## Remplir le champ de formulaire dans un document PDF
-## Remplir un champ de formulaire dans un document PDF
+L'exemple suivant remplit plusieurs champs dans un formulaire PDF existant en utilisant le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade.
-Pour remplir un champ de formulaire, obtenez le champ de la collection [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) de l'objet Document. puis définissez la valeur du champ à l'aide de la propriété [value](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/#properties) du champ.
+Utilisez les étapes suivantes :
-Cet exemple sélectionne un [TextBoxField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/) et définit sa valeur à l'aide de la propriété Value.
+1. Créez un dictionnaire avec les noms de champs et les valeurs.
+1. Liez le PDF d'entrée à un objet Form.
+1. Parcourez les champs de formulaire disponibles.
+1. Remplissez les champs qui existent dans le dictionnaire.
+1. Enregistrez le PDF mis à jour.
```python
+import aspose.pdf as ap
+
+def fill_form(input_file_name, output_file_name):
+ new_field_values = {
+ "First Name": "Alexander_New",
+ "Last Name": "Greenfield_New",
+ "City": "Yellowtown_New",
+ "Country": "Redland_New",
+ }
- import aspose.pdf as ap
+ form = ap.facades.Form(input_file_name)
- # Ouvrir le document
- pdfDocument = ap.Document(input_file)
- for formField in pdfDocument.form.fields:
- if formField.partial_name == "Field 1":
- # Modifier la valeur du champ
- formField.value = "777"
+ for field_name in form.field_names:
+ if field_name in new_field_values:
+ form.fill_field(field_name, new_field_values[field_name])
- # Enregistrer le document mis à jour
- pdfDocument.save(output_pdf)
+ form.save(output_file_name)
```
+## Sujets associés
-
\ No newline at end of file
+- [Créer AcroForm](/pdf/fr/python-net/create-form/)
+- [Extraire AcroForm](/pdf/fr/python-net/extract-form/)
+- [Importer et exporter les données du Form](/pdf/fr/python-net/import-export-form-data/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/import-export-form-data/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/import-export-form-data/_index.md
new file mode 100644
index 0000000000..e5508f2166
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/import-export-form-data/_index.md
@@ -0,0 +1,226 @@
+---
+title: Importer et exporter des données de formulaire
+linktitle: Importer et exporter des données de formulaire
+type: docs
+weight: 80
+url: /fr/python-net/import-export-form-data/
+description: Importez et exportez les données de champs AcroForm au format XML, FDF, XFDF et JSON en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Techniques d'importation et d'exportation utilisant Aspose.PDF for Python via .NET.
+Abstract: Cette compilation présente une suite complète de techniques d'importation et d'exportation de données de formulaire utilisant Aspose.PDF for Python via .NET. Elle couvre les flux de travail pour l'intégration des formulaires PDF avec des formats de données externes tels que XML, FDF, XFDF et JSON. Les utilisateurs peuvent automatiser le remplissage en masse des formulaires en important des données structurées dans des champs interactifs, ou extraire les valeurs des champs pour l'analyse, la sauvegarde ou l'intégration avec d'autres systèmes. Les exemples montrent comment lier les formulaires PDF, transférer les données entre les formats et enregistrer les documents mis à jour, permettant un traitement de documents évolutif et cohérent dans diverses applications.
+---
+
+Cette page montre les flux de travail courants pour l'importation et l'exportation des données AcroForm avec Aspose.PDF for Python via .NET. Toutes les opérations utilisent le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade.
+
+## Importer les données des champs de formulaire depuis XML
+
+Utilisez cette approche pour remplir un formulaire PDF à partir de données XML externes.
+
+1. Créer un `Form` objet.
+1. Lier le PDF d'entrée.
+1. Ouvrez le fichier de données XML.
+1. Importer des données XML dans le formulaire.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def import_data_from_xml(input_file_name, data_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(data_file_name, "r") as f:
+ form.import_xml(f)
+
+ form.save(output_file_name)
+```
+
+## Exporter les données de FormField vers XML
+
+Cette méthode exporte les valeurs des champs de formulaire d'un document PDF vers XML.
+
+1. Créer un `Form` objet.
+1. Lier le PDF d'entrée.
+1. Ouvrez le fichier de sortie XML.
+1. Exporter les données du formulaire au format XML.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def export_data_to_xml(input_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+ with FileIO(output_file_name, "w") as f:
+ form.export_xml(f)
+```
+
+## Importer les données de champs de formulaire à partir du FDF
+
+Le `import_data_from_fdf` Cette méthode importe les données des champs de formulaire depuis un fichier FDF (Formats de données de formulaire) dans un formulaire PDF.
+
+1. Créer un `Form` objet.
+1. Lier le PDF d'entrée.
+1. Importer les données du formulaire avec `import_fdf()`.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def import_data_from_fdf(input_file_name, data_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(data_file_name, "r") as f:
+ form.import_fdf(f)
+ form.save(output_file_name)
+```
+
+## Exporter les données du FormField vers FDF
+
+Cet exemple exporte les données de formulaire d'un document PDF vers un fichier FDF.
+
+1. Créer un `Form` objet.
+1. Lier le document PDF.
+1. Exporter les données du formulaire avec `export_fdf()`.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def export_data_to_fdf(input_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(output_file_name, "w") as f:
+ form.export_fdf(f)
+```
+
+## Importer les données de champ de formulaire depuis XFDF
+
+Utilisez cette méthode pour importer les données des champs de formulaire à partir d'un fichier XFDF (XML Forms Data Format) dans un formulaire PDF.
+
+1. Créer un `Form` objet.
+1. Lier le PDF d'entrée.
+1. Importer les données de formulaire à partir d’un fichier XFDF.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def import_data_from_xfdf(input_file_name, data_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(data_file_name, "r") as f:
+ form.import_xfdf(f)
+ form.save(output_file_name)
+```
+
+## Exporter les données de champ de formulaire vers XFDF
+
+Ce code exporte les données des champs de formulaire d'un document PDF vers un fichier XFDF.
+
+1. Créer un `Form` objet.
+1. Lier le PDF d'entrée.
+1. Exporter les données du formulaire vers XFDF.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def export_data_to_xfdf(input_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(output_file_name, "w") as f:
+ form.export_xfdf(f)
+```
+
+## Importer des données d'un autre PDF
+
+Cet exemple transfère les données de champs de formulaire d'un PDF source vers un PDF de destination en exportant le XFDF vers un flux en mémoire et en l'important dans le formulaire cible.
+
+1. Créer la source et la destination `Form` objets.
+1. Liez les PDF source et destination.
+1. Exporter les données du formulaire du PDF source.
+1. Importer les données du formulaire dans le PDF de destination.
+1. Enregistrez le PDF de destination mis à jour.
+
+```python
+from io import StringIO
+import aspose.pdf as ap
+
+def import_data_from_another_pdf(source_pdf_name, destination_pdf_name, output_file_name):
+ form_source = ap.facades.Form()
+ form_dest = ap.facades.Form()
+
+ form_source.bind_pdf(source_pdf_name)
+ form_dest.bind_pdf(destination_pdf_name)
+
+ with StringIO() as xfdf_stream:
+ form_source.export_xfdf(xfdf_stream)
+ xfdf_stream.seek(0)
+ form_dest.import_xfdf(xfdf_stream)
+
+ form_dest.save(output_file_name)
+```
+
+## Extraire les champs de formulaire au format JSON
+
+Cette méthode exporte les champs de formulaire vers un fichier JSON en utilisant `export_json()`.
+
+1. Créer un `Form` objet.
+1. Ouvrez le fichier de sortie JSON.
+1. Exporter les champs de formulaire en utilisant `export_json()`.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def extract_form_fields_to_json(input_file_name, output_file_name):
+ form = ap.facades.Form(input_file_name)
+ with FileIO(output_file_name, "w") as json_file:
+ form.export_json(json_file, True)
+```
+
+## Extraire les champs de formulaire vers un document JSON
+
+Cet exemple crée un document JSON personnalisé à partir des noms et valeurs des champs de formulaire.
+
+1. Créez un objet Form à partir du fichier d'entrée.
+1. Initialisez un dictionnaire vide pour stocker les données des champs de formulaire.
+1. Parcourir tous les champs de formulaire et extraire leurs valeurs.
+1. Sérialisez le dictionnaire de données du formulaire en une chaîne JSON avec une indentation de 4 espaces.
+1. Écrivez la chaîne JSON dans le fichier de sortie avec l'encodage UTF-8.
+
+```python
+import json
+import aspose.pdf as ap
+
+def extract_form_fields_to_json_doc(input_file_name, output_file_name):
+ form = ap.facades.Form(input_file_name)
+ form_data = {}
+ for field_name in form.field_names:
+ form_data[field_name] = form.get_field(field_name)
+
+ json_string = json.dumps(form_data, indent=4)
+
+ with open(output_file_name, "w", encoding="utf-8") as json_file:
+ json_file.write(json_string)
+```
+
+## Sujets associés (approche des façades)
+
+- [Importer des données XML](/pdf/fr/python-net/import-xml-data/)
+- [Importer les données FDF](/pdf/fr/python-net/import-fdf-data/)
+- [Importer les données XFDF](/pdf/fr/python-net/import-xfdf-data/)
+- [Importer des données JSON](/pdf/fr/python-net/import-json-data/)
+- [Exporter vers XML](/pdf/fr/python-net/export-to-xml/)
+- [Exporter vers FDF](/pdf/fr/python-net/export-to-fdf/)
+- [Exporter vers XFDF](/pdf/fr/python-net/export-to-xfdf/)
+- [Exporter vers JSON](/pdf/fr/python-net/export-to-json/)
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/modifying-form/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/modifying-form/_index.md
new file mode 100644
index 0000000000..03b55c3a14
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/modifying-form/_index.md
@@ -0,0 +1,139 @@
+---
+title: Modification d'AcroForm
+linktitle: Modification d'AcroForm
+type: docs
+weight: 45
+url: /fr/python-net/modifying-form/
+description: Modifier les champs AcroForm dans les documents PDF en utilisant Aspose.PDF for Python via .NET, y compris la suppression du texte, la définition de limites, le style des champs et la suppression des champs.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gestion et personnalisation des champs de Form PDF
+Abstract: Cet article présente des exemples pratiques pour modifier les champs AcroForm en utilisant Aspose.PDF for Python via .NET. Il couvre la suppression du texte du contenu de formulaire Typewriter, la définition et la lecture des limites de caractères des champs texte, l’application d’une apparence de Font personnalisée, et la suppression des champs par nom. Ces flux de travail prennent en charge les tâches courantes de maintenance de formulaires dans les pipelines automatisés de traitement PDF.
+---
+
+## Effacer le texte dans le Form
+
+Cet exemple montre comment effacer le texte des champs de formulaire Typewriter dans un PDF en utilisant Aspose.PDF for Python via .NET. Il parcourt la première page du PDF, identifie les formulaires Typewriter, supprime leur contenu et enregistre le document mis à jour. Cette approche est utile pour réinitialiser ou assainir les champs de formulaire avant de redistribuer un PDF.
+
+1. Chargez le document PDF d'entrée.
+1. Accédez aux formulaires de la première page.
+1. Parcourir chaque formulaire et vérifier s'il s'agit d'un `Typewriter` formulaire.
+1. Utilisez TextFragmentAbsorber pour trouver les fragments de texte dans le formulaire.
+1. Effacez le texte de chaque fragment.
+1. Enregistrez le PDF modifié dans le fichier de sortie.
+
+```python
+import aspose.pdf as ap
+
+
+def clear_text_in_form(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+
+ forms = document.pages[1].resources.forms
+
+ for form in forms:
+ if form.it == "Typewriter" and form.subtype == "Form":
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(form)
+
+ for fragment in absorber.text_fragments:
+ fragment.text = ""
+
+ document.save(output_file_name)
+```
+
+## Définir la limite du champ
+
+Utiliser `set_field_limit(field, limit)` de `FormEditor` définir le nombre maximal de caractères autorisés dans un champ texte.
+
+1. Créer un `FormEditor` objet.
+1. Lier le PDF d'entrée.
+1. Définissez la limite du champ pour un champ cible.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+
+
+def set_field_limit(input_file_name, output_file_name):
+ form = ap.facades.FormEditor()
+ form.bind_pdf(input_file_name)
+ form.set_field_limit("First Name", 15)
+ form.save(output_file_name)
+```
+
+## Obtenir la limite du champ
+
+Vous pouvez également lire la limite de caractères d'un champ texte.
+
+1. Chargez le document PDF.
+1. Accédez au champ de formulaire cible.
+1. Assurez-vous que le champ est un `TextBoxField`.
+1. Lire et imprimer `max_len`.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+
+
+def get_field_limit(input_file_name):
+ document = ap.Document(input_file_name)
+ if is_assignable(document.form[1], ap.forms.TextBoxField):
+ text_box_field = cast(ap.forms.TextBoxField, document.form[1])
+ print(f"Limit: {text_box_field.max_len}")
+```
+
+## Définir une police personnalisée pour le champ du formulaire
+
+Cet exemple définit une apparence par défaut personnalisée pour un champ de zone de texte, incluant la police, la taille et la couleur.
+
+1. Chargez le document PDF.
+1. Accédez au champ cible et vérifiez son type.
+1. Trouver la police dans `FontRepository`.
+1. Appliquer un nouveau `DefaultAppearance`.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+
+
+def set_form_field_font(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ if is_assignable(document.form[1], ap.forms.TextBoxField):
+ text_box_field = cast(ap.forms.TextBoxField, document.form[1])
+ font = ap.text.FontRepository.find_font("Calibri")
+ text_box_field.default_appearance = ap.annotations.DefaultAppearance(
+ font, 10, ap.Color.black.to_rgb()
+ )
+
+ document.save(output_file_name)
+```
+
+## Supprimer des champs dans un formulaire existant
+
+Ce code supprime un champ de formulaire spécifique (par son nom) d'un document PDF et enregistre le fichier mis à jour en utilisant Aspose.PDF for Python via .NET.
+
+1. Chargez le document PDF.
+1. Supprimer un champ de formulaire par son nom.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+
+
+def delete_form_field(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ document.form.delete("First Name")
+ document.save(output_file_name)
+```
+
+## Sujets associés
+
+- [Créer AcroForm](/pdf/fr/python-net/create-form/)
+- [Remplir AcroForm](/pdf/fr/python-net/fill-form/)
+- [Extraire AcroForm](/pdf/fr/python-net/extract-form/)
+- [Importer et exporter des données de formulaire](/pdf/fr/python-net/import-export-form-data/)
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/posting-form/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/posting-form/_index.md
new file mode 100644
index 0000000000..254f3ee217
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/posting-form/_index.md
@@ -0,0 +1,76 @@
+---
+title: Publication de formulaires PDF via Python
+linktitle: Publication de formulaires
+type: docs
+weight: 75
+url: /fr/python-net/posting-form/
+description: Ajoutez des boutons d’envoi et des actions de soumission aux AcroForms PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des boutons d’envoi et des actions de soumission de formulaire à un PDF en utilisant Python
+Abstract: Cet article présente deux approches pour ajouter une fonctionnalité d’envoi aux formulaires PDF en utilisant Aspose.PDF for Python via .NET. Vous pouvez ajouter un bouton d’envoi prêt à l’emploi via FormEditor ou créer un champ de bouton personnalisé avec SubmitFormAction pour un contrôle avancé. Ces modèles aident à intégrer les formulaires PDF aux points de terminaison de traitement de formulaires côté serveur.
+---
+
+## Ajouter un bouton d’envoi avec FormEditor
+
+L'extrait de code suivant montre comment ajouter un bouton de soumission à un formulaire PDF en utilisant la classe FormEditor dans Aspose.PDF for Python via .NET. Le bouton est configuré pour envoyer les données du formulaire à une URL spécifiée lorsqu'il est cliqué.
+
+1. Créer un `FormEditor` objet.
+1. Ajoutez un bouton de soumission à la page cible.
+1. Définissez l'URL de soumission et les coordonnées du bouton.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+
+def add_submit_button(input_file_name, output_file_name):
+ editor = ap.facades.FormEditor(input_file_name, output_file_name)
+ editor.add_submit_btn(
+ "submitbutton", 1, "Submit", "http://localhost/testing/show", 100, 450, 150, 475
+ )
+ editor.save()
+```
+
+## Ajouter une action de soumission personnalisée
+
+L'extrait de code suivant explique comment créer un bouton de soumission personnalisé dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Le bouton est configuré pour envoyer les données du formulaire à une URL spécifiée lorsqu'il est cliqué.
+
+1. Ouvrez le PDF avec ap.Document().
+1. Créer une action de soumission.
+1. Définissez l'URL cible et les indicateurs de soumission.
+1. Créez un champ bouton et associez son action de clic.
+1. Ajoutez le bouton au formulaire.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+
+def add_submit_action(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+
+ submit_action = ap.annotations.SubmitFormAction()
+ submit_action.url = ap.FileSpecification("http://localhost:3000/submit")
+ submit_action.flags = (
+ ap.annotations.SubmitFormAction.EXPORT_FORMAT
+ | ap.annotations.SubmitFormAction.SUBMIT_COORDINATES
+ )
+
+ rect = ap.Rectangle(10, 10, 100, 40)
+ submit_button = ap.forms.ButtonField(document.pages[1], rect)
+ submit_button.partial_name = "SubmitButton"
+ submit_button.value = "Submit"
+ submit_button.actions.on_release_mouse_btn = submit_action
+
+ document.form.add(submit_button, 1)
+ document.save(output_file_name)
+```
+
+## Sujets associés
+
+- [Créer AcroForm](/pdf/fr/python-net/create-form/)
+- [Remplir AcroForm](/pdf/fr/python-net/fill-form/)
+- [Modification d'AcroForm](/pdf/fr/python-net/modifying-form/)
+- [Importer et exporter des données de formulaire](/pdf/fr/python-net/import-export-form-data/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-forms/acroforms/remove-form/_index.md b/fr/python-net/advanced-operations/working-with-forms/acroforms/remove-form/_index.md
new file mode 100644
index 0000000000..dcbc1c5748
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-forms/acroforms/remove-form/_index.md
@@ -0,0 +1,65 @@
+---
+title: Supprimer Forms du PDF en Python
+linktitle: Supprimer Forms
+type: docs
+weight: 70
+url: /fr/python-net/remove-form/
+description: Supprimer les objets form des pages PDF en utilisant Aspose.PDF for Python via .NET, y compris le nettoyage complet et la suppression ciblée.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer Forms du PDF avec Aspose.PDF for Python via .NET
+Abstract: Cet article présente deux approches pour supprimer les éléments form des documents PDF en utilisant Aspose.PDF for Python via .NET. La première méthode efface tous les objets form d'une page sélectionnée, tandis que la deuxième méthode ne supprime que les ressources form Typewriter correspondantes. Ces exemples aident dans le nettoyage des form, la préparation de modèles et les flux de travail de normalisation des documents.
+---
+
+## Supprimer tous les Forms d'une page
+
+Ce code supprime tous les objets de formulaire de la page spécifiée par `page_num` et enregistre le document mis à jour.
+
+1. Chargez le document PDF.
+1. Accéder aux ressources de la page.
+1. Effacer les objets de formulaire.
+1. Enregistrer le document mis à jour.
+
+```python
+import aspose.pdf as ap
+
+def remove_all_forms(input_file_name, page_num, output_file_name):
+ document = ap.Document(input_file_name)
+ forms = document.pages[page_num].resources.forms
+ forms.clear()
+ document.save(output_file_name)
+```
+
+## Supprimer un type de formulaire spécifique
+
+Le prochain exemple parcourt les objets de formulaire sur une page PDF donnée, identifie les annotations de formulaire de machine à écrire, les supprime, puis enregistre le PDF mis à jour en utilisant Aspose.PDF for Python via .NET.
+
+1. Chargez le document PDF.
+1. Accéder aux formulaires de la page.
+1. Itérer sur les formulaires.
+1. Vérifier les formulaires de machine à écrire.
+1. Supprimer le formulaire correspondant.
+1. Enregistrer le document mis à jour.
+
+```python
+import aspose.pdf as ap
+
+def remove_specified_form(input_file_name, page_num, output_file_name):
+ document = ap.Document(input_file_name)
+ forms = document.pages[page_num].resources.forms
+ for form in forms:
+ if form.it == "Typewriter" and form.subtype == "Form":
+ name = forms.get_form_name(form)
+ forms.delete(name)
+ document.save(output_file_name)
+```
+
+## Sujets associés
+
+- [Créer AcroForm](/pdf/fr/python-net/create-form/)
+- [Remplir AcroForm](/pdf/fr/python-net/fill-form/)
+- [Modification d'AcroForm](/pdf/fr/python-net/modifying-form/)
+- [Publication de formulaires](/pdf/fr/python-net/posting-form/)
diff --git a/fr/python-net/advanced-operations/working-with-forms/xfa-forms/_index.md b/fr/python-net/advanced-operations/working-with-forms/xfa-forms/_index.md
new file mode 100644
index 0000000000..4ebab0e8f4
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-forms/xfa-forms/_index.md
@@ -0,0 +1,61 @@
+---
+title: Travailler avec les formulaires XFA
+linktitle: Formulaires XFA
+type: docs
+weight: 20
+url: /fr/python-net/xfa-forms/
+description: Aspose.PDF for Python via .NET API vous permet de travailler avec les champs XFA et XFA AcroForm dans un document PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+## Convertir XFA en AcroForm
+
+{{% alert color="primary" %}}
+
+Essayer en ligne
+Vous pouvez vérifier la qualité de la conversion Aspose.PDF et voir les résultats en ligne à ce lien : [products.aspose.app/pdf/xfa/acroform](https://products.aspose.app/pdf/xfa/acroform)
+
+{{% /alert %}}
+
+Le snippet de code suivant montre comment convertir un formulaire XFA dynamique (XML Forms Architecture) en un AcroForm standard.
+
+**Les étapes clés comprennent :**
+
+1. Chargement du document PDF d'entrée.
+1. Modification du type de formulaire en STANDARD.
+1. Enregistrement du PDF converti dans un nouveau fichier.
+
+Cette conversion permet une meilleure compatibilité et une gestion cohérente des formulaires entre différents lecteurs et applications PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def convert_dynamic_xfa_to_acroform(infile: str, outfile: str):
+ """Convert dynamic XFA form to standard AcroForm."""
+ with ap.Document(infile) as document:
+ document.form.type = ap.forms.FormType.STANDARD
+ document.save(outfile)
+```
+
+## Utilisation de IgnoreNeedsRendering
+
+Cet exemple montre comment convertir un formulaire dynamique XFA en AcroForm standard à l'aide d'Aspose.PDF for Python. Le code vérifie si le PDF d'entrée contient un formulaire XFA et surcharge le rendu si nécessaire. Il définit ensuite le type de formulaire sur STANDARD et enregistre le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def convert_xfa_form_with_ignore_needs_rendering(infile: str, outfile: str):
+ """Convert XFA form ignoring needs rendering flag."""
+ with ap.Document(infile) as document:
+ if not document.form.needs_rendering and document.form.has_xfa:
+ document.form.ignore_needs_rendering = True
+ document.form.type = ap.forms.FormType.STANDARD
+ document.save(outfile)
+```
diff --git a/fr/python-net/advanced-operations/working-with-graphs/_index.md b/fr/python-net/advanced-operations/working-with-graphs/_index.md
new file mode 100644
index 0000000000..77fb56c804
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/_index.md
@@ -0,0 +1,43 @@
+---
+title: Travailler avec les graphiques PDF en Python
+linktitle: Travailler avec les graphiques
+type: docs
+weight: 70
+url: /fr/python-net/working-with-graphs/
+description: Apprenez à dessiner des graphiques et des formes dans des fichiers PDF en Python, y compris les arcs, les cercles, les courbes, les lignes, les rectangles et les ellipses.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dessinez et personnalisez des formes de graphiques vectoriels dans des fichiers PDF en utilisant Python
+Abstract: Cette section présente la classe Graph dans Aspose.PDF for Python via .NET et explique comment créer des formes vectorielles courantes dans les documents PDF. Apprenez à ajouter et à styliser des arcs, des cercles, des courbes, des lignes, des rectangles, des ellipses, et à valider les limites des formes.
+---
+
+## Qu'est‑ce que Graph
+
+[Aspose.PDF for Python via .NET](/pdf/fr/python-net/) fournit le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe pour dessiner des graphiques vectoriels dans des documents PDF.
+
+`Graph` est un élément de niveau paragraphe, donc vous l'ajoutez à une page via la page `paragraphs` collection. Chaque graphique contient un `Shapes` collection où vous pouvez ajouter des objets de dessin tels que des lignes, des arcs, des cercles, des courbes, des rectangles et des ellipses.
+
+Utilisez cette section lorsque vous devez dessiner des graphiques vectoriels directement dans des pages PDF en Python, que ce soit pour des graphiques, des diagrammes, des illustrations ou des annotations de page personnalisées.
+
+## Formes de Graph couvertes
+
+Les types de formes suivants sont pris en charge par le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe:
+
+- [Arc](/pdf/fr/python-net/add-arc/) - dessiner des segments d'arc pour des cercles partiels et des éléments de diagramme courbés.
+- [Cercle](/pdf/fr/python-net/add-circle/) - créer des contours de cercle ou des cercles remplis pour des repères et des mises en évidence visuelles.
+- [Courbe](/pdf/fr/python-net/add-curve/) - ajouter des courbes de style Bézier pour des chemins personnalisés et des éléments graphiques lisses.
+- [Ligne](/pdf/fr/python-net/add-line/) - tracer des lignes droites, y compris des lignes stylisées et en pointillés.
+- [Rectangle](/pdf/fr/python-net/add-rectangle/) - créer des formes rectangulaires contournées, remplies, en dégradé ou transparentes.
+- [Ellipse](/pdf/fr/python-net/add-ellipse/) - dessiner des formes ovales et ajouter du texte à l'intérieur lorsque cela est nécessaire.
+
+Vous pouvez également valider le placement des formes avec une vérification des limites :
+
+- [Vérifier les limites de forme dans les graphiques PDF avec Python](/pdf/fr/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/)
+
+Les exemples de cette section sont illustrés dans la figure ci‑dessous :
+
+
+
diff --git a/fr/python-net/advanced-operations/working-with-graphs/arc/_index.md b/fr/python-net/advanced-operations/working-with-graphs/arc/_index.md
new file mode 100644
index 0000000000..bea07af591
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/arc/_index.md
@@ -0,0 +1,95 @@
+---
+title: Ajouter des formes d'arc au PDF en Python
+linktitle: Ajouter un arc
+type: docs
+weight: 10
+url: /fr/python-net/add-arc/
+description: Apprenez comment tracer et remplir des formes d'arc dans des fichiers PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dessiner des formes d'arc dans des fichiers PDF à l'aide de Python
+Abstract: Cet article montre comment ajouter des formes d'arc aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre la création d'arcs contournés, le tracé de segments d'arc remplis, et leur ajout à un conteneur Graph.
+---
+
+## Ajouter l'objet Arc
+
+Aspose.PDF for Python via .NET vous permet d'ajouter [Arc](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/arc/) des formes aux pages PDF en utilisant le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Vous pouvez dessiner des arcs contournés et des segments d'arc remplis pour les diagrammes et les illustrations techniques.
+
+Suivez les étapes ci-dessous:
+
+1. Créer [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instance.
+1. Créer [Objet Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/) avec certaines dimensions.
+1. Définir [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/#properties) pour l'objet Graph.
+1. Créer un objet d'arc correspondant.
+1. Ajouter cet objet à la collection Shapes dans l'objet graph.
+1. Ajouter [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objet à la collection paragraphs de la page.
+1. Enregistrez notre fichier PDF.
+
+Le fragment de code suivant montre comment ajouter un [Arc](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/arc/) objet.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_arc(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ arc1 = drawing.Arc(100, 100, 95, 0, 90)
+ arc1.graph_info.color = ap.Color.green_yellow
+ graph.shapes.add(arc1)
+
+ arc2 = drawing.Arc(100, 100, 90, 70, 180)
+ arc2.graph_info.color = ap.Color.dark_blue
+ graph.shapes.add(arc2)
+
+ arc3 = drawing.Arc(100, 100, 85, 120, 210)
+ arc3.graph_info.color = ap.Color.red
+ graph.shapes.add(arc3)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+## Créer un objet d'arc rempli
+
+Cet exemple montre comment ajouter un segment d'arc rempli de couleur.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_arc_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ arc = drawing.Arc(100, 100, 95, 0, 90)
+
+ arc.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(arc)
+
+ line = drawing.Line([195, 100, 100, 100, 100, 195])
+ line.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(line)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Résultat de l'ajout d'un arc rempli :
+
+
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Ajouter des formes de cercle au PDF en Python](/pdf/fr/python-net/add-circle/)
+- [Ajouter des formes de courbe au PDF en Python](/pdf/fr/python-net/add-curve/)
+- [Ajouter des formes de ligne au PDF en Python](/pdf/fr/python-net/add-line/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-graphs/arc/filled_arc.png b/fr/python-net/advanced-operations/working-with-graphs/arc/filled_arc.png
new file mode 100644
index 0000000000..4b8fb92761
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/arc/filled_arc.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/checking-shape-bounds/_index.md b/fr/python-net/advanced-operations/working-with-graphs/checking-shape-bounds/_index.md
new file mode 100644
index 0000000000..9c816cc584
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/checking-shape-bounds/_index.md
@@ -0,0 +1,72 @@
+---
+title: Vérifier les limites de forme dans les graphiques PDF avec Python
+linktitle: Vérifier les limites de forme
+type: docs
+weight: 70
+url: /fr/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/
+description: Apprenez comment valider les limites de forme dans les collections de graphiques PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Validez les limites de forme des graphiques dans les fichiers PDF à l'aide de Python
+Abstract: Cet article montre comment valider les limites de forme dans les collections de Graph avec Aspose.PDF for Python via .NET. Il couvre la configuration de BoundsCheckMode, la détection des formes hors limites et la gestion sécurisée des exceptions de limites.
+---
+
+## Vérifier les limites de forme dans un Graph
+
+Lorsque vous ajoutez des formes à un [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/), vous pouvez activer la validation des limites pour garantir que chaque forme s'adapte à la zone du graphique.
+
+Utilisez [BoundsCheckMode](https://reference.aspose.com/pdf/python-net/aspose.pdf/boundscheckmode/) définir le comportement lorsqu'une forme est hors de portée. Dans cet exemple, `THROW_EXCEPTION_IF_DOES_NOT_FIT` est utilisé pour lever une exception.
+
+Suivez les étapes ci-dessous:
+
+1. Créer un nouveau PDF [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Ajouter un [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Créer un [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) et l'ajouter à la page.
+1. Créer un [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) qui dépasse les limites du graphique.
+1. Définir le mode de vérification des limites sur `THROW_EXCEPTION_IF_DOES_NOT_FIT`.
+1. Ajoutez le rectangle et gérez l’exception.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def check_shape_bounds(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+
+ graph = drawing.Graph(100, 100)
+ graph.top = 10
+ graph.left = 15
+ graph.border = ap.BorderInfo(ap.BorderSide.BOX, 1, ap.Color.black)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(-1, 0, 50, 50)
+ rect.graph_info.fill_color = ap.Color.tomato
+
+ try:
+ graph.shapes.update_bounds_check_mode(
+ ap.BoundsCheckMode.THROW_EXCEPTION_IF_DOES_NOT_FIT
+ )
+ graph.shapes.add(rect)
+ except Exception as e:
+ print(e)
+
+ document.save(outfile)
+```
+
+## Remarques
+
+- Utilisez `THROW_EXCEPTION_IF_DOES_NOT_FIT` lorsque la validation stricte de la mise en page est requise.
+- Pour un comportement permissif, choisissez‑en un autre `BoundsCheckMode` option basée sur vos besoins de mise en page.
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Ajouter des formes rectangulaires au PDF en Python](/pdf/fr/python-net/add-rectangle/)
+- [Ajouter des formes de ligne au PDF en Python](/pdf/fr/python-net/add-line/)
+- [Ajouter des formes elliptiques au PDF en Python](/pdf/fr/python-net/add-ellipse/)
diff --git a/fr/python-net/advanced-operations/working-with-graphs/circle/_index.md b/fr/python-net/advanced-operations/working-with-graphs/circle/_index.md
new file mode 100644
index 0000000000..f6339b21f0
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/circle/_index.md
@@ -0,0 +1,84 @@
+---
+title: Ajouter des formes de cercle au PDF en Python
+linktitle: Ajouter un cercle
+type: docs
+weight: 20
+url: /fr/python-net/add-circle/
+description: Apprenez comment dessiner et remplir des formes de cercle dans des fichiers PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dessiner des formes de cercle dans des fichiers PDF en utilisant Python
+Abstract: Cet article montre comment ajouter des formes de cercle aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre la création de cercles à contour, le remplissage de cercles avec de la couleur et l'insertion de texte à l'intérieur des objets cercle.
+---
+
+## Ajouter un objet Cercle
+
+Aspose.PDF for Python via .NET vous permet d'ajouter [Circle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/circle/) formes vers les pages PDF via le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Utilisez des cercles pour les diagrammes, les annotations et les éléments visuels simples.
+
+Suivez les étapes ci-dessous:
+
+1. Créer [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instance.
+1. Créer [Objet Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/) avec certaines dimensions.
+1. Définir [bordure](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/#properties) pour l'objet Graph.
+1. Ajouter [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objet à la collection paragraphs de la page.
+1. Enregistrez notre fichier PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_circle(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ circle = drawing.Circle(100, 100, 40)
+ circle.graph_info.color = ap.Color.green_yellow
+ graph.shapes.add(circle)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Notre cercle dessiné aura cette apparence :
+
+
+
+## Créer un objet cercle rempli
+
+Cet exemple montre comment ajouter un cercle et le remplir de couleur.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_circle_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ circle = drawing.Circle(100, 100, 40)
+ circle.graph_info.color = ap.Color.green_yellow
+ circle.graph_info.fill_color = ap.Color.green
+ circle.text = ap.text.TextFragment("Circle")
+ graph.shapes.add(circle)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Résultat de l'ajout d'un cercle rempli :
+
+
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Ajouter des formes d'arc au PDF en Python](/pdf/fr/python-net/add-arc/)
+- [Ajouter des formes elliptiques au PDF en Python](/pdf/fr/python-net/add-ellipse/)
+- [Ajouter des formes rectangulaires au PDF en Python](/pdf/fr/python-net/add-rectangle/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-graphs/circle/drawing_circle.png b/fr/python-net/advanced-operations/working-with-graphs/circle/drawing_circle.png
new file mode 100644
index 0000000000..13109c6782
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/circle/drawing_circle.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/circle/filled_circle.png b/fr/python-net/advanced-operations/working-with-graphs/circle/filled_circle.png
new file mode 100644
index 0000000000..be6042befa
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/circle/filled_circle.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/curve/_index.md b/fr/python-net/advanced-operations/working-with-graphs/curve/_index.md
new file mode 100644
index 0000000000..13eb6cf644
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/curve/_index.md
@@ -0,0 +1,85 @@
+---
+title: Ajouter des formes de courbe au PDF en Python
+linktitle: Ajouter une courbe
+type: docs
+weight: 30
+url: /fr/python-net/add-curve/
+description: Apprenez comment tracer et remplir des formes de courbe dans des fichiers PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Tracer des formes de courbe dans des fichiers PDF à l'aide de Python
+Abstract: Cet article montre comment ajouter des formes de courbe aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre la création de courbes décrites, le remplissage d'objets de courbe et le rendu de chemins de courbe personnalisés dans un conteneur Graph.
+---
+
+## Ajouter un objet Courbe
+
+Aspose.PDF for Python via .NET vous permet d'ajouter [Curve](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/curve/) formes vers les pages PDF via le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe.
+
+Cet article montre comment créer des courbes à la fois tracées et remplies.
+
+Suivez les étapes ci-dessous:
+
+1. Créer [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instance.
+1. Créer [Objet Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/) avec certaines dimensions.
+1. Définir [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/#properties) pour l'objet Graph.
+1. Ajouter [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objet à la collection paragraphs de la page.
+1. Enregistrez notre fichier PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_curve(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ curve1 = drawing.Curve([10, 10, 50, 60, 70, 10, 100, 120])
+ curve1.graph_info.color = ap.Color.green_yellow
+ graph.shapes.add(curve1)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+L'image suivante montre le résultat exécuté avec notre extrait de code:
+
+
+
+## Créer un objet de courbe remplie
+
+Cet exemple montre comment ajouter un objet Curve qui est rempli de couleur.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def add_curve_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ curve1 = drawing.Curve([10, 10, 50, 60, 70, 10, 100, 120])
+ curve1.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(curve1)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Résultat de l'ajout d'une courbe remplie :
+
+
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Ajouter des formes d'arc au PDF en Python](/pdf/fr/python-net/add-arc/)
+- [Ajouter des formes de ligne au PDF en Python](/pdf/fr/python-net/add-line/)
+- [Ajouter des formes elliptiques au PDF en Python](/pdf/fr/python-net/add-ellipse/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-graphs/curve/drawing_curve.png b/fr/python-net/advanced-operations/working-with-graphs/curve/drawing_curve.png
new file mode 100644
index 0000000000..be9f2e5ceb
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/curve/drawing_curve.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/curve/filled_curve.png b/fr/python-net/advanced-operations/working-with-graphs/curve/filled_curve.png
new file mode 100644
index 0000000000..c1422bb267
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/curve/filled_curve.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/ellipse/_index.md b/fr/python-net/advanced-operations/working-with-graphs/ellipse/_index.md
new file mode 100644
index 0000000000..598a976a0f
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/ellipse/_index.md
@@ -0,0 +1,113 @@
+---
+title: Ajouter des formes d'ellipse au PDF en Python
+linktitle: Ajouter une ellipse
+type: docs
+weight: 60
+url: /fr/python-net/add-ellipse/
+description: Apprenez à dessiner, remplir et étiqueter des formes d'ellipse dans les fichiers PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dessiner des formes d'ellipse dans des fichiers PDF en utilisant Python
+Abstract: Cet article montre comment ajouter des formes d'ellipse aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre les ellipses avec contour, les ellipses remplies et l'ajout de texte à l'intérieur des objets ellipse.
+---
+
+## Ajouter l'objet Ellipse
+
+Aspose.PDF for Python via .NET vous permet d'ajouter [Ellipse](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/ellipse/) formes aux pages PDF avec le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Vous pouvez dessiner des contours d'ellipse, appliquer des couleurs de remplissage et placer du texte à l'intérieur des objets ellipse.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_ellipse(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ ellipse1 = drawing.Ellipse(150, 100, 120, 60)
+ ellipse1.graph_info.color = ap.Color.green_yellow
+ ellipse1.text = ap.text.TextFragment("Ellipse")
+ graph.shapes.add(ellipse1)
+
+ ellipse2 = drawing.Ellipse(50, 50, 18, 300)
+ ellipse2.graph_info.color = ap.Color.dark_red
+ graph.shapes.add(ellipse2)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+
+
+## Créer un objet ellipse rempli
+
+Le fragment de code suivant montre comment ajouter un [Ellipse](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/ellipse/) objet rempli de couleur.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def create_ellipse_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ ellipse1 = drawing.Ellipse(100, 100, 120, 180)
+ ellipse1.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(ellipse1)
+
+ ellipse2 = drawing.Ellipse(200, 150, 180, 120)
+ ellipse2.graph_info.fill_color = ap.Color.dark_red
+ graph.shapes.add(ellipse2)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+
+
+## Ajouter du texte à l'intérieur de l'ellipse
+
+Aspose.PDF for Python via .NET vous permet également d'insérer du texte dans les objets de forme. L'exemple suivant ajoute du texte aux formes ellipse.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_text_inside_ellipse(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ text_fragment = ap.text.TextFragment("Ellipse")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Helvetica")
+ text_fragment.text_state.font_size = 24
+
+ ellipse1 = ap.drawing.Ellipse(100, 100, 120, 180)
+ ellipse1.graph_info.fill_color = ap.Color.green_yellow
+ ellipse1.text = text_fragment
+ graph.shapes.add(ellipse1)
+
+ ellipse2 = ap.drawing.Ellipse(200, 150, 180, 120)
+ ellipse2.graph_info.fill_color = ap.Color.dark_red
+ ellipse2.text = text_fragment
+ graph.shapes.add(ellipse2)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Ajouter des formes de cercle au PDF en Python](/pdf/fr/python-net/add-circle/)
+- [Ajouter des formes de courbe au PDF en Python](/pdf/fr/python-net/add-curve/)
+- [Ajouter des formes rectangulaires au PDF en Python](/pdf/fr/python-net/add-rectangle/)
diff --git a/fr/python-net/advanced-operations/working-with-graphs/ellipse/ellipse.png b/fr/python-net/advanced-operations/working-with-graphs/ellipse/ellipse.png
new file mode 100644
index 0000000000..0322050025
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/ellipse/ellipse.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/ellipse/fill_ellipse.png b/fr/python-net/advanced-operations/working-with-graphs/ellipse/fill_ellipse.png
new file mode 100644
index 0000000000..ef85eef54a
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/ellipse/fill_ellipse.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/ellipse/text_ellipse.png b/fr/python-net/advanced-operations/working-with-graphs/ellipse/text_ellipse.png
new file mode 100644
index 0000000000..20468c71f2
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/ellipse/text_ellipse.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/graphs.png b/fr/python-net/advanced-operations/working-with-graphs/graphs.png
new file mode 100644
index 0000000000..b9574829a8
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/graphs.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/line/_index.md b/fr/python-net/advanced-operations/working-with-graphs/line/_index.md
new file mode 100644
index 0000000000..0d35909854
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/line/_index.md
@@ -0,0 +1,109 @@
+---
+title: Ajouter des formes de ligne au PDF en Python
+linktitle: Ajouter une ligne
+type: docs
+weight: 40
+url: /fr/python-net/add-line/
+description: Apprenez comment dessiner des formes de ligne et des lignes stylisées dans des fichiers PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dessiner des formes de ligne dans des fichiers PDF en utilisant Python
+Abstract: Cet article montre comment ajouter des formes de ligne aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre la création de lignes de base, la configuration de styles de ligne en pointillés et le tracé de lignes à travers une page.
+---
+
+## Ajouter l'objet Line
+
+Aspose.PDF for Python via .NET vous permet d'ajouter [Line](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/line/) des formes aux pages PDF en utilisant le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Vous pouvez contrôler la couleur de la ligne, le motif du tiret et le placement.
+
+Suivez les étapes ci-dessous:
+
+1. Créer [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instance.
+1. Créer un objet de graphe
+1. Ajouter [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objet à la collection paragraphs de la page.
+1. Créer et configurer la ligne
+1. Ajouter le [Line](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/line/) au graphe
+1. Enregistrez notre fichier PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def add_line(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ line = drawing.Line([100, 100, 200, 100])
+ line.graph_info.dash_array = [0, 1, 0]
+ line.graph_info.dash_phase = 1
+ graph.shapes.add(line)
+
+ document.save(outfile)
+```
+
+
+
+## Comment ajouter une ligne pointillée et tiretée à votre document PDF
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_dotted_dashed_line(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ line = drawing.Line([100, 100, 200, 100])
+ line.graph_info.color = ap.Color.red
+ line.graph_info.dash_array = [0, 1, 0]
+ line.graph_info.dash_phase = 1
+ graph.shapes.add(line)
+
+ document.save(outfile)
+```
+
+Résultat de l'ajout d'une ligne pointillée tiretée:
+
+
+
+## Dessiner une ligne à travers la page
+
+Vous pouvez également dessiner des lignes à travers la page pour former une croix.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def draw_line_across_page(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ page.page_info.margin.left = 0
+ page.page_info.margin.right = 0
+ page.page_info.margin.bottom = 0
+ page.page_info.margin.top = 0
+
+ graph = drawing.Graph(page.page_info.width, page.page_info.height)
+ line = drawing.Line([page.rect.llx, 0, page.page_info.width, page.rect.ury])
+ graph.shapes.add(line)
+ line2 = drawing.Line([0, page.rect.ury, page.page_info.width, page.rect.llx])
+ graph.shapes.add(line2)
+ page.paragraphs.add(graph)
+
+ document.save(outfile)
+```
+
+
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Ajouter des formes de courbe au PDF en Python](/pdf/fr/python-net/add-curve/)
+- [Ajouter des formes rectangulaires au PDF en Python](/pdf/fr/python-net/add-rectangle/)
+- [Vérifier les limites de forme dans les graphiques PDF avec Python](/pdf/fr/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/)
diff --git a/fr/python-net/advanced-operations/working-with-graphs/line/add_line.png b/fr/python-net/advanced-operations/working-with-graphs/line/add_line.png
new file mode 100644
index 0000000000..4cb1631d6f
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/line/add_line.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/line/dash_line.png b/fr/python-net/advanced-operations/working-with-graphs/line/dash_line.png
new file mode 100644
index 0000000000..2021f2d82a
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/line/dash_line.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/line/draw_line.png b/fr/python-net/advanced-operations/working-with-graphs/line/draw_line.png
new file mode 100644
index 0000000000..07e95f957a
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/line/draw_line.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/rectangle/_index.md b/fr/python-net/advanced-operations/working-with-graphs/rectangle/_index.md
new file mode 100644
index 0000000000..cfae0db2db
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-graphs/rectangle/_index.md
@@ -0,0 +1,195 @@
+---
+title: Ajouter des formes rectangulaires à un PDF en Python
+linktitle: Ajouter un rectangle
+type: docs
+weight: 50
+url: /fr/python-net/add-rectangle/
+description: Apprenez comment dessiner et remplir des formes rectangulaires dans des fichiers PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dessiner des formes rectangulaires dans des fichiers PDF en utilisant Python
+Abstract: Cet article montre comment ajouter des formes rectangulaires aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre les rectangles tracés, les remplissages pleins et dégradés, la transparence alpha et le contrôle de l'ordre Z.
+---
+
+## Ajouter l'objet Rectangle
+
+Aspose.PDF for Python via .NET vous permet d'ajouter [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) formes vers les pages PDF via le [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Vous pouvez dessiner des rectangles bordés et appliquer des remplissages pleins, dégradés ou transparents.
+
+Suivez les étapes ci-dessous:
+
+1. Créer un nouveau PDF [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Ajouter [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à la collection de pages du fichier PDF.
+1. Ajouter [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/) vers la collection de paragraphes de l'instance de page.
+1. Créer [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) instance.
+1. Définir la bordure pour [Objet Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/).
+1. Ajouter [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objet vers la collection de formes de l'objet Graph.
+1. Ajouter l'objet graphique à la collection de paragraphes de l'instance de page.
+1. Ajouter [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/) vers la collection de paragraphes de l'instance de page.
+1. Et enregistrez votre fichier PDF
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_rectangle(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ text_fragment = ap.text.TextFragment("Rectangle")
+ page.paragraphs.add(text_fragment)
+
+ graph = drawing.Graph(400, 300)
+ page.paragraphs.add(graph)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
+
+ rect = drawing.Rectangle(20, 20, 350, 250)
+ graph.shapes.add(rect)
+ page.paragraphs.add(text_fragment)
+
+ document.save(outfile)
+```
+
+
+
+## Créer un objet rectangle rempli
+
+Aspose.PDF for Python via .NET offre également la fonction de remplir l'objet rectangle avec une certaine couleur.
+
+Le fragment de code suivant montre comment ajouter un [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objet rempli de couleur.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def create_rectangle_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(100, 100, 200, 120)
+ rect.graph_info.fill_color = ap.Color.red
+ graph.shapes.add(rect)
+
+ document.save(outfile)
+```
+
+Résultat du rectangle rempli avec une couleur unie :
+
+
+
+## Ajouter un dessin avec remplissage en dégradé
+
+Aspose.PDF for Python via .NET prend en charge la fonctionnalité d'ajouter des objets graphiques aux documents PDF et il est parfois nécessaire de remplir ces objets graphiques avec une couleur en dégradé.
+
+Le fragment de code suivant montre comment ajouter un [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objet rempli avec une couleur en dégradé.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_drawing_with_gradient_fill(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(0, 0, 300, 300)
+ gradient_color = ap.Color()
+ gradient_settings = drawing.GradientAxialShading(ap.Color.red, ap.Color.blue)
+ gradient_settings.start = ap.Point(0, 0)
+ gradient_settings.end = ap.Point(350, 350)
+ gradient_color.pattern_color_space = gradient_settings
+ rect.graph_info.fill_color = gradient_color
+ graph.shapes.add(rect)
+
+ document.save(outfile)
+```
+
+
+
+## Créer un rectangle avec un canal de couleur alpha
+
+Aspose.PDF for Python via .NET prend également en charge la transparence via un canal de couleur alpha.
+
+Le fragment de code suivant montre comment ajouter un [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objet avec des valeurs alpha.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def create_rectangle_with_alpha_color_channel(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(100, 100, 200, 120)
+ rect.graph_info.fill_color = ap.Color.from_argb(128, 244, 180, 0)
+ graph.shapes.add(rect)
+
+ rect1 = drawing.Rectangle(200, 150, 200, 100)
+ rect1.graph_info.fill_color = ap.Color.from_argb(160, 120, 0, 120)
+ graph.shapes.add(rect1)
+
+ document.save(outfile)
+```
+
+
+
+## Contrôler l'ordre Z des formes
+
+Aspose.PDF for .NET prend en charge la fonctionnalité d’ajout d’objets graphiques (par exemple graphique, ligne, rectangle, etc.) aux documents PDF. Lors de l’ajout de plusieurs instances du même objet dans un fichier PDF, nous pouvons contrôler leur rendu en spécifiant l’ordre Z. L’ordre Z est également utilisé lorsque nous devons rendre les objets les uns sur les autres.
+
+Le fragment de code suivant montre les étapes pour rendre [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objets les uns sur les autres.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def _add_rectangle_to_page(
+ page: ap.Page,
+ x: float,
+ y: float,
+ width: float,
+ height: float,
+ color: ap.Color,
+ zindex: int,
+):
+ graph = drawing.Graph(width, height)
+ graph.is_change_position = False
+ graph.left = x
+ graph.top = y
+ rect = drawing.Rectangle(0, 0, width, height)
+ rect.graph_info.fill_color = color
+ rect.graph_info.color = color
+ graph.shapes.add(rect)
+ graph.z_index = zindex
+ page.paragraphs.add(graph)
+
+
+def control_z_order_of_rectangle(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ page.set_page_size(375, 300)
+ page.page_info.margin.left = 0
+ page.page_info.margin.top = 0
+
+ _add_rectangle_to_page(page, 50, 40, 60, 40, ap.Color.red, 2)
+ _add_rectangle_to_page(page, 20, 20, 30, 30, ap.Color.blue, 1)
+ _add_rectangle_to_page(page, 40, 40, 60, 30, ap.Color.green, 0)
+
+ document.save(outfile)
+```
+
+
+
+## Sujets liés aux graphiques
+
+- [Travailler avec les graphes PDF en Python](/pdf/fr/python-net/working-with-graphs/)
+- [Vérifier les limites de forme dans les graphiques PDF avec Python](/pdf/fr/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/)
+- [Ajouter des formes de ligne au PDF en Python](/pdf/fr/python-net/add-line/)
+- [Ajouter des formes elliptiques au PDF en Python](/pdf/fr/python-net/add-ellipse/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-graphs/rectangle/control.png b/fr/python-net/advanced-operations/working-with-graphs/rectangle/control.png
new file mode 100644
index 0000000000..b7c0f8b35c
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/rectangle/control.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/rectangle/create_rectangle.png b/fr/python-net/advanced-operations/working-with-graphs/rectangle/create_rectangle.png
new file mode 100644
index 0000000000..f2748957f4
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/rectangle/create_rectangle.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/rectangle/fill_rectangle.png b/fr/python-net/advanced-operations/working-with-graphs/rectangle/fill_rectangle.png
new file mode 100644
index 0000000000..264a88da44
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/rectangle/fill_rectangle.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/rectangle/gradient.png b/fr/python-net/advanced-operations/working-with-graphs/rectangle/gradient.png
new file mode 100644
index 0000000000..854480c132
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/rectangle/gradient.png differ
diff --git a/fr/python-net/advanced-operations/working-with-graphs/rectangle/rectangle_color.png b/fr/python-net/advanced-operations/working-with-graphs/rectangle/rectangle_color.png
new file mode 100644
index 0000000000..e14ed9fef0
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-graphs/rectangle/rectangle_color.png differ
diff --git a/fr/python-net/advanced-operations/working-with-images/_index.md b/fr/python-net/advanced-operations/working-with-images/_index.md
index 2f89a2c064..c093b2b7ec 100644
--- a/fr/python-net/advanced-operations/working-with-images/_index.md
+++ b/fr/python-net/advanced-operations/working-with-images/_index.md
@@ -1,86 +1,30 @@
---
-title: Travailler avec des images dans un PDF en utilisant Python
+title: Travailler avec des images dans le PDF en utilisant Python
linktitle: Travailler avec des images
type: docs
weight: 40
url: /fr/python-net/working-with-images/
-description: Cette section décrit les fonctionnalités de travail avec des images dans un fichier PDF en utilisant la bibliothèque Python.
-lastmod: "2023-04-17"
+description: Apprenez comment ajouter, supprimer, extraire, remplacer et inspecter les images dans les documents PDF en utilisant Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les images dans les fichiers PDF avec Python
+Abstract: Cette section montre comment travailler avec des images dans les documents PDF en utilisant Aspose.PDF for Python via .NET. Elle couvre l'ajout, la suppression, l'extraction, le remplacement et l'inspection des images dans les fichiers PDF existants.
---
-
+Aspose.PDF for Python via .NET fournit un ensemble complet d'outils pour les opérations d'images dans les documents PDF existants.
-Il existe de nombreuses méthodes et outils pour éditer et manipuler des images dans les documents PDF. En plus des fonctions habituelles d'ajout et de suppression d'images du fichier PDF, la bibliothèque Aspose.PDF pour Python permet également d'extraire des images. **Aspose.PDF pour Python** est un outil intelligent et efficace pour travailler avec des images dans un PDF existant.
+Utilisez cette section pour insérer de nouvelles images, supprimer ou remplacer les images embarquées, extraire le contenu des images et inspecter les détails du placement des images sur une page.
-Vous pouvez faire ce qui suit :
+## Tâches d'images couvertes
+
+Les tâches suivantes sont couvertes :
+
+- [Ajouter une image à un fichier PDF existant](/pdf/fr/python-net/add-image-to-existing-pdf-file/) - placer des images à des coordonnées fixes et embarquer des images avec différentes options.
+- [Supprimer les images du fichier PDF](/pdf/fr/python-net/delete-images-from-pdf-file/) - supprimer une ressource d'image ou toutes les images d'une page sélectionnée.
+- [Extraire des images d'un fichier PDF](/pdf/fr/python-net/extract-images-from-pdf-file/) - extraire les images incorporées des pages PDF.
+- [Remplacer l'image dans un fichier PDF existant](/pdf/fr/python-net/replace-image-in-existing-pdf-file/) - remplacer les images incorporées par l'index de ressource ou le placement.
+- [Rechercher et obtenir des images d'un document PDF](/pdf/fr/python-net/search-and-get-images-from-pdf-document/) - trouver des images et inspecter les placements d'images dans un document.
-- [Ajouter une image à un fichier PDF existant](/pdf/fr/python-net/add-image-to-existing-pdf-file/) - ajouter des images et des références d'une seule image dans un document PDF, après cela, contrôler la qualité.
-- [Supprimer des images d'un fichier PDF](/pdf/fr/python-net/delete-images-from-pdf-file/) - vérifier l'extrait de code pour supprimer des images d'un fichier PDF.
-- [Extraire des images d'un fichier PDF](/pdf/fr/python-net/extract-images-from-pdf-file/) - le prochain article montre comment extraire des images d'un fichier PDF en utilisant la bibliothèque Python.
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md
index 3a8b10be08..b4cf10ee2c 100644
--- a/fr/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md
+++ b/fr/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md
@@ -1,186 +1,159 @@
---
-title: Ajouter une image à un PDF en utilisant Python
+title: Ajouter une image au PDF avec Python
linktitle: Ajouter une image
type: docs
weight: 10
url: /fr/python-net/add-image-to-existing-pdf-file/
-description: Cette section décrit comment ajouter une image à un fichier PDF existant en utilisant une bibliothèque Python.
-lastmod: "2022-02-17"
+description: Apprenez comment ajouter des images aux fichiers PDF existants en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Ajouter des images aux fichiers PDF existants avec Python
+Abstract: Cet article montre comment ajouter des images aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre l'ajout d'une image à des coordonnées fixes, le placement d'images avec des opérateurs de bas niveau, l'attribution d'un texte alternatif pour l'accessibilité et l'intégration d'images avec Flate compression.
---
-
-
-
-## Ajouter une Image dans un Fichier PDF Existant
-
-Le code suivant montre comment ajouter une image dans le fichier PDF.
-
-1. Chargez le fichier PDF d'entrée.
-1. Spécifiez le numéro de page sur lequel l'image sera placée.
-1. Pour définir la position de l'image sur la page, appelez la méthode [add_image](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) de la classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
-1. Appelez la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) de la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+
+## Ajouter une image dans un fichier PDF existant
+
+Cet exemple montre comment placer une image à une position fixe sur une page PDF existante en utilisant Aspose.PDF for Python via .NET.
+
+Utilisez ces exemples de cette page lorsque vous devez placer des logos, des photos ou d'autres graphiques à des coordonnées fixes dans une mise en page PDF existante.
+
+1. Chargez un PDF existant avec `ap.Document(infile)`.
+1. Sélectionnez la page cible (`document.pages[1]` pour la première page).
+1. Appeler `page.add_image()` avec :
+ - Le chemin du fichier image.
+ - A `Rectangle` définir les coordonnées de placement.
+1. Enregistrez le PDF mis à jour.
```python
+import aspose.pdf as ap
+
+
+def add_image(infile, image_file, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+ page.add_image(image_file, ap.Rectangle(20, 730, 120, 830, True))
+ document.save(outfile)
+```
- import aspose.pdf as ap
+## Ajouter une image à l'aide d'opérateurs
- # Ouvrir le document
- document = ap.Document(input_file)
+Cette approche ajoute une image avec des opérateurs PDF de bas niveau au lieu des opérateurs de haut niveau `add_image()` assistant.
- document.pages[1].add_image(image_file, ap.Rectangle(20, 730, 120, 830, True))
+1. Créer un nouveau `Document` et ajoutez une page.
+1. Ajoutez l'image aux ressources de la page (`page.resources.images`).
+1. Créer des opérateurs de transformation (`GSave`, `ConcatenateMatrix`, `Do`, `GRestore`).
+1. Ajoutez des opérateurs au contenu de la page.
+1. Enregistrez le PDF résultant.
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def add_image_using_operators(image_file, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ page.set_page_size(842, 595)
+ resources_images = page.resources.images
+
+ with FileIO(image_file, "rb") as image_stream:
+ image_id = resources_images.add(image_stream)
+
+ rectangle = ap.Rectangle(0, 0, page.media_box.width, page.media_box.height, True)
+
+ operators = [
+ ap.operators.GSave(),
+ ap.operators.ConcatenateMatrix(
+ ap.Matrix(
+ rectangle.urx - rectangle.llx,
+ 0,
+ 0,
+ rectangle.ury - rectangle.lly,
+ rectangle.llx,
+ rectangle.lly,
+ )
+ ),
+ ap.operators.Do(image_id),
+ ap.operators.GRestore(),
+ ]
+
+ page.contents.add(operators)
+ document.save(outfile)
```
-## Ajouter une Image dans un Fichier PDF Existant (Facades)
+## Ajouter une image avec texte alternatif
+
+Cet exemple ajoute une image et attribue un texte alternatif pour l'accessibilité.
-Il existe également une méthode alternative, plus simple pour ajouter une image à un fichier PDF.
- Vous pouvez utiliser la méthode [AddImage](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/methods/addimage/index) de la classe [PdfFileMend](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/). La méthode [add_image()](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/#methods) nécessite l'image à ajouter, le numéro de page auquel l'image doit être ajoutée et les informations de coordonnées. Après cela, enregistrez le fichier PDF mis à jour et fermez l'objet PdfFileMend en utilisant la méthode [close()](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/#methods). Le code suivant vous montre comment ajouter une image dans un fichier PDF existant.
+1. Créer un nouveau `Document` et ajoutez une page.
+1. Ajouter l'image à la page avec `page.add_image()`.
+1. Obtenir des ressources d'image de `page.resources.images`.
+1. Définir le texte alternatif en utilisant `try_set_alternative_text()`.
+1. Enregistrez le PDF résultant.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Ouvrir le document
- mender = ap.facades.PdfFileMend()
+def add_image_set_alternative_text(image_file, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ page.set_page_size(842, 595)
- # Créer un objet PdfFileMend pour ajouter du texte
- mender.bind_pdf(input_file)
+ page.add_image(image_file, ap.Rectangle(0, 0, 842, 595, True))
+ resources_images = page.resources.images
+ x_image = resources_images[1]
+ result = x_image.try_set_alternative_text("Alternative text for image", page)
- # Ajouter une image dans le fichier PDF
- mender.add_image(image_file, 1, 100.0, 600.0, 200.0, 700.0)
+ if result:
+ print("Alternative text has been added successfully")
+
+ document.save(outfile)
+```
- # Enregistrer les modifications
- mender.save(output_pdf)
+## Ajouter une image à un PDF avec la compression Flate
- # Fermer l'objet PdfFileMend
- mender.close()
+Cet exemple intègre une image en utilisant `ImageFilterType.FLATE` compression.
+1. Créer un nouveau `Document` et ajoutez une page.
+1. Ajouter l'image aux ressources de la page avec la compression Flate.
+1. Utiliser les opérateurs de matrice pour placer et dessiner l'image.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def add_image_to_pdf_with_flate_compression(image_file, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ resources_images = page.resources.images
+
+ with FileIO(image_file, "rb") as image_stream:
+ image_id = resources_images.add(image_stream, ap.ImageFilterType.FLATE)
+
+ rectangle = ap.Rectangle(0, 0, 600, 600, True)
+ matrix = ap.Matrix(
+ rectangle.urx - rectangle.llx,
+ 0,
+ 0,
+ rectangle.ury - rectangle.lly,
+ rectangle.llx,
+ rectangle.lly,
+ )
+
+ page.contents.add([ap.operators.GSave()])
+ page.contents.add([ap.operators.ConcatenateMatrix(matrix)])
+ page.contents.add([ap.operators.Do(image_id)])
+ page.contents.add([ap.operators.GRestore()])
+
+ document.save(outfile)
```
-
\ No newline at end of file
+## Sujets liés aux images
+
+- [Travailler avec des images dans les PDF en utilisant Python](/pdf/fr/python-net/working-with-images/)
+- [Remplacer les images dans les fichiers PDF existants](/pdf/fr/python-net/replace-image-in-existing-pdf-file/)
+- [Supprimer les images des fichiers PDF](/pdf/fr/python-net/delete-images-from-pdf-file/)
+- [Extraire les images des fichiers PDF](/pdf/fr/python-net/extract-images-from-pdf-file/)
diff --git a/fr/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md
index ef525633a9..dedb4d7b07 100644
--- a/fr/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md
+++ b/fr/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md
@@ -1,193 +1,58 @@
---
-title: Supprimer des images d'un fichier PDF à l'aide de Python
-linktitle: Supprimer des images
+title: Supprimer les images d'un fichier PDF à l'aide de Python
+linktitle: Supprimer les images
type: docs
weight: 20
url: /fr/python-net/delete-images-from-pdf-file/
-description: Cette section explique comment supprimer des images d'un fichier PDF à l'aide d'Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-17"
+description: Apprenez comment supprimer des images spécifiques ou toutes les images des fichiers PDF en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Supprimer les images des fichiers PDF avec Python
+Abstract: Cet article montre comment supprimer des images des documents PDF avec Aspose.PDF for Python via .NET. Il couvre la suppression d'une ressource d'image spécifique et la suppression de toutes les images d'une page sélectionnée.
---
-
-
-
-Il existe de nombreuses raisons de supprimer toutes les images ou des images spécifiques des fichiers PDF.
-
-Parfois, un fichier PDF peut contenir des images importantes qui doivent être supprimées pour protéger la vie privée ou empêcher tout accès non autorisé à certaines informations.
-
-Supprimer les images indésirables ou redondantes peut aider à réduire la taille du fichier, facilitant ainsi le partage ou le stockage des fichiers PDF.
-
-Si nécessaire, vous pouvez réduire le nombre de pages en supprimant toutes les images du document. De plus, supprimer des images du document aidera à préparer le PDF pour la compression ou l'extraction des informations textuelles.
-
-**Aspose.PDF pour Python via .NET** vous aidera dans cette tâche.
-
-## Supprimer des images d'un fichier PDF
-
-Pour supprimer une image d'un fichier PDF :
-
-1. Ouvrir un document PDF existant.
-1. Supprimer une image particulière.
-1. Enregistrer le fichier PDF mis à jour.
-
-Le code suivant montre comment supprimer une image d'un fichier PDF.
-```python
+Utilisez cette page lorsque vous devez supprimer des graphiques inutiles, réduire la taille du PDF ou nettoyer le contenu visuel sensible d'un document.
+
+## Supprimer les images du fichier PDF
- import aspose.pdf as ap
+Utilisez les étapes suivantes pour supprimer une image d’une page :
- # Ouvrir le document
- document = ap.Document(input_file)
+1. Chargez le PDF source avec `ap.Document(infile)`.
+1. Sélectionnez la page et l’index de la ressource d’image.
+1. Supprimer l'image avec `resources.images.delete(index)`.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
- # Supprimer une image particulière
- document.pages[2].resources.images.delete(1)
- # Enregistrer le fichier PDF mis à jour
- document.save(output_pdf)
+def delete_image(infile, outfile):
+ document = ap.Document(infile)
+ document.pages[1].resources.images.delete(1)
+ document.save(outfile)
```
+## Supprimer toutes les images d'une page
-## Supprimer toutes les images du PDF d'entrée
+Utilisez cet exemple pour supprimer chaque image d'une page spécifique.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_file)
+def delete_all_images_from_page(infile, outfile, page_number):
+ document = ap.Document(infile)
+ page = document.pages[page_number]
- # Supprimer toutes les images sur toutes les pages
- for i in range(len(document.pages)):
- while len(document.pages[i + 1].resources.images) != 0:
- document.pages[i + 1].resources.images.delete(1)
+ while len(page.resources.images) != 0:
+ page.resources.images.delete(1)
- # Enregistrer le fichier PDF mis à jour
- document.save(output_file)
+ document.save(outfile)
```
+## Sujets liés aux images
-
\ No newline at end of file
+- [Travailler avec des images dans les PDF en utilisant Python](/pdf/fr/python-net/working-with-images/)
+- [Remplacer les images dans les fichiers PDF existants](/pdf/fr/python-net/replace-image-in-existing-pdf-file/)
+- [Extraire les images des fichiers PDF](/pdf/fr/python-net/extract-images-from-pdf-file/)
+- [Ajouter des images aux fichiers PDF existants](/pdf/fr/python-net/add-image-to-existing-pdf-file/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md
index 2b1cba92cb..ab1aa4e868 100644
--- a/fr/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md
+++ b/fr/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md
@@ -1,162 +1,69 @@
---
-title: Extraire des Images depuis un Fichier PDF en utilisant Python
-linktitle: Extraire des Images
+title: Extraire des images d'un fichier PDF à l'aide de Python
+linktitle: Extraire des images
type: docs
weight: 30
url: /fr/python-net/extract-images-from-pdf-file/
-description: Cette section montre comment extraire des images d'un fichier PDF en utilisant la bibliothèque Python.
-lastmod: "2023-02-17"
+description: Apprenez comment extraire des images incorporées à partir de fichiers PDF en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Extraire des images de fichiers PDF avec Python
+Abstract: Cet article montre comment extraire des images de documents PDF avec Aspose.PDF for Python via .NET. Il couvre l'extraction d'une seule image incorporée et l'exportation des images trouvées dans une région rectangulaire spécifique sur une page.
---
-
+Utilisez cette page lorsque vous devez réutiliser des graphiques incorporés, archiver des ressources d'images, ou traiter le contenu d'images en dehors du PDF.
-Avez-vous besoin de séparer les images de vos fichiers PDF ? Pour une gestion simplifiée, l'archivage, l'analyse ou le partage des images de vos documents, utilisez **Aspose.PDF pour Python** et extrayez des images de fichiers PDF.
+1. Chargez le PDF source avec `ap.Document(infile)`.
+1. Sélectionnez la page cible et l'index de la ressource d'image.
+1. Enregistrez l'objet image dans un flux de sortie.
-Les images sont conservées dans la collection [resources](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) de chaque page dans la collection [XImage](https://reference.aspose.com/pdf/python-net/aspose.pdf/ximagecollection/). Pour extraire une page particulière, récupérez ensuite l'image de la collection d'images en utilisant l'index particulier de l'image.
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def extract_image(infile, outfile):
+ document = ap.Document(infile)
+ x_image = document.pages[1].resources.images[1]
+ with FileIO(outfile, "wb") as output_image:
+ x_image.save(output_image)
+```
+
+## Extraire des images d'une région spécifique du PDF
+
+Cet exemple extrait les images situées dans une région rectangulaire spécifiée sur une page PDF et les enregistre en fichiers séparés.
-L'index de l'image renvoie un objet [XImage](https://reference.aspose.com/pdf/python-net/aspose.pdf/ximage/). Cet objet fournit une méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) qui peut être utilisée pour enregistrer l'image extraite. Le fragment de code suivant montre comment extraire des images d'un fichier PDF.
+1. Chargez le PDF source.
+1. Créer `ImagePlacementAbsorber` et l'accepter sur la page cible.
+1. Définissez le rectangle cible.
+1. Itérez à travers les placements d’images et vérifiez si les limites de chaque image s’insèrent dans la région.
+1. Enregistrez les images correspondantes dans les fichiers de sortie.
```python
+import aspose.pdf as ap
+from io import FileIO
- import aspose.pdf as ap
- # Ouvrir le document
- document = ap.Document(input_file)
+def extract_image_from_specific_region(infile, outfile):
+ document = ap.Document(infile)
+ rectangle = ap.Rectangle(0, 0, 590, 590, True)
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
- # Extraire une image particulière
- xImage = document.pages[2].resources.images[1]
- outputImage = io.FileIO(output_image, "w")
+ index = 1
+ for image_placement in absorber.image_placements:
+ point1 = ap.Point(image_placement.rectangle.llx, image_placement.rectangle.lly)
+ point2 = ap.Point(image_placement.rectangle.urx, image_placement.rectangle.ury)
- # Enregistrer l'image de sortie
- xImage.save(outputImage)
- outputImage.close()
+ if rectangle.contains(point1, True) and rectangle.contains(point2, True):
+ with FileIO(outfile.replace("index", str(index)), "wb") as output_image:
+ image_placement.image.save(output_image)
+ index += 1
```
+## Sujets liés aux images
-
\ No newline at end of file
+- [Travailler avec des images dans les PDF en utilisant Python](/pdf/fr/python-net/working-with-images/)
+- [Remplacer les images dans les fichiers PDF existants](/pdf/fr/python-net/replace-image-in-existing-pdf-file/)
+- [Supprimer les images des fichiers PDF](/pdf/fr/python-net/delete-images-from-pdf-file/)
+- [Ajouter des images aux fichiers PDF existants](/pdf/fr/python-net/add-image-to-existing-pdf-file/)
diff --git a/fr/python-net/advanced-operations/working-with-images/replace-image-in-existing-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-images/replace-image-in-existing-pdf-file/_index.md
new file mode 100644
index 0000000000..98265e815b
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-images/replace-image-in-existing-pdf-file/_index.md
@@ -0,0 +1,70 @@
+---
+title: Remplacer l'image dans un fichier PDF existant à l'aide de Python
+linktitle: Remplacer l'image
+type: docs
+weight: 70
+url: /fr/python-net/replace-image-in-existing-pdf-file/
+description: Apprenez à remplacer les images incorporées dans des fichiers PDF existants en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Remplacez les images dans des fichiers PDF existants avec Python
+Abstract: Cet article montre comment remplacer les images dans des documents PDF avec Aspose.PDF for Python via .NET. Il couvre le remplacement d'une image par index de ressource et le remplacement d'une image spécifique trouvée avec ImagePlacementAbsorber.
+---
+
+## Remplacer une image dans le PDF
+
+Utilisez cette page lorsque vous devez mettre à jour les logos, diagrammes ou autres graphiques incorporés dans un PDF sans reconstruire la mise en page du document.
+
+1. Chargez le PDF source avec `ap.Document(infile)`.
+1. Ouvrez l'image de remplacement en tant que flux binaire.
+1. Remplacez une ressource d'image par son indice sur une page.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def replace_image(infile, image_file, outfile):
+ document = ap.Document(infile)
+
+ with FileIO(image_file, "rb") as image_stream:
+ document.pages[1].resources.images.replace(1, image_stream)
+
+ document.save(outfile)
+```
+
+## Remplacer une image spécifique
+
+Cet exemple remplace un emplacement d'image spécifique trouvé par `ImagePlacementAbsorber`.
+
+1. Chargez le PDF source.
+1. Créer `ImagePlacementAbsorber` et collecter les placements d'images sur la page.
+1. Vérifiez si des placements d'images existent sur la page.
+1. Remplacez le placement sélectionné par un nouveau flux d'image.
+1. Enregistrez le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def replace_image_with_absorber(infile, image_file, outfile):
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
+
+ if len(absorber.image_placements) > 0:
+ image_placement = absorber.image_placements[1]
+ with FileIO(image_file, "rb") as image_stream:
+ image_placement.replace(image_stream)
+
+ document.save(outfile)
+```
+
+## Sujets liés aux images
+
+- [Travailler avec des images dans les PDF en utilisant Python](/pdf/fr/python-net/working-with-images/)
+- [Supprimer les images des fichiers PDF](/pdf/fr/python-net/delete-images-from-pdf-file/)
+- [Extraire les images des fichiers PDF](/pdf/fr/python-net/extract-images-from-pdf-file/)
+- [Ajouter des images aux fichiers PDF existants](/pdf/fr/python-net/add-image-to-existing-pdf-file/)
diff --git a/fr/python-net/advanced-operations/working-with-images/search-and-get-images-from-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-images/search-and-get-images-from-pdf-document/_index.md
new file mode 100644
index 0000000000..fbe9c9a284
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-images/search-and-get-images-from-pdf-document/_index.md
@@ -0,0 +1,236 @@
+---
+title: Obtenir et rechercher des images dans le PDF
+linktitle: Obtenir et rechercher des images
+type: docs
+weight: 40
+url: /fr/python-net/search-and-get-images-from-pdf-document/
+description: Apprenez comment rechercher et inspecter des images dans des documents PDF avec Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Recherchez et inspectez des images dans des fichiers PDF avec Python.
+Abstract: Cet article montre comment rechercher et inspecter les images dans les documents PDF avec Aspose.PDF for Python via .NET. Il couvre l'utilisation de ImagePlacementAbsorber pour analyser le placement, la taille, la résolution et le texte de remplacement des images.
+---
+
+## Inspecter les propriétés de placement d'image dans une page PDF
+
+Cet exemple montre comment analyser et afficher les propriétés de toutes les images d'une page PDF spécifique en utilisant Aspose.PDF for Python via .NET.
+
+Utilisez cette page lorsque vous devez auditer le placement des images, inspecter la résolution des images ou identifier les objets image intégrés sur les pages PDF.
+
+1. Créez un 'ImagePlacementAbsorber' pour collecter toutes les images de la page.
+1. Appelez 'document.pages[1].accept(absorber)' pour analyser le placement des images sur la première page.
+1. Parcourez 'absorber.image_placements' et affichez les propriétés clés de chaque image:
+ - Largeur et hauteur (points).
+ - Coordonnées X (LLX) et Y (LLY) en bas à gauche.
+ - Résolution horizontale (X) et verticale (Y) (DPI).
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_params(infile):
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
+
+ for image_placement in absorber.image_placements:
+ print("image width: " + str(image_placement.rectangle.width))
+ print("image height: " + str(image_placement.rectangle.height))
+ print("image LLX: " + str(image_placement.rectangle.llx))
+ print("image LLY: " + str(image_placement.rectangle.lly))
+ print("image horizontal resolution: " + str(image_placement.resolution.x))
+ print("image vertical resolution: " + str(image_placement.resolution.y))
+```
+
+## Extraire et compter les types d'images dans un PDF
+
+Cette fonction analyse toutes les images de la première page d'un PDF et compte combien sont des images en niveaux de gris et RGB.
+
+1. Créez un 'ImagePlacementAbsorber' pour collecter toutes les images de la page.
+1. Initialiser les compteurs pour les images en niveaux de gris et RGB.
+1. Appelez 'document.pages[1].accept(absorber)' pour analyser le placement des images.
+1. Imprimez le nombre total d'images trouvées.
+1. Parcourez chaque image dans 'absorber.image_placements' :
+ - Obtenez le type de couleur de l'image en utilisant 'image_placement.image.get_color_type()'.
+ - Incrémentez le compteur correspondant (grayscaled ou rgb).
+ - Affichez un message pour chaque image indiquant si elle est en niveaux de gris ou RGB.
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_types_from_pdf(infile):
+ """
+ Extract and count image types (grayscale/RGB) with resolution analysis.
+
+ Args:
+ infile (str): Input PDF filename
+
+ Returns:
+ None
+
+ Example:
+ extract_image_types_from_pdf("sample_extr.pdf")
+
+ Note:
+ Prints total images count, color type for each image, and resolution info.
+ """
+
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+
+ # Counters for grayscale and RGB images
+ grayscaled = 0
+ rgb = 0
+
+ document.pages[1].accept(absorber)
+
+ print("--------------------------------")
+ print("Total Images = " + str(len(absorber.image_placements)))
+
+ image_counter = 1
+
+ for image_placement in absorber.image_placements:
+ # Determine the color type of the image
+ colorType = image_placement.image.get_color_type()
+ if colorType == ap.ColorType.GRAYSCALE:
+ grayscaled += 1
+ print(f"Image {image_counter} is Grayscale...")
+ elif colorType == ap.ColorType.RGB:
+ rgb += 1
+ print(f"Image {image_counter} is RGB...")
+ image_counter += 1
+
+ print("--------------------------------")
+ print("Grayscale Images = " + str(grayscaled))
+ print("RGB Images = " + str(rgb))
+```
+
+## Extraire des informations détaillées sur les images d’un PDF
+
+Cette fonction analyse toutes les images de la première page d’un PDF et calcule leurs dimensions mises à l’échelle ainsi que la résolution effective en fonction des transformations graphiques de la page.
+
+1. Charger le PDF et initialiser les variables
+1. Collecter les ressources d’image
+1. Traiter les opérateurs de contenu de page :
+ - 'GSave' - pousser le CTM actuel sur la pile.
+ - 'GRestore' - dépiler le dernier CTM de la pile.
+ - 'ConcatenateMatrix' - mettre à jour le CTM actuel en le multipliant par la matrice de l'opérateur.
+1. Imprimer le nom de l'image, les dimensions redimensionnées et la résolution calculée.
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_information_from_pdf(infile):
+ with ap.Document(infile) as document:
+ default_resolution = 72
+ graphics_state = []
+
+ image_names = list(document.pages[1].resources.images.names)
+
+ graphics_state.append(
+ drawing.drawing2d.Matrix(
+ float(1), float(0), float(0), float(1), float(0), float(0)
+ )
+ )
+
+ for op in document.pages[1].contents:
+ if is_assignable(op, ap.operators.GSave):
+ graphics_state.append(
+ cast(drawing.drawing2d.Matrix, graphics_state[-1]).clone()
+ )
+
+ elif is_assignable(op, ap.operators.GRestore):
+ graphics_state.pop()
+
+ elif is_assignable(op, ap.operators.ConcatenateMatrix):
+ op_cm = cast(ap.operators.ConcatenateMatrix, op)
+ cm = drawing.drawing2d.Matrix(
+ float(op_cm.matrix.a),
+ float(op_cm.matrix.b),
+ float(op_cm.matrix.c),
+ float(op_cm.matrix.d),
+ float(op_cm.matrix.e),
+ float(op_cm.matrix.f),
+ )
+
+ graphics_state[-1].multiply(cm)
+ continue
+
+ elif is_assignable(op, ap.operators.Do):
+ op_do = cast(ap.operators.Do, op)
+ if op_do.name in image_names:
+ last_ctm = cast(drawing.drawing2d.Matrix, graphics_state[-1])
+ index = image_names.index(op_do.name) + 1
+ image = document.pages[1].resources.images[index]
+
+ scaled_width = math.sqrt(
+ last_ctm.elements[0] ** 2 + last_ctm.elements[1] ** 2
+ )
+ scaled_height = math.sqrt(
+ last_ctm.elements[2] ** 2 + last_ctm.elements[3] ** 2
+ )
+
+ original_width = image.width
+ original_height = image.height
+
+ res_horizontal = (
+ original_width * default_resolution / scaled_width
+ )
+ res_vertical = (
+ original_height * default_resolution / scaled_height
+ )
+
+ info = (
+ f"{infile} image {op_do.name} "
+ f"({scaled_width:.2f}:{scaled_height:.2f}): "
+ f"res {res_horizontal:.2f} x {res_vertical:.2f}\n"
+ )
+ print(info.rstrip())
+```
+
+## Extraire le texte alternatif des images dans un PDF
+
+Cette fonction récupère le texte alternatif (alt text) de toutes les images de la première page d’un PDF, utile pour les vérifications d’accessibilité et de conformité PDF/UA.
+
+1. Chargez le document PDF en utilisant 'ap.Document()'.
+1. Créez un 'ImagePlacementAbsorber' pour collecter toutes les images de la page.
+1. Acceptez l'absorbeur sur la première page (page.accept(absorber)).
+1. Parcourez chaque image dans 'absorber.image_placements' :
+ - Imprimez le nom de l'image dans la collection de ressources de la page (get_name_in_collection()).
+ - Récupérez le texte alternatif en utilisant 'get_alternative_text(page)'.
+ - Imprimez la première ligne du texte alternatif.
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_alt_text(infile):
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+ page = document.pages[1]
+ page.accept(absorber)
+
+ for image_placement in absorber.image_placements:
+ print(
+ "Name in collection: " + str(image_placement.image.get_name_in_collection())
+ )
+ lines = image_placement.image.get_alternative_text(page)
+ print("Alt Text: " + lines[0])
+```
+
+## Sujets liés aux images
+
+- [Travailler avec des images dans les PDF en utilisant Python](/pdf/fr/python-net/working-with-images/)
+- [Extraire les images des fichiers PDF](/pdf/fr/python-net/extract-images-from-pdf-file/)
+- [Remplacer les images dans les fichiers PDF existants](/pdf/fr/python-net/replace-image-in-existing-pdf-file/)
+- [Ajouter des images aux fichiers PDF existants](/pdf/fr/python-net/add-image-to-existing-pdf-file/)
diff --git a/fr/python-net/advanced-operations/working-with-layers/_index.md b/fr/python-net/advanced-operations/working-with-layers/_index.md
new file mode 100644
index 0000000000..0e935cc69e
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-layers/_index.md
@@ -0,0 +1,220 @@
+---
+title: Travailler avec les calques PDF en Python
+linktitle: Travailler avec les calques PDF
+type: docs
+weight: 50
+url: /fr/python-net/working-with-pdf-layers/
+description: Apprenez comment ajouter, verrouiller, extraire, aplatir et fusionner des calques PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérez les calques PDF avec Python
+Abstract: Cet article explique comment travailler avec les couches PDF (Groupes de contenu optionnel) en utilisant Aspose.PDF for Python via .NET. Apprenez comment ajouter des couches, verrouiller la visibilité des couches, extraire le contenu d'une couche, aplatir le contenu en couches et fusionner les couches en une seule.
+---
+
+Les calques PDF, également appelés Groupes de contenu optionnel (OCG), vous permettent d'organiser le contenu en groupes visuels séparés qui peuvent être affichés ou masqués dans les visionneuses PDF compatibles. Dans Aspose.PDF, les opérations sur les calques sont construites autour de la [`Layer`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/) API.
+
+Avec Aspose.PDF for Python via .NET, vous pouvez:
+
+- Ajouter plusieurs calques à une page.
+- Verrouiller et déverrouiller les calques pour contrôler le comportement de visibilité.
+- Extraire les calques dans des fichiers ou flux distincts.
+- Aplatir le contenu en couches dans la page.
+- Fusionner plusieurs calques en un seul calque.
+
+## Ajouter des calques à un PDF
+
+Cet exemple crée un PDF avec trois calques. Il utilise un [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), ajoute un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/), et ajoute [`Layer`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/) objets à cette page.
+
+1. Créer un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) et ajoutez un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Créer et ajouter la couche rouge.
+1. Créer et ajouter la couche verte.
+1. Créer et ajouter la couche bleue.
+1. Enregistrez le document PDF.
+
+Le PDF résultant contiendra trois calques distincts : une ligne rouge, une ligne verte et une ligne bleue. Chaque calque peut être activé ou désactivé dans les lecteurs PDF qui prennent en charge le contenu en calques.
+
+```python
+import aspose.pdf as ap
+
+def add_layers(outfile: str) -> None:
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Red layer
+ layer = ap.Layer("oc1", "Red Line")
+ layer.contents.append(ap.operators.SetRGBColorStroke(1, 0, 0))
+ layer.contents.append(ap.operators.MoveTo(500, 700))
+ layer.contents.append(ap.operators.LineTo(400, 700))
+ layer.contents.append(ap.operators.Stroke())
+ page.layers.append(layer)
+
+ # Green layer
+ layer = ap.Layer("oc2", "Green Line")
+ layer.contents.append(ap.operators.SetRGBColorStroke(0, 1, 0))
+ layer.contents.append(ap.operators.MoveTo(500, 750))
+ layer.contents.append(ap.operators.LineTo(400, 750))
+ layer.contents.append(ap.operators.Stroke())
+ page.layers.append(layer)
+
+ # Blue layer
+ layer = ap.Layer("oc3", "Blue Line")
+ layer.contents.append(ap.operators.SetRGBColorStroke(0, 0, 1))
+ layer.contents.append(ap.operators.MoveTo(500, 800))
+ layer.contents.append(ap.operators.LineTo(400, 800))
+ layer.contents.append(ap.operators.Stroke())
+ page.layers.append(layer)
+
+ document.save(outfile)
+ print(f"Layers added successfully. File saved at {outfile}")
+```
+
+## Verrouiller un calque PDF
+
+Cet exemple ouvre un PDF, verrouille un calque spécifique sur la première page et enregistre le fichier mis à jour.
+
+Verrouiller une couche empêche les utilisateurs de modifier l’état de visibilité de cette couche dans les visionneuses PDF prises en charge. Les couches sont accessibles depuis une page et gérées via la collection de couches de la page.
+
+Méthodes et propriétés disponibles :
+
+- [`Layer.lock()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods) verrouille le calque.
+- [`Layer.unlock()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods) déverrouille le calque.
+- [`Layer.locked`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#properties) renvoie l'état actuel du verrou.
+
+1. Ouvrez le document PDF.
+1. Accédez à la première page du PDF.
+1. Vérifiez si la page a des calques.
+1. Obtenez la première couche et verrouillez‑la.
+1. Enregistrez le PDF mis à jour.
+
+Si le PDF contient des calques, le premier calque sera verrouillé, garantissant que son état de visibilité ne puisse pas être modifié par l'utilisateur. Si aucun calque n'est trouvé, un message est affiché à la place.
+
+```python
+import aspose.pdf as ap
+
+def lock_layer(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ if len(page.layers) > 0:
+ layer = page.layers[0]
+ layer.lock()
+ document.save(outfile)
+ print(f"Layer locked successfully. File saved at {outfile}")
+ else:
+ print("No layers found in the document.")
+```
+
+## Extraire les éléments de calque PDF
+
+Cet exemple utilise la bibliothèque Aspose.PDF for Python via .NET pour extraire les couches individuelles de la première page d'un document PDF et enregistrer chaque couche comme un fichier PDF distinct en utilisant [`Layer.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods).
+
+Pour créer un nouveau PDF à partir d’une couche, le fragment de code suivant peut être utilisé :
+
+1. Charger le PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Accéder aux calques sur la page 1 jusqu’à [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Vérifiez si les calques existent.
+1. Parcourir les calques et enregistrer chacun d'eux.
+
+```python
+import aspose.pdf as ap
+
+def extract_layers(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ layers = document.pages[1].layers
+
+ if len(layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ index = 1
+ for layer in layers:
+ output_file = outfile.replace(".pdf", f"{index}.pdf")
+ layer.save(output_file)
+ print(f"Layer {index} saved to {output_file}")
+ index += 1
+```
+
+Il est possible d'extraire les éléments de calque du PDF et de les enregistrer dans un nouveau flux de fichier PDF.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def extract_layers_stream(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+
+ if len(document.pages[1].layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ layer = document.pages[1].layers[0]
+
+ with FileIO(outfile, "wb") as output_layer:
+ layer.save(output_layer)
+ print(f"Layer extracted to stream: {outfile}")
+```
+
+## Aplatir un PDF à calques
+
+Ce script utilise Aspose.PDF for Python via .NET pour aplatir tous les calques de la première page d'un document PDF. L'aplatissement fusionne le contenu visuel de chaque calque en un calque unique, ce qui facilite l'impression, le partage ou l'archivage sans perdre la fidélité visuelle ou les données spécifiques aux calques. L'opération est réalisée avec [`Layer.flatten()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods).
+
+1. Chargez le document PDF.
+1. Accédez aux calques de la page 1.
+1. Vérifiez si les calques existent.
+1. Aplatir chaque calque avec `layer.flatten(True)`.
+1. Enregistrez le document modifié.
+
+```python
+import aspose.pdf as ap
+
+def flatten_layers(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ layers = document.pages[1].layers
+
+ if len(layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ for layer in layers:
+ layer.flatten(True)
+
+ document.save(outfile)
+ print(f"Layers flattened successfully. File saved at {outfile}")
+```
+
+## Fusionner tous les calques d'un PDF en un seul
+
+Cet extrait de code utilise Aspose.PDF pour fusionner tous les calques de la première page d'un PDF en un seul calque unifié avec un nom personnalisé en utilisant [`Page.merge_layers()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods).
+
+1. Chargez le document PDF.
+1. Accédez à la page 1 et récupérez ses calques.
+1. Vérifiez si les calques existent.
+1. Définir un nouveau nom de calque.
+1. Fusionnez les calques en un seul.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+
+def merge_layers(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ if len(page.layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ new_layer_name = "LayerNew"
+ page.merge_layers(new_layer_name)
+ document.save(outfile)
+ print(f"Layers merged successfully. File saved at {outfile}")
+```
+
+## Sujets liés à la couche
+
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Travailler avec des tables dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-tables/)
+- [Ajouter des pages PDF en Python](/pdf/fr/python-net/add-pages/)
diff --git a/fr/python-net/advanced-operations/working-with-operators/_index.md b/fr/python-net/advanced-operations/working-with-operators/_index.md
new file mode 100644
index 0000000000..b0c7baf812
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-operators/_index.md
@@ -0,0 +1,185 @@
+---
+title: Travailler avec les opérateurs PDF en Python
+linktitle: Travailler avec les opérateurs
+type: docs
+weight: 90
+url: /fr/python-net/working-with-operators/
+description: Apprenez comment utiliser les opérateurs PDF de bas niveau en Python pour une manipulation précise du flux de contenu et le contrôle graphique.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Utilisez les opérateurs PDF de bas niveau pour le contrôle du flux de contenu en Python
+Abstract: Cet article explique comment travailler avec les opérateurs PDF de bas niveau dans Aspose.PDF for Python via .NET. Apprenez à manipuler les flux de contenu directement, à positionner les graphiques avec précision à l'aide des classes d'opérateurs, et à supprimer les objets dessinés des pages PDF dans les workflows Python.
+---
+
+## Introduction aux opérateurs PDF et à leur utilisation
+
+Un opérateur est un mot‑clé PDF spécifiant une action à exécuter, comme le dessin d’une forme graphique sur la page. Un mot‑clé d'opérateur se distingue d'un objet nommé par l'absence d'un caractère slash initial (2Fh). Les opérateurs n'ont de sens que à l'intérieur du flux de contenu.
+
+Un flux de contenu est un objet de flux PDF dont les données sont constituées d'instructions décrivant les éléments graphiques à peindre sur une page. Plus de détails sur les opérateurs PDF peuvent être trouvés dans le [Spécification PDF](https://opensource.adobe.com/dc-acrobat-sdk-docs/).
+
+Utilisez cette page lorsque vous avez besoin d'un contrôle direct sur les flux de contenu PDF en Python, comme placer des graphiques à des coordonnées exactes, encapsuler les changements d'état des graphiques, ou supprimer des opérateurs de dessin spécifiques d'une page.
+
+## Ajouter des images avec des classes d'opérateurs
+
+Utilisez des classes d'opérateurs bas-niveau lorsque vous devez placer le contenu d'image très précisément dans le flux d'une page PDF sans vous reposer sur des abstractions de mise en page de niveau supérieur.
+
+Cette méthode offre un contrôle granulaire sur le placement des images dans un PDF en manipulant directement le flux de contenu avec des opérateurs graphiques de bas niveau. Elle est particulièrement utile lorsque le positionnement précis et la transformation des images sont nécessaires, comme :
+
+- ajouter des filigranes ou des logos à des emplacements spécifiques.
+- superposer des images sur un contenu existant avec un alignement précis.
+- mettre en œuvre des mises en page personnalisées qui ne sont pas réalisables avec des abstractions de haut niveau.
+
+En utilisant des opérateurs tels que GSave, ConcatenateMatrix, Do et GRestore, les développeurs peuvent garantir que les images sont rendues avec précision et sans effets secondaires inattendus sur le reste du contenu de la page.
+
+- Le [GSave](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/gsave/) l'opérateur enregistre l'état graphique actuel du PDF.
+- Le [ConcatenateMatrix](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/concatenatematrix/) (concatenate matrix) l'opérateur est utilisé pour définir comment une image doit être placée sur la page PDF.
+- Le [Do](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/do/) l'opérateur dessine l'image sur la page.
+- Le [GRestore](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/grestore/) l'opérateur restaure l'état graphique.
+
+Pour ajouter une image dans un fichier PDF :
+
+1. Ouvrez le document PDF
+1. Définir les coordonnées de placement de l'image
+1. Accéder à la page cible
+1. Charger l'image dans un Stream
+1. Enregistrer l'état graphique actuel
+1. Créer un rectangle et une matrice de transformation
+1. Appliquer la matrice de transformation
+1. Dessiner l'image
+1. Restaurer l'état graphique précédent
+1. Enregistrer le document PDF modifié
+
+Le fragment de code suivant montre comment utiliser les opérateurs PDF:
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_image_using_pdf_operators(infile, imagefile, outfile):
+ with ap.Document(infile) as document:
+ lower_left_x = 100
+ lower_left_y = 100
+ upper_right_x = 200
+ upper_right_y = 200
+
+ page = document.pages[1]
+
+ with open(imagefile, "rb") as image_stream:
+ page.resources.images.add(image_stream)
+
+ page.contents.append(ap.operators.GSave())
+
+ rectangle = ap.Rectangle(
+ lower_left_x, lower_left_y, upper_right_x, upper_right_y, True
+ )
+ matrix = ap.Matrix(
+ [
+ rectangle.urx - rectangle.llx,
+ 0,
+ 0,
+ rectangle.ury - rectangle.lly,
+ rectangle.llx,
+ rectangle.lly,
+ ]
+ )
+
+ page.contents.append(ap.operators.ConcatenateMatrix(matrix))
+
+ x_image = page.resources.images[len(page.resources.images)]
+
+ page.contents.append(ap.operators.Do(x_image.name))
+
+ page.contents.append(ap.operators.GRestore())
+
+ document.save(outfile)
+```
+
+## Dessiner XForm sur Page en utilisant des opérateurs
+
+Cet exemple utilise la puissance des XForms et des opérateurs graphiques pour réutiliser efficacement le contenu graphique au sein d'un PDF. En encapsulant l'image dans un XForm, elle peut être dessinée plusieurs fois sans dupliquer les données de l'image, ce qui entraîne des tailles de fichier plus petites et des performances améliorées. Cette approche est particulièrement bénéfique lorsque :
+
+- la même image ou le même graphique doit apparaître plusieurs fois dans un document.
+
+- Un contrôle précis du placement et de la transformation des graphiques est requis.
+
+- L'optimisation du PDF pour les performances et la taille est une priorité.
+
+En gérant l'état graphique avec GSave et GRestore, et en utilisant des matrices de transformation avec ConcatenateMatrix, cette technique garantit que chaque graphique est rendu correctement et de manière indépendante.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def draw_xform_on_page(infile, imagefile, outfile):
+ with ap.Document(infile) as document:
+ page_contents = document.pages[1].contents
+
+ page_contents.insert(1, ap.operators.GSave())
+ page_contents.append(ap.operators.GRestore())
+
+ page_contents.append(ap.operators.GSave())
+
+ form = ap.XForm.create_new_form(document.pages[1], document)
+ document.pages[1].resources.forms.append(form)
+
+ form.contents.append(ap.operators.GSave())
+ form.contents.append(ap.operators.ConcatenateMatrix(200, 0, 0, 200, 0, 0))
+
+ with open(imagefile, "rb") as image_stream:
+ form.resources.images.add(image_stream)
+
+ x_image = form.resources.images[len(form.resources.images)]
+ form.contents.append(ap.operators.Do(x_image.name))
+ form.contents.append(ap.operators.GRestore())
+
+ # Draw XForm at (100, 500)
+ page_contents.append(ap.operators.GSave())
+ page_contents.append(ap.operators.ConcatenateMatrix(1, 0, 0, 1, 100, 500))
+ page_contents.append(ap.operators.Do(form.name))
+ page_contents.append(ap.operators.GRestore())
+
+ # Draw XForm at (100, 300)
+ page_contents.append(ap.operators.GSave())
+ page_contents.append(ap.operators.ConcatenateMatrix(1, 0, 0, 1, 100, 300))
+ page_contents.append(ap.operators.Do(form.name))
+ page_contents.append(ap.operators.GRestore())
+
+ page_contents.append(ap.operators.GRestore())
+
+ document.save(outfile)
+```
+
+## Supprimer les objets graphiques à l'aide des classes d'opérateurs
+
+L'extrait de code suivant montre comment supprimer les graphiques. Veuillez noter que si le fichier PDF contient des libellés textuels pour les graphiques, ils pourraient persister dans le fichier PDF en utilisant cette approche. Par conséquent, recherchez les opérateurs graphiques pour une méthode alternative afin de supprimer ces images.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_graphics_objects(infile, outfile):
+ with ap.Document(infile) as document:
+ page = document.pages[1]
+ # Collect operators to remove in single pass
+ # Operator codes: S=Stroke, h=ClosePathStroke, f=Fill'
+ graphics_operators = {"S", "h", "f"}
+ operators_to_remove = [
+ op for op in page.contents if str(op) in graphics_operators
+ ]
+
+ page.contents.delete(operators_to_remove)
+ document.save(outfile)
+```
+
+## Sujets associés
+
+- [Opérations PDF avancées en Python](/pdf/fr/python-net/advanced-operations/)
+- [Travailler avec les pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Travailler avec des images dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-images/)
+- [Travailler avec les graphiques PDF en Python](/pdf/fr/python-net/working-with-graphs/)
diff --git a/fr/python-net/advanced-operations/working-with-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/_index.md
index e3a0195c1e..c0c541cd02 100644
--- a/fr/python-net/advanced-operations/working-with-pages/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/_index.md
@@ -1,167 +1,34 @@
---
title: Travailler avec les pages PDF en Python
-linktitle: Travailler avec les pages
+linktitle: Travail avec les pages
type: docs
weight: 20
url: /fr/python-net/working-with-pages/
-description: Comment ajouter des pages, ajouter des en-têtes et des pieds de page, ajouter des filigranes, vous pouvez le savoir dans cette section. Aspose.PDF pour Python via .NET vous explique tous les détails sur ce sujet.
-lastmod: "2023-04-19"
+description: Apprenez comment ajouter, déplacer, pivoter, recadrer, extraire, tamponner et gérer les pages PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les pages PDF en Python
+Abstract: Cette section montre comment travailler avec les pages PDF en utilisant Aspose.PDF for Python via .NET. Elle couvre l'ajout, la suppression, le déplacement, l'extraction, la rotation, le redimensionnement, le recadrage et le tamponnage des pages, ainsi que la gestion des propriétés des pages, des en‑têtes, des pieds de page et de la numérotation.
---
-
+Utilisez cette section lorsque vous devez effectuer des opérations PDF au niveau des pages en Python.
-**Aspose.PDF pour Python via .NET** vous permet d'insérer une page dans un document PDF à n'importe quel emplacement dans le fichier ainsi que d'ajouter des pages à la fin d'un fichier PDF. Cette section montre comment ajouter des pages à un PDF sans Acrobat Reader.
-Vous pouvez ajouter du texte ou des images dans les en-têtes et pieds de page de votre fichier PDF, et choisir différents en-têtes dans votre document avec la bibliothèque Python par Aspose.
-Essayez également de recadrer les pages dans un document PDF par programmation en utilisant Python.
+Avec **Aspose.PDF for Python via .NET**, vous pouvez insérer, supprimer, déplacer, extraire, faire pivoter, redimensionner et recadrer des pages, puis appliquer des en-têtes, pieds de page, numéros de page, filigranes et tampons pour les flux de travail de mise en page et de révision.
-Cette section vous apprend comment ajouter des filigranes dans votre fichier PDF en utilisant la classe Artifact. Vous allez vérifier l'exemple de programmation pour cette tâche.
-Ajoutez le numéro de page en utilisant la classe [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/). Pour ajouter un tampon dans votre document, utilisez les classes [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) et [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/). Utilisez l'ajout d'un filigrane pour créer des images d'arrière-plan dans votre fichier PDF avec **Aspose.PDF pour Python via .NET**.
+## Tâches de page couvertes
+Les tâches suivantes sont couvertes :
-You are able to do the following:
-
-- [Ajouter des Pages](/pdf/fr/python-net/add-pages/) - ajouter des pages à l'emplacement souhaité ou à la fin d'un fichier PDF et supprimer une page de votre document.
-- [Déplacer des Pages](/pdf/fr/python-net/move-pages/) - déplacer des pages d'un document à un autre.
-- [Supprimer des Pages](/pdf/fr/python-net/delete-pages/) - supprimer une page de votre fichier PDF en utilisant la collection PageCollection.
-- [Changer la Taille de la Page](/pdf/fr/python-net/change-page-size/) - vous pouvez changer la taille de page PDF avec un extrait de code en utilisant la bibliothèque Aspose.PDF.
-- [Faire Pivoter les Pages](/pdf/fr/python-net/rotate-pages/) - vous pouvez changer l'orientation des pages dans un fichier PDF existant.
-- [Diviser les Pages](/pdf/fr/python-net/split-document/) - vous pouvez diviser des fichiers PDF en un ou plusieurs PDF.
-- [Ajouter des En-têtes et/ou Pieds de page](/pdf/fr/python-net/add-headers-and-footers-of-pdf-file/) - ajouter du texte ou des images dans les en-têtes et pieds de page de votre fichier PDF.
-- [Rogner des Pages](/pdf/fr/python-net/crop-pages/) - vous pouvez rogner des pages dans un document PDF par programme avec différentes Propriétés de Page.
-
-- [Ajouter des Filigranes](/pdf/fr/python-net/add-watermarks/) - ajouter des filigranes dans votre fichier PDF avec la classe Artifact.
-- [Ajouter une Numérotation de Page dans un Fichier PDF](/pdf/fr/python-net/add-page-number/) - La classe PageNumberStamp vous aidera à ajouter un numéro de page dans votre fichier PDF.
-- [Ajouter des Arrière-plans](/pdf/fr/python-net/add-backgrounds/) - des images d'arrière-plan peuvent être utilisées pour ajouter un filigrane.
-- [Tamponnage](/pdf/fr/python-net/stamping/) - vous pouvez utiliser la classe ImageStamp pour ajouter un tampon d'image à un fichier PDF et la classe TextStamp pour ajouter un texte.
-- [Obtenir et Définir les Propriétés de Page](/pdf/fr/python-net/get-and-set-page-properties/) - cette section montre comment obtenir le nombre de pages dans un fichier PDF, obtenir des informations sur les propriétés de la page PDF telles que la couleur et définir les propriétés de la page.
-
-
\ No newline at end of file
+- [Ajout de pages](/pdf/fr/python-net/add-pages/) - insérer des pages à des positions spécifiques ou ajouter des pages à la fin d'un document.
+- [Déplacement de pages](/pdf/fr/python-net/move-pages/) - déplacer des pages dans un document ou entre des documents.
+- [Suppression de pages](/pdf/fr/python-net/delete-pages/) - supprimer des pages d'un document PDF.
+- [Extraction de pages](/pdf/fr/python-net/extract-pages/) - extraire les pages sélectionnées dans un nouveau fichier PDF.
+- [Rotation des pages](/pdf/fr/python-net/rotate-pages/) - changer l'orientation de la page dans un fichier PDF existant.
+- [Modification de la taille de la page](/pdf/fr/python-net/change-page-size/) - redimensionner les dimensions de la page dans un document PDF.
+- [Ajouter des en-têtes et pieds de page](/pdf/fr/python-net/add-headers-and-footers-of-pdf-file/) - ajouter du texte, des images ou du contenu d'en-tête/pied de page structuré qui se répète.
+- [Recadrage de pages PDF](/pdf/fr/python-net/crop-pages/) - recadrer le contenu de la page en utilisant les paramètres de géométrie de la page.
+- [Obtention et définition des propriétés de page](/pdf/fr/python-net/get-and-set-page-properties/) - accéder et modifier diverses propriétés des pages PDF, comme la taille, la rotation et les attributs de couleur.
+- [Tamponnage](/pdf/fr/python-net/stamping/) - appliquer des tampons de texte, d'image, de page et de numéro de page aux pages PDF.
diff --git a/fr/python-net/advanced-operations/working-with-pages/add-backgrounds/_index.md b/fr/python-net/advanced-operations/working-with-pages/add-backgrounds/_index.md
deleted file mode 100644
index 03ee2829fd..0000000000
--- a/fr/python-net/advanced-operations/working-with-pages/add-backgrounds/_index.md
+++ /dev/null
@@ -1,170 +0,0 @@
----
-title: Ajouter un arrière-plan au PDF avec Python
-linktitle: Ajouter des arrière-plans
-type: docs
-weight: 20
-url: /fr/python-net/add-backgrounds/
-description: Ajouter une image d'arrière-plan à votre fichier PDF avec Python. Utilisez la classe BackgroundArtifact.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-Les images d'arrière-plan peuvent être utilisées pour ajouter un filigrane, ou un autre design subtil, aux documents. Dans Aspose.PDF pour Python via .NET, chaque document PDF est une collection de pages et chaque page contient une collection d'artéfacts. La classe [BackgroundArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/backgroundartifact/) peut être utilisée pour ajouter une image d'arrière-plan à un objet page.
-
-Le code suivant montre comment ajouter une image d'arrière-plan aux pages PDF en utilisant l'objet BackgroundArtifact avec Python.
-
-```python
-
- import aspose.pdf as ap
-
- # Créer un nouvel objet Document
- document = ap.Document()
-
- # Ajouter une nouvelle page à l'objet document
- page = document.pages.add()
-
- # Créer un objet Background Artifact
- background = ap.BackgroundArtifact()
-
- # Spécifier l'image pour l'objet backgroundartifact
- background.background_image = io.FileIO(input_image_file)
-
- # Ajouter backgroundartifact à la collection d'artéfacts de la page
- page.artifacts.append(background)
-
- # Enregistrer le document
- document.save(output_pdf)
-```
-
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/add-page-number/_index.md b/fr/python-net/advanced-operations/working-with-pages/add-page-number/_index.md
deleted file mode 100644
index 52378b529d..0000000000
--- a/fr/python-net/advanced-operations/working-with-pages/add-page-number/_index.md
+++ /dev/null
@@ -1,183 +0,0 @@
----
-title: Ajouter un Numéro de Page au PDF avec Python
-linktitle: Ajouter un Numéro de Page
-type: docs
-weight: 30
-url: /fr/python-net/add-page-number/
-description: Aspose.PDF pour Python via .NET vous permet d'ajouter un tampon de numéro de page à votre fichier PDF en utilisant la classe PageNumberStamp.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-All the documents must have page numbers in it. The page number makes it easier for the reader to locate different parts of the document.
-**Aspose.PDF pour Python via .NET** vous permet d'ajouter des numéros de page avec [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/).
-
-Vous pouvez utiliser la classe [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) pour ajouter un tampon de numéro de page dans un fichier PDF.
- [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) classe fournit les propriétés nécessaires pour créer un tampon basé sur le numéro de page comme le format, les marges, les alignements, le numéro de départ, etc. Afin d'ajouter un tampon de numéro de page, vous devez créer un objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) et un objet [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) en utilisant les propriétés requises. Après cela, vous pouvez appeler la méthode [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) de la [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) pour ajouter le tampon dans le PDF. Vous pouvez également définir les attributs de police du tampon de numéro de page. Le snippet de code suivant vous montre comment ajouter des numéros de page dans un fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
-
- # Créer un tampon de numéro de page
- page_number_stamp = ap.PageNumberStamp()
- # Si le tampon est en arrière-plan
- page_number_stamp.background = False
- page_number_stamp.format = "Page # de " + str(len(document.pages))
- page_number_stamp.bottom_margin = 10
- page_number_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- page_number_stamp.starting_number = 1
- # Définir les propriétés du texte
- page_number_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
- page_number_stamp.text_state.font_size = 14.0
- page_number_stamp.text_state.font_style = ap.text.FontStyles.BOLD
- page_number_stamp.text_state.font_style = ap.text.FontStyles.ITALIC
- page_number_stamp.text_state.foreground_color = ap.Color.aqua
-
- # Ajouter le tampon à une page particulière
- document.pages[1].add_stamp(page_number_stamp)
-
- # Enregistrer le document de sortie
- document.save(output_pdf)
-```
-
-## Exemple en Direct
-
-[Ajouter des numéros de page au PDF](https://products.aspose.app/pdf/page-number) est une application web gratuite en ligne qui vous permet d'examiner comment fonctionne l'ajout de numéros de page.
-
-[](https://products.aspose.app/pdf/page-number)
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/add-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/add-pages/_index.md
index 6a3a8e1cf8..5c5d2b2c8c 100644
--- a/fr/python-net/advanced-operations/working-with-pages/add-pages/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/add-pages/_index.md
@@ -1,133 +1,96 @@
---
-title: Ajouter des Pages dans un PDF avec Python
-linktitle: Ajouter des Pages
+title: Ajouter des pages PDF en Python
+linktitle: Ajout de pages
type: docs
weight: 10
url: /fr/python-net/add-pages/
-description: Cet article explique comment insérer (ajouter) une page à l'emplacement souhaité dans un fichier PDF. Apprenez à déplacer, supprimer (effacer) des pages d'un fichier PDF en utilisant C#.
-lastmod: "2022-02-17"
+description: Apprenez comment ajouter ou insérer des pages dans des documents PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter ou insérer des pages PDF avec Python
+Abstract: Cet article explique comment ajouter des pages aux fichiers PDF en utilisant Aspose.PDF for Python via .NET. Apprenez comment insérer des pages vierges à des positions spécifiques, ajouter des pages à la fin d’un document, et importer une page d’un autre PDF en utilisant les API Document et PageCollection.
---
-
-
-
-Aspose.PDF pour Python via .NET API offre une flexibilité totale pour travailler avec les pages d'un document PDF en utilisant Python. Il maintient toutes les pages d'un document PDF dans [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) qui peut être utilisée pour travailler avec les pages PDF. Aspose.PDF pour Python via .NET vous permet d'insérer une page dans un document PDF à n'importe quel emplacement dans le fichier ainsi que d'ajouter des pages à la fin d'un fichier PDF. Cette section montre comment ajouter des pages à un PDF en utilisant Python.
-
-## Ajouter ou Insérer une Page dans un Fichier PDF
-
-Aspose.PDF pour Python via .NET vous permet d'insérer une page dans un document PDF à n'importe quel emplacement dans le fichier ainsi que d'ajouter des pages à la fin d'un fichier PDF.
-
-### Insérer une Page Vide dans un Fichier PDF à l'Emplacement Désiré
-Pour insérer une page vide dans un fichier PDF :
+Aspose.PDF for Python via .NET offre des opérations flexibles au niveau des pages pour les documents PDF. Vous pouvez gérer les pages via [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) et ajouter des pages à un [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) à des positions spécifiques ou à la fin du fichier.
-1. Créez un objet de classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF d'entrée.
+Utilisez cette page lorsque vous devez insérer de nouvelles pages blanches dans un PDF existant ou ajouter des pages à la fin d'un document lors des flux de génération.
-1. Appelez la méthode [insert](https://reference.aspose.com/pdf/net/aspose.pdf/pagecollection/methods/insert) de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) avec l'index spécifié.
-1. Enregistrez le PDF de sortie en utilisant la méthode [save](https://reference.aspose.com/pdf/net/aspose.pdf.document/save/methods/4).
+## Ajouter ou insérer des pages dans un fichier PDF
-Le snippet de code suivant vous montre comment insérer une page dans un fichier PDF.
+Aspose.PDF for Python via .NET prend en charge à la fois l'insertion de pages à un indice spécifique et l'ajout de pages à la fin d'un PDF.
-```python
+### Insérer une page vide dans un fichier PDF
+
+Pour insérer une page vide dans un fichier PDF :
+
+1. Ouvrez un existant [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant les méthodes appropriées.
+1. Insérez une nouvelle page vide à un indice spécifique en utilisant le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) `insert()` méthode.
+1. Enregistrez le modifié [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) vers le chemin de sortie souhaité.
- import aspose.pdf as ap
+Insérez une page vierge dans un fichier PDF existant à une position spécifiée:
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Insérer une page vide dans un PDF
+```python
+import aspose.pdf as ap
+
+def insert_empty_page(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
document.pages.insert(2)
- # Enregistrer le fichier de sortie
- document.save(output_pdf)
+ document.save(output_file_name)
```
-### Ajouter une Page Vide à la Fin d'un Fichier PDF
+### Ajouter une page vide à la fin d'un fichier PDF
Parfois, vous souhaitez vous assurer qu'un document se termine par une page vide. Ce sujet explique comment insérer une page vide à la fin du document PDF.
-Pour insérer une page vide à la fin d'un fichier PDF :
+Pour insérer une page vide à la fin d'un fichier PDF :
-1. Créez un objet de la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF d'entrée.
+1. Ouvrez un existant [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant les méthodes appropriées.
+1. Ajoutez une nouvelle page vide à la fin du document en utilisant le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) `add()` méthode.
+1. Enregistrez le mis à jour [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Appelez la méthode [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/), sans aucun paramètre.
-1. Enregistrez le PDF de sortie en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+Le fragment de code suivant vous montre comment insérer une page vide à la fin d'un fichier PDF.
-L'extrait de code suivant vous montre comment insérer une page vide à la fin d'un fichier PDF.
+```python
+import aspose.pdf as ap
+
+def add_empty_page_to_end(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ document.pages.add()
+ document.save(output_file_name)
+```
+
+### Ajouter une page à partir d'un autre document PDF
+
+Avec Aspose.PDF for Python via .NET, vous pouvez créer un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), ajoutez une page initiale, puis importez une page d'un autre PDF dans celle‑ci.
+
+1. Créer un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Ajoutez une nouvelle page vierge [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) et écrivez du texte dessus en utilisant [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/).
+1. Ouvrez un autre existant [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Copiez un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à partir de ce document.
+1. Collez la page copiée dans votre document principal en utilisant [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Enregistrez le fichier combiné.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
+def add_page_from_another_document(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document()
+ page = document.pages.add()
+ text_fragment = ap.text.TextFragment("This is first page!")
+ page.paragraphs.add(text_fragment)
- # Ouvrir le document
- document = ap.Document(input_pdf)
+ another_document = ap.Document(input_file_name)
+ document.pages.add(another_document.pages[1])
- # Insérer une page vide à la fin d'un fichier PDF
- document.pages.add()
+ document.save(output_file_name)
+```
+
+## Sujets de page associés
- # Enregistrer le fichier de sortie
- document.save(output_pdf)
\ No newline at end of file
+- [Travailler avec les pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Déplacer des pages PDF en Python](/pdf/fr/python-net/move-pages/)
+- [Supprimer des pages PDF en Python](/pdf/fr/python-net/delete-pages/)
+- [Extraire des pages PDF en Python](/pdf/fr/python-net/extract-pages/)
diff --git a/fr/python-net/advanced-operations/working-with-pages/add-watermarks/_index.md b/fr/python-net/advanced-operations/working-with-pages/add-watermarks/_index.md
deleted file mode 100644
index f657b344df..0000000000
--- a/fr/python-net/advanced-operations/working-with-pages/add-watermarks/_index.md
+++ /dev/null
@@ -1,188 +0,0 @@
----
-title: Ajouter un filigrane à un PDF en utilisant Python
-linktitle: Ajouter un filigrane
-type: docs
-weight: 40
-url: /fr/python-net/add-watermarks/
-description: Cet article explique les fonctionnalités de travail avec les artefacts et l'obtention de filigranes dans les PDFs en utilisant Python de manière programmatique.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "monthly"
- priority: 0.7
----
-
-
-
-**Aspose.PDF for Python via .NET** permet d'ajouter des filigranes à votre document PDF en utilisant des artefacts. Veuillez consulter cet article pour résoudre votre tâche.
-
-Pour travailler avec les artefacts, Aspose.PDF dispose de deux classes : [Artifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) et [ArtifactCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifactcollection/).
-
-Pour obtenir tous les artefacts sur une page particulière, la classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) a la propriété Artifacts. Ce sujet explique comment travailler avec les artefacts dans les fichiers PDF.
-
-## Travailler avec les artefacts
-
-La classe [Artifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) contient les propriétés suivantes :
-
-**contents** – Obtient une collection d'opérateurs internes d'artefact. Son type pris en charge est System.Collections.ICollection.
-**form** – Obtient le XForm d'un artefact (si XForm est utilisé). Les filigranes, en-têtes et pieds de page contiennent un XForm qui montre tous les contenus d'artefact.
-
-**image** – Obtient l'image d'un artefact (si une image est présente, sinon null).
-**text** – Obtient le texte d'un artefact.
-**rectangle** – Obtient la position d'un artefact sur la page.
-**rotation** – Obtient la rotation d'un artefact (en degrés, une valeur positive indique une rotation dans le sens antihoraire).
-**opacity** – Obtient l'opacité d'un artefact. Les valeurs possibles sont dans la plage 0…1, où 1 est complètement opaque.
-
-## Exemples de Programmation : Comment Ajouter un Filigrane sur des Fichiers PDF
-
-L'extrait de code suivant montre comment obtenir chaque filigrane sur la première page d'un fichier PDF avec Python.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_pdf)
- artifact = ap.WatermarkArtifact()
-
- ts = ap.text.TextState()
- ts.font_size = 72
- ts.foreground_color = ap.Color.blue
- ts.font = ap.text.FontRepository.find_font("Courier")
-
- artifact.set_text_and_state("WATERMARK", ts)
- artifact.artifact_horizontal_alignment = ap.HorizontalAlignment.CENTER
- artifact.artifact_vertical_alignment = ap.VerticalAlignment.CENTER
- artifact.rotation = 45
- artifact.opacity = 0.5
- artifact.is_background = True
- document.pages[1].artifacts.append(artifact)
- document.save(output_pdf)
-```
-
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md
index 1f2a6cd209..1913eadbf0 100644
--- a/fr/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md
@@ -1,327 +1,343 @@
---
-title: Ajouter un en-tête et un pied de page au PDF en utilisant Python
-linktitle: Ajouter un en-tête et un pied de page au PDF
+title: Ajouter des en‑têtes et pieds de page PDF en Python
+linktitle: Ajouter un en‑tête et un pied de page au PDF
type: docs
weight: 50
url: /fr/python-net/add-headers-and-footers-of-pdf-file/
-description: Aspose.PDF pour Python via .NET vous permet d'ajouter des en-têtes et des pieds de page à votre fichier PDF en utilisant la classe TextStamp.
-lastmod: "2023-04-17"
+description: Apprenez comment ajouter des en-têtes et des pieds de page aux fichiers PDF en Python en utilisant du texte, des images et du contenu structuré.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajoutez des en-têtes et des pieds de page aux fichiers PDF avec Python
+Abstract: Cet article montre comment ajouter des en-têtes et des pieds de page aux documents PDF avec Aspose.PDF for Python via .NET. Il couvre le texte, la numérotation des pages, le HTML, l'image, le tableau et le contenu d'en-tête et de pied de page basé sur LaTeX.
---
-
-
-
-**Aspose.PDF pour Python via .NET** vous permet d'ajouter un en-tête et un pied de page dans votre fichier PDF existant. Vous pouvez ajouter des images ou du texte à un document PDF. Essayez également d'ajouter différents en-têtes dans un fichier PDF avec Python.
-
-## Ajouter du texte dans l'en-tête du fichier PDF
-
-Vous pouvez utiliser la classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) pour ajouter du texte dans l'en-tête d'un fichier PDF. La classe TextStamp fournit les propriétés nécessaires pour créer un tampon basé sur du texte comme la taille de police, le style de police et la couleur de police, etc. Afin d'ajouter du texte dans l'en-tête, vous devez créer un objet Document et un objet TextStamp en utilisant les propriétés requises. Après cela, vous pouvez appeler la méthode 'add_stamp' de la Page pour ajouter le texte dans l'en-tête du PDF.
-
-Vous devez définir la propriété [top_margin](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties) de manière à ajuster le texte dans la zone de l'en-tête de votre PDF. Vous devez également définir 'horizontal_alignment' sur Center et 'vertical_alignment' sur Top.
-
-Le snippet de code suivant vous montre comment ajouter du texte dans l'en-tête d'un fichier PDF avec Python :
-```python
-import aspose.pdf as pdf
+Utilisez cette page pour ajouter un en-tête et un pied de page cohérents sur les pages PDF avec **Aspose.PDF for Python via .NET**.
-# Créer un objet Document
-document = pdf.Document("input.pdf")
+Vous pouvez créer des en-têtes et des pieds de page avec [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/), [`HtmlFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlfragment/), [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/), [`Image`](https://reference.aspose.com/pdf/python-net/aspose.pdf/image/), et [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) objets, puis les appliquer via [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) sur chaque page.
-# Créer un objet TextStamp
-text_stamp = pdf.TextStamp("This is a header text")
-text_stamp.top_margin = 10
-text_stamp.horizontal_alignment = pdf.HorizontalAlignment.Center
-text_stamp.vertical_alignment = pdf.VerticalAlignment.Top
+## Ajout d’en-têtes et de pieds de page en tant que fragments de texte
-# Ajouter le TextStamp à la première page du document PDF
-document.pages[1].add_stamp(text_stamp)
+Ajoutez des en-têtes et pieds de page texte simples à toutes les pages d'un PDF. Il crée [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objets, insertions [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/) éléments dans eux, ensembles [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) pour un positionnement correct, et les attache à chaque page du document. Le résultat est un PDF où chaque page affiche des en-têtes et pieds de page cohérents.
-# Enregistrer le document mis à jour
-document.save("output.pdf")
+Le fragment de code suivant montre comment ajouter des en-têtes et des pieds de page sous forme de fragments de texte dans un PDF à l'aide de Python :
+1. Créer des fragments de texte pour l'en-tête et le pied de page.
+1. Créez des objets HeaderFooter et ajoutez les fragments de texte à ceux-ci.
+1. Définir les paramètres de marge pour contrôler le placement de l’en-tête et du pied de page.
+1. Chargez le document PDF depuis le fichier d'entrée.
+1. Parcourir toutes les pages du document.
+1. Attribuez l'en-tête et le pied de page à chaque page.
+1. Enregistrez le PDF modifié dans le fichier de sortie.
```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_text(input_file, output_file):
+ # Create header text
+ header_text = ap.text.TextFragment("Demo header")
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_text)
+
+ # Create footer text
+ footer_text = ap.text.TextFragment("Demo footer")
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_text)
+
+ # Set header margin
+ margin = ap.MarginInfo()
+ margin.left = 50
+ margin.top = 20
+ header.margin = margin
+
+ # Set footer margin
+ footer.margin = margin
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
+```
- import aspose.pdf as ap
+Cette méthode est utile pour ajouter des titres cohérents, des indicateurs de page ou des mentions légales en haut et en bas de chaque page. Vous pouvez également l'étendre pour inclure des images ou du contenu dynamique, tel que les numéros de page.
- # Ouvrir le document
- document = ap.Document(input_pdf)
+## Ajout d'en-têtes et de pieds de page pour la numérotation des pages
- # Créer un en-tête
- textStamp = ap.TextStamp("Texte de l'en-tête")
- # Définir les propriétés du tampon
- textStamp.top_margin = 10
- textStamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- textStamp.vertical_alignment = ap.VerticalAlignment.TOP
- # Ajouter un en-tête sur toutes les pages
- for page in document.pages:
- page.add_stamp(textStamp)
+Ajoutez une numérotation automatique des pages aux en-têtes et pieds de page d'un document PDF à l'aide d'Aspose.PDF for Python. En utilisant les variables intégrées $p (numéro de page actuel) et $P (nombre total de pages), le script insère dynamiquement la numérotation des pages sur chaque page. Les en-têtes affichent le format 'Page X de Y', tandis que les pieds de page montrent 'Page X / Y'. The [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) assure un placement correct sur chaque page.
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+1. Créer un TextFragment pour l’en-tête en utilisant "Page $p de $P" pour afficher la page actuelle et le nombre total de pages.
+1. Créez un objet HeaderFooter et ajoutez-y le texte d’en-tête.
+1. Créez un TextFragment pour le pied de page en utilisant "Page $p / $P" pour un style de numérotation alternatif.
+1. Créer un objet Footer et ajouter le texte du pied de page.
+1. Définissez les paramètres de marge (gauche = 50, haut = 20) et appliquez‑les à l’en‑tête et au pied de page.
+1. Ouvrez le document PDF à partir du fichier d'entrée.
+1. Parcourez toutes les pages et attribuez l'en-tête et le pied de page à chaque page.
+1. Enregistrez le PDF mis à jour dans le chemin de sortie.
+
+```python
+import aspose.pdf as ap
+
+def using_header_and_footer_for_page_numbering(input_file, output_file):
+ # Create header text
+ header_text = ap.text.TextFragment("Page $p from $P")
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_text)
+
+ # Create footer text
+ footer_text = ap.text.TextFragment("Page $p / $P")
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_text)
+
+ # Create margins
+ margin = ap.MarginInfo()
+ margin.left = 50
+ margin.top = 20
+
+ # Set header margin
+ header.margin = margin
+ # Set footer margin
+ footer.margin = margin
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Ajout de texte dans le pied de page d'un fichier PDF
+## Ajout d’en-têtes et de pieds de page en tant que fragments HTML
-Vous pouvez utiliser la classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) pour ajouter du texte dans le pied de page d'un fichier PDF.
- class TextStamp fournit les propriétés nécessaires pour créer un tampon basé sur du texte comme la taille de la police, le style de la police et la couleur de la police, etc. Pour ajouter du texte dans le pied de page, vous devez créer un objet Document et un objet TextStamp en utilisant les propriétés requises. Après cela, vous pouvez appeler la méthode 'add_stamp' de la Page pour ajouter le texte dans le pied de page du PDF.
+Appliquer des en‑têtes et pieds de page au format HTML à chaque page d'un document PDF en utilisant Aspose.PDF for Python. En utilisant [`HtmlFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlfragment/), le script permet le style de texte enrichi—comme le gras et l’italique—d'apparaître dans l'en-tête et le pied de page. [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) est appliqué pour un placement correct, et les mêmes éléments formatés sont attachés à chaque page du document.
-Le code suivant vous montre comment ajouter du texte dans le pied de page d'un fichier PDF avec Python :
+Le fragment de code suivant montre comment ajouter des en-têtes et des pieds de page en tant que fragments HTML à un PDF en utilisant Python :
-```python
+1. Créer un extrait d'en-tête HTML en utilisant HtmlFragment—y compris du texte stylisé tel que '' pour gras.
+1. Créez un objet HeaderFooter et ajoutez-y l'en-tête HTML.
+1. Créer un extrait de pied de page HTML en utilisant '' pour le style italique.
+1. Créer un objet Footer et ajouter le HTML du pied de page à celui-ci.
+1. Configurez les marges (gauche = 50, haut = 20) et attribuez‑les à l’en‑tête et au pied de page.
+1. Chargez le document PDF en utilisant 'ap.Document()'.
+1. Parcourez toutes les pages et attribuez l'en-tête et le pied de page à chacune d'elles.
+1. Enregistrez le PDF modifié à l'emplacement de sortie spécifié.
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Créer le pied de page
- textStamp = ap.TextStamp("Texte du pied de page")
- # Définir les propriétés du tampon
- textStamp.bottom_margin = 10
- textStamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- textStamp.vertical_alignment = ap.VerticalAlignment.BOTTOM
- # Ajouter le pied de page sur toutes les pages
- for page in document.pages:
- page.add_stamp(textStamp)
-
- # Enregistrer le fichier PDF mis à jour
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_html(input_file, output_file):
+ # Create header HTML
+ header_html = ap.HtmlFragment("This is an HTML Header")
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_html)
+
+ # Create footer HTML
+ footer_html = ap.HtmlFragment("Powered by Aspose.PDF")
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_html)
+
+ # Set header margin
+ margin = ap.MarginInfo()
+ margin.left = 50
+ margin.top = 20
+ header.margin = margin
+
+ # Set footer margin
+ footer.margin = margin
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Ajouter une image dans l'en-tête d'un fichier PDF
-
-Vous pouvez utiliser la classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) pour ajouter une image dans l'en-tête d'un fichier PDF. Image Stamp class fournit les propriétés nécessaires pour créer un tampon basé sur une image, comme la taille de la police, le style de la police et la couleur de la police, etc. Afin d'ajouter une image dans l'en-tête, vous devez créer un objet Document et un objet Image Stamp en utilisant les propriétés requises. Après cela, vous pouvez appeler la méthode 'add_stamp' de la Page pour ajouter l'image dans l'en-tête du PDF.
+L'utilisation de HtmlFragment permet une mise en forme riche avec des styles en ligne ou du balisage HTML, vous offrant davantage de flexibilité de conception par rapport au texte brut.
-Le snippet de code suivant vous montre comment ajouter une image dans l'en-tête d'un fichier PDF avec Python :
+## Ajout d'en-têtes et pieds de page en tant qu'images
-```python
+Ajoutez des en-têtes et pieds de page basés sur des images à chaque page d'un document PDF en utilisant Aspose.PDF for Python. Le même fichier image est utilisé à la fois pour l'en-tête et le pied de page sur chaque page. [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) positionne les images, et l'image s'ajuste automatiquement pour s'adapter à la zone d'en-tête/pied de page.
- import aspose.pdf as ap
+Le fragment de code suivant démontre comment ajouter des en-têtes et des pieds de page sous forme d'images à un PDF en utilisant Python :
- # Ouvrir le document
- document = ap.Document(input_pdf)
+1. Chargez l'image dans un objet 'ap.Image' et préparez-le à être utilisé comme en-tête.
+1. Créez un objet HeaderFooter et attachez l'image d'en-tête à celui-ci.
+1. Chargez à nouveau la même image pour l’utiliser comme pied de page.
+1. Créez un objet Footer et ajoutez-y l'image du pied de page.
+1. Chargez le document PDF d'entrée en utilisant 'ap.Document()'.
+1. Parcourir toutes les pages du document.
+1. Appliquer des marges (gauche = 50) pour positionner l'en‑tête et le pied de page.
+1. Attribuez l'en-tête et le pied de page à chaque page du PDF.
+1. Enregistrez le PDF mis à jour dans le fichier de sortie spécifié.
- # Créer l'en-tête
- image_stamp = ap.ImageStamp(input_image)
- # Définir les propriétés du tampon
- image_stamp.top_margin = 10
- image_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- image_stamp.vertical_alignment = ap.VerticalAlignment.TOP
- # Ajouter l'en-tête sur toutes les pages
- for page in document.pages:
- page.add_stamp(image_stamp)
+Cette technique est idéale pour marquer les documents avec des logos ou des filigranes dans la zone d'en-tête/pied de page.
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_image(input_file, image_file, output_file):
+ # Create header image
+ header_image = ap.Image()
+ header_image.file = image_file
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_image)
+
+ # Create footer image
+ footer_image = ap.Image()
+ footer_image.file = image_file
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_image)
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Set header margin
+ margin = ap.MarginInfo()
+ margin.left = 50
+ header.margin = margin
+
+ # Set footer margin
+ footer.margin = margin
+
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Ajouter une image dans le pied de page d'un fichier PDF
+## Ajout d’en-têtes et de pieds de page sous forme de tableau
-Vous pouvez utiliser la classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) pour ajouter une image dans le pied de page d'un fichier PDF. [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) classe fournit les propriétés nécessaires pour créer un tampon basé sur une image comme la taille de la police, le style de la police et la couleur de la police, etc. Afin d'ajouter une image dans le pied de page, vous devez créer un objet Document et un objet Image Stamp en utilisant les propriétés requises. Après cela, vous pouvez appeler la méthode 'add_stamp' de la Page pour ajouter l'image dans le pied de page du PDF.
+Ajoutez des en-têtes et pieds de page structurés, basés sur des tableaux, à toutes les pages d'un document PDF en utilisant Aspose.PDF for Python. [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) les objets offrent un meilleur contrôle de la mise en page, de l'alignement et une mise en forme cohérente pour les en-têtes et pieds de page complexes. Le texte de l'en-tête est centré tandis que le texte du pied de page est aligné à gauche, les deux utilisant la police Arial 12 pt. Les largeurs de colonne sont calculées dynamiquement en fonction des dimensions de la page afin d'assurer un placement correct.
-Le code suivant vous montre comment ajouter une image dans le pied de page d'un fichier PDF avec Python :
+Cet extrait de code ajoute des en-têtes et des pieds de page (en utilisant des tableaux) à chaque page d'un document PDF avec Aspose.PDF for Python via .NET.
-```python
+1. Définir les styles de texte en utilisant [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/) pour l'en-tête et le pied de page (police, taille, alignement).
+1. Créer [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objets pour l'en-tête et le pied de page.
+1. Construire l'en-tête [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) avec une seule ligne et une cellule contenant le texte d'en-tête.
+1. Construire le pied de page [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) avec une seule ligne et cellule contenant le texte du pied de page.
+1. Ajoutez les tableaux aux correspondants [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objets.
+1. Définir le pied de page [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) pour un positionnement horizontal correct.
+1. Ouvrez le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant des méthodes appropriées.
+1. Parcourir toutes les pages et attribuer l’en-tête et le pied de page basés sur un tableau à chaque page.
+1. Enregistrer le modifié [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) vers le fichier de sortie.
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Créer le pied de page
- image_stamp = ap.ImageStamp(input_image)
- # Définir les propriétés du tampon
- image_stamp.bottom_margin = 10
- image_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- image_stamp.vertical_alignment = ap.VerticalAlignment.BOTTOM
- # Ajouter le pied de page sur toutes les pages
- for page in document.pages:
- page.add_stamp(image_stamp)
-
- # Enregistrer le fichier PDF mis à jour
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_table(input_file, output_file):
+ text_state_header = ap.text.TextState()
+ text_state_header.font = ap.text.FontRepository.find_font("Arial")
+ text_state_header.font_size = 12
+ text_state_header.horizontal_alignment = ap.HorizontalAlignment.CENTER
+ text_state_footer = ap.text.TextState()
+ text_state_footer.font = ap.text.FontRepository.find_font("Arial")
+ text_state_footer.font_size = 12
+ text_state_footer.horizontal_alignment = ap.HorizontalAlignment.LEFT
+ # Create header
+ header = ap.HeaderFooter()
+ # Create footer
+ footer = ap.HeaderFooter()
+ # Create header Table
+ table_header = ap.Table()
+ table_header.column_widths = str(594 - header.margin.left - header.margin.right)
+ header_row = table_header.rows.add()
+ header_row.cells.add("This is a Table Header", text_state_header)
+ # Create footer Table
+ table = ap.Table()
+ table.column_widths = str(594 - footer.margin.left - footer.margin.right)
+ table.rows.add().cells.add("Powered by Aspose.PDF", text_state_footer)
+ header.paragraphs.add(table_header)
+ footer.paragraphs.add(table)
+ # Set footer margin
+ footer.margin.left = 150
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Ajout de différents en-têtes dans un fichier PDF
+## Ajout d'en-têtes et de pieds de page en LaTeX
-Nous savons que nous pouvons ajouter un TextStamp dans la section En-tête/Pied de page du document en utilisant les propriétés [top_margin](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties) ou [bottom_margin](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties), mais parfois, nous pouvons avoir besoin d'ajouter plusieurs en-têtes/pieds de page dans un seul document PDF. **Aspose.PDF pour Python via .NET** explique comment faire cela.
+Ajoutez des en-têtes et des pieds de page contenant du contenu formaté en LaTeX à toutes les pages d'un document PDF en utilisant Aspose.PDF for Python. LaTeX permet de rendre des symboles mathématiques, des dates, des marques de copyright et d'autres formats avancés. L'en-tête comprend une date dynamique, tandis que le pied de page affiche le symbole de copyright ainsi que le numéro de page actuel et le nombre total de pages.
-Pour répondre à cette exigence, nous créerons des objets TextStamp individuels (le nombre d'objets dépend du nombre d'en-têtes/pieds de page nécessaires) et nous les ajouterons au document PDF.
- Nous pouvons également spécifier des informations de formatage différentes pour chaque objet de tampon individuel. Dans l'exemple suivant, nous avons créé un objet Document et trois objets TextStamp, puis nous avons utilisé la méthode 'add_stamp' de la Page pour ajouter le texte dans la section d'en-tête du PDF. Le fragment de code suivant vous montre comment ajouter une image dans le pied de page d'un fichier PDF avec Aspose.PDF pour Python :
+Le fragment de code suivant montre comment utiliser [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) dans les en-têtes et pieds de page d'un PDF utilisant Aspose.PDF for Python via .NET.
-```python
+1. Ouvrez le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant des méthodes appropriées.
+1. Déterminez le nombre total de pages à utiliser dans les pieds de page dynamiques.
+1. Parcourir toutes les pages du document.
+1. Créer un [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objet pour l'en-tête.
+1. Créer un [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) pour le texte d'en-tête contenant des commandes LaTeX (par exemple, `\\today\\`).
+1. Créer un [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objet pour le pied de page.
+1. Créer un [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) pour le texte du pied de page incluant les symboles LaTeX et la numérotation des pages.
+1. Ajouter le [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) vers l'objet d'en-tête/pied de page correspondant.
+1. Lier l'en-tête et le pied de page à la page actuelle.
+1. Enregistrer le modifié [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) vers le fichier de sortie.
- import aspose.pdf as ap
-
- # Créer trois tampons
- stamp1 = ap.TextStamp("En-tête 1")
- stamp2 = ap.TextStamp("En-tête 2")
- stamp3 = ap.TextStamp("En-tête 3")
-
- # Définir l'alignement du tampon (placer le tampon en haut de la page, centré horizontalement)
- stamp1.vertical_alignment = ap.VerticalAlignment.TOP
- stamp1.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Spécifier le style de police comme Gras
- stamp1.text_state.font_style = ap.text.FontStyles.BOLD
- # Définir la couleur du texte en avant-plan comme rouge
- stamp1.text_state.foreground_color = ap.Color.red
- # Spécifier la taille de la police comme 14
- stamp1.text_state.font_size = 14
-
- # Maintenant, nous devons définir l'alignement vertical du deuxième objet tampon comme Haut
- stamp2.vertical_alignment = ap.VerticalAlignment.TOP
- # Définir les informations d'alignement horizontal pour le tampon comme centré
- stamp2.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Définir le facteur de zoom pour l'objet tampon
- stamp2.zoom = 10
-
- # Définir le formatage du troisième objet tampon
- # Spécifier les informations d'alignement vertical pour l'objet tampon comme HAUT
- stamp3.vertical_alignment = ap.VerticalAlignment.TOP
- # Définir les informations d'alignement horizontal pour l'objet tampon comme centré
- stamp3.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Définir l'angle de rotation pour l'objet tampon
- stamp3.rotate_angle = 35
- # Définir le rose comme couleur de fond pour le tampon
- stamp3.text_state.background_color = ap.Color.pink
- # Changer les informations de la police pour le tampon en Verdana
- stamp3.text_state.font = ap.text.FontRepository.find_font("Verdana")
- # Le premier tampon est ajouté sur la première page;
- document.pages[1].add_stamp(stamp1)
- # Le deuxième tampon est ajouté sur la deuxième page;
- document.pages[2].add_stamp(stamp2)
- # Le troisième tampon est ajouté sur la troisième page.
- document.pages[3].add_stamp(stamp3)
-
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_latex(input_file, output_file):
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ page_count = len(document.pages)
+ for i in range(1, page_count + 1):
+ # Create header
+ header = ap.HeaderFooter()
+ h_latex_text = "This is a LaTeX Header. \\today\\"
+ h_l_text = ap.TeXFragment(h_latex_text, True)
+ # Create footer
+ footer = ap.HeaderFooter()
+ f_latex_text = (
+ f"\\copyright\\ 2025 My Company -- Page \\thepage\\ is {page_count}"
+ )
+ f_l_text = ap.TeXFragment(f_latex_text, True)
+
+ header.paragraphs.add(h_l_text)
+ footer.paragraphs.add(f_l_text)
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-
\ No newline at end of file
+## Sujets de page associés
+
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Ajouter des numéros de page à un PDF en Python](/pdf/fr/python-net/add-page-number/)
+- [Tamponner les pages PDF en Python](/pdf/fr/python-net/stamping/)
+- [Formater les documents PDF en Python](/pdf/fr/python-net/formatting-pdf-document/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/change-page-size/_index.md b/fr/python-net/advanced-operations/working-with-pages/change-page-size/_index.md
index 9af60eea9a..4bcaac9ab9 100644
--- a/fr/python-net/advanced-operations/working-with-pages/change-page-size/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/change-page-size/_index.md
@@ -1,172 +1,120 @@
---
-title: Modifier la taille de la page PDF avec Python
-linktitle: Modifier la taille de la page PDF
+title: Modifier la taille de la page PDF en Python
+linktitle: Modification de la taille de la page
type: docs
-weight: 60
+weight: 40
url: /fr/python-net/change-page-size/
-description: Modifiez la taille des pages de votre document PDF à l'aide de la bibliothèque Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-17"
+description: Apprenez comment lire et modifier les dimensions de page PDF en Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "weekly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modification de la taille de la page avec Python
+Abstract: Cet article montre comment lire et modifier les dimensions des pages PDF à l'aide d'Aspose.PDF. L'exemple Get Page Size récupère la largeur et la hauteur d'une page PDF spécifique, permettant aux utilisateurs d'inspecter la disposition des pages, de valider le formatage ou d'analyser la structure du document. L'exemple Set Page Size montre comment changer les dimensions d'une page—par exemple en convertissant la première page au format A4—tout en affichant les propriétés des boîtes (CropBox, TrimBox, ArtBox, BleedBox, MediaBox) avant et après la modification.
---
-
-
-
-## Changer la Taille des Pages PDF
-
-Aspose.PDF pour Python via .NET vous permet de changer la taille des pages PDF avec quelques lignes de code dans vos applications Python. Ce sujet explique comment mettre à jour/modifier les dimensions des pages (taille) d'un fichier PDF existant.
-
-La classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) contient la méthode [set_page_size()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) qui vous permet de définir la taille de la page. L'extrait de code ci-dessous met à jour les dimensions de la page en quelques étapes simples :
-
-1. Charger le fichier PDF source.
-2. Obtenir les pages dans l'objet [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-3. Obtenir une page donnée.
-4. Appeler la méthode set_page_size() pour mettre à jour ses dimensions.
-5. Appeler la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) de la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) pour générer le fichier PDF avec les dimensions de page mises à jour.
-```python
+Aspose.PDF for Python via .NET vous permet de modifier la taille des pages PDF avec quelques lignes de code. Ce sujet montre comment mettre à jour les dimensions des pages en utilisant le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) et [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) API.
+
+Utilisez ce guide lorsque vous devez redimensionner les pages PDF existantes, normaliser les dimensions du document ou inspecter les paramètres de boîte de page en Python.
+
+{{% alert color="primary" %}}
+
+Veuillez noter que les propriétés hauteur et largeur utilisent les points comme unité de base, où 1 pouce = 72 points et 1 cm = 1/2,54 pouce = 0,3937 pouce = 28,3 points.
+
+{{% /alert %}}
+
+## Définir la taille de page d'une page PDF à A4
+
+L’exemple met à jour la taille de la première page d’un document PDF aux dimensions standard A4. Il affiche également les dimensions des boîtes de la page (CropBox, TrimBox, ArtBox, BleedBox, MediaBox) avant et après le redimensionnement afin que vous puissiez vérifier les modifications.
- import aspose.pdf as ap
+Le fragment de code suivant montre comment modifier les dimensions de la page PDF au format A4 :
- document = ap.Document(input_pdf)
+1. Accédez au premier [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) du [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Affichez les tailles des boîtes de la page avant modification (CropBox, TrimBox, ArtBox, BleedBox, MediaBox).
+1. Appliquez les dimensions A4 (597.6 × 842.4 points) à l'aide de l'API de page.
+1. Affichez les tailles de boîte de page mises à jour.
+1. Enregistrer le modifié [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) vers le chemin de sortie spécifié.
- # Obtenir une page en particulier
+```python
+import aspose.pdf as ap
+
+def set_page_size(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ # Get particular page
page = document.pages[1]
- # Définir la taille de la page en A4 (11,7 x 8,3 pouces) et dans Aspose.Pdf, 1 pouce = 72 points
- # Donc les dimensions A4 en points seront (842.4, 597.6)
+ # Set the page size as A4 (8.3 x 11.7 in) and in Aspose.Pdf, 1 inch = 72 points
+ # So A4 dimensions in points will be (597.6, 842.4) for portrait orientation
+ print("Before set")
+ print(f"CropBox: {page.crop_box.width} x {page.crop_box.height}")
+ print(f"TrimBox: {page.trim_box.width} x {page.trim_box.height}")
+ print(f"ArtBox: {page.art_box.width} x {page.art_box.height}")
+ print(f"BleedBox: {page.bleed_box.width} x {page.bleed_box.height}")
+ print(f"MediaBox: {page.media_box.width} x {page.media_box.height}")
+
page.set_page_size(597.6, 842.4)
+ print("After set")
+ print(f"CropBox: {page.crop_box.width} x {page.crop_box.height}")
+ print(f"TrimBox: {page.trim_box.width} x {page.trim_box.height}")
+ print(f"ArtBox: {page.art_box.width} x {page.art_box.height}")
+ print(f"BleedBox: {page.bleed_box.width} x {page.bleed_box.height}")
+ print(f"MediaBox: {page.media_box.width} x {page.media_box.height}")
+
+ # Save the updated document
+ document.save(output_file_name)
+```
+
+## Obtenir la taille de la page PDF
+
+Cet extrait lit un PDF et récupère les dimensions (largeur et hauteur) de la première page. Il utilise le [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) API pour extraire les limites de la page [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) et affiche sa taille dans la console. Ceci est utile pour inspecter la mise en page, vérifier les formats ou préparer les documents pour un traitement ultérieur.
- # Enregistrer le document mis à jour
- document.save(output_pdf)
+1. Chargez le PDF en tant que [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Accédez au premier [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Récupérer le rectangle englobant de la page en utilisant `get_page_rect()`.
+1. Extrayez les valeurs de largeur et de hauteur.
+1. Imprimez les dimensions de la page.
+
+```python
+import aspose.pdf as ap
+
+def get_page_size(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+
+ # Get particular page
+ page = document.pages[1]
+ rectangle = page.get_page_rect(True)
+ print(f"{rectangle.width} : {rectangle.height}")
+```
+
+### Obtenir la taille de la page PDF avant et après la rotation
+
+Récupérez les dimensions d’une page PDF avant et après l’application d’une rotation de 90°. Cela démontre comment la rotation affecte la largeur et la hauteur et comment l’utiliser. `get_page_rect()` avec ou sans prise en compte de la rotation.
+
+1. Ouvrir le PDF en tant que [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Accédez au premier [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Appliquer une rotation de 90° en utilisant `page.rotate = ap.Rotation.ON90` (voir le [`Rotation`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rotation/) enum).
+1. Récupérer le rectangle de la page sans rotation en utilisant `get_page_rect(False)` et affiche sa largeur et sa hauteur.
+1. Récupérer le rectangle de la page en tenant compte de la rotation en utilisant `get_page_rect(True)` et affiche sa largeur et sa hauteur.
+1. Comparez comment les dimensions changent en raison de la rotation.
+
+```python
+import aspose.pdf as ap
+
+def get_page_size_rotation(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ # Get particular page
+ page = document.pages[1]
+ page.rotate = ap.Rotation.ON90
+ rectangle = page.get_page_rect(False)
+ print(f"{rectangle.width} : {rectangle.height}")
+ rectangle = page.get_page_rect(True)
+ print(f"{rectangle.width} : {rectangle.height}")
```
+## Sujets de page associés
-
\ No newline at end of file
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Recadrer les pages PDF en Python](/pdf/fr/python-net/crop-pages/)
+- [Obtenir et définir les propriétés des pages PDF en Python](/pdf/fr/python-net/get-and-set-page-properties/)
+- [Faire pivoter les pages PDF en Python](/pdf/fr/python-net/rotate-pages/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/crop-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/crop-pages/_index.md
index 5df0936f6f..433928b367 100644
--- a/fr/python-net/advanced-operations/working-with-pages/crop-pages/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/crop-pages/_index.md
@@ -1,177 +1,94 @@
---
-title: Rogner les pages PDF par programmation en Python
-linktitle: Rogner les pages
+title: Recadrer des pages PDF en Python
+linktitle: Recadrage de pages PDF
type: docs
weight: 70
url: /fr/python-net/crop-pages/
-description: Vous pouvez obtenir les propriétés des pages, telles que la largeur, la hauteur, bleed-, crop- et trimbox en utilisant Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-17"
+description: Apprenez à recadrer des pages PDF et à ajuster les boîtes de recadrage, de rognage, de débordement et de média en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment accéder aux propriétés des pages d’un PDF et les modifier avec Python
+Abstract: L’article présente un aperçu de la façon d’accéder aux propriétés des pages et de les modifier dans un document PDF à l’aide d’Aspose.PDF for Python. Il décrit plusieurs propriétés de page, notamment la boîte de média, la boîte de débordement, la boîte de rognage, la boîte d’art et la boîte de recadrage, en expliquant leurs rôles dans la définition des dimensions et des limites d’une page PDF aux fins d’impression et d’affichage. La boîte de média représente la plus grande taille de page, tandis que la boîte de débordement assure une couverture d’encre au‑delà du bord de la page pour le découpage. La boîte de rognage indique la taille finale du document après découpage, et la boîte d’art encapsule le contenu réel de la page. La boîte de recadrage définit la zone visible dans Adobe Acrobat. L’article inclut un extrait de code Python montrant comment définir une nouvelle boîte de recadrage, ainsi que d’autres boîtes, pour une page spécifique d’un document PDF. Des exemples visuels illustrent l’apparence de la page avant et après l’application du recadrage, mettant en évidence l’utilisation pratique de la modification de ces propriétés.
---
-
-
-
-## Obtenir les Propriétés de la Page
-
-Chaque page d'un fichier PDF possède un certain nombre de propriétés, telles que la largeur, la hauteur, le bleed-, le crop- et le trimbox. Aspose.PDF pour Python vous permet d'accéder à ces propriétés.
-
-- **media_box**: La media box est la plus grande boîte de page. Elle correspond à la taille de la page (par exemple A4, A5, US Letter, etc.) sélectionnée lorsque le document a été imprimé en PostScript ou PDF. En d'autres termes, la media box détermine la taille physique du support sur lequel le document PDF est affiché ou imprimé.
-- **bleed_box**: Si le document a un bleed, le PDF aura également une bleed box. Le bleed est la quantité de couleur (ou d'œuvre) qui dépasse le bord d'une page. Il est utilisé pour s'assurer que lorsque le document est imprimé et coupé à la taille ("découpé"), l'encre ira jusqu'au bord de la page. Même si la page est mal découpée - coupée légèrement en dehors des marques de coupe - aucun bord blanc n'apparaîtra sur la page.
+
+## Obtenir les propriétés de la page
+
+Chaque page d'un fichier PDF possède un certain nombre de propriétés, telles que la largeur, la hauteur, bleed-, crop- et trimbox. Aspose.PDF for Python vous permet d'accéder à ces propriétés.
+
+Utilisez cette page lorsque vous avez besoin de réduire la zone visible de la page, de préparer des fichiers pour les flux de travail d'impression, ou d'inspecter la géométrie des boîtes de page dans les documents PDF.
+
+- **media_box**: La media box est la plus grande boîte de page. Elle correspond à la taille de la page (par exemple A4, A5, US Letter, etc.) sélectionnée lorsque le document a été imprimé en PostScript ou en PDF. En d'autres termes, la media box détermine la taille physique du support sur lequel le document PDF est affiché ou imprimé.
+- **bleed_box**: Si le document possède du bleed, le PDF comportera également une boîte de bleed. Le bleed est la quantité de couleur (ou d'illustration) qui dépasse le bord d'une page. Il est utilisé pour s'assurer que lorsque le document est imprimé et découpé à la taille (\u0022trimmed\u0022), l'encre ira jusqu'au bord de la page. Même si la page est mal découpée - découpée légèrement en dehors des repères de coupe - aucune bordure blanche n'apparaîtra sur la page.
- **trim_box**: La trim box indique la taille finale d'un document après impression et découpe.
-- **art_box**: La art box est la boîte dessinée autour du contenu réel des pages dans vos documents.
- Cette boîte de page est utilisée lors de l'importation de documents PDF dans d'autres applications.
-- **crop_box**: La boîte de recadrage est la taille de "page" à laquelle votre document PDF est affiché dans Adobe Acrobat. En vue normale, seuls les contenus de la boîte de recadrage sont affichés dans Adobe Acrobat. Pour des descriptions détaillées de ces propriétés, lisez la spécification Adobe.Pdf, en particulier 10.10.1 Page Boundaries.
+- **art_box** : La boîte d'art est la boîte dessinée autour du contenu réel des pages de vos documents. Cette boîte de page est utilisée lors de l'importation de documents PDF dans d’autres applications.
+- **crop_box** : La boîte de rognage est la taille "page" à laquelle votre document PDF est affiché dans Adobe Acrobat. En mode normal, seul le contenu de la boîte de rognage est affiché dans Adobe Acrobat. Pour des descriptions détaillées de ces propriétés, consultez la spécification Adobe.Pdf, en particulier la section 10.10.1 Limites de page.
-L'extrait ci-dessous montre comment recadrer la page :
+Rogner le premier [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) d'un PDF vers une zone rectangulaire spécifique en utilisant Aspose.PDF for Python. La fonction ajuste plusieurs boîtes de page—`crop_box`, `trim_box`, `art_box`, et `bleed_box`—pour garantir des résultats visuels cohérents. Le recadrage peut être utile pour supprimer les marges indésirables ou se concentrer sur une zone particulière d’une page.
-```python
+1. Chargez le PDF en tant que [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) (utiliser `ap.Document()`).
+1. Définissez le rectangle de rognage en utilisant [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) with the desired coordinates (in points).
+1. Set the [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/)'s `crop_box`, `trim_box`, `art_box`, et `bleed_box` au rectangle défini.
+1. Enregistrer le modifié [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) vers un nouveau fichier de sortie.
- import aspose.pdf as ap
+```python
+import sys
+import aspose.pdf as ap
+from os import path
- document = ap.Document(input_pdf)
+def crop_page(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
- # Créer un nouveau Rectangle Box
new_box = ap.Rectangle(200, 220, 2170, 1520, True)
document.pages[1].crop_box = new_box
document.pages[1].trim_box = new_box
document.pages[1].art_box = new_box
document.pages[1].bleed_box = new_box
- document.save(output_pdf)
+ document.save(output_file_name)
```
Dans cet exemple, nous avons utilisé un fichier d'exemple [ici](crop_page.pdf). Initialement, notre page ressemble à ce qui est montré sur la Figure 1.
-
+
Après la modification, la page ressemblera à la Figure 2.
-
-
-
\ No newline at end of file
+
+
+## Recadrer la page PDF en fonction du contenu de la première image
+
+Rogner le premier [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) dynamiquement basé sur les limites de la première image trouvée sur la page. En utilisant [`ImagePlacementAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf/imageplacementabsorber/), le script identifie la première image et ajuste la page `crop_box` pour correspondre aux dimensions de l’image. Cette approche est utile lorsque vous souhaitez vous concentrer sur un contenu visuel spécifique plutôt que sur des coordonnées prédéfinies.
+
+1. Chargez le PDF en tant que [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Localiser les images sur la première page en utilisant [`ImagePlacementAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf/imageplacementabsorber/).
+1. Vérifier si des images existent :
+ - Si trouvé, définissez le [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) `crop_box` pour correspondre à la première image [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/).
+ - Si non, conservez la page inchangée et avertissez l'utilisateur.
+1. Enregistrer le modifié [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) vers le fichier de sortie spécifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def crop_page_by_content(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ # Find first image on first page using ImagePlacementAbsorber
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
+
+ if len(absorber.image_placements) > 0:
+ first_image = absorber.image_placements[1]
+ document.pages[1].crop_box = first_image.rectangle
+ else:
+ print("No images found on the first page")
+ document.save(output_file_name)
+```
+
+## Sujets de page associés
+
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Modifier la taille de la page PDF en Python](/pdf/fr/python-net/change-page-size/)
+- [Obtenir et définir les propriétés des pages PDF en Python](/pdf/fr/python-net/get-and-set-page-properties/)
+- [Faire pivoter les pages PDF en Python](/pdf/fr/python-net/rotate-pages/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.pdf b/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.pdf
new file mode 100644
index 0000000000..2bc27a2ac8
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.pdf differ
diff --git a/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.png b/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.png
new file mode 100644
index 0000000000..d61426415a
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.png differ
diff --git a/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page2.png b/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page2.png
new file mode 100644
index 0000000000..04ebc7427e
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-pages/crop-pages/crop_page2.png differ
diff --git a/fr/python-net/advanced-operations/working-with-pages/delete-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/delete-pages/_index.md
index 6e184b4742..b7516bff67 100644
--- a/fr/python-net/advanced-operations/working-with-pages/delete-pages/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/delete-pages/_index.md
@@ -1,164 +1,64 @@
---
-title: Supprimer des pages PDF par programme Python
-linktitle: Supprimer des pages PDF
+title: Supprimer des pages PDF en Python
+linktitle: Suppression de pages PDF
type: docs
weight: 80
url: /fr/python-net/delete-pages/
-description: Vous pouvez supprimer des pages de votre fichier PDF en utilisant la bibliothèque Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-17"
+description: Apprenez comment supprimer des pages de fichiers PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer une ou plusieurs pages PDF en Python
+Abstract: Cet article explique comment supprimer des pages de fichiers PDF en utilisant Aspose.PDF for Python via .NET. Apprenez comment supprimer une page unique ou plusieurs pages d'un document en utilisant l'API PageCollection, puis enregistrez le PDF mis à jour.
---
-
+Vous pouvez supprimer des pages d'un fichier PDF en utilisant Aspose.PDF for Python via .NET. Pour supprimer une page particulière, utilisez le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) d'un [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-Vous pouvez supprimer des pages d'un fichier PDF en utilisant Aspose.PDF pour Python via .NET. Pour supprimer une page particulière de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+Utilisez ce flux de travail lorsque vous devez supprimer des pages indésirables d'un PDF avant de le partager, de l'archiver ou de combiner des documents.
-## Supprimer une Page d'un Fichier PDF
+## Supprimer la page du fichier PDF
-1. Appelez la méthode [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) et spécifiez l'index de la page
-1. Appelez la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) pour enregistrer le fichier PDF mis à jour
-Le snippet de code suivant montre comment supprimer une page particulière du fichier PDF en utilisant Python.
+Aspose.PDF for Python via .NET supprime la page 2 du PDF d'entrée et enregistre le document mis à jour dans un nouveau fichier. Cette fonction est utile pour supprimer des pages indésirables ou sensibles sans altérer le reste du document.
-```python
+1. Chargez le PDF d'entrée en tant que [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Supprimez la page en utilisant le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Appelez le [`Document.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) méthode pour enregistrer le fichier PDF mis à jour.
- import aspose.pdf as ap
+L'extrait de code suivant montre comment supprimer une page particulière du fichier PDF à l'aide de Python.
- # Ouvrir le document
- document = ap.Document(input_pdf)
+```python
+import aspose.pdf as ap
- # Supprimer une page particulière
+def delete_page(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
document.pages.delete(2)
+ document.save(output_file_name)
+```
+
+## Supprimer plusieurs pages d'un document PDF
+
+Supprimer plusieurs pages vous permet de retirer un ensemble de pages spécifiées en une seule opération, ce qui est plus efficace que de supprimer les pages une par une. Le PDF résultant est enregistré dans un nouveau fichier, préservant le document original.
- # Enregistrer le PDF mis à jour
- document.save(output_pdf)
+1. Chargez le PDF d'entrée en tant que [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Supprimez les pages répertoriées dans le tableau pages en utilisant le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Enregistrez le mis à jour [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) dans un nouveau fichier.
+
+```python
+import aspose.pdf as ap
+
+def delete_multiple_pages(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ # Example: delete pages 2, 3, and 4.
+ pages = [2, 3, 4]
+ document.pages.delete(pages)
+ document.save(output_file_name)
```
-
\ No newline at end of file
+## Sujets de page associés
+
+- [Travailler avec les pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Ajouter des pages PDF en Python](/pdf/fr/python-net/add-pages/)
+- [Déplacer des pages PDF en Python](/pdf/fr/python-net/move-pages/)
+- [Extraire des pages PDF en Python](/pdf/fr/python-net/extract-pages/)
diff --git a/fr/python-net/advanced-operations/working-with-pages/extract-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/extract-pages/_index.md
new file mode 100644
index 0000000000..8919061983
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-pages/extract-pages/_index.md
@@ -0,0 +1,64 @@
+---
+title: Extraire des pages PDF en Python
+linktitle: Extraction de pages PDF
+type: docs
+weight: 80
+url: /fr/python-net/extract-pages/
+description: Apprenez comment extraire une ou plusieurs pages PDF dans de nouveaux fichiers en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment extraire des pages PDF en utilisant Python
+Abstract: Cet article explique comment extraire des pages de fichiers PDF en utilisant Aspose.PDF for Python via .NET. Apprenez comment copier une page unique ou plusieurs pages dans un nouveau document en utilisant l'indexation des pages à partir de 1 et l'API PageCollection.
+---
+
+## Extraire une seule page d'un PDF
+
+Extrayez une page spécifique d'un document PDF et enregistrez‑la dans un nouveau fichier. En utilisant la bibliothèque Aspose.PDF, le script copie la page souhaitée dans un nouveau PDF, laissant le document original inchangé. Cela est utile pour diviser les PDF ou isoler des pages importantes à distribuer.
+
+1. Chargez le PDF source en utilisant le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) API (`ap.Document()`).
+1. Créez un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) pour contenir la page extraite.
+1. Ajoutez le souhaité [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) du document source vers le nouveau PDF en utilisant le document de destination [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (`dst_document.pages.add(...)`).
+ - Dans cet exemple, la page 2 est extraite (indexation à partir de 1).
+1. Enregistrez le nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec la page extraite vers le fichier de sortie spécifié.
+
+```python
+import aspose.pdf as ap
+
+def extract_page(input_file_name: str, output_file_name: str) -> None:
+ src_document = ap.Document(input_file_name)
+ dst_document = ap.Document()
+ dst_document.pages.add(src_document.pages[2])
+ dst_document.save(output_file_name)
+```
+
+## Extraire plusieurs pages d'un PDF
+
+Extrayez plusieurs pages spécifiques d'un document PDF et enregistrez-les dans un nouveau fichier. En utilisant la bibliothèque Aspose.PDF, les pages sélectionnées sont copiées dans un nouveau PDF tout en laissant le document original intact. Cela est utile pour créer des PDF plus petits contenant uniquement les sections pertinentes d'un document plus volumineux.
+
+1. Chargez le PDF source en utilisant le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) API (`ap.Document()`).
+1. Créez un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) pour contenir les pages extraites.
+1. Sélectionnez les pages à extraire (dans cet exemple, les pages 2 et 3 en utilisant une indexation à partir de 1).
+1. Ajoutez chaque sélectionné [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) du document source au nouveau PDF en utilisant son [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Enregistrez le nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec les pages extraites vers le fichier de sortie spécifié.
+
+```python
+import aspose.pdf as ap
+
+def extract_multiple_pages(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ pages = [2, 3]
+ another_document = ap.Document()
+ for page_index in pages:
+ another_document.pages.add(document.pages[page_index])
+ another_document.save(output_file_name)
+```
+
+## Sujets de page associés
+
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Supprimer les pages PDF en Python](/pdf/fr/python-net/delete-pages/)
+- [Déplacer les pages PDF en Python](/pdf/fr/python-net/move-pages/)
+- [Diviser les fichiers PDF en Python](/pdf/fr/python-net/split-document/)
diff --git a/fr/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md b/fr/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md
index e158621c09..cfcacd0190 100644
--- a/fr/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md
@@ -1,348 +1,158 @@
---
-title: Obtenir et Définir les Propriétés des Pages avec Python
-linktitle: Obtenir et Définir les Propriétés des Pages
+title: Obtenir et définir les propriétés des pages PDF en Python
+linktitle: Obtention et définition des propriétés de page
type: docs
weight: 90
url: /fr/python-net/get-and-set-page-properties/
-description: Cette section montre comment obtenir le nombre de pages dans un fichier PDF, obtenir des informations sur les propriétés des pages PDF telles que la couleur et définir les propriétés des pages.
-lastmod: "2023-04-17"
+description: Apprenez à inspecter et à mettre à jour les propriétés des pages PDF telles que la taille, le nombre et les informations de couleur en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment obtenir et définir les propriétés de page en utilisant Python
+Abstract: Cet article décrit les capacités d'Aspose.PDF for Python via .NET, en se concentrant sur la lecture et la définition des propriétés de page dans les fichiers PDF à l'aide de Python. L'article couvre diverses fonctionnalités, notamment la détermination du nombre de pages d'un PDF, l'accès et la modification des propriétés de page, et la gestion des informations de couleur. Pour obtenir le nombre de pages, les classes `Document` et la collection `PageCollection` sont utilisées, avec des extraits de code montrant comment récupérer le nombre de pages, même sans enregistrer le document. L'article explique les différentes propriétés de page telles que MediaBox, BleedBox, TrimBox, ArtBox et CropBox, et fournit des exemples de code pour accéder à ces propriétés. De plus, il décrit comment extraire une page spécifique d'un PDF et l'enregistrer comme document séparé, ainsi que la détermination du type de couleur de chaque page. Les exemples sont implémentés en Python, illustrant des applications pratiques de ces fonctionnalités.
---
-
-
-
-Aspose.PDF pour Python via .NET vous permet de lire et de définir les propriétés des pages dans un fichier PDF dans vos applications Python. Cette section montre comment obtenir le nombre de pages dans un fichier PDF, obtenir des informations sur les propriétés des pages PDF telles que la couleur et définir les propriétés des pages. Les exemples donnés sont en Python.
-
-## Obtenir le Nombre de Pages dans un Fichier PDF
-
-Lorsque vous travaillez avec des documents, vous souhaitez souvent savoir combien de pages ils contiennent. Avec Aspose.PDF, cela ne prend pas plus de deux lignes de code.
-
-Pour obtenir le nombre de pages dans un fichier PDF :
-
-1. Ouvrez le fichier PDF en utilisant la classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Utilisez ensuite la propriété Count de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (à partir de l'objet Document) pour obtenir le nombre total de pages dans le document.
-
-L'extrait de code suivant montre comment obtenir le nombre de pages d'un fichier PDF.
-```python
+Aspose.PDF for Python via .NET vous permet de lire et de définir les propriétés des pages d'un fichier PDF dans vos applications Python. Cette section montre comment obtenir le nombre de pages d'un fichier PDF, obtenir des informations sur les propriétés des pages PDF telles que la couleur et définir les propriétés des pages. Les exemples utilisent le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) et [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) APIs sont écrites en Python.
- import aspose.pdf as ap
+Utilisez ce guide lorsque vous devez inspecter les métadonnées des pages, déterminer le nombre de pages ou mettre à jour les caractéristiques au niveau de la page dans le cadre de l'analyse ou de la normalisation de documents.
- # Ouvrir le document
- document = ap.Document(input_pdf)
+## Obtenir le nombre de pages dans un fichier PDF
- # Obtenir le nombre de pages
- print("Nombre de pages :", str(len(document.pages)))
-```
+Lorsque vous travaillez avec des documents, vous voulez souvent savoir combien de pages ils contiennent. Avec Aspose.PDF, cela ne prend pas plus de deux lignes de code.
+Pour obtenir le nombre de pages dans un fichier PDF:
-### Obtenez le nombre de pages sans enregistrer le document
+1. Ouvrez le fichier PDF en utilisant le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Ensuite utilisez le [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) propriété Count de la collection (à partir de l'objet Document) pour obtenir le nombre total de pages dans le document.
-Parfois, nous générons des fichiers PDF à la volée et, lors de la création d'un fichier PDF, nous pouvons rencontrer le besoin (création de table des matières, etc.) d'obtenir le nombre de pages d'un fichier PDF sans enregistrer le fichier sur le système ou le flux. Donc, afin de répondre à ce besoin, une méthode [process_paragraphs()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) a été introduite dans la classe Document. Veuillez consulter l'extrait de code suivant qui montre les étapes pour obtenir le nombre de pages sans enregistrer le document.
+Le fragment de code suivant montre comment obtenir le nombre de pages d'un fichier PDF.
```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def get_page_count(input_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+
+ # Get page count
+ print("Page Count:", str(len(document.pages)))
+```
- import aspose.pdf as ap
+### Obtenir le nombre de pages sans enregistrer le document
- # Instancier une instance de Document
+Parfois, nous générons les fichiers PDF à la volée et, lors de la création d'un fichier PDF, nous pouvons être confrontés à la nécessité (création d'une table des matières, etc.) d'obtenir le nombre de pages d'un fichier PDF sans l'enregistrer sur le système ou le flux. Ainsi, afin de répondre à cette exigence, une méthode [process_paragraphs()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) a été introduit dans la classe Document. Veuillez consulter le fragment de code suivant qui montre les étapes pour obtenir le nombre de pages sans enregistrer le document.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def get_page_count_without_saving(input_file_name):
+ # Instantiate Document instance
document = ap.Document()
- # Ajouter une page à la collection de pages du fichier PDF
+ # Add page to pages collection of PDF file
page = document.pages.add()
- # Créer une instance de boucle
- for i in range(0, 300):
- # Ajouter TextFragment à la collection de paragraphes de l'objet page
- page.paragraphs.add(ap.text.TextFragment("Test de comptage de pages"))
- # Traiter les paragraphes dans le fichier PDF pour obtenir un nombre de pages précis
+ # Create loop instance
+ for _ in range(0, 300):
+ # Add TextFragment to paragraphs collection of page object
+ page.paragraphs.add(ap.text.TextFragment("Pages count test"))
+ # Process the paragraphs in PDF file to get accurate page count
document.process_paragraphs()
- # Imprimer le nombre de pages dans le document
- print("Nombre de pages dans le document =", str(len(document.pages)))
+ # Print number of pages in document
+ print("Number of pages in document =", str(len(document.pages)))
```
+## Obtenir les propriétés de la page
-## Obtenir les Propriétés de la Page
-
-Chaque page dans un fichier PDF possède un certain nombre de propriétés, telles que la largeur, la hauteur, la boîte de fond perdu, de rognage et de découpe. Aspose.PDF vous permet d'accéder à ces propriétés.
+Chaque page d’un fichier PDF possède un certain nombre de propriétés, telles que la largeur, la hauteur, les boîtes bleed, crop et trimbox. Aspose.PDF vous permet d’accéder à ces propriétés.
-### **Comprendre les Propriétés de la Page: la Différence entre Artbox, BleedBox, CropBox, MediaBox, TrimBox et la Propriété Rect**
+### Comprendre les propriétés de page : la différence entre Artbox, BleedBox, CropBox, MediaBox, TrimBox et la propriété Rect
-- **Boîte des médias**: La boîte des médias est la plus grande boîte de la page. Elle correspond à la taille de la page (par exemple A4, A5, Lettre US, etc.) sélectionnée lorsque le document a été imprimé au format PostScript ou PDF. En d'autres termes, la boîte des médias détermine la taille physique du support sur lequel le document PDF est affiché ou imprimé.
-- **Boîte de fond perdu**: Si le document a du fond perdu, le PDF aura également une boîte de fond perdu.
- Bleed est la quantité de couleur (ou d'œuvre) qui s'étend au-delà du bord d'une page. Il est utilisé pour s'assurer que lorsque le document est imprimé et coupé à la taille ("coupé"), l'encre ira jusqu'au bord de la page. Même si la page est mal coupée - légèrement décalée par rapport aux marques de coupe - aucun bord blanc n'apparaîtra sur la page.
-- **Trim box**: La boîte de coupe indique la taille finale d'un document après impression et découpe.
-- **Art box**: La boîte d'art est la boîte dessinée autour du contenu réel des pages de vos documents. Cette boîte de page est utilisée lors de l'importation de documents PDF dans d'autres applications.
-- **Crop box**: La boîte de découpe est la taille "page" à laquelle votre document PDF est affiché dans Adobe Acrobat. En vue normale, seuls les contenus de la boîte de découpe sont affichés dans Adobe Acrobat.
- Pour des descriptions détaillées de ces propriétés, lisez la spécification Adobe.Pdf, en particulier 10.10.1 Page Boundaries.
-- **Page.Rect**: l'intersection (rectangle généralement visible) du MediaBox et du DropBox. La figure ci-dessous illustre ces propriétés.
+- **Media box**: La media box est la plus grande boîte de page. Elle correspond à la taille de la page (par exemple A4, A5, US Letter, etc.) sélectionnée lorsque le document a été imprimé en PostScript ou PDF. En d’autres termes, la media box détermine la taille physique du support sur lequel le document PDF est affiché ou imprimé.
+- **Bleed box**: Si le document possède une marge de coupe, le PDF aura également une bleed box. La marge de coupe (bleed) est la quantité de couleur (ou d’illustration) qui dépasse le bord d’une page. Elle est utilisée pour s’assurer que lorsque le document est imprimé et découpé à la taille (« trimmed »), l’encre ira jusqu’au bord de la page. Même si la page est mal découpée - coupée légèrement hors des marques de coupe - aucune bordure blanche n’apparaîtra sur la page.
+- **Trim box** : La trim box indique la taille finale d’un document après impression et rognage.
+- **Art box** : La art box est la boîte dessinée autour du contenu réel des pages de vos documents. Cette boîte de page est utilisée lors de l’importation de documents PDF dans d’autres applications.
+- **Crop box** : La crop box est la taille « page » à laquelle votre document PDF est affiché dans Adobe Acrobat. En affichage normal, seul le contenu de la crop box est affiché dans Adobe Acrobat.
+ Pour des descriptions détaillées de ces propriétés, consultez la spécification Adobe.Pdf, en particulier la section 10.10.1 Limites de page.
+-- **Page.Rect** : l'intersection (rectangle généralement visible) de la MediaBox et de la DropBox (`Page.rect`). Voir le [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) type pour les propriétés du rectangle. L'image ci-dessous illustre ces propriétés.
Pour plus de détails, veuillez visiter [cette page](http://www.enfocus.com/manuals/ReferenceGuide/PP/10/enUS/en-us/concept/c_aa1095731.html).
-### **Accéder aux propriétés de la page**
+### Accès aux propriétés de la page
-La classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) fournit toutes les propriétés liées à une page PDF particulière. Toutes les pages des fichiers PDF sont contenues dans la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) de l'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+Le [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) la classe fournit toutes les propriétés liées à une page PDF particulière. Toutes les pages des fichiers PDF sont contenues dans le de le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) de l'objet [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) collection.
-À partir de là, il est possible d'accéder à des objets Page individuels en utilisant leur index, ou de parcourir la collection en utilisant une boucle foreach pour obtenir toutes les pages. Une fois qu'une page individuelle est accédée, nous pouvons obtenir ses propriétés. Le snippet de code suivant montre comment obtenir les propriétés de la page.
+De là, il est possible d'accéder soit à l'individu `Page` objets en utilisant leur indice, ou parcourir la collection pour obtenir toutes les pages. Une fois qu'une page individuelle est accédée, nous pouvons obtenir ses propriétés. Le fragment de code suivant montre comment obtenir les propriétés de la page (le `Page` API).
```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
- # Obtenir une page particulière
+import sys
+import aspose.pdf as ap
+from os import path
+
+def get_page_properties(input_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+ # Get particular page
page = document.pages[1]
- # Obtenir les propriétés de la page
- print(
- "ArtBox : Hauteur={},Largeur={},LLX={},LLY={},URX={},URY={}".format(
- page.art_box.height,
- page.art_box.width,
- page.art_box.llx,
- page.art_box.lly,
- page.art_box.urx,
- page.art_box.ury,
- )
- )
- print(
- "BleedBox : Hauteur={},Largeur={},LLX={},LLY={},URX={},URY={}".format(
- page.bleed_box.height,
- page.bleed_box.width,
- page.bleed_box.llx,
- page.bleed_box.lly,
- page.bleed_box.urx,
- page.bleed_box.ury,
- )
- )
- print(
- "CropBox : Hauteur={},Largeur={},LLX={},LLY={},URX={},URY={}".format(
- page.crop_box.height,
- page.crop_box.width,
- page.crop_box.llx,
- page.crop_box.lly,
- page.crop_box.urx,
- page.crop_box.ury,
- )
- )
- print(
- "MediaBox : Hauteur={},Largeur={},LLX={},LLY={},URX={},URY={}".format(
- page.media_box.height,
- page.media_box.width,
- page.media_box.llx,
- page.media_box.lly,
- page.media_box.urx,
- page.media_box.ury,
- )
- )
- print(
- "TrimBox : Hauteur={},Largeur={},LLX={},LLY={},URX={},URY={}".format(
- page.trim_box.height,
- page.trim_box.width,
- page.trim_box.llx,
- page.trim_box.lly,
- page.trim_box.urx,
- page.trim_box.ury,
- )
- )
- print(
- "Rect : Hauteur={},Largeur={},LLX={},LLY={},URX={},URY={}".format(
- page.rect.height,
- page.rect.width,
- page.rect.llx,
- page.rect.lly,
- page.rect.urx,
- page.rect.ury,
- )
- )
- print("Numéro de page :", page.number)
- print("Rotation :", page.rotate)
-```
-## Obtenir une Page Particulière du Fichier PDF
-
-Aspose.PDF pour Python vous permet de [diviser un PDF en pages individuelles](/pdf/fr/python-net/split-pdf-document/) et de les enregistrer sous forme de fichiers PDF. Obtenir une page spécifiée dans un fichier PDF et l'enregistrer en tant que nouveau PDF est une opération très similaire : ouvrez le document source, accédez à la page, créez un nouveau document et ajoutez la page à celui-ci.
-
-L'objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document) de [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection) contient les pages du fichier PDF. Pour obtenir une page particulière de cette collection :
-
-1. Spécifiez l'index de la page en utilisant la propriété Pages.
-2. Créez un nouvel objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-3. Ajoutez l'objet [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) au nouvel objet Document.
-4. Enregistrez la sortie en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-
-Le fragment de code suivant montre comment obtenir une page particulière d'un fichier PDF et l'enregistrer en tant que nouveau fichier.
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
+ # Get page properties
+ boxes = {
+ "ArtBox": page.art_box,
+ "BleedBox": page.bleed_box,
+ "CropBox": page.crop_box,
+ "MediaBox": page.media_box,
+ "TrimBox": page.trim_box,
+ "Rect": page.rect,
+ }
- # Obtenir une page particulière
- page = document.pages[2]
+ # Print box properties
+ for box_name, box in boxes.items():
+ print(
+ f"{box_name} : Height={box.height},Width={box.width},LLX={box.llx},LLY={box.lly},URX={box.urx},URY={box.ury}"
+ )
- # Enregistrer la page en tant que fichier PDF
- new_document = ap.Document()
- new_document.pages.add(page)
- new_document.save(output_pdf)
+ # Print other page properties
+ print(f"Page Number : {page.number}")
+ print(f"Rotate : {page.rotate}")
```
## Déterminer la couleur de la page
-La classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) fournit les propriétés relatives à une page particulière dans un document PDF, y compris le type de couleur - RGB, noir et blanc, niveaux de gris ou indéfinie - utilisé par la page.
+Le [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) La classe fournit les propriétés liées à une page particulière d'un document PDF, y compris le type de couleur - RVB, noir et blanc, niveaux de gris ou indéfini - utilisé par la page.
-Toutes les pages des fichiers PDF sont contenues dans la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
- Le [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) propriété spécifie la couleur des éléments sur la page. Pour obtenir ou déterminer l'information de couleur pour une page PDF particulière, utilisez la propriété [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) de l'objet [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+Toutes les pages des fichiers PDF sont contenues par le [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) collection. Le [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) la propriété spécifie la couleur des éléments sur la page. Pour obtenir ou déterminer les informations de couleur pour une page PDF particulière, utilisez le [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) de l'objet [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) propriété.
-Le code ci-dessous montre comment parcourir chaque page d'un fichier PDF pour obtenir l'information de couleur.
+L'extrait de code suivant montre comment parcourir chaque page d'un fichier PDF pour obtenir des informations sur les couleurs.
```python
-
- import aspose.pdf as ap
-
- # Ouvrir le fichier PDF source
- document = ap.Document(input_pdf)
- # Parcourir toutes les pages du fichier PDF
- for page_n in range(0, len(document.pages)):
- page_number = page_n + 1
- # Obtenir l'information du type de couleur pour une page PDF particulière
+import sys
+import aspose.pdf as ap
+from os import path
+
+def get_page_color_type(input_file_name):
+ # Open source PDF file
+ document = ap.Document(input_file_name)
+ # Iterate through all the page of PDF file
+ for page_number in range(1, len(document.pages) + 1):
+ # Get the color type information for particular PDF page
page_color_type = document.pages[page_number].color_type
- if page_color_type == ap.ColorType.BLACK_AND_WHITE:
- print("Page # " + str(page_number) + " est en Noir et blanc.")
-
- if page_color_type == ap.ColorType.GRAYSCALE:
- print("Page # " + str(page_number) + " est en Échelle de gris.")
-
- if page_color_type == ap.ColorType.RGB:
- print("Page # " + str(page_number) + " est en RGB.")
-
- if page_color_type == ap.ColorType.UNDEFINED:
- print("Page # " + str(page_number) + " La couleur est indéfinie.")
+ color_type_map = {
+ ap.ColorType.BLACK_AND_WHITE: "Black and white",
+ ap.ColorType.GRAYSCALE: "Gray Scale",
+ ap.ColorType.RGB: "RGB",
+ ap.ColorType.UNDEFINED: "undefined",
+ }
+ color_description = color_type_map.get(page_color_type, "unknown")
+ print(f"Page # {page_number} is {color_description}.")
```
-
\ No newline at end of file
+## Sujets de page associés
+
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Modifier la taille de la page PDF en Python](/pdf/fr/python-net/change-page-size/)
+- [Recadrer les pages PDF en Python](/pdf/fr/python-net/crop-pages/)
+- [Faire pivoter les pages PDF en Python](/pdf/fr/python-net/rotate-pages/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/move-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/move-pages/_index.md
index e91d39c1b5..f32bf3264d 100644
--- a/fr/python-net/advanced-operations/working-with-pages/move-pages/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/move-pages/_index.md
@@ -1,226 +1,110 @@
---
-title: Déplacer des pages PDF par programmation via Python
-linktitle: Déplacer des pages PDF
+title: Déplacer les pages PDF en Python
+linktitle: Déplacement des pages PDF
type: docs
weight: 100
url: /fr/python-net/move-pages/
-description: Essayez de déplacer des pages à l'emplacement souhaité ou à la fin d'un fichier PDF à l'aide de Aspose.PDF pour Python via .NET.
-lastmod: "2023-04-17"
+description: Apprenez comment déplacer des pages PDF au sein d'un document ou entre des documents en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Déplacer les pages PDF entre des documents en Python
+Abstract: Cet article explique comment déplacer des pages dans les PDF en utilisant Aspose.PDF for Python via .NET. Découvrez comment déplacer une seule page ou plusieurs pages vers un autre document, et comment repositionner une page dans le même PDF en utilisant les API Document et PageCollection.
---
-
-
## Déplacer une page d'un document PDF à un autre
-Ce sujet explique comment déplacer une page d'un document PDF vers la fin d'un autre document en utilisant Python.
-Pour déplacer une page, nous devons :
+Aspose.PDF for Python vous permet de déplacer une page (pas seulement de la copier) d'un PDF à un autre. Il supprime la page sélectionnée du document original, puis l'ajoute à un nouveau fichier PDF.
-1. Créer un objet de classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF source.
-1. Créer un objet de classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF de destination.
-1. Obtenir la page de la collection de [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) page au document de destination.
-1. Sauvegarder le PDF de sortie en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-1. [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) page dans le document source.
+Considérez cela comme couper une page d'un livre et la coller dans un autre — la page n'existe plus dans le fichier original après le déplacement.
-1. Enregistrez le PDF source en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Ouvrez le document PDF source en utilisant le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Sélectionnez une page spécifique à déplacer (dans ce cas, la page 2) — cela fait référence à un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Créez un nouveau document PDF (instanciez un autre [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)).
+1. Ajoutez la page sélectionnée au nouveau document PDF en utilisant le document de destination [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (par exemple, `another_document.pages.add(page)`).
+1. Supprimez la page du document original via son [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (par exemple, `document.pages.delete(index)`).
+1. Enregistrez les deux documents.
-Le code suivant vous montre comment déplacer une page.
+L'extrait de code suivant vous montre comment déplacer une page.
```python
-
- import aspose.pdf as ap
-
- srcDocument = ap.Document(src_file_name)
- dstDocument = ap.Document(dst_File_name)
- page = srcDocument.pages[2]
- dstDocument.pages.add(page)
- # Enregistrer le fichier de sortie
- dstDocument.save(dst_File_name_new)
- srcDocument.pages.delete(2)
- srcDocument.save(src_file_name_new)
+import aspose.pdf as ap
+
+def move_page_from_one_document_to_another(
+ input_file_name: str, output_file_name: str
+) -> None:
+
+ document = ap.Document(input_file_name)
+ page = document.pages[2]
+ another_document = ap.Document()
+ another_document.pages.add(page)
+ document.pages.delete(2)
+ document.save(input_file_name.replace(".pdf", "_new.pdf"))
+ another_document.save(output_file_name)
```
-## Déplacement d'un ensemble de pages d'un document PDF à un autre
+## Déplacer plusieurs pages d’un document PDF à un autre
-1. Créez un objet de classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF source.
-1. Créez un objet de classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF de destination.
-1. Définissez un tableau avec les numéros de pages à déplacer.
-1. Exécutez une boucle à travers le tableau :
+Contrairement à la copie, cette opération transfère les pages sélectionnées — les supprimant du fichier source et les enregistrant dans un nouveau PDF.
-1. Obtenez la page de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) page au document de destination.
-1. Enregistrez le PDF de sortie en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-1. [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) page dans le document source en utilisant un tableau.
-1. Enregistrez le PDF source en utilisant la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Créer un nouveau document de destination vide (`Document`).
+1. Sélectionner plusieurs pages (dans ce cas, les pages 1 et 3) du document source [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Parcourez les pages sélectionnées et ajoutez chacune au document de destination [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Enregistrez le document de destination contenant les pages déplacées.
+1. Supprimez les pages déplacées du document source en utilisant son [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Enregistrez le document source modifié avec un nouveau nom de fichier pour conserver les deux versions.
-L'extrait de code suivant vous montre comment insérer une page vide à la fin d'un fichier PDF.
+L'extrait de code suivant montre comment déplacer plusieurs pages.
```python
-
- import aspose.pdf as ap
-
- srcDocument = ap.Document(input_pdf)
- dstDocument = ap.Document()
- pages = [1, 3]
+import aspose.pdf as ap
+
+def move_multiple_pages_from_one_document_to_another(
+ input_file_name: str, output_file_name: str
+) -> None:
+ src_document = ap.Document(input_file_name)
+ dst_document = ap.Document()
+ pages = [1, 2]
for page_index in pages:
- page = srcDocument.pages[page_index]
- dstDocument.pages.add(page)
- # Enregistrez les fichiers de sortie
- dstDocument.save(output_pdf_1)
- srcDocument.pages.delete(pages)
- srcDocument.save(output_pdf_2)
+ page = src_document.pages[page_index]
+ dst_document.pages.add(page)
+ # Save output files
+ dst_document.save(output_file_name)
+ src_document.pages.delete(pages)
+ src_document.save(input_file_name.replace(".pdf", "_new.pdf"))
```
+## Déplacer une page vers un nouvel emplacement dans le même document PDF
-## Déplacer une Page à un nouvel emplacement dans le document PDF actuel
+Il montre comment déplacer une page spécifique vers une position différente au sein du même document — un besoin courant lors de la réorganisation ou de la modification de mises en page PDF.
-1. Créez un objet de classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) avec le fichier PDF source.
-1. Obtenez la Page de la collection [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. Ajoutez la page avec la méthode [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) au nouvel emplacement (par exemple à la fin).
-1. Supprimez la page à l'emplacement précédent avec la méthode [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods).
-1. Enregistrez le fichier PDF de sortie à l'aide de la méthode [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Chargez le document PDF d'entrée en utilisant le [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Sélectionnez la page que vous souhaitez déplacer (page 2) — ceci est un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Ajoutez-le à la fin du document en utilisant le document [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Supprimez la page originale de son emplacement précédent via le [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Enregistrez le document modifié sous un nouveau fichier.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- srcDocument = ap.Document(input_pdf)
+def move_page_in_new_location_in_same_document(
+ input_file_name: str, output_file_name: str
+) -> None:
+ src_document = ap.Document(input_file_name)
- page = srcDocument.pages[2]
- srcDocument.pages.add(page)
- srcDocument.pages.delete(2)
+ page = src_document.pages[2]
+ src_document.pages.add(page)
+ src_document.pages.delete(2)
- # Enregistrer le fichier de sortie
- srcDocument.save(output_pdf)
+ # Save output file
+ src_document.save(output_file_name)
```
-
\ No newline at end of file
+## Sujets de page associés
+
+- [Travailler avec des pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Ajouter des pages PDF en Python](/pdf/fr/python-net/add-pages/)
+- [Supprimer les pages PDF en Python](/pdf/fr/python-net/delete-pages/)
+- [Extraire des pages PDF en Python](/pdf/fr/python-net/extract-pages/)
diff --git a/fr/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md b/fr/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md
index 4240194623..6b9067aa9c 100644
--- a/fr/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md
@@ -1,175 +1,44 @@
---
-title: Faire pivoter les pages PDF à l'aide de Python
+title: Faire pivoter les pages PDF en Python
linktitle: Faire pivoter les pages PDF
type: docs
weight: 110
url: /fr/python-net/rotate-pages/
-description: Ce sujet décrit comment faire pivoter l'orientation de la page dans un fichier PDF existant de manière programmatique avec Python.
-lastmod: "2023-04-17"
+description: Apprenez comment faire pivoter les pages PDF et changer l’orientation des pages en Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment faire pivoter les pages dans un PDF avec Python
+Abstract: Cet article propose un guide sur la façon de mettre à jour ou de modifier l’orientation des pages d’un fichier PDF existant de manière programmatique avec Python. En utilisant Aspose.PDF for Python via .NET, les utilisateurs peuvent facilement basculer entre les orientations paysage et portrait en ajustant les propriétés MediaBox de la page. L’article comprend un extrait de code Python montrant comment parcourir les pages d’un document PDF, modifier leurs dimensions et positions MediaBox, et ajuster le CropBox si nécessaire. De plus, il explique comment définir l’angle de rotation des pages à l’aide de la méthode ‘rotate’ pour obtenir l’orientation souhaitée. Le processus se termine par l’enregistrement du fichier PDF mis à jour.
---
-
+Ce sujet décrit comment mettre à jour ou modifier l’orientation des pages d’un fichier PDF existant de manière programmatique avec Python.
-Ce sujet décrit comment mettre à jour ou changer l'orientation des pages dans un fichier PDF existant de manière programmatique avec Python.
+Utilisez cette page lorsque vous devez basculer les pages entre l'orientation portrait et paysage ou appliquer des angles de rotation au contenu PDF existant.
-## Changer l'Orientation de la Page
+## Modifier l'orientation de la page
-Aspose.PDF pour Python via .NET supporte de grandes fonctionnalités comme le changement de l'orientation de la page de paysage à portrait et vice versa. Pour changer l'orientation de la page, définissez le MediaBox de la page en utilisant le code ci-dessous. Vous pouvez également changer l'orientation de la page en définissant l'angle de rotation en utilisant la méthode 'rotate'.
+Cette fonction fait pivoter chaque page d'un PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) de 90 degrés dans le sens des aiguilles d'une montre en utilisant Aspose.PDF for Python.
+Il est utile pour corriger les problèmes d'orientation des pages, comme les documents numérisés qui sont de travers. Le PDF original reste inchangé, et la version pivotée est enregistrée comme un nouveau fichier.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
-
- doc = ap.Document(input_pdf)
- for page in doc.pages:
- r = page.media_box
- newHeight = r.width
- newWidth = r.height
- newLLX = r.llx
- # Nous devons déplacer la page vers le haut afin de compenser le changement de taille de la page
- # (le bord inférieur de la page est 0,0 et l'information est généralement placée à partir du
- # haut de la page. C'est pourquoi nous déplaçons le bord inférieur vers le haut pour compenser la différence entre
- # l'ancienne et la nouvelle hauteur.
- newLLY = r.lly + (r.height - newHeight)
- page.media_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
- # Parfois, nous devons également définir CropBox (s'il a été défini dans le fichier original)
- page.crop_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
-
- # Définir l'angle de rotation de la page
+def rotate_page(infile, outfile):
+ document = ap.Document(infile)
+ for page in document.pages:
page.rotate = ap.Rotation.ON90
- # Enregistrer le fichier de sortie
- doc.save(output_pdf)
+ document.save(outfile)
```
+## Sujets de page associés
-
\ No newline at end of file
+- [Travailler avec les pages PDF en Python](/pdf/fr/python-net/working-with-pages/)
+- [Modifier la taille des pages PDF en Python](/pdf/fr/python-net/change-page-size/)
+- [Recadrer les pages PDF en Python](/pdf/fr/python-net/crop-pages/)
+- [Obtenir et définir les propriétés de page PDF en Python](/pdf/fr/python-net/get-and-set-page-properties/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/stamping/_index.md b/fr/python-net/advanced-operations/working-with-pages/stamping/_index.md
index a6d12175da..9afcb8f31c 100644
--- a/fr/python-net/advanced-operations/working-with-pages/stamping/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/stamping/_index.md
@@ -1,86 +1,29 @@
---
-title: Tamponnage avec Aspose.PDF en utilisant Python
+title: Tamponner les pages PDF en Python
linktitle: Tamponnage
type: docs
weight: 120
url: /fr/python-net/stamping/
-description: Cette section décrit comment ajouter des tampons d'image et des tampons de texte à une page PDF via Python.
-lastmod: "2023-04-17"
+description: Découvrez comment ajouter des numéros de page, des tampons de page, des tampons d'image et des tampons de texte aux pages PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des tampons à un PDF avec Python
+Abstract: Cet article traite du concept et de l'application des tampons dans les documents PDF, qui sont semblables à des tampons en caoutchouc sur des documents papier, offrant des informations supplémentaires et renforçant la sécurité du document. Il met en avant l'utilisation de **Aspose.PDF for Python via .NET** pour ajouter des tampons d'image ou de texte aux PDF. L'article inclut des conseils sur l'ajout de tampons d'image, le contrôle de la qualité des images et l'utilisation des tampons d'image comme arrière-plan, ainsi que des instructions pour ajouter des tampons de texte, définir l'alignement et remplir le texte tracé dans un PDF. Les lecteurs peuvent explorer deux sections pour des instructions détaillées - "Ajouter des tampons d'image dans la page PDF" et "Ajouter des tampons de texte dans le fichier PDF".
---
-
+Un tampon dans un document PDF est analogue à l'application d'un tampon en caoutchouc sur un document papier.
+Le tampon dans le fichier PDF fournit des informations supplémentaires pour le fichier PDF, comme protéger le fichier PDF contre une utilisation par d'autres et confirmer la sécurité du contenu du fichier PDF. **Aspose.PDF for Python via .NET** permet d'ajouter un tampon d'image ou de texte dans votre document PDF.
-Un tampon dans un document PDF est analogue à l'application d'un tampon en caoutchouc sur un document papier.
-Le tampon dans le fichier PDF donne des informations supplémentaires pour le fichier PDF, telles que la protection du fichier PDF afin qu'il ne soit pas utilisé par d'autres et la confirmation de la sécurité du contenu du fichier PDF. **Aspose.PDF pour Python via .NET** permet d'ajouter une image ou un tampon de texte dans votre document PDF.
+Utilisez cette section lorsque vous devez ajouter des superpositions telles que des numéros de page, des filigranes, des logos ou des repères de texte aux pages PDF existantes.
+
+Consultez les sections suivantes pour apprendre comment ajouter un tampon avec Python :
+
+- [Ajout de tampons d'image dans la page PDF](/pdf/fr/python-net/image-stamps-in-pdf-page/) - ajouter un tampon d'image, contrôler la qualité de l'image, tampon d'image en tant qu'arrière-plan de votre fichier PDF.
+- [Ajout de tampons de texte dans le fichier PDF](/pdf/fr/python-net/text-stamps-in-the-pdf-file/) - ajouter un tampon texte, définir l'alignement pour l'objet TextStamp, remplir le texte du trait comme tampon dans le fichier PDF.
+- [Ajout de tampons de page dans le fichier PDF](/pdf/fr/python-net/page-stamps-in-the-pdf-file/) - ajouter des tampons de page pour superposer des pages ou des sections entières, utile pour le filigrane, la gestion des versions de documents ou l'ajout d'arrières-plans personnalisés aux fichiers PDF.
+- [Ajout de tampons de numéros de page dans le fichier PDF](/pdf/fr/python-net/add-page-number/) - ajouter des numéros de page à votre document PDF, personnaliser leur apparence et contrôler leur placement.
-Consultez les sections suivantes pour apprendre comment ajouter un tampon avec Python :
-- [Ajouter des tampons d'image dans la page PDF](/pdf/fr/python-net/image-stamps-in-pdf-page/) - ajouter un tampon d'image, contrôler la qualité de l'image, tampon d'image en tant que fond de votre fichier PDF.
-- [Ajouter des tampons de texte dans le fichier PDF](/pdf/fr/python-net/text-stamps-in-the-pdf-file/) - ajouter un tampon de texte, définir l'alignement pour l'objet TextStamp, remplir le texte du contour en tant que tampon dans le fichier PDF.
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-number/_index.md b/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-number/_index.md
new file mode 100644
index 0000000000..decec386a2
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-number/_index.md
@@ -0,0 +1,118 @@
+---
+title: Ajouter des numéros de page à PDF en Python
+linktitle: Ajout de numéro de page
+type: docs
+weight: 30
+url: /fr/python-net/add-page-number/
+description: Apprenez comment ajouter des tampons de numéro de page aux documents PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter un numéro de page à un PDF en utilisant Python
+Abstract: Cet article traite de l'importance d'ajouter des numéros de page aux documents pour faciliter la navigation et présente la bibliothèque Aspose.PDF for Python via .NET comme outil permettant d'obtenir cela dans les fichiers PDF. La bibliothèque utilise la classe PageNumberStamp, qui offre des propriétés pour personnaliser le tampon de numéro de page, notamment le format, les marges, les alignements et le numéro de départ. Le processus consiste à créer un objet Document et un objet PageNumberStamp, à configurer les propriétés souhaitées, puis à appliquer le tampon aux pages PDF à l'aide de la méthode add_stamp(). L'article fournit un exemple de code Python montrant comment configurer et appliquer des tampons de numéro de page avec des attributs de police personnalisables.
+---
+
+Tous les documents doivent comporter des numéros de page. Le numéro de page facilite la localisation des différentes parties du document par le lecteur.
+
+**Aspose.PDF for Python via .NET** vous permet d'ajouter des numéros de page avec [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/).
+
+## Ajout du tampon de numéro de page à un PDF
+
+Ajoutez des tampons de numéro de page dynamiques à un PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) en utilisant Aspose.PDF for Python. Le [`PageNumberStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) l'objet vous permet d'afficher automatiquement le numéro de page actuel ainsi que le nombre total de pages. L'exemple montre comment créer un tampon de numéro de page, personnaliser son apparence (police, taille, style, couleur, alignement et marges) en utilisant [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/), et l'appliquer à un(e) spécifique [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) dans le PDF via le [`Page.add_stamp()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) méthode. Les valeurs d'alignement proviennent du [`HorizontalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/horizontalalignment/) enum, et couleur/police/style sont disponibles via [`Color`](https://reference.aspose.com/pdf/python-net/aspose.pdf/color/) et [`FontStyles`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/fontstyles/) (polices découvertes via [`FontRepository.find_font()`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/fontrepository/#methods)). Cette fonctionnalité est utile pour générer des documents professionnels, numérotés, et automatiser la pagination dans les flux de travail PDF.
+
+1. Ouvrez le document PDF.
+1. Créez un tampon de numéro de page.
+1. Définissez les propriétés du tampon.
+1. Personnalisez le style du texte.
+1. Appliquez le tampon à une page.
+1. Enregistrez le PDF modifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_page_num_stamp(input_file_name, output_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+
+ # Create page number stamp
+ page_number_stamp = ap.PageNumberStamp()
+ # Whether the stamp is background
+ page_number_stamp.background = False
+ page_number_stamp.format = "Page # of " + str(len(document.pages))
+ page_number_stamp.bottom_margin = 10
+ page_number_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
+ page_number_stamp.starting_number = 1
+ # Set text properties
+ page_number_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
+ page_number_stamp.text_state.font_size = 14.0
+ page_number_stamp.text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
+ page_number_stamp.text_state.foreground_color = ap.Color.blue_violet
+
+ # Add stamp to particular page
+ document.pages[1].add_stamp(page_number_stamp)
+
+ # Save output document
+ document.save(output_file_name)
+```
+
+## Ajout de numéros de page en chiffres romains à un PDF
+
+Ajoutez des numéros de page au format chiffre romain à toutes les pages d'un document PDF. Les numéros de page sont ajoutés sous forme de tampons en utilisant [`PageNumberStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/), avec une police, une taille, un style, une couleur et un alignement personnalisables. Utilisez le [`NumberingStyle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/numberingstyle/) énumération pour choisir les chiffres romains ou d'autres systèmes de numérotation. La numérotation peut également commencer à partir de n'importe quelle valeur spécifiée.
+
+1. Ouvrez le document PDF.
+1. Créez un tampon de numéro de page.
+1. Configurer les propriétés du tampon.
+1. Définir l'apparence du texte.
+1. Appliquer le tampon à toutes les pages.
+1. Enregistrez le PDF modifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_page_num_stamp_roman(input_file_name, output_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+
+ # Create page number stamp
+ page_number_stamp = ap.PageNumberStamp()
+ # Whether the stamp is background
+ page_number_stamp.background = False
+ page_number_stamp.bottom_margin = 10
+ page_number_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
+ page_number_stamp.starting_number = 42
+ page_number_stamp.numbering_style = ap.NumberingStyle.NUMERALS_ROMAN_UPPERCASE
+
+ # Set text properties
+ page_number_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
+ page_number_stamp.text_state.font_size = 14.0
+ page_number_stamp.text_state.font_style = ap.text.FontStyles.BOLD
+ page_number_stamp.text_state.foreground_color = ap.Color.blue_violet
+
+ # Add stamp to particular page
+ for page in document.pages:
+ page.add_stamp(page_number_stamp)
+
+ # Save output document
+ document.save(output_file_name)
+```
+
+## Exemple en direct
+
+[Ajouter des numéros de page PDF](https://products.aspose.app/pdf/page-number) est une application web gratuite en ligne qui vous permet d'examiner le fonctionnement de l'ajout de la fonctionnalité de numérotation des pages.
+
+[](https://products.aspose.app/pdf/page-number)
+
+## Sujets liés à l'estampage
+
+- [Tamponner les pages PDF en Python](/pdf/fr/python-net/stamping/)
+- [Ajouter des tampons de page à un PDF en Python](/pdf/fr/python-net/page-stamps-in-the-pdf-file/)
+- [Ajouter des tampons d'image à un PDF en Python](/pdf/fr/python-net/image-stamps-in-pdf-page/)
+- [Ajouter des tampons de texte à un PDF en Python](/pdf/fr/python-net/text-stamps-in-the-pdf-file/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-number/page_number.png b/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-number/page_number.png
new file mode 100644
index 0000000000..d718abd250
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-number/page_number.png differ
diff --git a/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-stamp/_index.md b/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-stamp/_index.md
new file mode 100644
index 0000000000..f59feaa41b
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-pages/stamping/add-page-stamp/_index.md
@@ -0,0 +1,48 @@
+---
+title: Ajouter des tampons de page à PDF en Python
+linktitle: Ajout de tampons de page
+type: docs
+weight: 30
+url: /fr/python-net/page-stamps-in-the-pdf-file/
+description: Apprenez à ajouter des tampons de page PDF en tant que superpositions ou arrière-plans en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des tampons de page à PDF en utilisant Python
+Abstract: Cet article explique comment ajouter un tampon de page à un document PDF à l'aide d'Aspose.PDF pour Python. Un tampon de page vous permet de superposer ou de placer en arrière‑plan du contenu — tel que des logos, filigranes ou annotations — sur une page spécifique d'un PDF. L'exemple montre comment ouvrir un PDF existant, créer un objet PdfPageStamp à partir d'une autre page PDF, le configurer comme tampon d'arrière‑plan, et l'appliquer à une page particulière. Le PDF tamponné est ensuite enregistré en tant que nouveau document. Cette technique est utile pour le branding, le filigrane ou la mise en évidence de contenu au niveau de la page dans des workflows PDF automatisés.
+---
+
+Aspose.PDF for Python via .NET montre comment appliquer un tampon de page (filigrane ou superposition) à une page spécifique dans un PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Le tampon de page peut être une page PDF existante utilisée comme couche d'arrière-plan ou de premier plan (voir [`PdfPageStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf.pdfpagestamp/)). Ceci est utile pour ajouter des logos, des filigranes ou d'autres contenus de page répétitifs.
+
+1. Ouvrez le document PDF en utilisant `ap.Document()` (voir [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)).
+1. Créer un `PdfPageStamp` objet utilisant la page PDF ou le fichier à utiliser comme tampon (voir [`PdfPageStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf.pdfpagestamp/)).
+1. Définissez les propriétés du tampon, par ex., `background = True` le placer derrière le contenu.
+1. Ajouter le tampon à une page spécifique en utilisant `document.pages[page_number].add_stamp(page_stamp)` (voir [`Page.add_stamp()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) et [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/)).
+1. Enregistrez le PDF modifié dans le fichier de sortie spécifié en utilisant [`Document.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_page_stamp(input_file_name, page_stamp_name, output_file_name):
+ # Open PDF document
+ document = ap.Document(input_file_name)
+
+ page_stamp = ap.PdfPageStamp(page_stamp_name, 1)
+ page_stamp.background = True
+
+ # Add stamp to particular page
+ document.pages[1].add_stamp(page_stamp)
+
+ document.save(output_file_name)
+```
+
+## Sujets liés à l'estampage
+
+- [Tamponner les pages PDF en Python](/pdf/fr/python-net/stamping/)
+- [Ajouter des numéros de page à un PDF en Python](/pdf/fr/python-net/add-page-number/)
+- [Ajouter des tampons d'image à un PDF en Python](/pdf/fr/python-net/image-stamps-in-pdf-page/)
+- [Ajouter des tampons de texte à un PDF en Python](/pdf/fr/python-net/text-stamps-in-the-pdf-file/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md b/fr/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md
index 5d6de691e1..02daa4241e 100644
--- a/fr/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md
@@ -1,101 +1,38 @@
---
-title: Ajouter des tampons d'image dans un PDF en utilisant Python
-linktitle: Tampons d'image dans un fichier PDF
+title: Ajouter des tampons d'image au PDF en Python
+linktitle: Tampons d'image dans le fichier PDF
type: docs
weight: 10
url: /fr/python-net/image-stamps-in-pdf-page/
-description: Ajoutez le tampon d'image dans votre document PDF en utilisant la classe ImageStamp avec la bibliothèque Aspose.PDF pour Python.
-lastmod: "2023-04-17"
+description: Apprenez comment ajouter des tampons d'image aux pages PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des tampons d'image dans le PDF en utilisant Python
+Abstract: Cet article fournit un guide complet sur l'ajout de tampons d'image aux fichiers PDF à l'aide de la bibliothèque Aspose.PDF pour Python. Il détaille l'utilisation de la classe `ImageStamp`, qui permet de personnaliser les tampons basés sur des images, y compris les propriétés telles que la hauteur, la largeur, l'opacité et la rotation. Le processus consiste à créer un objet `Document` et un objet `ImageStamp` avec les propriétés souhaitées, puis à ajouter le tampon à une page spécifique du PDF en utilisant la méthode `add_stamp()`. L'article inclut des extraits de code Python montrant comment appliquer un tampon d'image à un PDF et contrôler sa qualité à l'aide de la propriété `quality`, qui ajuste la qualité de l'image en pourcentage. De plus, l'article explique comment utiliser les tampons d'image comme arrière-plans dans des boîtes flottantes avec la classe `FloatingBox`, en fournissant un autre exemple de code pour montrer comment cela peut être implémenté. Ce guide constitue une ressource utile pour les développeurs souhaitant enrichir les PDFs avec des tampons d'image en utilisant Aspose.PDF.
---
-
-
-
-## Ajouter un Tampon d'Image dans un Fichier PDF
-
-Vous pouvez utiliser la classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) pour ajouter un tampon d'image à un fichier PDF. La classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) fournit les propriétés nécessaires pour créer un tampon basé sur une image, telles que la hauteur, la largeur, l'opacité, etc.
-
-Pour ajouter un tampon d'image :
-
-1. Créez un objet Document et un objet ImageStamp en utilisant les propriétés requises.
-1. Appelez la méthode [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) de la classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) pour ajouter le tampon au PDF.
-
-Le code suivant montre comment ajouter un tampon d'image dans le fichier PDF.
-```python
+## Ajout du tampon d'image dans le fichier PDF
+
+Vous pouvez utiliser le [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) classe pour ajouter un tampon d'image à un fichier PDF. Le [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) La classe fournit les propriétés nécessaires pour créer un tampon basé sur une image, telles que la hauteur, la largeur, l'opacité, etc. Le tampon peut être positionné, redimensionné, pivoté et rendu partiellement transparent, permettant le filigrane, la marque ou les annotations.
- import aspose.pdf as ap
+Le morceau de code suivant montre comment ajouter un tampon d'image dans le fichier PDF.
- # Ouvrir le document
- document = ap.Document(input_pdf)
+1. Chargez le PDF en utilisant 'ap.Document()'.
+1. Créez un tampon d'image avec 'ImageStamp()'.
+1. Configurer les propriétés du tampon.
+1. Ajoutez le tampon à la page cible.
+1. Enregistrez le PDF modifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
- # Créer un tampon d'image
+def add_image_stamp(infile, input_image_file, outfile):
+ document = ap.Document(infile)
image_stamp = ap.ImageStamp(input_image_file)
image_stamp.background = True
image_stamp.x_indent = 100
@@ -104,133 +41,85 @@ Le code suivant montre comment ajouter un tampon d'image dans le fichier PDF.
image_stamp.width = 300
image_stamp.rotate = ap.Rotation.ON270
image_stamp.opacity = 0.5
- # Ajouter le tampon à une page particulière
- document.pages[1].add_stamp(image_stamp)
- # Enregistrer le document de sortie
- document.save(output_pdf)
+ document.pages[1].add_stamp(image_stamp)
+ document.save(outfile)
```
+## Contrôler la qualité de l'image lors de l'ajout d'un tampon
-## Contrôler la Qualité de l'Image lors de l'Ajout d'un Tampon
+Lors de l'ajout d'une image en tant qu'objet tampon, vous pouvez contrôler la qualité de l'image. Le [quality](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/#properties) propriété de [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) la classe est utilisée à cette fin. Elle indique la qualité de l'image en pourcentage (les valeurs valides sont 0..100).
+En définissant la propriété quality, vous pouvez réduire la résolution de l'image afin d'optimiser la taille du PDF ou de maintenir une fidélité plus élevée pour une meilleure clarté.
-Lors de l'ajout d'une image en tant qu'objet tampon, vous pouvez contrôler la qualité de l'image. La propriété [quality](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/#properties) de la classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) est utilisée à cet effet. Elle indique la qualité de l'image en pourcentage (les valeurs valides sont 0..100).
+1. Ouvrez le document PDF.
+1. Créer un tampon d'image.
+1. Définir la qualité de l'image.
+1. Ajoutez le tampon à la page cible.
+1. Enregistrez le PDF modifié.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
+def add_image_stamp_with_quality_control(infile, input_image_file, outfile):
+ document = ap.Document(infile)
- # Créer un tampon d'image
- image_stamp = ap.ImageStamp(input_jpg)
+ image_stamp = ap.ImageStamp(input_image_file)
image_stamp.quality = 10
- # Ajouter le tampon à une page particulière
- document.pages[1].add_stamp(image_stamp)
- # Enregistrer le document de sortie
- document.save(output_pdf)
+ document.pages[1].add_stamp(image_stamp)
+ document.save(outfile)
```
-## Tampon d'Image en tant qu'Arrière-plan dans une Boîte Flottante
+## ImageStamp comme arrière-plan dans une boîte flottante
-L'API Aspose.PDF pour Python vous permet d'ajouter un tampon d'image en tant qu'arrière-plan dans une boîte flottante.
- Le [propriété de fond](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/#properties) de la classe [FloatingBox](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/) peut être utilisée pour définir le tampon d'image de fond pour une boîte flottante comme indiqué dans l'exemple de code suivant.
+Créer un [FloatingBox](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/) dans un PDF et appliquez une image comme arrière-plan. Il montre également comment ajouter du texte, définir les bordures, la couleur d'arrière-plan et positionner la boîte précisément sur la page. Ceci est utile pour créer un contenu PDF visuellement riche comme des encadrés, des bannières ou des sections mises en évidence avec du texte sur des images.
-```python
+1. Ouvrez ou créez un document PDF.
+1. Créez un objet \u0027FloatingBox\u0027.
+1. Ajoutez du texte à la boîte.
+1. Définissez la bordure et la couleur d'arrière-plan de la boîte.
+1. Ajoutez une image d'arrière-plan.
+1. Ajoutez le FloatingBox à la page.
+1. Enregistrez le document PDF.
- import aspose.pdf as ap
-
- # Instancier l'objet Document
- document = ap.Document()
- # Ajouter une page au document PDF
- page = document.pages.add()
- # Créer un objet FloatingBox
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_image_as_background_in_floating_box(infile, input_image_file, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+ # Create FloatingBox object
box = ap.FloatingBox(200.0, 100.0)
- # Définir la position gauche pour FloatingBox
+ # Set left position for FloatingBox
box.left = 40
- # Définir la position supérieure pour FloatingBox
+ # Set Top position for FloatingBox
box.top = 80
- # Définir l'alignement horizontal pour FloatingBox
+ # Set the Horizontal alignment for FloatingBox
box.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Ajouter un fragment de texte à la collection de paragraphes de FloatingBox
- box.paragraphs.add(ap.text.TextFragment("texte principal"))
- # Définir la bordure pour FloatingBox
+ # Add text fragment to paragraphs collection of FloatingBox
+ box.paragraphs.add(ap.text.TextFragment("Text in Floating Box"))
+ # Set border for FloatingBox
box.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
img = ap.Image()
img.file = input_image_file
- # Ajouter une image de fond
+ # Add background image
box.background_image = img
- # Définir la couleur de fond pour FloatingBox
+ # Set background color for FloatingBox
box.background_color = ap.Color.yellow
- # Ajouter FloatingBox à la collection de paragraphes de l'objet page
+ # Add FloatingBox to paragraphs collection of page object
page.paragraphs.add(box)
- # Enregistrer le document PDF
- document.save(output_pdf)
+ # Save the PDF document
+ document.save(outfile)
```
-
\ No newline at end of file
+## Sujets liés à l'estampage
+
+- [Tamponner les pages PDF en Python](/pdf/fr/python-net/stamping/)
+- [Ajouter des tampons de page à un PDF en Python](/pdf/fr/python-net/page-stamps-in-the-pdf-file/)
+- [Ajouter des tampons de texte à un PDF en Python](/pdf/fr/python-net/text-stamps-in-the-pdf-file/)
+- [Ajouter des numéros de page à un PDF en Python](/pdf/fr/python-net/add-page-number/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md
index 1f0b15c79c..84906d4726 100644
--- a/fr/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md
+++ b/fr/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md
@@ -1,259 +1,65 @@
---
-title: Ajouter des tampons texte dans un PDF via Python
-linktitle: Tampons texte dans un fichier PDF
+title: Ajouter des tampons de texte à un PDF en Python
+linktitle: Tampons de texte dans un fichier PDF
type: docs
weight: 20
url: /fr/python-net/text-stamps-in-the-pdf-file/
-description: Ajouter un tampon texte à un document PDF en utilisant la classe TextStamp avec la bibliothèque Aspose.PDF pour Python.
-lastmod: "2023-04-17"
+description: Apprenez comment ajouter des tampons de texte aux documents PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment ajouter des tampons de texte dans un PDF en utilisant Python
+Abstract: Cet article fournit un guide complet sur l'ajout de tampons de texte aux fichiers PDF à l'aide de la bibliothèque Aspose.PDF pour Python. Il décrit l'utilisation de la classe `TextStamp` pour créer des tampons de texte personnalisables avec des propriétés telles que la taille de la police, le style, la couleur et l'alignement. L'article inclut des extraits de code montrant comment ajouter un tampon de texte simple, configurer l'alignement du texte et appliquer des modes de rendu avancés comme le texte à remplissage et contour. La première section explique la création d'un objet `Document` et `TextStamp`, la définition des propriétés du texte, et l'ajout du tampon à une page spécifique. La deuxième section présente la propriété `text_alignment` pour aligner le texte horizontalement et verticalement, en fournissant un exemple de code centré sur une page PDF. La section finale traite des modes de rendu, démontrant comment ajouter du texte à remplissage et contour à l'aide d'un objet `TextState` pour définir la couleur du contour et le mode de rendu avant de le lier à un tampon. Chaque section est accompagnée d'exemples pratiques pour faciliter la compréhension et la mise en œuvre.
---
-
+## Ajout d'un tampon de texte avec Python
-## Ajouter un tampon de texte avec Python
+Vous pouvez utiliser [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) classe pour ajouter un tampon de texte dans un fichier PDF. [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) la classe fournit les propriétés nécessaires pour créer un tampon basé sur du texte comme la taille de la police, le style de police et la couleur de police, etc. Pour ajouter un tampon de texte, vous devez créer un objet Document et un objet TextStamp en utilisant les propriétés requises. Après cela, vous pouvez appeler [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) méthode de la Page pour ajouter le tampon dans le PDF. Le fragment de code suivant vous montre comment ajouter un tampon de texte dans le fichier PDF. Ceci est utile pour ajouter des annotations, des filigranes ou des étiquettes aux pages PDF.
-Vous pouvez utiliser la classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) pour ajouter un tampon de texte dans un fichier PDF. La classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) fournit les propriétés nécessaires pour créer un tampon basé sur du texte comme la taille de la police, le style de la police, la couleur de la police, etc. Pour ajouter un tampon de texte, vous devez créer un objet Document et un objet TextStamp en utilisant les propriétés requises. Après cela, vous pouvez appeler la méthode [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) de la Page pour ajouter le tampon dans le PDF. Le code suivant vous montre comment ajouter un tampon de texte dans le fichier PDF.
+1. Ouvrez le document PDF.
+1. Créer un objet TextStamp.
+1. Définir le comportement d'arrière-plan du tampon.
+1. Positionner le tampon sur la page.
+1. Faire pivoter le tampon si nécessaire.
+1. Définir les propriétés du texte.
+1. Ajouter le tampon à une page.
+1. Enregistrez le document PDF modifié.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
+def add_text_stamp(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
- # Ouvrir le document
- document = ap.Document(input_pdf)
-
- # Créer un tampon de texte
+ # Create text stamp
text_stamp = ap.TextStamp("Sample Stamp")
- # Définir si le tampon est en arrière-plan
+ # Set whether stamp is background
text_stamp.background = True
- # Définir l'origine
+ # Set origin
text_stamp.x_indent = 100
text_stamp.y_indent = 100
- # Faire pivoter le tampon
+ # Rotate stamp
text_stamp.rotate = ap.Rotation.ON90
- # Définir les propriétés du texte
+ # Set text properties
text_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
text_stamp.text_state.font_size = 14.0
- text_stamp.text_state.font_style = ap.text.FontStyles.BOLD
- text_stamp.text_state.font_style = ap.text.FontStyles.ITALIC
- text_stamp.text_state.foreground_color = ap.Color.aqua
- # Ajouter le tampon à une page particulière
- document.pages[1].add_stamp(text_stamp)
-
- # Enregistrer le document de sortie
- document.save(output_pdf)
-```
-
-
-## Définir l'alignement pour l'objet TextStamp
-
-Ajouter des filigranes aux documents PDF est l'une des fonctionnalités fréquemment demandées et Aspose.PDF pour Python est entièrement capable d'ajouter des filigranes d'image ainsi que de texte. Nous avons une classe nommée [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) qui fournit la fonctionnalité d'ajouter des tampons de texte sur le fichier PDF. Récemment, il a été nécessaire de prendre en charge la fonctionnalité de spécifier l'alignement du texte lors de l'utilisation de l'objet TextStamp. Donc, afin de répondre à cette exigence, nous avons introduit la propriété [text_alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties) dans la classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/). En utilisant cette propriété, nous pouvons spécifier l'alignement du texte [horizontal_alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties).
-
-Les exemples de code suivants montrent comment charger un document PDF existant et y ajouter un TextStamp.
-
-```python
-
- import aspose.pdf as ap
-
- # Instancier l'objet Document avec le fichier d'entrée
- doc = ap.Document(input_pdf)
- # Instancier l'objet FormattedText avec une chaîne d'exemple
- text = ap.facades.FormattedText("This")
- # Ajouter une nouvelle ligne de texte à FormattedText
- text.add_new_line_text("is sample")
- text.add_new_line_text("Center Aligned")
- text.add_new_line_text("TextStamp")
- text.add_new_line_text("Object")
- # Créer un objet TextStamp en utilisant FormattedText
- stamp = ap.TextStamp(text)
- # Spécifier l'alignement horizontal du tampon de texte comme centré
- stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Spécifier l'alignement vertical du tampon de texte comme centré
- stamp.vertical_alignment = ap.VerticalAlignment.CENTER
- # Spécifier l'alignement horizontal du texte de TextStamp comme centré
- stamp.text_alignment = ap.HorizontalAlignment.CENTER
- # Définir la marge supérieure pour l'objet tampon
- stamp.top_margin = 20
- # Ajouter l'objet tampon sur la première page du document
- doc.pages[1].add_stamp(stamp)
-
- # Enregistrer le document mis à jour
- doc.save(output_pdf)
-```
-
-
-## Remplir le Texte de Contour comme un Tampon dans un Fichier PDF
-
-Nous avons implémenté le paramétrage du mode de rendu pour les scénarios d'ajout et d'édition de texte. Pour rendre le texte en contour, veuillez créer un objet TextState pour transférer des propriétés avancées. Définissez la couleur pour le contour. Ensuite, définissez le mode de rendu du texte. L'étape suivante est de lier TextState et d'ajouter le tampon.
-
-Le snippet de code suivant démontre l'ajout de texte de contour rempli :
-
-```python
-
- import aspose.pdf as ap
-
- # Créez un objet TextState pour transférer des propriétés avancées
- ts = ap.text.TextState()
- # Définissez la couleur pour le contour
- ts.stroking_color = ap.Color.gray
- # Définissez le mode de rendu du texte
- ts.rendering_mode = ap.text.TextRenderingMode.STROKE_TEXT
- # Chargez un document PDF d'entrée
- file_stamp = ap.facades.PdfFileStamp(ap.Document(input_pdf))
-
- stamp = ap.facades.Stamp()
- stamp.bind_logo(
- ap.facades.FormattedText(
- "PAID IN FULL",
- ap.facades.FontColor(100, 100, 100),
- ap.facades.FontStyle.TIMES_ROMAN,
- ap.facades.EncodingType.WINANSI,
- True,
- 78.0,
- )
+ text_stamp.text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
)
+ text_stamp.text_state.foreground_color = ap.Color.dark_green
+ # Add stamp to particular page
+ document.pages[1].add_stamp(text_stamp)
- # Liez TextState
- stamp.bind_text_state(ts)
- # Définissez l'origine X,Y
- stamp.set_origin(100, 100)
- stamp.opacity = 5
- stamp.blending_space = ap.facades.BlendingColorSpace.DEVICE_RGB
- stamp.rotation = 45.0
- stamp.is_background = False
- # Ajoutez le tampon
- file_stamp.add_stamp(stamp)
- file_stamp.save(output_pdf)
- file_stamp.close()
+ document.save(output_file_name)
```
+## Sujets liés à l'estampage
-
\ No newline at end of file
+- [Tamponner les pages PDF en Python](/pdf/fr/python-net/stamping/)
+- [Ajouter des tampons de page à un PDF en Python](/pdf/fr/python-net/page-stamps-in-the-pdf-file/)
+- [Ajouter des tampons d'image à un PDF en Python](/pdf/fr/python-net/image-stamps-in-pdf-page/)
+- [Ajouter des numéros de page à un PDF en Python](/pdf/fr/python-net/add-page-number/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-tables/_index.md b/fr/python-net/advanced-operations/working-with-tables/_index.md
index abbedf69ea..f6a5503e9e 100644
--- a/fr/python-net/advanced-operations/working-with-tables/_index.md
+++ b/fr/python-net/advanced-operations/working-with-tables/_index.md
@@ -1,152 +1,29 @@
---
-title: Travailler avec des tableaux dans un PDF en utilisant Python
+title: Travailler avec des tableaux dans les PDF à l'aide de Python
linktitle: Travailler avec des tableaux
type: docs
weight: 50
url: /fr/python-net/working-with-tables/
-description: Cette section décrit comment ajouter et extraire un tableau, comment manipuler et un tableau en utilisant la bibliothèque Python.
-lastmod: "2023-09-17"
+description: Apprenez comment ajouter, extraire, intégrer, manipuler et supprimer des tableaux dans des documents PDF en utilisant Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter, extraire, intégrer et gérer des tableaux PDF en Python
+Abstract: Cette section explique comment travailler avec des tableaux dans des documents PDF en utilisant Aspose.PDF for Python via .NET. Apprenez comment créer et insérer des tableaux, extraire des données tabulaires, intégrer les tableaux avec des sources de données, modifier le contenu des tableaux et supprimer les tableaux des fichiers PDF existants dans les flux de travail Python.
---
-
+**Aspose.PDF for Python via .NET** fournit des outils complets pour travailler avec des tableaux dans les fichiers PDF. Vous pouvez créer et ajouter des tableaux, contrôler la mise en page des tableaux et le flux des pages, extraire des données tabulaires, mettre à jour les tableaux existants, et supprimer un ou plusieurs tableaux des PDF existants.
-**Aspose.PDF pour Python via .NET** vous permet de travailler avec des tableaux dans un fichier PDF de manière avancée. Cet outil parfait aide à surmonter la simplicité des PDF en extrayant des tableaux. Avec la ressource de bibliothèque Python, vous pouvez facilement créer ou ajouter un tableau dans un document PDF existant, déterminer si le tableau se cassera sur la page actuelle, extraire le tableau et supprimer des tableaux des PDF existants.
+Utilisez cette section lorsque vous devez créer des rapports basés sur des tableaux, extraire des données structurées à partir de PDF ou mettre à jour le contenu tabulaire dans des documents existants avec Python.
-Vous êtes capable de faire les choses suivantes :
+## Tâches de tableau couvertes
-- [Créer ou Ajouter un Tableau dans un Document PDF existant](/pdf/fr/python-net/add-table-in-existing-pdf-document/) - créez votre tableau dans un fichier PDF en fusionnant les colonnes ou les lignes en tenant compte des bordures, marges et espacements.
-- [Extraire un Tableau d'un Document PDF existant](/pdf/fr/python-net/extract-table-from-existing-pdf-document/) - vous pouvez extraire un tableau d'un fichier PDF.
-- [Manipuler les Tableaux dans un PDF existant](/pdf/fr/python-net/manipulate-tables-in-existing-pdf/) - manipulez les tableaux dans votre PDF à l'aide de TableAbsorber.
+Vous pouvez faire ce qui suit :
-- [Supprimer des Tableaux d'un PDF existant](/pdf/fr/python-net/remove-tables-from-existing-pdf/) - supprimez un tableau ou plusieurs tableaux d'un document PDF.
-
-
\ No newline at end of file
+- [Ajout de tables](/pdf/fr/python-net/adding-tables/) - créer des tableaux dans des fichiers PDF, y compris les lignes/colonnes fusionnées, les bordures, les marges et le remplissage.
+- [Extraction de tableaux](/pdf/fr/python-net/extracting-table/) - extraire les données de tableau à partir de fichiers PDF existants.
+- [Intégration des tableaux avec des sources de données](/pdf/fr/python-net/integrate-table/) - construire des tableaux à partir de bases de données et de données pandas DataFrame en Python.
+- [Manipulation des tableaux](/pdf/fr/python-net/manipulating-tables/) - inspecter et mettre à jour les tableaux existants dans les documents PDF.
+- [Suppression des tableaux](/pdf/fr/python-net/removing-tables/) - supprimer un ou plusieurs tableaux des documents PDF.
diff --git a/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md
index b1bd74ea20..08a2aa350a 100644
--- a/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md
@@ -1,173 +1,220 @@
---
-title: Créer ou Ajouter une Table dans un PDF en utilisant Python
-linktitle: Créer ou Ajouter une Table
+title: Ajouter des tables au PDF en Python
+linktitle: Ajout de tables
type: docs
weight: 10
-url: /fr/python-net/add-table-in-existing-pdf-document/
-description: Aspose.PDF pour Python via .NET est une bibliothèque utilisée pour créer, lire et éditer des Tables PDF. Consultez d'autres fonctions avancées dans ce sujet.
-lastmod: "2023-02-17"
+url: /fr/python-net/adding-tables/
+description: Apprenez à ajouter et configurer des tableaux dans des documents PDF existants en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajoutez et formatez des tableaux dans des documents PDF avec Python
+Abstract: Cet article explique comment ajouter et configurer des tables dans des documents PDF à l'aide d'Aspose.PDF for Python via .NET. Il couvre la création de tables, les bordures, les marges, le remplissage, les étendues de lignes et de colonnes, le comportement AutoFit, la gestion de la largeur des tables, l'insertion d'images dans les cellules et le contrôle du rendu sur plusieurs pages.
---
-
-
-
-## Création de Table avec Python
-
-Les tables sont importantes lors du travail avec des documents PDF. Elles offrent d'excellentes fonctionnalités pour afficher des informations de manière systématique. L'espace de noms Aspose.PDF contient des classes nommées [Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/), [Cell](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/), et [Row](https://reference.aspose.com/pdf/python-net/aspose.pdf/row/) qui fournissent des fonctionnalités pour créer des tables lors de la génération de documents PDF à partir de zéro.
-
-Une table peut être créée en créant un objet de la classe Table.
-```python
+Ajouter des tableaux aux documents PDF existants est une exigence courante pour la présentation des données, le contenu structuré et les rapports. **Aspose.PDF for Python via .NET** fournit une API pratique pour insérer et formater des tableaux dans des PDF existants.
+
+Ce guide fournit des exemples pas à pas pour la création de tableaux, le dimensionnement des colonnes, les bordures, les lignes et les cellules, ainsi que l'enregistrement du document modifié. Il couvre également les options avancées telles que les bordures des cellules, les marges, le remplissage et les paramètres AutoFit pour le dimensionnement dynamique des tableaux.
+
+Utilisez cette page lorsque vous devez ajouter de nouveaux tableaux aux PDF existants et contrôler leur comportement de mise en page en Python.
+
+## Création de tableaux de base
+
+### Création de tableau
+
+Cet exemple montre comment créer une Table dans un document PDF avec des bordures et plusieurs lignes.
+1. Créer un nouveau document PDF.
+1. Ajoute une page blanche au document.
+1. Initialiser la Table.
+1. Définir la bordure globale du tableau.
+1. Définir la bordure des cellules individuelles.
+1. Ajouter des lignes et des cellules.
+1. Insérez le tableau dans la page.
+1. Enregistrez le PDF à l'emplacement spécifié.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def create_table(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+ # Initializes a new instance of the Table
table = ap.Table()
-```
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.light_gray)
+ # Create a loop to add 10 rows
+ for row_count in range(10):
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ row.cells.add("Column (" + str(row_count) + ", 1)")
+ row.cells.add("Column (" + str(row_count) + ", 2)")
+ row.cells.add("Column (" + str(row_count) + ", 3)")
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
-### Ajout de Table dans un Document PDF Existant
+ # Save updated document containing table object
+ document.save(outfile)
+```
-Pour ajouter une table à un fichier PDF existant avec Aspose.PDF pour Python via .NET, suivez les étapes suivantes :
+### Ajout d'images dans les cellules du tableau
-1. Chargez le fichier source.
-1. Initialisez une table et définissez ses colonnes et lignes.
-1. Définissez les paramètres de la table (nous avons défini les bordures).
-1. Remplissez la table.
-1. Ajoutez la table à une page.
-1. Enregistrez le fichier.
+Cet extrait de code montre comment insérer des images dans les cellules d’un tableau d’un document PDF.
-Les extraits de code suivants montrent comment ajouter du texte dans un fichier PDF existant.
+1. Créer un nouveau document PDF.
+1. Initialiser la Table.
+1. Définir les largeurs de colonne en points.
+1. Un fragment de texte est ajouté à la première cellule.
+1. Une instance 'ap.Image()' est ajoutée à la deuxième cellule.
+1. Définissez le chemin du fichier image avec 'img.file'.
+1. Les 'img.fix_width' et 'img.fix_height' contrôlent la taille de l'image à l'intérieur de la cellule.
+1. Insérer le tableau dans la page PDF.
+1. Enregistrez le PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_image(image: str, outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
+ # Set width for table cells
+ table.column_widths = "200 100"
+
+ # Create row object and add it to table instance
+ row = table.rows.add()
+ # Create cell object and add it to row instance
+ cell = row.cells.add()
+ # Add textfragment to paragraphs collection of cell object
+ cell.paragraphs.add(ap.text.TextFragment(image))
+ # Create an image instance
+ img = ap.Image()
+ # Set image type as SVG
+ # Path for source file
+ img.file = image
+ # Set width for image instance
+ img.fix_width = 50
+ # Set height for image instance
+ img.fix_height = 50
+ # Add another cell to row object
+ cell = row.cells.add()
+ # Add SVG image to paragraphs collection of recently added cell instance
+ cell.paragraphs.add(img)
- import aspose.pdf as ap
+ # Add table to paragraphs collection of page object
+ page.paragraphs.add(table)
+ # Save PDF file
+ document.save(outfile)
+```
+
+Vous pouvez ajouter des images SVG dans les cellules de tableau d'un document PDF :
- # Charger le document PDF source
- doc = ap.Document(input_file)
- # Initialise une nouvelle instance du Tableau
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_svg_image(images: list[str], outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
table = ap.Table()
- # Définir la couleur de la bordure du tableau comme LightGray
- table.border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.from_rgb(apd.Color.light_gray))
- # Définir la bordure pour les cellules du tableau
- table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.from_rgb(apd.Color.light_gray))
- # Créer une boucle pour ajouter 10 lignes
- for row_count in range(0, 10):
- # Ajouter une ligne au tableau
+ # Set width for table cells
+ table.column_widths = "200 100"
+ for image in images:
+ # Create row object and add it to table instance
row = table.rows.add()
- # Ajouter des cellules au tableau
- row.cells.add("Colonne (" + str(row_count) + ", 1)")
- row.cells.add("Colonne (" + str(row_count) + ", 2)")
- row.cells.add("Colonne (" + str(row_count) + ", 3)")
- # Ajouter l'objet tableau à la première page du document d'entrée
- doc.pages[1].paragraphs.add(table)
- # Enregistrer le document mis à jour contenant l'objet tableau
- doc.save(output_file)
+ # Create cell object and add it to row instance
+ cell = row.cells.add()
+ # Add textfragment to paragraphs collection of cell object
+ cell.paragraphs.add(ap.text.TextFragment(image))
+ # Create an image instance
+ img = ap.Image()
+ # Set image type as SVG
+ img.file_type = ap.ImageFileType.SVG
+ # Path for source file
+ img.file = image
+ # Set width for image instance
+ img.fix_width = 50
+ # Set height for image instance
+ img.fix_height = 50
+ # Add another cell to row object
+ cell = row.cells.add()
+ # Add SVG image to paragraphs collection of recently added cell instance
+ cell.paragraphs.add(img)
+
+ # Add table to paragraphs collection of page object
+ page.paragraphs.add(table)
+ # Save PDF file
+ document.save(outfile)
```
-### ColSpan et RowSpan dans les Tables
+### ColSpan et RowSpan dans les tableaux
-Aspose.PDF pour Python via .NET fournit la propriété [col_span](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/#properties) pour fusionner les colonnes dans un tableau et la propriété [row_span](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/#properties) pour fusionner les lignes.
+Cet exemple montre comment fusionner les cellules de tableau verticalement et horizontalement pour créer des mises en page de tableau complexes.
-
-Nous utilisons la propriété `col_span` ou `row_span` sur l'objet `Cell` qui crée la cellule de tableau. Après avoir appliqué les propriétés requises, la cellule créée peut être ajoutée au tableau.
+1. Définir la bordure globale du tableau.
+1. Définir les bordures de cellule par défaut.
+1. Fusionner deux cellules horizontalement en une.
+1. Fusionner la cellule verticalement sur deux lignes.
+1. La ligne 5 tient compte du rowspan en sautant la colonne fusionnée.
+1. Insérez le tableau dans la page.
+1. Enregistrez le PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
+def add_rowspan_or_colspan(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
- # Initialisez l'objet Document en appelant son constructeur vide
- pdf_document = ap.Document()
- pdf_document.pages.add()
- # Initialise une nouvelle instance de Table
+ # Initializes a new instance of the Table
table = ap.Table()
- # Définissez la couleur de la bordure du tableau comme LightGray
+ # Set the table border color as LightGray
table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.black)
- # Définissez la bordure pour les cellules du tableau
+ # Set the border for table cells
table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.black)
- # Ajoutez la 1ère ligne au tableau
+ # Add 1st row to table
row1 = table.rows.add()
- for cellCount in range(1, 5):
- # Ajoutez des cellules au tableau
- row1.cells.add("Test 1" + str(cellCount))
+ for cell_count in range(1, 5):
+ # Add table cells
+ row1.cells.add("Test 1" + str(cell_count))
- # Ajoutez la 2ème ligne au tableau
+ # Add 2nd row to table
row2 = table.rows.add()
row2.cells.add("Test 2 1")
cell = row2.cells.add("Test 2 2")
cell.col_span = 2
row2.cells.add("Test 2 4")
- # Ajoutez la 3ème ligne au tableau
+ # Add 3rd row to table
row3 = table.rows.add()
row3.cells.add("Test 3 1")
row3.cells.add("Test 3 2")
row3.cells.add("Test 3 3")
row3.cells.add("Test 3 4")
- # Ajoutez la 4ème ligne au tableau
+ # Add 4th row to table
row4 = table.rows.add()
row4.cells.add("Test 4 1")
cell = row4.cells.add("Test 4 2")
@@ -175,371 +222,620 @@ Nous utilisons la propriété `col_span` ou `row_span` sur l'objet `Cell` qui cr
row4.cells.add("Test 4 3")
row4.cells.add("Test 4 4")
- # Ajoutez la 5ème ligne au tableau
+ # Add 5th row to table
row5 = table.rows.add()
row5.cells.add("Test 5 1")
row5.cells.add("Test 5 3")
row5.cells.add("Test 5 4")
- # Ajoutez l'objet tableau à la première page du document d'entrée
- pdf_document.pages[1].paragraphs.add(table)
- # Enregistrez le document mis à jour contenant l'objet tableau
- pdf_document.save(output_file)
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
```
+
-Le résultat de l'exécution du code ci-dessous est le tableau représenté sur l'image suivante :
-
-
-
-## Travailler avec les Bordures, Marges et Espacement
-
-Veuillez noter qu'il prend également en charge la fonctionnalité de définir le style de bordure, les marges et l'espacement des cellules pour les tableaux. Avant d'entrer dans les détails techniques, il est important de comprendre les concepts de bordure, marges et espacement qui sont présentés ci-dessous dans un diagramme :
+### Appliquer des bordures aux tableaux et aux cellules
-
+Cet exemple montre comment définir le remplissage des cellules, les marges du tableau et contrôler le retour à la ligne du texte dans les cellules du tableau.
-Dans la figure ci-dessus, vous pouvez voir que les bordures du tableau, de la ligne et de la cellule se chevauchent. En utilisant Aspose.PDF, un tableau peut avoir des marges et les cellules peuvent avoir des espacements. Pour définir les marges des cellules, nous devons définir l'espacement des cellules.
-
-### Bordures
-
-Pour définir les bordures des objets Table, [Row](https://reference.aspose.com/pdf/python-net/aspose.pdf/row/) et [Cell](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/), utilisez les propriétés Table.border, Row.border et Cell.border.
- Les bordures des cellules peuvent également être définies à l'aide de la propriété [default_cell_border](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) de la classe [Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) ou Row. Toutes les propriétés liées aux bordures discutées ci-dessus sont assignées à une instance de la classe Row, qui est créée en appelant son constructeur. La classe Row possède de nombreuses surcharges qui prennent presque tous les paramètres nécessaires pour personnaliser la bordure.
-
-### Marges ou Espacement
-
-L'espacement des cellules peut être géré à l'aide de la propriété [default_cell_padding](https://reference.aspose.com/pdf/python-net/aspose.pdf/row/#properties) de la classe Table. Toutes les propriétés liées à l'espacement sont assignées à une instance de la classe [MarginInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) qui prend des informations sur les paramètres `left`, `right`, `top` et `bottom` pour créer des marges personnalisées.
-Dans l'exemple suivant, la largeur de la bordure de la cellule est définie à 0,1 point, la largeur de la bordure de la table est définie à 1 point et le remplissage de la cellule est défini à 5 points.
-
-
+1. Définir les largeurs des colonnes.
+1. Définir les bordures du tableau et des cellules.
+1. Définir le remplissage à l'intérieur des cellules pour un espacement cohérent.
+1. Appliquer le remplissage à toutes les cellules par défaut.
+1. Ajouter du texte et contrôler le renvoi à la ligne.
+1. Ajouter des lignes et des cellules.
+1. Enregistrez le PDF.
```python
-
- import aspose.pdf as ap
-
- # Instancier l'objet Document en appelant son constructeur vide
- doc = ap.Document()
- page = doc.pages.add()
- # Instancier un objet table
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_borders(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
tab1 = ap.Table()
- # Ajouter la table dans la collection de paragraphes de la section désirée
+ # Add the table in paragraphs collection of the desired section
page.paragraphs.add(tab1)
- # Définir les largeurs de colonne de la table
+ # Set with column widths of the table
tab1.column_widths = "50 50 50"
- # Définir la bordure de cellule par défaut en utilisant l'objet BorderInfo
+ # Set default cell border using BorderInfo object
tab1.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
- # Définir la bordure de la table en utilisant un autre objet BorderInfo personnalisé
+ # Set table border using another customized BorderInfo object
tab1.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Créer un objet MarginInfo et définir ses marges gauche, bas, droite et haut
+ # Create MarginInfo object and set its left, bottom, right and top margins
margin = ap.MarginInfo()
margin.top = 5
margin.left = 5
margin.right = 5
margin.bottom = 5
- # Définir le remplissage de cellule par défaut sur l'objet MarginInfo
+ # Set the default cell padding to the MarginInfo object
tab1.default_cell_padding = margin
- # Créer des lignes dans la table puis des cellules dans les lignes
+ # Create rows in the table and then cells in the rows
row1 = tab1.rows.add()
row1.cells.add("col1")
row1.cells.add("col2")
row1.cells.add()
- my_text = ap.text.TextFragment("col3 avec une longue chaîne de texte")
- # Row1.Cells.Add("col3 avec une longue chaîne de texte à placer dans la cellule")
- row1.cells[2].paragraphs.add(my_text)
+ text = ap.text.TextFragment("col3 with large text string")
+ row1.cells[2].paragraphs.add(text)
row1.cells[2].is_word_wrapped = False
row2 = tab1.rows.add()
row2.cells.add("item1")
row2.cells.add("item2")
row2.cells.add("item3")
- # Enregistrer le Pdf
- doc.save(output_file)
+ # Save updated document containing table object
+ document.save(outfile)
```
+
-Pour créer une table avec des coins arrondis, utilisez la valeur [rounded_border_radius](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/#properties) de la classe [BorderInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/) et définissez le style des coins de la table comme arrondi.
+## Mise en page et dimensionnement du tableau
-```python
-
- import aspose.pdf as ap
-
- tab1 = ap.Table()
- graph = ap.GraphInfo()
- graph.color = ap.Color.red
- # Créer un objet BorderInfo vide
- b_info = ap.BorderInfo(ap.BorderSide.ALL, graph)
- # Définir la bordure comme une bordure arrondie où le rayon est de 15
- b_info.rounded_border_radius = 15
- # Définir le style des coins de la table comme arrondi
- tab1.corner_style = ap.BorderCornerStyle.ROUND
- # Définir les informations de bordure de la table
- tab1.border = b_info
-```
+### Ajustement automatique des colonnes et des lignes
-## Appliquer différents réglages AutoFit à une table
+Cet extrait de code montre comment ajuster automatiquement la largeur des colonnes du tableau pour qu'elle s'adapte à la page.
+Veuillez noter que dans le paramètre table.column_widths = "50 50 50" - il s'agit de points. Mais vous pouvez également spécifier des centimètres (cm), des pouces ou %.
-Lors de la conception d'une table à l'aide d'un outil visuel comme Microsoft Word, vous utiliserez fréquemment l'une des fonctionnalités AutoFit pour ajuster commodément la taille de la table à la largeur souhaitée.
- Par exemple, vous pouvez utiliser l'option "AUTO_FIT_TO_WINDOW" pour adapter la largeur du tableau à la page ou AUTO_FIT_TO_CONTENT. Par défaut, lors de l'utilisation d'Aspose.Pdf pour créer un nouveau tableau, il utilise le [column_adjustment](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) avec une valeur "Customized". Dans l'extrait de code suivant, nous définissons les paramètres de l'objet [MarginInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) et les objets [BorderInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/) dans le tableau. Testez l'exemple et évaluez le résultat.
+1. Définir les largeurs de colonne initiales.
+1. Ajuste automatiquement les colonnes à la largeur de la page.
+1. Définir les bordures des cellules et des tableaux.
+1. Le 'table.default_cell_padding' utilise 'MarginInfo()' pour un espacement cohérent à l'intérieur des cellules.
+1. Ajoutez des lignes avec 'table.rows.add()', et ajoutez des cellules avec 'row.cells.add()'.
+1. Enregistrez le PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def auto_fit(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
- import aspose.pdf as ap
+ page.paragraphs.add(table)
+
+ table.column_widths = "50 50 50"
+ table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_WINDOW
+
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
+
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Instancier l'objet Pdf en appelant son constructeur vide
- doc = ap.Document()
- # Créer la section dans l'objet Pdf
- sec1 = doc.pages.add()
- # Instancier un objet table
- tab1 = ap.Table()
- # Ajouter le tableau dans la collection de paragraphes de la section souhaitée
- sec1.paragraphs.add(tab1)
- # Définir les largeurs de colonne du tableau
- tab1.column_widths = "50 50 50"
- tab1.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_WINDOW
- # Définir la bordure de cellule par défaut à l'aide de l'objet BorderInfo
- tab1.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
- # Définir la bordure du tableau à l'aide d'un autre objet BorderInfo personnalisé
- tab1.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Créer un objet MarginInfo et définir ses marges gauche, bas, droite et haut
margin = ap.MarginInfo()
margin.top = 5
margin.left = 5
margin.right = 5
margin.bottom = 5
- # Définir le remplissage de cellule par défaut sur l'objet MarginInfo
- tab1.default_cell_padding = margin
- # Créer des lignes dans le tableau puis des cellules dans les lignes
- row1 = tab1.rows.add()
+
+ table.default_cell_padding = margin
+
+ row1 = table.rows.add()
row1.cells.add("col1")
row1.cells.add("col2")
row1.cells.add("col3")
- row2 = tab1.rows.add()
+ row2 = table.rows.add()
row2.cells.add("item1")
row2.cells.add("item2")
row2.cells.add("item3")
- # Enregistrer le document mis à jour contenant l'objet table
- doc.save(output_file)
+
+ document.save(outfile)
```
-### Obtenir la Largeur de la Table
+### Créer des tableaux PDF complexes avec des cellules fusionnées et des colonnes répétées
-Parfois, il est nécessaire d'obtenir la largeur de la table dynamiquement. La classe Aspose.PDF.Table possède une méthode [get_width()](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#methods) à cet effet. Par exemple, vous n'avez pas défini explicitement la largeur des colonnes de la table et vous avez défini [column_adjustment](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) sur 'AUTO_FIT_TO_CONTENT'. Dans ce cas, vous pouvez obtenir la largeur de la table comme suit.
+Créez un tableau avancé dans un PDF en utilisant Python et Aspose.PDF. Il comprend des cellules d'en-tête fusionnées, des arrière-plans colorés, des colonnes répétées et un grand jeu de données structuré. Le tableau est configuré pour gérer la rupture verticale et les mises en page complexes pour des documents de type rapport.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
+def add_table_hide_borders(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
- # Créer un nouveau document
- doc = ap.Document()
- # Ajouter une page dans le document
- page = doc.pages.add()
- # Initialiser une nouvelle table
+ # Instantiate a table object that will be nested inside outerTable that will break inside the same page
table = ap.Table()
- table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_CONTENT
- # Ajouter une ligne dans la table
+ table.broken = ap.TableBroken.VERTICAL
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL)
+ table.repeating_columns_count = 2
+ page.paragraphs.add(table)
+
+ # Add header Row
row = table.rows.add()
- # Ajouter une cellule dans la table
- cell = row.cells.add("Texte de la cellule 1")
- cell = row.cells.add("Texte de la cellule 2")
- # Obtenir la largeur de la table
- print(table.get_width())
+ cell = row.cells.add("header 1")
+ cell.col_span = 2
+ cell.background_color = ap.Color.light_gray
+ row.cells.add("header 3")
+
+ cell2 = row.cells.add("header 4")
+ cell2.col_span = 2
+ cell2.background_color = ap.Color.light_blue
+ row.cells.add("header 6")
+
+ cell3 = row.cells.add("header 7")
+ cell3.col_span = 2
+ cell3.background_color = ap.Color.light_green
+ cell4 = row.cells.add("header 9")
+
+ cell4.col_span = 3
+ cell4.background_color = ap.Color.light_coral
+ row.cells.add("header 12")
+ row.cells.add("header 13")
+ row.cells.add("header 14")
+ row.cells.add("header 15")
+ row.cells.add("header 16")
+ row.cells.add("header 17")
+
+ row_counter = 0
+ while row_counter < 3:
+ # Create rows in the table and then cells in the rows
+ row1 = table.rows.add()
+ row1.cells.add("col " + str(row_counter) + ", 1")
+ row1.cells.add("col " + str(row_counter) + ", 2")
+ row1.cells.add("col " + str(row_counter) + ", 3")
+ row1.cells.add("col " + str(row_counter) + ", 4")
+ row1.cells.add("col " + str(row_counter) + ", 5")
+ row1.cells.add("col " + str(row_counter) + ", 6")
+ row1.cells.add("col " + str(row_counter) + ", 7")
+ row1.cells.add("col " + str(row_counter) + ", 8")
+ row1.cells.add("col " + str(row_counter) + ", 9")
+ row1.cells.add("col " + str(row_counter) + ", 10")
+ row1.cells.add("col " + str(row_counter) + ", 11")
+ row1.cells.add("col " + str(row_counter) + ", 12")
+ row1.cells.add("col " + str(row_counter) + ", 13")
+ row1.cells.add("col " + str(row_counter) + ", 14")
+ row1.cells.add("col " + str(row_counter) + ", 15")
+ row1.cells.add("col " + str(row_counter) + ", 16")
+ row1.cells.add("col " + str(row_counter) + ", 17")
+ row_counter += 1
+
+ document.save(outfile)
```
-## Ajouter une Image SVG à une Cellule de Table
+
+
+### Stylisation des coins du tableau
-Aspose.PDF pour Python via .NET offre la possibilité d'insérer des cellules de tableau dans un fichier PDF.
- Lors de la construction d'un tableau, vous pouvez inclure à la fois du texte et des images dans ces cellules. De plus, l'API offre la fonctionnalité de transformer des fichiers SVG en format PDF. En utilisant ces fonctionnalités ensemble, vous pouvez charger une image SVG et la placer dans une cellule de tableau.
+Aspose.PDF for Python via .NET montre comment appliquer des coins arrondis à un tableau et personnaliser le rayon de la bordure.
-L'extrait de code suivant démontre le processus de création d'un objet de tableau et d'intégration d'une image SVG à l'intérieur de l'une de ses cellules.
+1. Créer une nouvelle instance de table.
+1. Initialisez une bordure pour tous les côtés.
+1. Définir le rayon du coin.
+1. Appliquer le style de coin arrondi.
+1. Ajouter des lignes et des cellules.
+1. Insérez le tableau dans la page PDF avec 'page.paragraphs.add(table)'.
+1. Enregistrez le document PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
+def create_table_with_round_corner(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
- # Instancier un objet Document
- doc = ap.Document()
- # Créer une instance d'image
- img = ap.Image()
- # Définir le type d'image comme SVG
- img.file_type = ap.ImageFileType.SVG
- # Chemin pour le fichier source
- img.file = DIR_INPUT_TABLE + "SVGToPDF.svg"
- # Définir la largeur pour l'instance d'image
- img.fix_width = 50
- # Définir la hauteur pour l'instance d'image
- img.fix_height = 50
- # Créer une instance de table
+ # Create a table
table = ap.Table()
- # Définir la largeur pour les cellules du tableau
- table.column_widths = "100 100"
- # Créer un objet ligne et l'ajouter à l'instance de tableau
- row = table.rows.add()
- # Créer un objet cellule et l'ajouter à l'instance de ligne
- cell = row.cells.add()
- # Ajouter un texte à la collection de paragraphes de l'objet cellule
- cell.paragraphs.add(ap.text.TextFragment("Première cellule"))
- # Ajouter une autre cellule à l'objet ligne
- cell = row.cells.add()
- # Ajouter l'image SVG à la collection de paragraphes de l'instance de cellule récemment ajoutée
- cell.paragraphs.add(img)
- # Créer un objet page et l'ajouter à la collection de pages de l'instance de document
- page = doc.pages.add()
- # Ajouter le tableau à la collection de paragraphes de l'objet page
+
+ # Create a blank BorderInfo object
+ b_info = ap.BorderInfo(ap.BorderSide.ALL)
+
+ # Set the border a rounded border where radius of round is 15
+ b_info.rounded_border_radius = 15
+
+ # Set the table corner style as Round
+ table.corner_style = ap.BorderCornerStyle.ROUND
+
+ # Set the table border information
+ table.border = b_info
+
+ # Create a loop to add 10 rows
+ for row_count in range(0, 10):
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ row.cells.add("Column (" + str(row_count) + ", 1)")
+ row.cells.add("Column (" + str(row_count) + ", 2)")
+ row.cells.add("Column (" + str(row_count) + ", 3)")
+
+ # Add table object to first page of input document
page.paragraphs.add(table)
- # Enregistrer le fichier PDF
- doc.save(output_file)
+ # Save updated document containing table object
+ document.save(outfile)
```
-## Insérer un saut de page entre les lignes du tableau
+## Ajout de contenu aux tableaux
+
+### Utilisation de fragments HTML dans les cellules
-Par défaut, lorsque vous créez un tableau dans un fichier PDF, le tableau s'étend sur plusieurs pages s'il dépasse la marge inférieure du tableau. Cependant, il existe des situations où nous devons imposer des sauts de page après qu'un certain nombre de lignes ont été ajoutées au tableau. L'extrait de code suivant décrit le processus d'insertion d'un saut de page lorsque 10 lignes ont été incluses dans le tableau.
+Cet exemple montre comment insérer du contenu formaté en HTML dans les cellules du tableau.
+
+1. Définir les bordures du tableau et des cellules.
+1. Ajouter du contenu HTML.
+1. Ajouter des lignes. Une boucle ajoute plusieurs lignes avec du contenu formaté en HTML dans chaque cellule.
+1. Insérez le tableau dans la page PDF avec 'page.paragraphs.add(table)'.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_html_fragments(outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
+
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.5, ap.Color.light_gray
+ )
+ # Create a loop to add 10 rows
+ row_count = 1
+ while row_count < 10:
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.HtmlFragment(f"Column ({row_count}, 1)")
+ )
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.HtmlFragment(f"Column ({row_count}, 2)")
+ )
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.HtmlFragment(
+ f"Column ({row_count}, 3)"
+ )
+ )
+ row_count += 1
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```
+
+### Utilisation de fragments LaTeX dans les cellules
+
+Cet exemple montre comment insérer du contenu formaté en LaTeX dans les cellules de tableau pour des expressions mathématiques ou stylisées.
+
+1. Définir les bordures du tableau et des cellules.
+1. Ajouter du contenu LaTeX.
+1. Ajouter des lignes. Une boucle ajoute plusieurs lignes avec du contenu au format LaTeX dans chaque cellule.
+1. Insérez le tableau dans la page PDF avec 'page.paragraphs.add(table)'.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_latex_fragments(outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
+
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.5, ap.Color.light_gray
+ )
+ # Create a loop to add 10 rows
+ row_count = 1
+ while row_count < 10:
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ cell = row.cells.add()
+ cell.paragraphs.add(ap.LatexFragment(f"Column $\\mathbf{{({row_count}, 1)}}$"))
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.LatexFragment(f"Column $\\textcolor{{red}}{{({row_count}, 2)}}$")
+ )
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.LatexFragment(f"Column $\\underline{{({row_count}, 3)}}$")
+ )
+ row_count += 1
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```
+
+## Fonctionnalités avancées des tables
+
+### Insérer des sauts de page automatiques dans un tableau PDF
+
+Créer un grand tableau dans un PDF en utilisant Python et Aspose.PDF, avec des sauts de page automatiques après un nombre spécifique de lignes. Il crée un tableau à plusieurs lignes, applique des bordures et force les lignes sélectionnées à commencer sur une nouvelle page pour un meilleur contrôle de la mise en page.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
-
- # Instancier une instance de Document
- doc = ap.Document()
- # Ajouter une page à la collection de pages du fichier PDF
- doc.pages.add()
- # Créer une instance de tableau
- tab = ap.Table()
- # Définir le style de bordure pour le tableau
- tab.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
- # Définir le style de bordure par défaut pour le tableau avec la couleur de bordure rouge
- tab.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
- # Spécifier la largeur des colonnes du tableau
- tab.column_widths = "100 100"
- # Créer une boucle pour ajouter 200 lignes au tableau
- for counter in range(0, 201):
+def insert_page_break(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+
+ # Add page
+ page = document.pages.add()
+
+ # Create table instance
+ table = ap.Table()
+
+ # Set border style for table
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
+
+ # Set default border style for table with border color as Red
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
+
+ # Specify table columns width
+ table.column_widths = "100 100"
+
+ # Create a loop to add 200 rows for table
+ for counter in range(201):
row = ap.Row()
- tab.rows.add(row)
+ table.rows.add(row)
+
cell1 = ap.Cell()
- cell1.paragraphs.add(ap.text.TextFragment("Cellule " + str(counter) + ", 0"))
+ cell1.paragraphs.add(ap.text.TextFragment(f"Cell {counter}, 0"))
row.cells.add(cell1)
+
cell2 = ap.Cell()
- cell2.paragraphs.add(ap.text.TextFragment("Cellule " + str(counter) + ", 1"))
+ cell2.paragraphs.add(ap.text.TextFragment(f"Cell {counter}, 1"))
row.cells.add(cell2)
- # Lorsque 10 lignes sont ajoutées, rendre la nouvelle ligne sur une nouvelle page
+
+ # When 10 rows are added, render new row in new page
if counter % 10 == 0 and counter != 0:
row.is_in_new_page = True
- # Ajouter le tableau à la collection de paragraphes du fichier PDF
- doc.pages[1].paragraphs.add(tab)
- # Enregistrer le document PDF
- doc.save(output_file)
-```
+ # Add table to paragraphs collection of PDF file
+ page.paragraphs.add(table)
-## Rendre un Tableau sur une Nouvelle Page
+ # Save PDF document
+ document.save(outfile)
+```
-Par défaut, les paragraphes sont ajoutés à la collection Paragraphs d'un objet Page. Cependant, il est possible de rendre un tableau sur une nouvelle page au lieu de directement après l'objet de niveau paragraphe précédemment ajouté sur la page.
+### Répéter les lignes d'en-tête sur plusieurs pages
-### Exemple : Comment Rendre un Tableau sur une Nouvelle Page en utilisant Python
+Cet exemple montre comment créer un tableau qui s'étend sur plusieurs pages tout en conservant les lignes d'en-tête visibles sur chaque page.
-Pour rendre un tableau sur une nouvelle page, utilisez la propriété [is_in_new_page](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) dans la classe [BaseParagraph](https://reference.aspose.com/pdf/python-net/aspose.pdf/baseparagraph/). Le code suivant montre comment faire.
+1. Initialiser la Table.
+1. Répéter les lignes d'en-tête incluant la police, la taille et la couleur.
+1. Définir les largeurs des colonnes et appliquer des bordures au tableau.
+1. Ajouter des lignes d'en-tête.
+1. Ajoutez de nombreuses lignes de données pour forcer le tableau à s'étendre sur plusieurs pages.
+1. Insérez le tableau dans la page PDF avec 'page.paragraphs.add(table)'.
+1. Enregistrez le document PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_repeating_rows(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Instantiate a table object
+ table = ap.Table()
+
+ # Set the table to break across pages
+ table.broken = ap.TableBroken.VERTICAL
+
+ # Set number of repeating header rows
+ table.repeating_rows_count = 2
+
+ text_state = ap.text.TextState()
+ text_state.font_size = 12
+ text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ text_state.foreground_color = ap.Color.red
+ table.repeating_rows_style = text_state
- import aspose.pdf as ap
+ # Set column widths
+ table.column_widths = "100 100 100"
- doc = ap.Document()
- page_info = doc.page_info
- margin_info = page_info.margin
+ # Set borders
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.black)
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 1, ap.Color.black)
+
+ # Add header rows that will repeat on each page
+ header_row1 = table.rows.add()
+ header_row1.cells.add("Header 1-1")
+ header_row1.cells.add("Header 1-2")
+ header_row1.cells.add("Header 1-3")
+
+ # Set background color for header rows
+ for cell in header_row1.cells:
+ cell.background_color = ap.Color.light_gray
+
+ header_row2 = table.rows.add()
+ header_row2.cells.add("Header 2-1")
+ header_row2.cells.add("Header 2-2")
+ header_row2.cells.add("Header 2-3")
+
+ for cell in header_row2.cells:
+ cell.background_color = ap.Color.light_blue
+
+ # Add many data rows to force table across multiple pages
+ for i in range(1, 101):
+ row = table.rows.add()
+ row.cells.add(f"Data {i}-1")
+ row.cells.add(f"Data {i}-2")
+ row.cells.add(f"Data {i}-3")
+
+ # Add table to page
+ page.paragraphs.add(table)
+
+ # Save document
+ document.save(outfile)
+```
- margin_info.left = 37
- margin_info.right = 37
- margin_info.top = 37
- margin_info.bottom = 37
+### Colonnes répétées
- page_info.is_landscape = True
+La fonction 'add_repeating_columns' crée un document PDF avec une table comportant des colonnes répétées. Elle configure une table bordée, ajoute des en‑têtes, remplit les lignes de données et enregistre le fichier PDF généré à l'emplacement spécifié. La définition de cette propriété provoquera le passage de la table à la page suivante colonne par colonne et répétera le nombre de colonnes indiqué au début de la page suivante.
+1. Initialise un nouveau document PDF.
+1. Ajoute une page avec des dimensions personnalisées.
+1. Définir le style de bordure du tableau.
+1. Initialiser le tableau.
+1. Ajouter un tableau à la page PDF.
+1. Ajouter la ligne d'en-tête.
+1. Ajouter des lignes de données.
+1. Enregistrer le PDF Document.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_repeating_columns(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+
+ # Add page
+ page = document.pages.add()
+ page.set_page_size(ap.PageSize.a5.height, ap.PageSize.a5.width)
+
+ # Define border
+ border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.light_gray)
+
+ # Create table
table = ap.Table()
- table.column_widths = "50 100"
- # Page ajoutée.
- cur_page = doc.pages.add()
- for i in range(1, 121):
+ table.broken = ap.TableBroken.VERTICAL_IN_SAME_PAGE
+ table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_CONTENT
+ table.repeating_columns_count = 5
+ table.border = border
+ table.default_cell_border = border
+
+ # Add table to page
+ page.paragraphs.add(table)
+
+ # Add header row
+ row = table.rows.add()
+ for i in range(1, 6):
+ cell = row.cells.add(f"header {i}")
+ cell.background_color = ap.Color.light_gray
+
+ for i in range(6, 18):
+ row.cells.add(f"header {i}")
+
+ # Add data rows
+ for row_counter in range(1, 6):
row = table.rows.add()
- row.fixed_row_height = 15
- cell1 = row.cells.add()
- cell1.paragraphs.add(ap.text.TextFragment("Contenu 1"))
- cell2 = row.cells.add()
- cell2.paragraphs.add(ap.text.TextFragment("HHHHH"))
- paragraphs = cur_page.paragraphs
- paragraphs.add(table)
-
- table1 = ap.Table()
- table1.column_widths = "100 100"
- for i in range(1, 11):
- row = table1.rows.add()
- cell1 = row.cells.add()
- cell1.paragraphs.add(ap.text.TextFragment("LAAAAAAA"))
- cell2 = row.cells.add()
- cell2.paragraphs.add(ap.text.TextFragment("LAAGGGGGG"))
- table1.is_in_new_page = True
- # Je veux garder le tableau 1 à la page suivante s'il vous plaît...
- paragraphs.add(table1)
- doc.save(output_file)
+ for i in range(1, 6):
+ cell = row.cells.add(f"cell {row_counter},{i}")
+ cell.background_color = ap.Color.light_gray
+ for i in range(6, 18):
+ row.cells.add(f"cell {row_counter},{i}")
+
+ # Save PDF document
+ document.save(outfile)
+```
+
+### Créer un tableau PDF avec des cellules de texte tournées
+
+Créez un tableau dans un PDF en utilisant Python et Aspose.PDF avec du texte tourné à différents angles dans chaque cellule. C’est utile pour les en‑têtes verticales, les mises en page créatives, les tableaux compacts et la mise en forme personnalisée des rapports.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def rotated_text_table(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+
+ # Add page
+ page = document.pages.add()
+
+ # Initializes a new instance of the Table
+ table = ap.Table()
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, Color.black)
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, Color.black)
+
+ # Add 1st row to table
+ row1 = table.rows.add()
+ row1.min_row_height = 200
+
+ for cell_count in range(4):
+ # Add table cells
+ cell = row1.cells.add()
+
+ tf = ap.text.TextFragment(f"Cell 1 {cell_count - 1}")
+ tf.text_state.rotation = 90 * cell_count
+ tf.horizontal_alignment = HorizontalAlignment.CENTER
+
+ cell.paragraphs.add(tf)
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+
+ # Save result
+ document.save(outfile)
```
+## Sujets liés à la table
-
\ No newline at end of file
+- [Travailler avec des tableaux dans les PDF en Python](/pdf/fr/python-net/working-with-tables/)
+- [Extraire les tableaux des documents PDF](/pdf/fr/python-net/extracting-table/)
+- [Intégrer les tableaux PDF avec des sources de données](/pdf/fr/python-net/integrate-table/)
+- [Manipuler les tableaux dans des PDF existants](/pdf/fr/python-net/manipulating-tables/)
diff --git a/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/colspan_rowspan.png b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/colspan_rowspan.png
new file mode 100644
index 0000000000..d8bc203285
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/colspan_rowspan.png differ
diff --git a/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/margin-border.png b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/margin-border.png
new file mode 100644
index 0000000000..70b66bc129
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/margin-border.png differ
diff --git a/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/set-border-style-margins-and-padding-of-table_1.png b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/set-border-style-margins-and-padding-of-table_1.png
new file mode 100644
index 0000000000..08b2a1af1c
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/set-border-style-margins-and-padding-of-table_1.png differ
diff --git a/fr/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md
index a57f3c2415..251f45be12 100644
--- a/fr/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md
+++ b/fr/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md
@@ -1,167 +1,64 @@
---
-title: Extraire un tableau d'un document PDF
-linktitle: Extraire un tableau
+title: Extraire des tables d'un PDF en Python
+linktitle: Extraire une table
type: docs
weight: 20
-url: /fr/python-net/extract-table-from-existing-pdf-document/
-description: Aspose.PDF pour Python via .NET permet d'effectuer diverses manipulations avec les tableaux contenus dans votre document PDF.
-lastmod: "2023-02-17"
+url: /fr/python-net/extracting-table/
+description: Apprenez comment extraire les données d'une table à partir de documents PDF existants en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extraire les données d'une table des fichiers PDF avec Python
+Abstract: Cet article explique comment extraire des tables de documents PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment utiliser `TableAbsorber` pour détecter les tables par page, parcourir les lignes et les cellules, et récupérer le texte des cellules pour l'analyse et le traitement des données en aval.
---
-
+## Extraire une table d'un PDF
-## Extraire un Tableau d'un PDF
+L'extraction de tableaux à partir de PDF est utile pour les rapports, la migration de données et les flux de travail d'analyse. Avec Aspose.PDF for Python via .NET, vous pouvez détecter et lire le contenu des tableaux à partir de documents PDF existants de manière efficace.
-Extraire des tableaux de PDFs en utilisant Python peut être extrêmement utile pour l'extraction et l'analyse de données. Avec la bibliothèque Aspose.PDF pour Python via .NET, vous pouvez travailler efficacement avec des tableaux intégrés dans des documents PDF pour diverses tâches liées aux données.
+Cet extrait de code ouvre un fichier PDF existant, parcourt chaque page à la recherche de tableaux et extrait le contenu texte des cellules. Il utilise `TableAbsorber` détecter les tableaux, puis parcourir les lignes et les cellules pour afficher le texte extrait.
-```python
+1. Charge le PDF dans un objet ap.Document.
+1. Boucle à travers les pages.
+1. Crée un objet TableAbsorber.
+1. Parcourt les tableaux.
+1. Parcourir les lignes et les cellules.
+1. Extraire et imprimer le texte des cellules.
+
+Cet exemple lit un PDF, trouve toutes les tables et affiche le contenu des cellules ligne par ligne.
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+from os import path
+import sys
- # Charger le document PDF source
- pdf_document = ap.Document(input_file)
- for page in pdf_document.pages:
+def extract(infile: str) -> None:
+ """Extract and print all tables from a PDF file."""
+ document = ap.Document(infile)
+ for page in document.pages:
absorber = ap.text.TableAbsorber()
absorber.visit(page)
for table in absorber.table_list:
+ print("Table ----")
for row in table.row_list:
+ print("Row:")
+ row_txt = ""
for cell in row.cell_list:
+ cell_txt = ""
text_fragment_collection = cell.text_fragments
for fragment in text_fragment_collection:
- txt = ""
for seg in fragment.segments:
- txt += seg.text
- print(txt)
-
+ cell_txt += seg.text
+ row_txt += " | "
+ row_txt += cell_txt
+ print(row_txt)
```
-
\ No newline at end of file
+## Sujets liés à la table
+
+- [Travailler avec des tableaux dans les PDF en Python](/pdf/fr/python-net/working-with-tables/)
+- [Ajouter des tables au PDF avec Python](/pdf/fr/python-net/adding-tables/)
+- [Intégrer les tableaux PDF avec des sources de données](/pdf/fr/python-net/integrate-table/)
+- [Supprimer les tables des PDF existants](/pdf/fr/python-net/removing-tables/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-tables/integrate-table-in-existing-pdf-document/_index.md b/fr/python-net/advanced-operations/working-with-tables/integrate-table-in-existing-pdf-document/_index.md
new file mode 100644
index 0000000000..2ff3bed655
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-tables/integrate-table-in-existing-pdf-document/_index.md
@@ -0,0 +1,103 @@
+---
+title: Intégrer des tables PDF avec des sources de données en Python
+linktitle: Intégrer la table
+type: docs
+weight: 30
+url: /fr/python-net/integrate-table/
+description: Apprenez comment intégrer des tables PDF avec des sources de données telles que des bases de données et des pandas DataFrames en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Intégrer des tables PDF avec des bases de données et des DataFrames en utilisant Python
+Abstract: Cet article explique comment intégrer des tables PDF avec des sources de données externes en utilisant Aspose.PDF for Python via .NET. Apprenez comment créer des tables PDF à partir de pandas DataFrames et d'autres sources structurées, les insérer dans des documents, et contrôler le flux des tables lors du rendu sur plusieurs pages PDF en Python.
+---
+
+## Créer un PDF à partir d'un DataFrame
+
+Le `create_pdf_from_dataframe` La fonction crée un nouveau PDF et insère un tableau généré à partir d'un DataFrame pandas. Cette approche est utile pour les flux de travail de reporting où vos données existent déjà sous forme tabulaire.
+
+La fonction effectue les étapes suivantes :
+
+1. Créer un document PDF vide avec `ap.Document()`.
+1. Ajoutez une page au document.
+1. Convertir le DataFrame en tableau Aspose.PDF en appelant `create_table_from_dataframe(df, max_rows)`.
+1. Ajouter le tableau à la page avec `page.paragraphs.add(table)`.
+1. Enregistrez le PDF dans le chemin de sortie.
+
+```python
+from os import path
+import sys
+
+import pandas as pd
+import aspose.pdf as ap
+from config import set_license, initialize_data_dir
+
+def create_pdf_from_dataframe(
+ outfile: str, df: pd.DataFrame, max_rows: int = 20
+) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ table = create_table_from_dataframe(df, max_rows)
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ document.save(outfile)
+```
+
+## Créer une Table à partir d'un DataFrame
+
+Le `create_table_from_dataframe` fonction convertit un DataFrame en Aspose.PDF `Table` objet que vous pouvez ajouter à n'importe quelle page.
+
+Il fait le suivant :
+
+1. Créer un vide `ap.Table()` instance.
+1. Définir les bordures de la table et des cellules pour un formatage cohérent.
+1. Ajouter une ligne d’en-tête en utilisant les noms de colonnes du DataFrame.
+1. Ajouter des lignes de données depuis `df.head(max_rows)`.
+1. Retourner l’objet table rempli.
+
+```python
+from os import path
+import sys
+
+import pandas as pd
+import aspose.pdf as ap
+from config import set_license, initialize_data_dir
+
+def create_table_from_dataframe(df: pd.DataFrame, max_rows: int = 20) -> ap.Table:
+ """Create an Aspose.PDF table from a pandas DataFrame."""
+ # Initializes a new instance of the Table
+ table = ap.Table()
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 1, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.BOTTOM, 1, ap.Color.light_gray
+ )
+
+ # Add header row with column names
+ header_row = table.rows.add()
+ header_row.is_row_broken = False # Prevent header row from being split across pages
+ for column_name in df.columns:
+ cell = header_row.cells.add(str(column_name))
+ cell.background_color = ap.Color.light_gray
+
+ # Add data rows
+ for row_data in df.head(max_rows).itertuples(index=False):
+ row = table.rows.add()
+ for value in row_data:
+ row.cells.add(str(value))
+
+ return table
+```
+
+## Sujets liés à la table
+
+- [Travailler avec des tableaux dans les PDF en Python](/pdf/fr/python-net/working-with-tables/)
+- [Ajouter des tables au PDF avec Python](/pdf/fr/python-net/adding-tables/)
+- [Extraire les tableaux des documents PDF](/pdf/fr/python-net/extracting-table/)
+- [Manipuler les tableaux dans des PDF existants](/pdf/fr/python-net/manipulating-tables/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md b/fr/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md
index c35c156a3f..8b94914437 100644
--- a/fr/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md
@@ -1,325 +1,114 @@
---
-title: Manipuler les tables dans un PDF existant
-linktitle: Manipuler les tables
+title: Manipuler les tables dans les documents PDF existants
+linktitle: Manipuler des tables
type: docs
weight: 40
-url: /fr/python-net/manipulate-tables-in-existing-pdf/
-lastmod: "2023-02-17"
+url: /fr/python-net/manipulating-tables/
+description: Apprenez comment inspecter et modifier les tables dans les documents PDF existants à l'aide de Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "weekly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Inspectez et modifiez les tables PDF existantes avec Python
+Abstract: Cet article explique comment manipuler les tables déjà présentes dans les documents PDF à l'aide d'Aspose.PDF for Python via .NET. Apprenez à localiser les tables avec TableAbsorber, à accéder aux lignes et cellules spécifiques, à mettre à jour le contenu texte des tables et à enregistrer le PDF modifié en Python.
---
-
+## Manipuler les tables dans le PDF existant
-## Manipuler des tables dans un PDF existant
+Aspose.PDF for Python via .NET vous permet de mettre à jour les tables qui existent déjà dans un document PDF. Vous pouvez utiliser le [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) classe pour trouver les tables sur une page, accéder aux lignes et aux cellules, modifier le contenu texte et enregistrer le fichier mis à jour.
-L'une des premières fonctionnalités prises en charge par Aspose.PDF pour Python via .NET est sa capacité à Travailler avec des Tables et il offre un excellent support pour l'ajout de tables dans des fichiers PDF générés à partir de zéro ou dans tout fichier PDF existant. Dans cette nouvelle version, nous avons implémenté une nouvelle fonctionnalité de recherche et d'analyse de tables simples qui existent déjà sur la page d'un document PDF. Une nouvelle classe nommée [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) fournit ces capacités. L'utilisation de TableAbsorber est très similaire à la classe existante [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/). Le code suivant montre les étapes pour mettre à jour le contenu dans une cellule de table particulière.
+Utilisez cette page lorsque vous devez mettre à jour le contenu des tables existantes dans les PDF sans recréer la mise en page complète du document.
-```python
+## Trouver et remplacer le texte dans les cellules de tables PDF
- import aspose.pdf as ap
+Cet exemple trouve la première table de la page 1, accède à la première cellule, remplace son texte et enregistre le PDF de sortie.
- # Charger un fichier PDF existant
- pdf_document = ap.Document(input_file)
- # Créer un objet TableAbsorber pour trouver des tables
- absorber = ap.text.TableAbsorber()
- # Visiter la première page avec l'absorbeur
- absorber.visit(pdf_document.pages[1])
- # Accéder à la première table sur la page, à leur première cellule et aux fragments de texte qu'elle contient
- fragment = absorber.table_list[0].row_list[0].cell_list[0].text_fragments[1]
- # Changer le texte du premier fragment de texte dans la cellule
- fragment.text = "bonjour le monde"
- pdf_document.save(output_file)
-```
+1. Ouvrez le PDF d'entrée.
+1. Créez un TableAbsorber et visitez la page 1.
+1. Assurez-vous qu'au moins une table est détectée.
+1. Accédez à la première cellule de la première ligne de la première table.
+1. Assurez-vous que la cellule contient des fragments de texte, puis mettez à jour le premier fragment.
+1. Enregistrez le PDF modifié.
+```python
+import aspose.pdf as ap
-## Remplacer l'ancienne table par une nouvelle dans le document PDF
+def replace_cell_text(infile: str, outfile: str) -> None:
+ """Replace text in the first cell of the first detected table."""
+ # Open PDF document
+ document = ap.Document(infile)
-Dans le cas où vous devez trouver une table particulière et la remplacer par celle souhaitée, vous pouvez utiliser la méthode [replace()](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/#methods) de la classe [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) pour le faire. L'exemple suivant démontre la fonctionnalité pour remplacer la table à l'intérieur du document PDF :
+ # Create TableAbsorber object to find tables
+ absorber = ap.text.TableAbsorber()
-```python
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
- import aspose.pdf as ap
+ if len(absorber.table_list) == 0:
+ raise ValueError("No tables were found on page 1.")
- # Charger un document PDF existant
- pdf_document = ap.Document(input_file)
- # Créer un objet TableAbsorber pour trouver les tables
- absorber = ap.text.TableAbsorber()
- # Visiter la première page avec l'absorbeur
- absorber.visit(pdf_document.pages[1])
- # Obtenir la première table sur la page
- table = absorber.table_list[0]
- # Créer une nouvelle table
- new_table = ap.Table()
- new_table.column_widths = "100 100 100"
- new_table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 1)
+ first_cell = absorber.table_list[0].row_list[0].cell_list[0]
+ if len(first_cell.text_fragments) == 0:
+ raise ValueError("The target cell has no text fragments.")
- row = new_table.rows.add()
- row.cells.add("Col 1")
- row.cells.add("Col 2")
- row.cells.add("Col 3")
+ # Change text of the first text fragment in the cell
+ first_cell.text_fragments[0].text = "New Value"
- # Remplacer la table par la nouvelle
- absorber.replace(pdf_document.pages[1], table, new_table)
- # Enregistrer le document
- pdf_document.save(output_file)
+ # Save PDF document
+ document.save(outfile)
```
+## Remplacer un tableau existant par un nouveau tableau
-## Comment déterminer si une table va casser dans la page actuelle
+Vous pouvez également remplacer un tableau détecté par un tableau nouvellement créé. Cette approche est utile lorsque la structure et le contenu doivent tous les deux changer.
-Ce code génère un document PDF contenant une table, calcule l'espace disponible sur la page et vérifie si l'ajout de plus de lignes à la table entraînera un saut de page en fonction des contraintes d'espace. Le résultat est enregistré dans un fichier de sortie.
+Le code ci-dessous ouvre un PDF, trouve le premier tableau à la page 1, crée un tableau de remplacement, échange l’ancien tableau avec le nouveau, puis enregistre le résultat.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
+def replace_table(infile: str, outfile: str) -> None:
+ """Replace an entire table with a new one."""
+ # Open PDF document
+ document = ap.Document(infile)
- # Instancier un objet de la classe PDF
- pdf = ap.Document()
- # Ajouter la section à la collection de sections du document PDF
- page = pdf.pages.add()
- # Instancier un objet table
- table1 = ap.Table()
- table1.margin.top = 300
- # Ajouter la table dans la collection de paragraphes de la section souhaitée
- page.paragraphs.add(table1)
- # Définir les largeurs de colonne de la table
- table1.column_widths = "100 100 100"
- # Définir la bordure de cellule par défaut à l'aide de l'objet BorderInfo
- table1.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
- # Définir la bordure de la table à l'aide d'un autre objet BorderInfo personnalisé
- table1.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Créer un objet MarginInfo et définir ses marges gauche, inférieure, droite et supérieure
- margin = ap.MarginInfo()
- margin.top = 5
- margin.left = 5
- margin.right = 5
- margin.bottom = 5
- # Définir le remplissage des cellules par défaut à l'objet MarginInfo
- table1.default_cell_padding = margin
- # Si vous augmentez le compteur à 17, la table se cassera
- # Parce qu'elle ne peut plus être accommodée sur cette page
- for row_counter in range(0, 17):
- # Créer des lignes dans la table et ensuite des cellules dans les lignes
- row1 = table1.rows.add()
- row1.cells.add("col " + str(row_counter) + ", 1")
- row1.cells.add("col " + str(row_counter) + ", 2")
- row1.cells.add("col " + str(row_counter) + ", 3")
- # Obtenir l'information de hauteur de la page
- page_height = pdf.page_info.height
- # Obtenir l'information de hauteur totale de la marge supérieure et inférieure de la page,
- # marge supérieure de la table et hauteur de la table.
- total_objects_height = page.page_info.margin.top + page.page_info.margin.bottom + table1.margin.top + \
- table1.get_height(None)
- # Afficher la hauteur de la page, la hauteur de la table, la marge supérieure de la table et la marge supérieure
- # et inférieure de la page
- print("Hauteur du document PDF = " + str(pdf.page_info.height) + "\nInfo de la marge supérieure = " + str(page.page_info.margin.top)
- + "\nInfo de la marge inférieure = " + str(page.page_info.margin.bottom) + "\n\nInfo de la marge supérieure de la table = "
- + str(table1.margin.top) + "\nHauteur moyenne de la ligne = " + str(table1.rows[0].min_row_height) + " \nHauteur de la table "
- + str(table1.get_height(None)) + "\n ----------------------------------------" + "\nHauteur totale de la page ="
- + str(page_height) + "\nHauteur cumulative incluant la table =" + str(total_objects_height))
- # Vérifier si nous déduisons la somme de la marge supérieure de la page + marge inférieure de la page
- # + marge supérieure de la table et hauteur de la table de la hauteur de la page et que c'est inférieur
- # à 10 (une ligne moyenne peut être supérieure à 10)
- if (page_height - total_objects_height) <= 10:
- # Si la valeur est inférieure à 10, alors afficher le message.
- # Ce qui montre qu'une autre ligne ne peut pas être placée et si nous ajoutons une nouvelle
- # ligne, la table se cassera. Cela dépend de la valeur de la hauteur de la ligne.
- print("Hauteur de la page - Hauteur des objets < 10, donc la table se cassera")
- # Enregistrer le document pdf
- pdf.save(output_file)
-```
+ # Create TableAbsorber object to find tables
+ absorber = ap.text.TableAbsorber()
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
-## Ajouter une colonne répétée dans le tableau
+ if len(absorber.table_list) == 0:
+ raise ValueError("No tables were found on page 1.")
-Dans la classe [Aspose.Pdf.Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/), vous pouvez définir un [repeating_rows_count](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) qui répétera les lignes si le tableau est trop long verticalement et déborde sur la page suivante. Cependant, dans certains cas, les tableaux sont trop larges pour tenir sur une seule page et doivent être continués sur la page suivante. Afin de répondre à cet objectif, nous avons implémenté la propriété [repeating_columns_count](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) dans la classe [Aspose.Pdf.Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/). Définir cette propriété fera en sorte que le tableau se casse à la page suivante par colonne et répète le nombre de colonnes donné au début de la page suivante. Le code suivant montre l'utilisation de la propriété [repeating_columns_count](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) :
+ # Get first table on the page
+ old_table = absorber.table_list[0]
-```python
+ # Create new table
+ new_table = ap.Table()
+ new_table.column_widths = "100 100 100"
+ new_table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 1.0)
+
+ row = new_table.rows.add()
+ row.cells.add("Col 1")
+ row.cells.add("Col 2")
+ row.cells.add("Col 3")
+ row = new_table.rows.add()
+ row.cells.add("Col 12")
+ row.cells.add("Col 22")
+ row.cells.add("Col 32")
- import aspose.pdf as ap
+ # Replace the old table with the new one
+ absorber.replace(document.pages[1], old_table, new_table)
- # Créer un nouveau document
- doc = ap.Document()
- page = doc.pages.add()
- # Instancier un tableau extérieur qui occupe toute la page
- outer_table = ap.Table()
- outer_table.column_widths = "100%"
- outer_table.horizontal_alignment = ap.HorizontalAlignment.LEFT
- # Instancier un objet de table qui sera imbriqué à l'intérieur de outerTable qui se cassera à l'intérieur de la même page
- my_table = ap.Table()
- my_table.broken = ap.TableBroken.VERTICAL_IN_SAME_PAGE
- my_table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_CONTENT
- # Ajouter le outerTable aux paragraphes de la page
- # Ajouter ma table à outerTable
- page.paragraphs.add(outer_table)
- body_row = outer_table.rows.add()
- body_cell = body_row.cells.add()
- body_cell.paragraphs.add(my_table)
- my_table.repeating_columns_count = 5
- page.paragraphs.add(my_table)
- # Ajouter la ligne d'en-tête
- row = my_table.rows.add()
- row.cells.add("en-tête 1")
- row.cells.add("en-tête 2")
- row.cells.add("en-tête 3")
- row.cells.add("en-tête 4")
- row.cells.add("en-tête 5")
- row.cells.add("en-tête 6")
- row.cells.add("en-tête 7")
- row.cells.add("en-tête 11")
- row.cells.add("en-tête 12")
- row.cells.add("en-tête 13")
- row.cells.add("en-tête 14")
- row.cells.add("en-tête 15")
- row.cells.add("en-tête 16")
- row.cells.add("en-tête 17")
- for row_counter in range(0, 6):
- # Créer des lignes dans le tableau puis des cellules dans les lignes
- row1 = my_table.rows.add()
- row1.cells.add("col " + str(row_counter) + ", 1")
- row1.cells.add("col " + str(row_counter) + ", 2")
- row1.cells.add("col " + str(row_counter) + ", 3")
- row1.cells.add("col " + str(row_counter) + ", 4")
- row1.cells.add("col " + str(row_counter) + ", 5")
- row1.cells.add("col " + str(row_counter) + ", 6")
- row1.cells.add("col " + str(row_counter) + ", 7")
- row1.cells.add("col " + str(row_counter) + ", 11")
- row1.cells.add("col " + str(row_counter) + ", 12")
- row1.cells.add("col " + str(row_counter) + ", 13")
- row1.cells.add("col " + str(row_counter) + ", 14")
- row1.cells.add("col " + str(row_counter) + ", 15")
- row1.cells.add("col " + str(row_counter) + ", 16")
- row1.cells.add("col " + str(row_counter) + ", 17")
- doc.save(output_file)
+ # Save PDF document
+ document.save(outfile)
```
+## Sujets liés à la table
-
\ No newline at end of file
+- [Travailler avec des tableaux dans les PDF en Python](/pdf/fr/python-net/working-with-tables/)
+- [Ajouter des tables au PDF avec Python](/pdf/fr/python-net/adding-tables/)
+- [Extraire les tableaux des documents PDF](/pdf/fr/python-net/extracting-table/)
+- [Supprimer les tables des PDF existants](/pdf/fr/python-net/removing-tables/)
diff --git a/fr/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md b/fr/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md
index eea4b39b14..147cd042ae 100644
--- a/fr/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md
@@ -1,195 +1,75 @@
---
-title: Supprimer les tableaux d'un PDF existant
+title: Supprimer les tableaux des documents PDF existants
linktitle: Supprimer les tableaux
+description: Apprenez comment supprimer un ou plusieurs tableaux des documents PDF existants en Python.
+lastmod: "2026-05-22"
type: docs
weight: 50
-url: /fr/python-net/remove-tables-from-existing-pdf/
-lastmod: "2023-02-17"
+url: /fr/python-net/removing-tables/
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimez un ou plusieurs tableaux des fichiers PDF avec Python
+Abstract: Cet article explique comment supprimer des tableaux des documents PDF existants à l'aide d'Aspose.PDF for Python via .NET. Il présente `TableAbsorber` pour localiser les tableaux et montre comment supprimer un tableau unique ou supprimer tous les tableaux détectés d'une page.
---
-
+## Supprimer le tableau d'un document PDF
-{{% alert color="primary" %}}
+Aspose.PDF for Python vous permet de supprimer un tableau d’un PDF. Il ouvre un PDF existant, détecte le premier tableau de la première page avec `TableAbsorber`, supprime cette table en utilisant `remove()`, et enregistre le PDF mis à jour dans un nouveau fichier.
-Aspose.PDF pour Python via .NET offre les capacités d'insérer/créer une table à l'intérieur d'un document PDF pendant sa génération à partir de zéro, ou vous pouvez également ajouter l'objet table dans un document PDF existant. Cependant, vous pouvez avoir besoin de [Manipuler les tables dans un PDF existant](https://docs.aspose.com/pdf/python-net/manipulate-tables-in-existing-pdf/) où vous pouvez mettre à jour le contenu des cellules de table existantes. Cependant, vous pouvez rencontrer une exigence de suppression d'objets table d'un document PDF existant.
-
-{{% /alert %}}
-
-Pour supprimer les tables, nous devons utiliser la classe [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) pour obtenir les tables dans le PDF existant, puis appeler [remove()](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/#methods).
-
-## Supprimer une table d'un document PDF
-
-Nous avons ajouté une nouvelle fonction, c'est-à-dire.
- [remove()](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/#methods) à la classe existante [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) afin de supprimer une table d'un document PDF. Une fois que l'absorbeur trouve avec succès des tables sur la page, il devient capable de les supprimer. Veuillez vérifier l'extrait de code suivant montrant comment supprimer une table d'un document PDF :
+Utilisez cette page lorsque vous devez nettoyer des PDF contenant beaucoup de tableaux, supprimer du contenu tabulaire obsolète ou simplifier les documents avant redistribution.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
+def remove_one_table(infile: str, outfile: str) -> None:
+ # Load existing PDF document
+ document = ap.Document(infile)
- # Charger un document PDF existant
- pdf_document = ap.Document(input_file)
- # Créer un objet TableAbsorber pour trouver des tables
+ # Create TableAbsorber object to find tables
absorber = ap.text.TableAbsorber()
- # Visiter la première page avec l'absorbeur
- absorber.visit(pdf_document.pages[1])
- # Obtenir la première table de la page
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
+ # Get first table on the page
table = absorber.table_list[0]
- # Supprimer la table
+ # Remove the table
absorber.remove(table)
- # Enregistrer le PDF
- pdf_document.save(output_file)
+ # Save PDF
+ document.save(outfile)
```
-## Supprimer plusieurs tables d'un document PDF
+## Supprimer toutes les tables du document PDF
-Parfois, un document PDF peut contenir plus d'une table et vous pouvez avoir besoin de supprimer plusieurs tables de celui-ci. Afin de supprimer plusieurs tables d'un document PDF, veuillez utiliser l'extrait de code suivant :
+Avec notre bibliothèque, vous pouvez supprimer toutes les tables d'une page spécifique d'un PDF. Le code ouvre un PDF existant, détecte toutes les tables de la deuxième page avec TableAbsorber, parcourt les tables détectées, supprime chacune d'elles, puis enregistre le PDF modifié dans un nouveau fichier. Cela est utile lorsque vous devez supprimer en masse les tables d'une page tout en conservant le reste du contenu du PDF intact.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
+def remove_all_tables(infile: str, outfile: str) -> None:
+ # Load existing PDF document
+ document = ap.Document(infile)
- # Charger un document PDF existant
- pdf_document = ap.Document(input_file)
- # Créer un objet TableAbsorber pour trouver les tables
+ # Create TableAbsorber object to find tables
absorber = ap.text.TableAbsorber()
- # Visiter la deuxième page avec l'absorbeur
- absorber.visit(pdf_document.pages[1])
- # Obtenir une copie de la collection de tables
- tables = absorber.table_list
- # Parcourir la copie de la collection et supprimer les tables
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
+ # Loop through the copy of collection and removing tables
+ tables = list(absorber.table_list)
for table in tables:
absorber.remove(table)
- # Enregistrer le document
- pdf_document.save(output_file)
+
+ # Save document
+ document.save(outfile)
```
-
\ No newline at end of file
+## Sujets liés à la table
+
+- [Travailler avec des tableaux dans les PDF en Python](/pdf/fr/python-net/working-with-tables/)
+- [Ajouter des tables au PDF avec Python](/pdf/fr/python-net/adding-tables/)
+- [Extraire les tableaux des documents PDF](/pdf/fr/python-net/extracting-table/)
+- [Manipuler les tableaux dans des PDF existants](/pdf/fr/python-net/manipulating-tables/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/_index.md b/fr/python-net/advanced-operations/working-with-text/_index.md
index 5acb9443eb..3cdd53e19d 100644
--- a/fr/python-net/advanced-operations/working-with-text/_index.md
+++ b/fr/python-net/advanced-operations/working-with-text/_index.md
@@ -1,155 +1,31 @@
---
-title: Travailler avec du texte dans un PDF en utilisant Python
-linktitle: Travailler avec du texte
+title: Travailler avec le texte dans PDF en utilisant Python
+linktitle: Travailler avec le texte
type: docs
weight: 30
url: /fr/python-net/working-with-text/
-description: Cette section explique diverses techniques de manipulation de texte. Apprenez à ajouter, remplacer, faire pivoter, rechercher du texte en utilisant Aspose.PDF pour Python.
-lastmod: "2024-01-17"
+description: Apprenez comment ajouter, rechercher, formater, remplacer, faire pivoter et inspecter le texte dans des documents PDF en utilisant Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter, formater, rechercher, remplacer et faire pivoter le texte PDF en Python
+Abstract: Cette section explique comment travailler avec le texte dans des documents PDF en utilisant Aspose.PDF for Python via .NET. Apprenez comment ajouter et formater du texte, créer des infobulles et des mises en page de texte flottant, rechercher et extraire du texte, remplacer du texte existant et faire pivoter les éléments de texte dans les flux de travail Python.
---
-
+ Nous avons tous parfois besoin d'ajouter du texte à un fichier PDF. Par exemple, vous pouvez vouloir placer une traduction sous le texte principal, ajouter une légende à côté d'une image, ou remplir un formulaire de candidature. Il est également utile que tous les éléments de texte puissent être formatés dans le style de votre choix. Les opérations courantes sur le texte comprennent l'ajout de texte, le formatage du texte, le remplacement du texte et la rotation du texte dans un document. **Aspose.PDF for Python via .NET** fournit tout ce dont vous avez besoin pour travailler avec le contenu texte du PDF.
-Nous avons tous parfois besoin d'ajouter du texte à un fichier PDF. Par exemple, lorsque vous voulez ajouter une traduction sous le texte principal, placer une légende à côté d'une image, ou simplement remplir un formulaire de demande. Il est également utile que tous les éléments de texte puissent être formatés dans le style que vous désirez. Les manipulations de texte les plus populaires dans votre fichier PDF sont : ajouter du texte au PDF, formater le texte à l'intérieur du fichier PDF, remplacer et faire pivoter le texte dans votre document. **Aspose.PDF pour Python via .NET** est la meilleure solution qui possède tout ce dont vous avez besoin pour interagir avec le contenu PDF.
+Utilisez cette section lorsque vous devez générer, formater, inspecter ou modifier du texte directement à l'intérieur des pages PDF dans les applications Python.
-Vous êtes capable de faire ce qui suit :
+## Tâches de texte couvertes
-- [Ajouter du texte au fichier PDF](/pdf/fr/python-net/add-text-to-pdf-file/) - ajoutez du texte à votre PDF, utilisez des polices à partir de flux et de fichiers, ajoutez une chaîne HTML, ajoutez un hyperlien, etc.
-- [Infobulle PDF](/pdf/fr/python-net/pdf-tooltip/) - vous pouvez ajouter une infobulle au texte recherché en ajoutant un bouton invisible à l'aide de Python.
-- [Mise en forme du texte à l'intérieur du PDF](/pdf/fr/python-net/text-formatting-inside-pdf/) - De nombreuses fonctionnalités peuvent être ajoutées à votre document lors de la mise en forme du texte à l'intérieur.
- Ajouter un retrait de ligne, ajouter une bordure de texte, souligner le texte, ajouter un saut de ligne avec la bibliothèque Aspose.PDF.
-- [Remplacer le texte dans le PDF](/pdf/fr/python-net/replace-text-in-pdf/) - pour remplacer le texte dans toutes les pages d'un document PDF. Vous devez d'abord utiliser TextFragmentAbsorber.
-- [Faire pivoter le texte à l'intérieur du PDF](/pdf/fr/python-net/rotate-text-inside-pdf/) - faire pivoter le texte à l'intérieur du PDF en utilisant la propriété de rotation de la classe TextFragment.
-- [Rechercher et obtenir du texte à partir des pages d'un document PDF](/pdf/fr/python-net/search-and-get-text-from-pdf/) - vous pouvez utiliser la classe TextFragmentAbsorber pour rechercher et obtenir du texte à partir des pages.
-- [Déterminer le saut de ligne](/pdf/fr/python-net/determine-line-break/) - ce sujet explique comment suivre le saut de ligne des fragments de texte multi-lignes.
+ Vous êtes capable de faire ce qui suit :
-
\ No newline at end of file
+- [Ajouter du texte à un fichier PDF](/pdf/fr/python-net/add-text-to-pdf-file/) - ajouter du texte à votre PDF, utiliser des polices depuis un flux et des fichiers, ajouter une chaîne HTML, ajouter un hyperlien, etc.
+- [Info-bulle PDF](/pdf/fr/python-net/pdf-tooltip/) - vous pouvez ajouter une info-bulle au texte recherché en ajoutant un bouton invisible à l'aide de Python.
+- [Utilisation de FloatingBox](/pdf/fr/python-net/floating-box/) - placer du texte stylisé et d'autres contenus à l'intérieur d'un conteneur flottant.
+- [Remplacer le texte dans le PDF](/pdf/fr/python-net/replace-text-in-pdf/) - remplacer ou supprimer le texte existant dans un fichier PDF.
+- [Faire pivoter le texte à l'intérieur du PDF](/pdf/fr/python-net/rotate-text-inside-pdf/) - faire pivoter les fragments de texte et les paragraphes à l'intérieur d'un PDF.
+- [Rechercher et extraire du texte depuis un PDF](/pdf/fr/python-net/search-and-get-text-from-pdf/) - rechercher du texte et inspecter les détails du texte extrait des pages.
+- [Mise en forme du texte dans le PDF](/pdf/fr/python-net/text-formatting-inside-pdf/) - contrôler l'espacement des lignes, les bordures, l'indentation et le style du texte.
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-a-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-text/add-text-to-a-pdf-file/_index.md
deleted file mode 100644
index b7164da669..0000000000
--- a/fr/python-net/advanced-operations/working-with-text/add-text-to-a-pdf-file/_index.md
+++ /dev/null
@@ -1,843 +0,0 @@
----
-title: Ajouter du texte au PDF avec Python
-linktitle: Ajouter du texte au PDF
-type: docs
-weight: 10
-url: /fr/python-net/add-text-to-pdf-file/
-description: Cet article décrit divers aspects du travail avec le texte dans Aspose.PDF. Apprenez à ajouter du texte au PDF, à ajouter des fragments HTML, ou à utiliser des polices OTF personnalisées.
-lastmod: "2024-02-17"
-sitemap:
- changefreq: "monthly"
- priority: 0.7
----
-
-
-
-## Ajout de Texte
-
-1. Ouvrez le document PDF d'entrée à l'aide de Aspose.PDF.
-1. Sélectionnez la page particulière à laquelle vous souhaitez ajouter le texte.
-1. Créez un objet TextFragment. Un fragment de texte est créé avec le contenu 'texte principal'. Ce fragment est positionné aux coordonnées (100, 600) sur la page.
-1. Définition des Propriétés du Texte. Diverses propriétés du texte sont définies, telles que la taille de la police, le type de police (Times New Roman), la couleur de fond (gris clair), et la couleur de premier plan (rouge).
-1. Créez l'Objet TextBuilder. Un objet TextBuilder est instancié avec la page sélectionnée.
-1. Ajoutez le Fragment de Texte. Le fragment de texte créé précédemment est ajouté à la page PDF en utilisant l'objet TextBuilder.
-1. Appelez la méthode [document.save](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) et enregistrez le fichier PDF de sortie.
-
-Le code suivant vous montre comment ajouter du texte dans un fichier PDF existant :
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document(input_pdf)
-
- # Obtenir la page particulière
- page = document.pages[1]
-
- # Créer un fragment de texte
- text_fragment = ap.text.TextFragment("texte principal")
- text_fragment.position = ap.text.Position(100, 600)
-
- # Définir les propriétés du texte
- text_fragment.text_state.font_size = 12
- text_fragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
- text_fragment.text_state.background_color = ap.Color.light_gray
- text_fragment.text_state.foreground_color = ap.Color.red
-
- # Créer un objet TextBuilder
- builder = ap.text.TextBuilder(page)
-
- # Ajouter le fragment de texte à la page PDF
- builder.append_text(text_fragment)
-
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Chargement de la police à partir d'un flux
-
-Le fragment de code suivant montre comment charger une police à partir d'un objet flux lors de l'ajout de texte à un document PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Charger le fichier PDF d'entrée
- document = ap.Document()
- document.pages.add()
- # Créer un objet constructeur de texte pour la première page du document
- text_builder = ap.text.TextBuilder(document.pages[1])
- # Créer un fragment de texte avec une chaîne d'exemple
- text_fragment = ap.text.TextFragment("Hello world")
-
- if input_ttf != "":
- # Charger la police TrueType dans l'objet flux
- font_stream = open(input_ttf, "rb")
- # Définir le nom de la police pour la chaîne de texte
- text_fragment.text_state.font = ap.text.FontRepository.open_font(
- font_stream, ap.text.FontTypes.TTF
- )
- # Spécifier la position pour le fragment de texte
- text_fragment.position = ap.text.Position(10, 10)
- # Ajouter le texte au TextBuilder afin qu'il puisse être placé sur le fichier PDF
- text_builder.append_text(text_fragment)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Ajouter du texte en utilisant TextParagraph
-
-Le code suivant vous montre comment ajouter du texte dans un document PDF en utilisant la classe [TextParagraph](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/).
-
-```python
-
- import aspose.pdf as ap
-
- # Ouvrir le document
- document = ap.Document()
- # Ajouter une page à la collection de pages de l'objet Document
- page = document.pages.add()
- builder = ap.text.TextBuilder(page)
- # Créer un paragraphe de texte
- paragraph = ap.text.TextParagraph()
- # Définir l'indentation des lignes suivantes
- paragraph.subsequent_lines_indent = 20
- # Spécifier l'emplacement pour ajouter TextParagraph
- paragraph.rectangle = ap.Rectangle(100, 300, 200, 700, False)
- # Spécifier le mode de retour à la ligne
- paragraph.formatting_options.wrap_mode = (
- ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
- )
- # Créer un fragment de texte
- fragment1 = ap.text.TextFragment("the quick brown fox jumps over the lazy dog")
- fragment1.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
- fragment1.text_state.font_size = 12
- # Ajouter le fragment au paragraphe
- paragraph.append_line(fragment1)
- # Ajouter le paragraphe
- builder.append_paragraph(paragraph)
-
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Ajouter un Hyperlien au TextSegment
-
-Ce code démontre comment créer un contenu dynamique et interactif dans un document PDF, y compris des hyperliens vers des ressources externes.
-
-Une page PDF peut comprendre un ou plusieurs objets TextFragment, où chaque objet TextFragment peut avoir une ou plusieurs instances de [TextSegment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textsegment/).
-
-Veuillez essayer d'utiliser l'extrait de code suivant pour répondre à cette exigence :
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de document
- document = ap.Document()
- # Ajouter une page à la collection de pages du fichier PDF
- page1 = document.pages.add()
- # Créer une instance de TextFragment
- tf = ap.text.TextFragment("Fragment de texte d'exemple")
- # Définir l'alignement horizontal pour TextFragment
- tf.horizontal_alignment = ap.HorizontalAlignment.RIGHT
- # Créer un textsegment avec un texte d'exemple
- segment = ap.text.TextSegment(" ... Segment de texte 1...")
- # Ajouter le segment à la collection de segments de TextFragment
- tf.segments.append(segment)
- # Créer un nouveau TextSegment
- segment = ap.text.TextSegment("Lien vers Google")
- # Ajouter le segment à la collection de segments de TextFragment
- tf.segments.append(segment)
- # Définir l'hyperlien pour TextSegment
- segment.hyperlink = ap.WebHyperlink("www.google.com")
- # Définir la couleur de premier plan pour le segment de texte
- segment.text_state.foreground_color = ap.Color.blue
- # Définir la mise en forme du texte en italique
- segment.text_state.font_style = ap.text.FontStyles.ITALIC
- # Créer un autre objet TextSegment
- segment = ap.text.TextSegment("TextSegment sans hyperlien")
- # Ajouter le segment à la collection de segments de TextFragment
- tf.segments.append(segment)
- # Ajouter TextFragment à la collection de paragraphes de l'objet page
- page1.paragraphs.add(tf)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Utiliser la police OTF
-
-Aspose.PDF pour Python via .NET offre la fonctionnalité d'utiliser des polices personnalisées/TrueType lors de la création/manipulation des contenus de fichiers PDF afin que les contenus du fichier soient affichés en utilisant des polices autres que les polices système par défaut.
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une nouvelle instance de document
- document = ap.Document()
- # Ajouter une page à la collection de pages du fichier PDF
- page = document.pages.add()
- # Créer une instance de TextFragment avec un texte d'exemple
- fragment = ap.text.TextFragment("Texte d'exemple en police OTF")
- # Ou vous pouvez même spécifier le chemin de la police OTF dans le répertoire système
- fragment.text_state.font = ap.text.FontRepository.open_font(input_otf)
- # Spécifier pour intégrer la police à l'intérieur du fichier PDF, afin qu'elle soit affichée correctement,
- # Même si la police spécifique n'est pas installée/présente sur la machine cible
- fragment.text_state.font.is_embedded = True
- # Ajouter TextFragment à la collection de paragraphes de l'instance Page
- page.paragraphs.add(fragment)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Ajouter une chaîne HTML en utilisant le DOM
-
-Le code Python suivant utilise la bibliothèque Aspose.PDF pour créer un document PDF avec un fragment HTML.
-
-1. Instancier Document. Une instance de la classe Document est créée, représentant le document PDF.
-1. Ajouter une page au document PDF.
-1. Instancier un objet HtmlFragment avec le contenu HTML.
-1. Définir les marges pour le fragment HTML. Dans ce cas, la marge inférieure est fixée à 10 points et la marge supérieure à 200 points.
-1. Ajouter le fragment HTML à la page.
-1. Enregistrer le fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Instancier l'objet Document
- doc = ap.Document()
- # Ajouter une page à la collection de pages du fichier PDF
- page = doc.pages.add()
- # Instancier HtmlFragment avec le contenu HTML
- title = ap.HtmlFragment("Table")
- # Définir l'information de marge inférieure
- title.margin.bottom = 10
- # Définir l'information de marge supérieure
- title.margin.top = 200
- # Ajouter le fragment HTML à la collection de paragraphes de la page
- page.paragraphs.add(title)
- # Enregistrer le fichier PDF
- doc.save(output_pdf)
-```
-
-
-### Style de ligne personnalisé pour FootNote
-
-L'exemple suivant démontre comment ajouter des notes de bas de page en bas de la page PDF et définir un style de ligne personnalisé.
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- doc = ap.Document()
- # Ajouter une page à la collection de pages du PDF
- page = doc.pages.add()
- # Créer un objet GraphInfo
- graph = ap.GraphInfo()
- # Définir la largeur de ligne à 2
- graph.line_width = 2
- # Définir la couleur pour l'objet graph
- graph.color = ap.Color.red
- # Définir la valeur du tableau de tirets à 3
- graph.dash_array = [3]
- # Définir la valeur de phase de tiret à 1
- graph.dash_phase = 1
- # Définir le style de ligne de note pour la page comme graph
- page.note_line_style = graph
- # Créer une instance de TextFragment
- text = ap.text.TextFragment("Hello World")
- # Définir la valeur de FootNote pour TextFragment
- text.foot_note = ap.Note("note de bas de page pour le texte de test 1")
- # Ajouter TextFragment à la collection de paragraphes de la première page du document
- page.paragraphs.add(text)
- # Créer le deuxième TextFragment
- text = ap.text.TextFragment("Aspose.Pdf for .NET")
- # Définir FootNote pour le deuxième fragment de texte
- text.foot_note = ap.Note("note de bas de page pour le texte de test 2")
- # Ajouter le deuxième fragment de texte à la collection de paragraphes du fichier PDF
- page.paragraphs.add(text)
- # Enregistrer le document PDF résultant.
- doc.save(output_pdf)
-```
-
-
-### Personnaliser le libellé de la note de bas de page
-
-Le code suivant montre comment créer un document PDF avec un fragment de texte contenant une note de bas de page.
-
-Par défaut, le numéro de la note de bas de page est incrémentiel à partir de 1. Cependant, nous pouvons avoir besoin de définir un libellé personnalisé pour la note de bas de page. Pour répondre à cette exigence, veuillez essayer d'utiliser le code suivant
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- document = ap.Document()
- # Ajouter une page à la collection de pages du PDF
- page = document.pages.add()
- # Créer un objet GraphInfo
- graph = ap.GraphInfo()
- # Définir la largeur de ligne à 2
- graph.line_width = 2
- # Définir la couleur de l'objet graphique
- graph.color = ap.Color.red
- # Définir la valeur du tableau de tirets à 3
- graph.dash_array = [3]
- # Définir la phase des tirets à 1
- graph.dash_phase = 1
- # Définir le style de ligne de note de bas de page pour la page comme graphique
- page.note_line_style = graph
- # Créer une instance de TextFragment
- text = ap.text.TextFragment("Hello World")
- # Définir la valeur de la note de bas de page pour TextFragment
- text.foot_note = ap.Note("note de bas de page pour le texte de test 1")
- # Spécifier un libellé personnalisé pour la note de bas de page
- text.foot_note.text = " Aspose"
- # Ajouter le TextFragment à la collection de paragraphes de la première page du document
- page.paragraphs.add(text)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Ajout d'image et de tableau à la note de bas de page
-
-Ce code démontre comment créer un document PDF avec un fragment de texte contenant une note de bas de page complexe qui inclut une image, du texte et un tableau en utilisant Aspose.PDF pour Python.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- page = document.pages.add()
- text = ap.text.TextFragment("du texte")
- page.paragraphs.add(text)
-
- text.foot_note = ap.Note()
- image = ap.Image()
- image.file = input_jpg
- image.fix_height = 20
- text.foot_note.paragraphs.add(image)
- foot_note = ap.text.TextFragment("texte de la note de bas de page")
- foot_note.text_state.font_size = 20
- foot_note.is_in_line_paragraph = True
- text.foot_note.paragraphs.add(foot_note)
- table = ap.Table()
- table.rows.add().cells.add().paragraphs.add(ap.text.TextFragment("Ligne 1 Cellule 1"))
- text.foot_note.paragraphs.add(table)
-
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-## Comment créer des notes de fin
-
-Une note de fin est une citation de source qui renvoie les lecteurs à un endroit spécifique à la fin du document où ils peuvent trouver la source de l'information ou des mots cités ou mentionnés dans le document.
- Lorsque vous utilisez des notes de fin, votre phrase citée, paraphrasée ou le matériel résumé est suivi d'un numéro en exposant.
-
-Ce code démontre comment ajouter un fragment de texte avec une note de fin à un document PDF en utilisant Aspose.PDF pour Python :
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- document = ap.Document()
- # Ajouter une page à la collection de pages du PDF
- page = document.pages.add()
- # Créer une instance de TextFragment
- text = ap.text.TextFragment("Bonjour le monde")
- # Définir la valeur de la note de fin pour TextFragment
- text.end_note = ap.Note("exemple de note de fin")
- # Spécifier un libellé personnalisé pour la note de bas de page
- text.end_note.text = " Aspose"
- # Ajouter TextFragment à la collection de paragraphes de la première page du document
- page.paragraphs.add(text)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-## Texte et Image en tant que Paragraphe EnLigne
-
-La mise en page par défaut du fichier PDF est une mise en page de flux (de Haut-Gauche à Bas-Droit). Par conséquent, chaque nouvel élément ajouté au fichier PDF est ajouté dans le flux en bas à droite. Cependant, nous pouvons avoir besoin d'afficher divers éléments de page, c'est-à-dire une image et du texte au même niveau (l'un après l'autre). Une approche peut être de créer une instance de Table et d'ajouter les deux éléments à des objets de cellule individuels. Cependant, une autre approche peut être le paragraphe en ligne. En définissant la propriété IsInLineParagraph de l'image et du texte sur true, ces paragraphes apparaîtront en ligne avec d'autres éléments de page.
-
-Le code suivant vous montre comment ajouter du texte et une image en tant que paragraphes en ligne dans un fichier PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Instancier l'instance Document
- document = ap.Document()
- # Ajouter une page à la collection de pages de l'instance Document
- page = document.pages.add()
- # Créer un TextFragment
- text = ap.text.TextFragment("Bonjour le monde.. ")
- # Ajouter un fragment de texte à la collection de paragraphes de l'objet Page
- page.paragraphs.add(text)
- # Créer une instance d'image
- image = ap.Image()
- # Définir l'image en tant que paragraphe en ligne afin qu'elle apparaisse juste après
- # L'objet paragraphe précédent (TextFragment)
- image.is_in_line_paragraph = True
- # Spécifier le chemin du fichier image
- image.file = input_jpg
- # Définir la hauteur de l'image (optionnel)
- image.fix_height = 30
- # Définir la largeur de l'image (optionnel)
- image.fix_width = 100
- # Ajouter l'image à la collection de paragraphes de l'objet page
- page.paragraphs.add(image)
- # Réinitialiser l'objet TextFragment avec des contenus différents
- text = ap.text.TextFragment(" Bonjour encore..")
- # Définir TextFragment en tant que paragraphe en ligne
- text.is_in_line_paragraph = True
- # Ajouter le nouveau TextFragment créé à la collection de paragraphes de la page
- page.paragraphs.add(text)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-## Spécifier l'espacement des caractères lors de l'ajout de texte
-
-L'extrait de code suivant montre comment générer un document PDF contenant un fragment de texte avec un espacement des caractères accru.
-
-Le texte peut être ajouté à l'intérieur d'une collection de paragraphes de fichiers PDF en utilisant l'instance TextFragment ou en utilisant l'objet TextParagraph et vous pouvez même tamponner le texte à l'intérieur du PDF en utilisant la classe TextStamp.
-
-### Utilisation de TextBuilder et TextFragment
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- document = ap.Document()
- # Ajouter une page à la collection de pages du document
- document.pages.add()
- # Créer une instance de TextBuilder
- builder = ap.text.TextBuilder(document.pages[1])
- # Créer une instance de fragment de texte avec des contenus d'exemple
- wide_fragment = ap.text.TextFragment("Texte avec un espacement des caractères accru")
- wide_fragment.text_state.apply_changes_from(ap.text.TextState("Arial", 12))
- # Spécifier l'espacement des caractères pour TextFragment
- wide_fragment.text_state.character_spacing = 2.0
- # Spécifier la position de TextFragment
- wide_fragment.position = ap.text.Position(100, 650)
- # Ajouter le TextFragment à l'instance de TextBuilder
- builder.append_text(wide_fragment)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-### Utilisation de TextParagraph
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- document = ap.Document()
- # Ajouter une page à la collection de pages du Document
- document.pages.add()
- # Créer une instance de TextBuilder
- builder = ap.text.TextBuilder(document.pages[1])
- # Instancier une instance de TextParagraph
- paragraph = ap.text.TextParagraph()
- # Créer une instance de TextState pour spécifier le nom et la taille de la police
- state = ap.text.TextState(12.0)
- state.font = ap.text.FontRepository.find_font("Arial")
- # Spécifier l'espacement des caractères
- state.character_spacing = 1.5
- # Ajouter du texte à l'objet TextParagraph
- tt = "Ceci est un paragraphe avec espacement des caractères"
- paragraph.append_line(tt, state)
- # Spécifier la position pour TextParagraph
- paragraph.position = ap.text.Position(100, 550)
- # Ajouter TextParagraph à l'instance de TextBuilder
- builder.append_paragraph(paragraph)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-### Utilisation de TextStamp
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- document = ap.Document()
- # Ajouter une page à la collection de pages du Document
- page = document.pages.add()
- # Instancier une instance de TextStamp avec du texte d'exemple
- stamp = ap.TextStamp("Ceci est un tampon texte avec espacement des caractères")
- # Spécifier le nom de la police pour l'objet Stamp
- stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
- # Spécifier la taille de la police pour TextStamp
- stamp.text_state.font_size = 12
- # Spécifier l'espacement des caractères à 1
- stamp.text_state.character_spacing = 1
- # Définir le x_indent pour Stamp
- stamp.x_indent = 100
- # Définir le y_indent pour Stamp
- stamp.y_indent = 500
- # Ajouter le tampon textuel à l'instance de page
- stamp.put(page)
- # Enregistrer le document PDF résultant.
- document.save(output_pdf)
-```
-
-
-## Créer un document PDF à colonnes multiples
-
-[Aspose.PDF pour Python via .NET](https://docs.aspose.com/pdf/python-net/) offre également la fonctionnalité de créer plusieurs colonnes à l'intérieur des pages de documents PDF. Afin de créer un fichier PDF à colonnes multiples, nous pouvons utiliser la classe FloatingBox car elle fournit la propriété column_info pour spécifier le nombre de colonnes à l'intérieur de FloatingBox et nous pouvons également spécifier l'espacement entre les colonnes et les largeurs des colonnes en utilisant les propriétés column_spacing et width en conséquence.
-
-L'espacement des colonnes signifie l'espace entre les colonnes et l'espacement par défaut entre les colonnes est de 1,25 cm. Si la largeur des colonnes n'est pas spécifiée, alors [Aspose.PDF pour Python via .NET](https://docs.aspose.com/pdf/python-net/) calcule automatiquement la largeur de chaque colonne en fonction de la taille de la page et de l'espacement entre les colonnes.
-
-Un exemple est donné ci-dessous pour démontrer la création de deux colonnes avec des objets Graphs (Ligne) et ils sont ajoutés à la collection de paragraphes de FloatingBox, qui est ensuite ajoutée à la collection de paragraphes de l'instance Page.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- # Spécifiez les informations de marge gauche pour le fichier PDF
- document.page_info.margin.left = 40
- # Spécifiez les informations de marge droite pour le fichier PDF
- document.page_info.margin.right = 40
- page = document.pages.add()
-
- graph1 = ap.drawing.Graph(500, 2)
- # Ajoutez la ligne à la collection de paragraphes de l'objet section
- page.paragraphs.add(graph1)
-
- # Spécifiez les coordonnées pour la ligne
- pos1 = [1.0, 2.0, 500.0, 2.0]
- l1 = ap.drawing.Line(pos1)
- graph1.shapes.append(l1)
- # Créez des variables de chaîne avec du texte contenant des balises HTML
- s = (
- ''
- + " Comment éviter les arnaques d'argent "
- + ""
- )
- # Créez des paragraphes de texte contenant du texte HTML
- heading_text = ap.HtmlFragment(s)
- page.paragraphs.add(heading_text)
-
- box = ap.FloatingBox()
- # Ajoutez quatre colonnes dans la section
- box.column_info.column_count = 2
- # Réglez l'espacement entre les colonnes
- box.column_info.column_spacing = "5"
-
- box.column_info.column_widths = "105 105"
- text1 = ap.text.TextFragment("Par A Googler (Le Blog Officiel de Google)")
- text1.text_state.font_size = 8
- text1.text_state.line_spacing = 2
- box.paragraphs.add(text1)
- text1.text_state.font_size = 10
-
- text1.text_state.font_style = ap.text.FontStyles.ITALIC
- # Créez un objet graph pour dessiner une ligne
- graph2 = ap.drawing.Graph(50, 10)
- # Spécifiez les coordonnées pour la ligne
- pos2 = [1.0, 10.0, 100.0, 10.0]
- l2 = ap.drawing.Line(pos2)
- graph2.shapes.append(l2)
-
- # Ajoutez la ligne à la collection de paragraphes de l'objet section
- box.paragraphs.add(graph2)
-
- text2 = ap.text.TextFragment(
- "Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales."
- )
- box.paragraphs.add(text2)
- page.paragraphs.add(box)
- # Enregistrez le fichier PDF
- document.save(output_pdf)
-```
-
-
-## Travailler avec des tabulations personnalisées
-
-Cet extrait de code Python montre comment créer un document PDF contenant des fragments de texte disposés à l'aide de tabulations pour simuler une structure de tableau.
-
-Voici un exemple de comment définir des tabulations personnalisées.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- page = document.pages.add()
-
- ts = ap.text.TabStops()
- ts1 = ts.add(100.0)
- ts1.alignment_type = ap.text.TabAlignmentType.RIGHT
- ts1.leader_type = ap.text.TabLeaderType.SOLID
- ts2 = ts.add(200.0)
- ts2.alignment_type = ap.text.TabAlignmentType.CENTER
- ts2.leader_type = ap.text.TabLeaderType.DASH
- ts3 = ts.add(300.0)
- ts3.alignment_type = ap.text.TabAlignmentType.LEFT
- ts3.leader_type = ap.text.TabLeaderType.DOT
-
- header = ap.text.TextFragment(
- "Ceci est un exemple de formation de table avec des tabulations", ts
- )
- text0 = ap.text.TextFragment("#$TABHead1 #$TABHead2 #$TABHead3", ts)
-
- text1 = ap.text.TextFragment("#$TABdata11 #$TABdata12 #$TABdata13", ts)
- text2 = ap.text.TextFragment("#$TABdata21 ", ts)
- text2.segments.append(ap.text.TextSegment("#$TAB"))
- text2.segments.append(ap.text.TextSegment("data22 "))
- text2.segments.append(ap.text.TextSegment("#$TAB"))
- text2.segments.append(ap.text.TextSegment("data23"))
-
- page.paragraphs.add(header)
- page.paragraphs.add(text0)
- page.paragraphs.add(text1)
- page.paragraphs.add(text2)
-
- document.save(output_pdf)
-```
-
-
-## Comment ajouter du texte transparent dans un PDF
-
-Un fichier PDF contient des objets Image, Texte, Graphique, pièce jointe, Annotations et lors de la création d'un TextFragment, vous pouvez définir des informations sur la couleur de premier plan, d'arrière-plan ainsi que la mise en forme du texte. Aspose.PDF pour Python via .NET prend en charge la fonctionnalité d'ajouter du texte avec un canal de couleur Alpha.
-
-Le code suivant montre comment ajouter du texte avec une couleur transparente.
-
-```python
-
- import aspose.pdf as ap
-
- # Créer une instance de Document
- document = ap.Document()
- # Créer une page pour la collection de pages du fichier PDF
- page = document.pages.add()
-
- # Créer une instance de TextFragment avec une valeur d'exemple
- text = ap.text.TextFragment(
- "texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent texte transparent "
- )
- # Créer un objet couleur à partir du canal Alpha
- color = ap.Color.from_argb(30, 0, 255, 0)
- # Définir les informations de couleur pour l'instance de texte
- text.text_state.foreground_color = color
- # Ajouter du texte à la collection de paragraphes de l'instance de page
- page.paragraphs.add(text)
-
- document.save(output_pdf)
-```
-
-
-## Spécifier l'espacement des lignes pour les polices
-
-Chaque police a un carré abstrait, dont la hauteur est la distance prévue entre les lignes de texte de même taille. Ce carré est appelé le carré em et c'est la grille de conception sur laquelle les contours des glyphes sont définis. De nombreuses lettres de la police d'entrée ont des points qui sont placés en dehors des limites du carré em de la police, donc pour afficher correctement la police, l'utilisation d'un paramètre spécial est nécessaire.
-
-Le prochain extrait de code charge un PDF, ajoute un fragment de texte avec un espacement de ligne spécifique en utilisant une police TrueType, et enregistre le document PDF modifié :
-
-```python
-
- import aspose.pdf as ap
-
- # Charger le fichier PDF d'entrée
- document = ap.Document()
- # Créer TextFormattingOptions avec LineSpacingMode.FULL_SIZE
- options = ap.text.TextFormattingOptions()
- options.line_spacing = ap.text.TextFormattingOptions.LineSpacingMode.FULL_SIZE
-
- # Créer un fragment de texte avec une chaîne d'exemple
- text_fragment = ap.text.TextFragment("Hello world")
-
- # Charger la police TrueType dans l'objet flux
- font_stream = open(input_ttf, "rb")
- # Définir le nom de la police pour la chaîne de texte
- text_fragment.text_state.font = ap.text.FontRepository.open_font(
- font_stream, ap.text.FontTypes.TTF
- )
- # Spécifier la position pour le fragment de texte
- text_fragment.position = ap.text.Position(100, 600)
- # Définir TextFormattingOptions du fragment actuel sur prédéfini (qui pointe vers LineSpacingMode.FULL_SIZE)
- text_fragment.text_state.formatting_options = options
- page = document.pages.add()
- page.paragraphs.add(text_fragment)
-
- # Enregistrer le document PDF résultant
- document.save(output_pdf)
-```
-
-
-## Obtenez la largeur du texte dynamiquement
-
-Ce bout de code Python effectue une comparaison entre les mesures de chaînes obtenues à partir d'un objet police et d'un objet état de texte dans Aspose.PDF :
-
-```python
-
- import math as ap
-
- font = ap.text.FontRepository.find_font("Arial")
- ts = ap.text.TextState()
- ts.font = font
- ts.font_size = 14
-
- if mt.fabs(font.measure_string("A", 14) - 9.337) > 0.001:
- print("Mesure de chaîne de police inattendue!")
-
- if mt.fabs(ts.measure_string("z") - 7.0) > 0.001:
- print("Mesure de chaîne de police inattendue!")
-
- c_code = ord("A")
- while c_code <= ord("z"):
- c = chr(c_code)
-
- fn_measure = font.measure_string(str(c), 14)
- ts_measure = ts.measure_string(str(c))
-
- print(str(c_code) + "-" + c + "-" + str(ts_measure))
-
- if mt.fabs(fn_measure - ts_measure) > 0.001:
- print("La mesure de chaîne de police et d'état ne correspond pas!")
-
- c_code += 1
-```
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/_index.md b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/_index.md
new file mode 100644
index 0000000000..a5ba9b00e4
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/_index.md
@@ -0,0 +1,938 @@
+---
+title: Ajouter du texte à un PDF en Python
+linktitle: Ajouter du texte à un PDF
+type: docs
+weight: 10
+url: /fr/python-net/add-text-to-pdf-file/
+description: Apprenez comment ajouter du texte, des fragments HTML, des listes, des liens et des polices personnalisées aux documents PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajoutez du texte, des liens, du HTML et des polices aux fichiers PDF avec Python
+Abstract: Cet article explique comment ajouter et formater du texte dans les documents PDF en utilisant Aspose.PDF for Python via .NET. Il couvre les techniques de base telles que le positionnement du texte, l'application des paramètres de Font et de style, l'insertion de liens et de listes, ainsi que l'utilisation de HTML, LaTeX et de polices personnalisées dans les flux de travail Python.
+---
+
+Ce guide explique comment ajouter du texte aux documents PDF en utilisant Aspose.PDF for Python via .NET. Vous apprendrez les techniques essentielles d’insertion de texte — de placer un simple fragment de texte à une position précise, à le styliser (police, taille, couleur, style), à gérer les langues de droite à gauche (RTL), à incorporer des hyperliens, et à travailler avec les mises en page de paragraphes, les listes et les effets de transparence. L’article couvre également des scénarios avancés tels que l’utilisation de fragments HTML ou LaTeX, des polices personnalisées, et les options de mise en forme du texte comme l’interlignage et l’espacement des caractères.
+
+Que vous créiez des annotations simples ou des mises en page typographiques riches, cette ressource vous fournit les blocs de construction fondamentaux pour travailler avec du texte dans les PDF en utilisant Aspose.PDF.
+
+## Insertion de texte basique
+
+Aspose.PDF for Python via .NET fournit une API puissante et flexible pour gérer le texte à l'intérieur des fichiers PDF.
+Que vous ayez besoin d'étiquettes statiques simples, de contenu richement formaté, de texte multilingue ou de liens hypertexte interactifs, l'outil vous permet de tout faire avec un code Python concis.
+
+### Ajouter du texte Cas simple
+
+Aspose.PDF for Python via .NET montre comment ajouter un fragment de texte simple à une position spécifique sur une page. Vous apprendrez comment créer un nouveau document PDF, ajouter une page, insérer du texte à des coordonnées données et enregistrer le fichier résultant.
+
+1. Créer un nouveau [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objet.
+1. Utiliser `document.pages.add()` créer un nouveau vierge [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Créer un [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) avec le contenu du texte.
+1. Définissez la position du texte en utilisant le [`Position`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/position/) classe. Si vous spécifiez `Position`, le texte sera situé dans votre document de gauche à droite et décalé vers le bas.
+1. Personnalisez l'apparence du texte. Vous pouvez définir la taille de la police, la couleur, le style de police, et plus encore via le [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/).
+1. Ajouter le `TextFragment` à la collection de paragraphes de la page avec `page.paragraphs.add(text_fragment)`.
+1. Enregistrez le document.
+
+Le fragment de code suivant vous montre comment ajouter du texte dans un fichier PDF existant :
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+# region Basic text insertion
+def add_text_simple_case(output_file_name):
+ # Create a new document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add a text fragment at a specific position
+ text_fragment = ap.text.TextFragment("Hello, Aspose!")
+ text_fragment.position = ap.text.Position(100, 600)
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+Cet exemple de code utilise un TextFragment. Vous pouvez également ajouter du texte à une page PDF en utilisant un TextParagraph.
+Le **[TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/)** est un morceau unique de texte. Il représente une chaîne de texte qui peut être placée, stylisée et positionnée indépendamment. C’est idéal lorsque vous devez ajouter un petit contenu textuel simple.
+
+Le **[TextParagraph](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/)** est un groupe de TextFragments. Il peut ajouter plusieurs lignes de texte. TextParagraph est un conteneur ou une collection d’un ou plusieurs objets TextFragment. C’est idéal lorsque vous devez regrouper plusieurs fragments — par exemple, pour créer un bloc de texte contenant plusieurs lignes, mots ou éléments formatés.
+Un TextParagraph gère également l'alignement du texte, l'espacement des lignes et la mise en page automatique sur la page. L'utilisation de la ligne rouge n'est possible qu'avec TextParagraph.
+
+Pour plus d'informations sur le travail avec le texte, voir [Formatage du texte dans le PDF](/pdf/fr/python-net/text-formatting-inside-pdf/) et [Rechercher et extraire le texte du PDF](/pdf/fr/python-net/search-and-get-text-from-pdf/).
+
+### Ajouter du texte à l'aide de TextParagraph
+
+Aspose.PDF for Python via .NET peut ajouter un paragraphe de texte en utilisant [`TextBuilder`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textbuilder/) et [`TextParagraph`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/) avec des options d'enroulement.
+
+1. Créer un nouveau [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) et un blanc [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) en utilisant `document.pages.add()`.
+1. Lire le texte à partir d'un fichier ou utiliser le texte par défaut.
+1. Créer un [`TextBuilder`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textbuilder/) pour ajouter du contenu au niveau du paragraphe avec contrôle de la mise en page et de l'habillage.
+1. Créer un [`TextParagraph`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/) et définir le mode d'ajustement (l'exemple utilise `DISCRETIONARY_HYPHENATION`).
+1. Créer un [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/), appliquez les styles, et ajoutez le fragment au paragraphe.
+1. Ajoutez le paragraphe à la page en utilisant le `TextBuilder`.
+1. Enregistrez le document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_paragraph(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ lorem_path = LOREM_PATH
+ if os.path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as file:
+ text = file.read()
+ else:
+ text = "Lorem ipsum sample text not found."
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.first_line_indent = 20
+ paragraph.rectangle = ap.Rectangle(80, 800, 400, 200, True)
+ # paragraph.formatting_options.wrap_mode = TextFormattingOptions.WordWrapMode.BY_WORDS
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.DISCRETIONARY_HYPHENATION
+ )
+
+ fragment = ap.text.TextFragment(text)
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+
+ paragraph.append_line(fragment)
+ builder.append_paragraph(paragraph)
+
+ document.save(output_file_name)
+```
+
+
+
+### Ajouter des paragraphes avec des retraits dans le PDF
+
+Le fragment de code suivant montre comment créer un nouveau document PDF et ajouter deux paragraphes de texte avec différents styles d'indentation :
+
+- Le premier paragraphe illustre un retrait de première ligne (seule la première ligne est en retrait).
+
+- Le deuxième paragraphe montre une indentation des lignes suivantes (toutes les lignes après la première sont indentées).
+
+Il utilise les classes 'TextParagraph', 'TextBuilder' et 'TextFragment' d'Aspose.PDF pour contrôler précisément la mise en page et le formatage.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_paragraphs_indents(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ lorem_path = LOREM_PATH
+ if os.path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as file:
+ text = file.read()
+ else:
+ text = "Lorem ipsum sample text not found."
+
+ fragment = ap.text.TextFragment(text)
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+
+ builder = ap.text.TextBuilder(page)
+ paragraph1 = ap.text.TextParagraph()
+ paragraph1.first_line_indent = 20
+ paragraph1.rectangle = ap.Rectangle(80, 800, 300, 50, True)
+ paragraph1.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ paragraph1.append_line(fragment)
+ builder.append_paragraph(paragraph1)
+
+ paragraph2 = ap.text.TextParagraph()
+ paragraph2.subsequent_lines_indent = 20
+ paragraph2.rectangle = ap.Rectangle(320, 800, 500, 50, True)
+ paragraph2.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ paragraph2.append_line(fragment)
+ builder.append_paragraph(paragraph2)
+ document.save(output_file_name)
+```
+
+### Ajouter une nouvelle ligne de texte dans le PDF
+
+Aspose.PDF for Python via .NET vous permet d'insérer du texte multilignes dans un document PDF en utilisant les classes TextFragment, TextParagraph et TextBuilder.
+
+1. Créer un nouveau document.
+1. Définir un TextFragment contenant un caractère de saut de ligne.
+1. Définir le style du texte.
+1. Ajoutez le fragment à un paragraphe.
+1. Positionnez le paragraphe.
+1. Rendre le paragraphe sur la page.
+1. Enregistrez le document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_new_line(output_file):
+ """Add a new line of text to a PDF document."""
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Initialize new TextFragment with text containing required newline markers
+ text_fragment = ap.text.TextFragment("Applicant Name: " + os.linesep + " Joe Smoe")
+
+ # Set text fragment properties if necessary
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ text_fragment.text_state.background_color = ap.Color.light_gray
+ text_fragment.text_state.foreground_color = ap.Color.red
+
+ # Create TextParagraph object
+ par = ap.text.TextParagraph()
+
+ # Add new TextFragment to paragraph
+ par.append_line(text_fragment)
+
+ # Set paragraph position
+ par.position = ap.text.Position(100, 600)
+
+ # Create TextBuilder object
+ text_builder = ap.text.TextBuilder(page)
+
+ # Add the TextParagraph using TextBuilder
+ text_builder.append_paragraph(par)
+
+ # Save PDF document
+ document.save(output_file)
+```
+
+### Déterminer les sauts de ligne et consigner les notifications dans un PDF
+
+Il montre comment créer un document PDF contenant plusieurs fragments de texte et activer la journalisation des notifications Aspose.PDF pour surveiller les événements de mise en page — tels que les sauts de ligne et le retour à la ligne du texte — lors du rendu.
+
+1. Créer un nouveau document PDF.
+1. Activer la journalisation des notifications.
+1. Utilisez document.pages.add() pour créer la première page.
+1. Ajouter plusieurs fragments de texte.
+1. Utilisez page.paragraphs.add(text) pour rendre chaque fragment de texte.
+1. Enregistrez le document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def determine_line_break(output_file):
+ """Create a PDF document with multiple text fragments and log notifications."""
+ # Create PDF document
+ document = ap.Document()
+
+ # Enable notification logging
+ document.enable_notification_logging = True
+
+ page = document.pages.add()
+
+ for i in range(4):
+ text = ap.text.TextFragment(
+ "Lorem ipsum \r\ndolor sit amet, consectetur adipiscing elit, "
+ "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. "
+ "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris "
+ "nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in "
+ "reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla "
+ "pariatur. Excepteur sint occaecat cupidatat non proident, sunt in "
+ "culpa qui officia deserunt mollit anim id est laborum."
+ )
+ text.text_state.font_size = 20
+ page.paragraphs.add(text)
+
+ # Save PDF document
+ document.save(output_file)
+
+ notifications = document.pages[1].get_notifications()
+ print(notifications)
+```
+
+### Mesurer dynamiquement la largeur du texte dans le PDF
+
+Mesurer dynamiquement la largeur des caractères et des chaînes dans une police spécifique en utilisant Aspose.PDF for Python via .NET. Il utilise les méthodes 'Font.measure_string()' et 'TextState.measure_string()' pour vérifier que les largeurs des chaînes mesurées sont cohérentes et précises.
+
+1. Utilisez 'FontRepository.find_font()' pour récupérer l'objet de police Arial depuis le référentiel.
+1. Créez un objet TextState pour gérer les propriétés de police.
+1. Mesurer les caractères individuels.
+1. Comparez les résultats des deux méthodes pour tous les caractères compris entre 'A' et 'z'.
+1. Assurez-vous que les deux approches de mesure donnent les mêmes résultats.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def get_text_width_dynamically(output_file):
+ font = ap.text.FontRepository.find_font("Arial")
+ ts = ap.text.TextState()
+ ts.font = font
+ ts.font_size = 14
+
+ if math.fabs(font.measure_string("A", 14) - 9.337) > 0.001:
+ print("Unexpected font string measure!")
+
+ if math.fabs(ts.measure_string("z") - 7.0) > 0.001:
+ print("Unexpected font string measure!")
+
+ c_code = ord("A")
+ while c_code <= ord("z"):
+ c = chr(c_code)
+
+ fn_measure = font.measure_string(str(c), 14)
+ ts_measure = ts.measure_string(str(c))
+
+ if math.fabs(fn_measure - ts_measure) > 0.001:
+ print("Font and state string measuring doesn't match!")
+
+ c_code += 1
+```
+
+### Ajouter du texte avec des hyperliens
+
+Ajoutez des hyperliens cliquables au texte d'un PDF en utilisant Aspose.PDF for Python via .NET. Notre bibliothèque montre comment ajouter plusieurs segments de texte dans un seul TextFragment et appliquer un hyperlien à un segment spécifique, ainsi que styliser les segments de texte individuellement (par exemple, couleur, police italique).
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Créer un TextFragment.
+1. Ajoutez plusieurs objets TextSegment. Chaque segment peut avoir son propre contenu et style. Par exemple du texte simple ou du texte hyperlien.
+1. Appliquez un hyperlien à un segment. Créez un objet WebHyperlink avec l'URL souhaitée.
+1. Stylisez le segment. Personnalisez la couleur, le style de police, la taille, etc., en utilisant text_state.
+1. Ajoutez le fragment à la page en utilisant \u0027page.paragraphs.add()\u0027.
+1. Enregistrez le PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_with_hyperlink(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ fragment = ap.text.TextFragment("Sample Text Fragment")
+
+ segment = ap.text.TextSegment(" ... Text Segment 1...")
+ fragment.segments.append(segment)
+
+ segment = ap.text.TextSegment("Link to Aspose")
+ fragment.segments.append(segment)
+ segment.hyperlink = ap.WebHyperlink("https://products.aspose.com/pdf")
+ segment.text_state.foreground_color = ap.Color.blue
+ segment.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ segment = ap.text.TextSegment("TextSegment without hyperlink")
+ fragment.segments.append(segment)
+
+ page.paragraphs.add(fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Ajouter du texte de droite à gauche (RTL) au document PDF
+
+RTL (de droite à gauche) est une propriété qui indique la direction de l'écriture du texte, où le texte est écrit de droite à gauche.
+Aspose.PDF for Python via .NET. démontre comment ajouter du texte de droite à gauche (RTL), tel que l'arabe ou l'hébreu, à un document PDF.
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Créez un TextFragment avec du contenu RTL. Insérez votre texte en arabe, hébreu ou autre langue RTL comme contenu du fragment.
+Définir la police et le style. Choisissez une police qui prend en charge le script RTL (par exemple, Tahoma, Arial Unicode MS). Définissez font_size et foreground_color selon les besoins.
+1. Définissez l'alignement horizontal sur la droite en utilisant 'text_fragment.horizontal_alignment'.
+1. Ajoutez le TextFragment à la page.
+1. Enregistrez le document PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_with_rtl_text(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+ # Styled text fragment
+ text_fragment = ap.text.TextFragment(
+ "يعتبر خوجا نصر الدين شخصية فولكلورية من الشرق الإسلامي وبعض شعوب البحر الأبيض المتوسط والبلقان، وهو بطل القصص والحكايات القصيرة الفكاهية والساخرة، وأحيانًا الحكايات اليومية."
+ )
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Tahoma")
+ text_fragment.text_state.font_size = 14
+ text_fragment.text_state.foreground_color = ap.Color.blue
+ text_fragment.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+## Mise en forme du texte
+
+### Ajouter du texte avec le style de police
+
+Ceci est un exemple plus avancé qui démontre le style du texte, la personnalisation des polices, et le texte à format mixte (utilisant des segments de texte en indice). Aspose.PDF explique comment appliquer les propriétés de police telles que la famille de police, la taille, la couleur, le gras, l'italique et le soulignement à un fragment de texte.
+De plus, cet extrait de code montre comment utiliser plusieurs segments de texte au sein d'un même fragment pour créer des expressions textuelles complexes — par exemple, en incluant des caractères en indice ou en exposant, souvent nécessaires dans les formules ou les notations scientifiques.
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Créer un TextFragment pour du texte simple stylisé.
+1. Définir le contenu texte.
+1. Définir la position en utilisant les coordonnées Position(x, y).
+1. Appliquer le style via la propriété "text_state" - font, font_size, foreground_color, font_style, underline.
+1. Créez une expression complexe avec plusieurs objets TextSegment. Chaque TextSegment représente une portion de texte pouvant avoir son propre style. Cela vous permet de construire des expressions, comme des formules mathématiques ou chimiques.
+1. Définissez plusieurs objets TextState. Un pour le texte principal (text_state_letters). Un autre pour le texte en indice ou exposant (text_state_index).
+1. Combinez les segments de texte. Ajoutez chaque segment à un 'TextFragment' en utilisant 'segments.append()'.
+1. Ajoutez les deux objets texte à la page. Utilisez 'page.paragraphs.add()' pour les placer dans le document.
+1. Enregistrez le document final.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_with_font_styling(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Initialize an empty TextFragment to build a formula using segments
+ formula = ap.text.TextFragment()
+ text_fragment = ap.text.TextFragment("Hello, Aspose!")
+ text_fragment.position = ap.text.Position(100, 600)
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+ text_fragment.text_state.foreground_color = ap.Color.blue
+ text_fragment.text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
+ text_fragment.text_state.underline = True
+ text_fragment.horizontal_alignment = ap.HorizontalAlignment.LEFT
+
+ text_state_letters = ap.text.TextState()
+ text_state_letters.font = ap.text.FontRepository.find_font("Arial")
+ text_state_letters.font_size = 14
+ text_state_letters.foreground_color = ap.Color.blue
+ text_state_letters.font_style = ap.text.FontStyles.BOLD
+
+ text_state_index = ap.text.TextState()
+ text_state_index.font = ap.text.FontRepository.find_font("Arial")
+ text_state_index.font_size = 14
+ text_state_index.foreground_color = ap.Color.dark_red
+ # text_state_index.superscript = True
+ text_state_index.subscript = True
+
+ position = ap.text.Position(100, 500)
+
+ # Helper function to add segments
+ def add_segment(text, state):
+ seg = ap.text.TextSegment(text)
+ seg.text_state = state
+ seg.position = position
+ formula.segments.append(seg)
+
+ add_segment("S = a", text_state_letters)
+ add_segment("2n", text_state_index)
+ add_segment(" + a", text_state_letters)
+ add_segment("2n+1", text_state_index)
+ add_segment(" + a", text_state_letters)
+ add_segment("2n+2", text_state_index)
+ formula.horizontal_alignment = ap.HorizontalAlignment.LEFT
+
+ page.paragraphs.add(text_fragment)
+ page.paragraphs.add(formula)
+ document.save(output_file_name)
+```
+
+
+
+## Ajouter du texte transparent
+
+Ajoutez des formes semi-transparentes et du texte à un document PDF à l'aide d'Aspose.PDF pour Python.
+Il crée un rectangle coloré avec une opacité partielle et superpose un TextFragment avec une couleur de premier plan transparente.
+
+1. Initialisez un objet Document et ajoutez une page vierge pour dessiner du contenu.
+1. Utilisez 'ap.drawing.Graph' pour créer un canevas qui vous permet de dessiner des formes.
+1. Ajoutez un rectangle avec un remplissage semi-transparent.
+1. Empêcher le décalage de la position du canvas.
+1. Ajoutez le canvas à la page. Insérez les formes graphiques dans la collection de paragraphes de la page.
+1. Créer un fragment de texte transparent.
+1. Insérez le TextFragment dans la collection de paragraphes de la Page.
+1. Enregistrez le document PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_transparent(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Create Graph object
+ canvas = ap.drawing.Graph(100.0, 400.0)
+
+ # Create rectangle with semi-transparent fill
+ rect = ap.drawing.Rectangle(100, 100, 400, 400)
+ rect.graph_info.fill_color = ap.Color.from_argb(128, 0xC5, 0xB5, 0xFF)
+ canvas.shapes.add(rect)
+
+ # Prevent position shift
+ canvas.is_change_position = False
+ page.paragraphs.add(canvas)
+
+ # Create transparent text
+ text = ap.text.TextFragment(
+ "This is the transparent text. "
+ "This is the transparent text. "
+ "This is the transparent text."
+ )
+ text.text_state.foreground_color = ap.Color.from_argb(30, 0, 255, 0)
+ page.paragraphs.add(text)
+
+ document.save(output_file_name)
+```
+
+### Ajouter du texte invisible au PDF
+
+Cet exemple montre comment créer un document PDF contenant du texte à la fois visible et invisible. Le texte invisible fait partie de la structure du document mais il est caché à la vue, ce qui le rend utile pour intégrer des métadonnées, des balises d'accessibilité ou du contenu recherchable sans affecter la mise en page.
+
+1. Créer un Document PDF et une Page.
+1. Créer un fragment de texte avec du contenu visible répété.
+1. Ajoutez un deuxième fragment de texte et marquez-le comme invisible.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_invisible(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add visible text
+ text1 = ap.text.TextFragment(
+ "This is the visible text. This is the visible text. This is the visible text."
+ )
+ page.paragraphs.add(text1)
+
+ # Create transparent text
+ text2 = ap.text.TextFragment(
+ "This is the invisible text. "
+ "This is the invisible text. "
+ "This is the invisible text."
+ )
+ text2.text_state.invisible = True
+ page.paragraphs.add(text2)
+
+ document.save(output_file_name)
+```
+
+### Ajouter du texte avec un style de bordure dans le PDF
+
+La bibliothèque Aspose.PDF montre comment créer un document PDF contenant un fragment de texte stylisé avec une bordure visible. La méthode applique des couleurs d'arrière-plan et de premier plan, les paramètres de police, et un trait (bordure) autour du rectangle du texte pour renforcer l'accent visuel.
+
+1. Créer un Document PDF et une Page.
+1. Créer et positionner un fragment de texte. Ajouter un fragment de texte avec le message et définir sa position.
+1. Appliquer le style de texte. Définir la police sur Times New Roman, taille 12. Appliquer un arrière-plan gris clair et une couleur de premier plan (texte) rouge.
+1. Configurer le style de bordure.
+1. Ajouter du texte à la page. Utilisez TextBuilder pour ajouter le texte stylisé à la page.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_border(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ # Get particular page
+ page = document.pages.add()
+ # Create text fragment
+ text_fragment = ap.text.TextFragment("This is sample text with border.")
+ text_fragment.position = ap.text.Position(10, 700)
+
+ # Set text properties
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.background_color = ap.Color.light_gray
+ text_fragment.text_state.foreground_color = ap.Color.red
+ # Set StrokingColor property for drawing border (stroking) around text rectangle.
+ # Note: This only affects the border if draw_text_rectangle_border is set to True.
+ text_fragment.text_state.stroking_color = ap.Color.dark_red
+ # Enable drawing of the text rectangle border
+ text_fragment.text_state.draw_text_rectangle_border = True
+
+ text_builder = ap.text.TextBuilder(page)
+ text_builder.append_text(text_fragment)
+
+ # Save PDF document
+ document.save(output_file_name)
+```
+
+### Ajouter du texte barré à un PDF
+
+Ajouter une mise en forme barrée (strikethrough) à un fragment de texte dans un document PDF. Le texte barré est utile pour indiquer des suppressions, des révisions ou des mises en évidence dans des documents annotés.
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Créer et styliser le fragment de texte.
+1. Appliquer le formatage Couleur et Barré. Définir l'arrière-plan en gris clair, la couleur du texte en rouge, et activer le barré.
+1. Positionner le texte.
+1. Utilisez 'TextBuilder' pour ajouter le texte stylisé à la page.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_strikeout_text(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Create text fragment
+ text_fragment = ap.text.TextFragment("This is sample strikeout text.")
+ # Set text properties
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ text_fragment.text_state.background_color = ap.Color.light_gray
+ text_fragment.text_state.foreground_color = ap.Color.red
+ text_fragment.text_state.strike_out = True
+ text_fragment.text_state.font_style = ap.text.FontStyles.BOLD
+ text_fragment.position = ap.text.Position(100, 600)
+
+ # Create TextBuilder object
+ text_builder = ap.text.TextBuilder(page)
+ text_builder.append_text(text_fragment)
+
+ # Save PDF document
+ document.save(output_file_name)
+```
+
+## Effets de couleur avancés
+
+### Appliquer un dégradé axial au texte dans un PDF
+
+Aspose.PDF for Python via .NET montre comment appliquer un effet de dégradé linéaire au texte d'un document PDF. Le dégradé axial passe en douceur du rouge au bleu sur l'ensemble du texte, créant un en-tête visuellement saisissant. Cette technique est idéale pour les titres stylisés, le branding ou les éléments décoratifs dans les mises en page de documents PDF.
+
+1. Initialisez un nouveau document et ajoutez une page vierge.
+1. Créer et styliser le fragment de texte. Ajouter le titre, définir la position, la police et la taille.
+1. Appliquer un dégradé axial avec 'GradientAxialShading'. Définir la couleur de premier plan en utilisant GradientAxialShading du rouge au bleu.
+1. Ajouter le style souligné.
+1. Insérez le fragment de texte stylisé dans la page.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def apply_gradient_axial_shading_to_text(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("PDF TITLE")
+ text_fragment.position = ap.text.Position(100, 600)
+ text_fragment.text_state.font_size = 36
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial Bold")
+
+ text_fragment.text_state.foreground_color = ap.Color()
+ text_fragment.text_state.foreground_color.pattern_color_space = (
+ ap.drawing.GradientAxialShading(ap.Color.red, ap.Color.blue)
+ )
+ text_fragment.text_state.underline = True
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+### Appliquer un dégradé radial au texte dans un PDF
+
+Un dégradé radial crée une transition de couleur circulaire qui rayonne depuis le centre du texte, offrant une option de style visuellement dynamique pour les titres, les en-têtes ou les éléments décoratifs.
+
+1. Initialisez un nouveau document et ajoutez une page vierge.
+1. Créer et styliser le fragment de texte. Ajouter le titre, définir la position, la police et la taille.
+1. Appliquer un dégradé radial avec 'GradientRadialShading'. Définir la couleur de premier plan en utilisant GradientRadialShading du rouge au bleu.
+1. Ajouter le style souligné.
+1. Insérez le fragment de texte stylisé dans la page.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def apply_gradient_radial_shading_to_text(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("PDF TITLE")
+ text_fragment.position = ap.text.Position(100, 600)
+ text_fragment.text_state.font_size = 36
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial Bold")
+
+ # Apply radial gradient shading (red to blue)
+ text_fragment.text_state.foreground_color = ap.Color()
+ text_fragment.text_state.foreground_color.pattern_color_space = (
+ ap.drawing.GradientRadialShading(ap.Color.red, ap.Color.blue)
+ )
+ text_fragment.text_state.underline = True
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+## Fragments HTML et LaTeX
+
+### Ajouter du texte HTML au document PDF
+
+La bibliothèque Aspose.PDF for Python via .NET vous permet d'insérer du contenu au format HTML dans un document PDF en utilisant la classe HtmlFragment. En utilisant les balises HTML, vous pouvez rendre du texte stylisé, structuré ou semblable à une formule directement dans un PDF.
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Créez une instance de la classe HtmlFragment et transmettez votre chaîne HTML en tant que paramètre.
+1. Ajoutez le fragment à la page en utilisant 'page.paragraphs.add()' pour insérer le contenu HTML.
+1. Enregistrez le PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_html_fragment(output_file_name):
+ # Create a new document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add a text fragment at a specific position
+ text_fragment = ap.HtmlFragment("
S=a2n+a2
")
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Ajouter un fragment HTML stylisé avec divers formats à un document PDF
+
+Nous pouvons définir un fragment HTML et définir le style du texte directement à l'aide de balises HTML. Intégrer du contenu HTML stylisé dans un document PDF. Cet extrait de code crée un nouveau fichier PDF, ajoute une page, insère un fragment HTML avec divers éléments de mise en forme (titres, paragraphes, liens et styles en ligne), puis enregistre le résultat dans le chemin spécifié.
+
+1. Initialise un nouvel objet Document pour représenter le PDF.
+1. Ajoute une page blanche au document où le contenu HTML sera placé.
+1. Préparer le contenu HTML. La chaîne HTML contient un titre h1, un paragraphe de couleur verte avec du texte en gras, en italique et souligné, ainsi qu'un hyperlien vers un site web avec une taille de police augmentée.
+1. Créer un fragment HTML. Enveloppez la chaîne HTML dans un objet HtmlFragment.
+1. Insérer du HTML dans la Page. Ajoute le fragment HTML à la collection de paragraphes de la page, en rendant le HTML en tant que contenu PDF natif.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_html_fragment(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+ html_content = """
+
Hello, Aspose!
+
This is a sample paragraph with bold, italic, and underlined text.
+
This paragraph is green.
+ Visit Aspose
+ """
+ html_fragment = ap.HtmlFragment(html_content)
+ page.paragraphs.add(html_fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Ajouter un fragment HTML avec un état de texte remplacé
+
+Comme nous l'avons vu dans l'exemple précédent, il est possible de définir des styles directement dans le code HTML. Cela présente des avantages, mais aussi quelques inconvénients. Supposons que nous travaillions avec le HTML d'un client et que nous voulions uniformiser l'apparence de notre sortie.
+Dans ce cas, nous pouvons remplacer le style du client en utilisant notre propre TextState, comme le montre l'exemple suivant.
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Préparer le contenu HTML. La chaîne HTML contient un titre h1 avec la police Verdana, un paragraphe de couleur verte avec du texte en gras, italique et souligné, ainsi qu’un hyperlien vers un site web avec une taille de police plus grande.
+1. Créer un fragment HTML. Enveloppez la chaîne HTML dans un objet HtmlFragment.
+1. Remplacez le formatage du texte. Créez un objet TextState et définissez le Font, le Font Size et le Text Color.
+1. Ajoutez le fragment HTML à la collection de paragraphes de la page.
+1. Enregistrez le Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_html_fragment_override_text_state(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+ html_content = """
+
Hello, Aspose!
+
This is a sample paragraph with bold, italic, and underlined text.
+
This paragraph is green.
+ Visit Aspose
+ """
+ html_fragment = ap.HtmlFragment(html_content)
+ html_fragment.text_state = ap.text.TextState()
+ html_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ html_fragment.text_state.font_size = 14
+ html_fragment.text_state.foreground_color = ap.Color.red
+
+ page.paragraphs.add(html_fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Ajouter du texte LaTeX au document PDF
+
+Ajouter des expressions mathématiques formatées en LaTeX à un document PDF en utilisant la classe TeXFragment dans Aspose.PDF for Python via .NET.
+LaTeX est un système de composition puissant largement utilisé pour créer des documents scientifiques et mathématiques. En utilisant TeXFragment, vous pouvez rendre directement la notation et les symboles mathématiques LaTeX à l'intérieur d'une page PDF.
+
+1. Créez un nouveau document et une page en utilisant 'Document()', et 'document.pages.add()' pour ajouter une page vierge.
+1. Utilisez la classe TeXFragment pour rendre directement la syntaxe LaTeX.
+1. Ajoutez le contenu LaTeX à la mise en page du PDF avec 'page.paragraphs.add()'.
+1. Enregistrez le PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_latex_fragment(output_file_name):
+ # Create a new document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add a text fragment at a specific position
+ text_fragment = ap.TeXFragment(
+ "\\underbrace{\\overbrace{a+b}^6 \\cdot \\overbrace{c+d}^7}_\\text{example of text} = 42"
+ )
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+## Polices personnalisées
+
+### Utilisez une Font personnalisée à partir d'un fichier
+
+Cet exemple vous permet d'ajouter du texte à un fichier PDF en utilisant une police OpenType personnalisée dans Aspose.PDF for Python via .NET. Il montre comment créer un nouveau document PDF, positionner le texte avec précision sur la page, et appliquer un formatage personnalisé tel que le type de police, la taille, la couleur et le style italique.
+
+1. Créez un nouveau document PDF et ajoutez une page.
+1. Définissez le contenu texte que vous souhaitez ajouter au PDF.
+1. Définir la position du texte.
+1. Ajoutez le TextFragment à la page.
+1. Enregistrez le document PDF.
+
+Cette fonction fonctionne non seulement avec les polices OTF mais aussi avec les polices TTF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def use_custom_font_from_file(output_file_name):
+ font_path = os.path.join(FONT_DIR, "BriosoPro Italic.otf")
+ document = ap.Document()
+ page = document.pages.add()
+
+ fragment = ap.text.TextFragment("Hello, Aspose!")
+ fragment.position = ap.text.Position(100, 600)
+ fragment.text_state.font = ap.text.FontRepository.open_font(font_path)
+ fragment.text_state.font_size = 24
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ page.paragraphs.add(fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Utilisez une Font personnalisée depuis un flux
+
+Ce fragment de code montre comment ajouter du texte à un document PDF en utilisant une police OpenType (OTF) personnalisée incorporée avec Aspose.PDF for Python via .NET. Il montre comment ouvrir un fichier de police en tant que flux, l'incorporer dans le PDF pour garantir la disponibilité de la police sur différents systèmes, et appliquer le formatage du texte tel que la taille de la police, la couleur et le style italique. Cette approche est idéale pour créer des PDF visuellement cohérents qui conservent la typographie même lorsqu'ils sont partagés ou visualisés sur des appareils ne disposant pas de la police installée.
+
+1. Charger le fichier Font en tant que flux binaire.
+1. Ouvrez et intégrez la police en utilisant 'FontRepository.open_font'.
+1. Créez un nouveau document PDF et ajoutez une page.
+1. Ajouter un fragment de texte stylisé avec :
+ - Police personnalisée intégrée.
+ - style italique et couleur bleue.
+ - Taille de police spécifique et position.
+1. Enregistrez le document final à un chemin de sortie spécifié.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def use_custom_font_from_stream(output_file_name):
+ font_path = os.path.join(FONT_DIR, "BriosoPro Italic.otf")
+ with open(font_path, "rb") as font_stream:
+ font = ap.text.FontRepository.open_font(font_stream, ap.text.FontTypes.OTF)
+ font.is_embedded = True
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ fragment = ap.text.TextFragment("Hello, Aspose!")
+ fragment.position = ap.text.Position(100, 600)
+ fragment.text_state.font = font
+ fragment.text_state.font_size = 14
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ page.paragraphs.add(fragment)
+ document.save(output_file_name)
+```
+
+L'intégration des polices garantit un rendu cohérent sur toutes les plateformes, ce qui rend cette approche idéale pour le branding, la fidélité du design et le support multilingue.
+
+## Sujets de texte associés
+
+- [Travailler avec le texte dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-text/)
+- [Formater le texte PDF en Python](/pdf/fr/python-net/text-formatting-inside-pdf/)
+- [Remplacer le texte dans le PDF via Python](/pdf/fr/python-net/replace-text-in-pdf/)
+- [Rechercher et extraire le texte PDF en Python](/pdf/fr/python-net/search-and-get-text-from-pdf/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_html.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_html.png
new file mode 100644
index 0000000000..701c621614
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_html.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_latex.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_latex.png
new file mode 100644
index 0000000000..c42c33a539
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_latex.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/character_spacing_simple.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/character_spacing_simple.png
new file mode 100644
index 0000000000..3d1ac22841
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/character_spacing_simple.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/custom_font.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/custom_font.png
new file mode 100644
index 0000000000..6415c929f0
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/custom_font.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/gradient_radial_shading.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/gradient_radial_shading.png
new file mode 100644
index 0000000000..c6eeb2c416
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/gradient_radial_shading.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_content.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_content.png
new file mode 100644
index 0000000000..742222d41e
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_content.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_fragment.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_fragment.png
new file mode 100644
index 0000000000..569d530709
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_fragment.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_override.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_override.png
new file mode 100644
index 0000000000..d10cdc2593
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_override.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/hyperlink_text.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/hyperlink_text.png
new file mode 100644
index 0000000000..137c29629b
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/hyperlink_text.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/latex_fragment.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/latex_fragment.png
new file mode 100644
index 0000000000..bc246cfc0f
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/latex_fragment.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/line_spacing.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/line_spacing.png
new file mode 100644
index 0000000000..eb284e2afa
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/line_spacing.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_html.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_html.png
new file mode 100644
index 0000000000..f04bb77a7d
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_html.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_latex.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_latex.png
new file mode 100644
index 0000000000..9fdb376e24
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_latex.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/rtl_text.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/rtl_text.png
new file mode 100644
index 0000000000..439ac9dbe3
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/rtl_text.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/styled_text.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/styled_text.png
new file mode 100644
index 0000000000..dff4a6b1a9
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/styled_text.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/text_paragraph.png b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/text_paragraph.png
new file mode 100644
index 0000000000..10cf9ea243
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/text_paragraph.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md b/fr/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md
index ed168a7661..a5b0e5ade2 100644
--- a/fr/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md
+++ b/fr/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md
@@ -1,295 +1,187 @@
---
-title: PDF Tooltip en utilisant Python
-linktitle: PDF Tooltip
+title: Ajouter des infobulles au texte PDF en Python
+linktitle: Infobulle PDF
type: docs
weight: 20
url: /fr/python-net/pdf-tooltip/
-description: Apprenez à ajouter une info-bulle au fragment de texte dans un PDF en utilisant Python et Aspose.PDF
-lastmod: "2024-02-17"
+description: Apprenez comment ajouter des infobulles aux fragments de texte dans les documents PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajoutez des infobulles interactives aux fragments de texte PDF à l'aide de Python
+Abstract: Cet article fournit deux exemples Python pour ajouter de l'aide interactive au texte PDF en utilisant Aspose.PDF for Python via .NET. Le premier exemple ajoute des infobulles aux fragments de texte correspondants en plaçant des éléments `ButtonField` invisibles et en définissant `alternate_name`. Le deuxième exemple crée un `TextBoxField` caché qui apparaît au survol en reliant des événements `HideAction` à un `ButtonField` invisible.
---
-
+## Ajouter une infobulle au texte recherché dans un PDF
-## Ajouter une Info-bulle au Texte Recherché en ajoutant un Bouton Invisible
+Cet extrait de code montre comment superposer invisible [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) éléments sur spécifique [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) objets dans un PDF pour afficher des infobulles lorsque l'utilisateur survole ceux-ci. Il prend en charge les messages d'infobulles courts et longs en utilisant le `alternate_name` propriété de `ButtonField`.
-Ce code montre comment ajouter des info-bulles à des fragments de texte spécifiques dans un document PDF en utilisant Aspose.PDF. Les info-bulles s'affichent lorsque le curseur de la souris survole le texte correspondant.
+Utilisez cette page lorsque vous devez rendre le texte PDF plus interactif en ajoutant de l'aide au survol, des explications en ligne ou des notes contextuelles.
-Le code suivant vous montrera comment réaliser cette fonctionnalité :
+1. Créer un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Enregistrez le document initial.
+1. Rouvrez le document PDF.
+1. Recherchez le texte cible en utilisant [`TextFragmentAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/).
+1. Ajouter un invisible [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) avec une info-bulle courte.
+1. Rechercher le deuxième texte cible.
+1. Ajouter un invisible [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) avec une info-bulle longue au-dessus du fragment correspondant.
+1. Enregistrez le document final.
```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- document.pages.add().paragraphs.add(
- ap.text.TextFragment("Déplacez le curseur de la souris ici pour afficher une info-bulle")
- )
- document.pages[1].paragraphs.add(
- ap.text.TextFragment(
- "Déplacez le curseur de la souris ici pour afficher une info-bulle très longue"
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+import sys
+from os import path
+
+# region PDF Tooltip
+def add_tool_tip_to_searched_text(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ document.pages.add().paragraphs.add(
+ ap.text.TextFragment("Move the mouse cursor here to display a tooltip")
)
- )
- document.save(output_pdf)
-
- # Ouvrir le document avec le texte
- document = ap.Document(output_pdf)
- # Créer un objet TextAbsorber pour trouver toutes les phrases correspondant à l'expression régulière
- absorber = ap.text.TextFragmentAbsorber(
- "Déplacez le curseur de la souris ici pour afficher une info-bulle"
- )
- # Accepter l'absorbeur pour les pages du document
- document.pages.accept(absorber)
- # Obtenir les fragments de texte extraits
- text_fragments = absorber.text_fragments
-
- # Boucler à travers les fragments
- for fragment in text_fragments:
- # Créer un bouton invisible à la position du fragment de texte
- field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
- # La valeur de alternate_name sera affichée comme info-bulle par une application de visualisation
- field.alternate_name = "Info-bulle pour le texte."
- # Ajouter le champ de bouton au document
- document.form.add(field)
-
- # Ensuite, un exemple d'info-bulle très longue
- absorber = ap.text.TextFragmentAbsorber(
- "Déplacez le curseur de la souris ici pour afficher une info-bulle très longue"
- )
- document.pages.accept(absorber)
- text_fragments = absorber.text_fragments
-
- for fragment in text_fragments:
- field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
- # Définir un texte très long
- field.alternate_name = (
- "Lorem ipsum dolor sit amet, consectetur adipiscing elit,"
- " sed do eiusmod tempor incididunt ut labore et dolore magna"
- " aliqua. Ut enim ad minim veniam, quis nostrud exercitation"
- " ullamco laboris nisi ut aliquip ex ea commodo consequat."
- " Duis aute irure dolor in reprehenderit in voluptate velit"
- " esse cillum dolore eu fugiat nulla pariatur. Excepteur sint"
- " occaecat cupidatat non proident, sunt in culpa qui officia"
- " deserunt mollit anim id est laborum."
+ document.pages[1].paragraphs.add(
+ ap.text.TextFragment(
+ "Move the mouse cursor here to display a very long tooltip"
+ )
)
- document.form.add(field)
+ document.save(outfile)
- # Enregistrer le document
- document.save(output_pdf)
+ # Open document with text
+ with ap.Document(outfile) as document:
+ # Create TextAbsorber object to find all the phrases matching the regular expression
+ absorber = ap.text.TextFragmentAbsorber(
+ "Move the mouse cursor here to display a tooltip"
+ )
+ # Accept the absorber for the document pages
+ document.pages.accept(absorber)
+ # Get the extracted text fragments
+ text_fragments = absorber.text_fragments
+
+ # Loop through the fragments
+ for fragment in text_fragments:
+ # Create invisible button on text fragment position
+ field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
+ # alternate_name value will be displayed as tooltip by a viewer application
+ field.alternate_name = "Tooltip for text."
+ # Add button field to the document
+ document.form.add(field)
+
+ # Next will be sample of very long tooltip
+ absorber = ap.text.TextFragmentAbsorber(
+ "Move the mouse cursor here to display a very long tooltip"
+ )
+ document.pages.accept(absorber)
+ text_fragments = absorber.text_fragments
+
+ for fragment in text_fragments:
+ field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
+ # Set very long text
+ field.alternate_name = (
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit,"
+ " sed do eiusmod tempor incididunt ut labore et dolore magna"
+ " aliqua. Ut enim ad minim veniam, quis nostrud exercitation"
+ " ullamco laboris nisi ut aliquip ex ea commodo consequat."
+ " Duis aute irure dolor in reprehenderit in voluptate velit"
+ " esse cillum dolore eu fugiat nulla pariatur. Excepteur sint"
+ " occaecat cupidatat non proident, sunt in culpa qui officia"
+ " deserunt mollit anim id est laborum."
+ )
+ document.form.add(field)
+
+ # Save document
+ document.save(outfile)
```
+## Créer un bloc de texte caché qui apparaît au survol dans un PDF
-## Créer un bloc de texte caché et l'afficher au survol de la souris
+Ajouter du texte flottant interactif à un document PDF. Il superpose un invisible [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) sur une phrase cible et révèle un caché [`TextBoxField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/) lorsque l'utilisateur survole l'élément. Cette technique est idéale pour l'aide contextuelle, les annotations ou la présentation de contenu dynamique.
-Ce snippet de code Python montre comment ajouter du texte flottant à un document PDF, qui apparaît lorsque le curseur de la souris survole une zone spécifique.
-
-Tout d'abord, un nouveau document PDF est créé, et un paragraphe contenant le texte "Déplacez le curseur de la souris ici pour afficher le texte flottant" est ajouté. Le document est ensuite enregistré.
-
-Ensuite, le document enregistré est rouvert, et un objet TextAbsorber est créé pour trouver le fragment de texte précédemment ajouté. Ce fragment de texte est ensuite utilisé pour définir la position et les caractéristiques du champ de texte flottant.
-
-Un objet TextBoxField est créé pour représenter le champ de texte flottant, et ses propriétés telles que la position, la valeur, le statut en lecture seule, et la visibilité sont configurées en conséquence. De plus, un nom unique et des caractéristiques d'apparence sont attribués au champ.
-
-Le champ de texte flottant est ajouté au formulaire du document, et un champ de bouton invisible est créé à la position du fragment de texte original.
- Les événements HideAction sont assignés au champ de bouton, spécifiant que le champ de texte flottant doit apparaître lorsque le curseur de la souris entre dans sa proximité et disparaître lorsque le curseur en sort.
-
-Enfin, le champ de bouton est ajouté au formulaire du document, et le document modifié est enregistré.
-
-Cet extrait de code fournit une méthode pour créer des éléments de texte flottants interactifs dans un document PDF en utilisant Aspose.PDF pour Python.
+1. Créer un nouveau document PDF.
+1. Enregistrez le PDF afin de pouvoir le rouvrir pour configurer l'interactivité.
+1. Rouvrez le document PDF.
+1. Localisez le texte cible en utilisant [`TextFragmentAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/).
+1. Créer un caché [`TextBoxField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/).
+1. Ajoutez le champ caché au document [`Form`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) collection.
+1. Créer un invisible [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/).
+1. Attribuer des actions de la souris ("`on_enter`, `on_exit`) en utilisant [`HideAction`](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/hideaction/) pour afficher/masquer le champ caché.
+1. Enregistrez le document final.
```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- document.pages.add().paragraphs.add(
- ap.text.TextFragment("Déplacez le curseur de la souris ici pour afficher le texte flottant")
- )
- document.save(output_pdf)
-
- # Ouvrir le document avec du texte
- document = ap.Document(output_pdf)
- # Créer un objet TextAbsorber pour trouver toutes les phrases correspondant à l'expression régulière
- absorber = ap.text.TextFragmentAbsorber(
- "Déplacez le curseur de la souris ici pour afficher le texte flottant"
- )
- # Accepter l'absorbeur pour les pages du document
- document.pages.accept(absorber)
- # Obtenir le premier fragment de texte extrait
- text_fragments = absorber.text_fragments
- fragment = text_fragments[1]
-
- # Créer un champ de texte caché pour le texte flottant dans le rectangle spécifié de la page
- floating_field = ap.forms.TextBoxField(
- fragment.page, ap.Rectangle(100.0, 700.0, 220.0, 740.0, False)
- )
- # Définir le texte à afficher comme valeur du champ
- floating_field.value = 'Ceci est le "champ de texte flottant".'
- # Nous recommandons de rendre le champ 'readonly' pour ce scénario
- floating_field.read_only = True
- # Définir le drapeau 'hidden' pour rendre le champ invisible à l'ouverture du document
- floating_field.flags |= ap.annotations.AnnotationFlags.HIDDEN
-
- # Définir un nom de champ unique n'est pas nécessaire mais autorisé
- floating_field.partial_name = "FloatingField_1"
-
- # Définir les caractéristiques de l'apparence du champ n'est pas nécessaire mais améliore
- floating_field.default_appearance = ap.annotations.DefaultAppearance(
- "Helv", 10, ap.Color.blue.to_rgb()
- )
- floating_field.characteristics.background = ap.Color.light_blue.to_rgb()
- floating_field.characteristics.border = ap.Color.dark_blue.to_rgb()
- floating_field.border = ap.annotations.Border(floating_field)
- floating_field.border.width = 1
- floating_field.multiline = True
-
- # Ajouter le champ de texte au document
- document.form.add(floating_field)
- # Créer un bouton invisible à la position du fragment de texte
- button_field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
- # Créer une nouvelle action de masquage pour le champ spécifié (annotation) et le drapeau d'invisibilité.
- # (Vous pouvez également référer le champ flottant par le nom si vous l'avez spécifié ci-dessus.)
- # Ajouter des actions à l'entrée/sortie de la souris sur le champ de bouton invisible
-
- button_field.actions.on_enter = ap.annotations.HideAction(
- floating_field.partial_name, False
- )
- button_field.actions.on_exit = ap.annotations.HideAction(
- floating_field.partial_name
- )
-
- # Ajouter le champ de bouton au document
- document.form.add(button_field)
-
- # Enregistrer le document
- document.save(output_pdf)
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+import sys
+from os import path
+
+def create_hidden_text_block(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add paragraph with text
+ document.pages.add().paragraphs.add(
+ ap.text.TextFragment("Move the mouse cursor here to display floating text")
+ )
+ # Save PDF document
+ document.save(outfile)
+
+ # Open document with text
+ with ap.Document(outfile) as document:
+ # Create TextAbsorber object to find all the phrases matching the regular expression
+ absorber = ap.text.TextFragmentAbsorber(
+ "Move the mouse cursor here to display floating text"
+ )
+ # Accept the absorber for the document pages
+ document.pages.accept(absorber)
+ # Get the first extracted text fragment
+ text_fragments = absorber.text_fragments
+ fragment = text_fragments[1]
+
+ # Create hidden text field for floating text in the specified rectangle of the page
+ floating_field = ap.forms.TextBoxField(
+ fragment.page, ap.Rectangle(100.0, 700.0, 220.0, 740.0, False)
+ )
+ # Set text to be displayed as field value
+ floating_field.value = 'This is the "floating text field".'
+ # We recommend to make field 'readonly' for this scenario
+ floating_field.read_only = True
+ # Set 'hidden' flag to make field invisible on document opening
+ floating_field.flags |= ap.annotations.AnnotationFlags.HIDDEN
+
+ # Setting a unique field name isn't necessary but allowed
+ floating_field.partial_name = "FloatingField_1"
+
+ # Setting characteristics of field appearance isn't necessary but makes it better
+ floating_field.default_appearance = ap.annotations.DefaultAppearance(
+ "Helv", 10, drawing.Color.blue
+ )
+ floating_field.characteristics.background = drawing.Color.light_blue
+ floating_field.characteristics.border = drawing.Color.dark_blue
+ floating_field.border = ap.annotations.Border(floating_field)
+ floating_field.border.width = 1
+ floating_field.multiline = True
+
+ # Add text field to the document
+ document.form.add(floating_field)
+ # Create invisible button on text fragment position
+ button_field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
+ # Create new hide action for specified field (annotation) and invisibility flag.
+ # (You also may refer floating field by the name if you specified it above.)
+ # Add actions on mouse enter/exit at the invisible button field
+
+ button_field.actions.on_enter = ap.annotations.HideAction(floating_field, False)
+ button_field.actions.on_exit = ap.annotations.HideAction(floating_field)
+
+ # Add button field to the document
+ document.form.add(button_field)
+
+ # Save document
+ document.save(outfile)
```
-
\ No newline at end of file
+## Sujets de texte associés
+
+- [Travailler avec le texte dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-text/)
+- [Utilisez FloatingBox pour la mise en page du texte PDF en Python](/pdf/fr/python-net/floating-box/)
+- [Rechercher et extraire le texte PDF en Python](/pdf/fr/python-net/search-and-get-text-from-pdf/)
+- [Ajout de texte au PDF](/pdf/fr/python-net/add-text-to-pdf-file/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/determine-line-break/_index.md b/fr/python-net/advanced-operations/working-with-text/determine-line-break/_index.md
deleted file mode 100644
index f530c6dd04..0000000000
--- a/fr/python-net/advanced-operations/working-with-text/determine-line-break/_index.md
+++ /dev/null
@@ -1,185 +0,0 @@
----
-title: Déterminer le Saut de Ligne
-linktitle: Déterminer le Saut de Ligne
-type: docs
-weight: 70
-url: /fr/python-net/determine-line-break/
-description: Apprenez-en plus sur comment déterminer un saut de ligne d'un TextFragment multi-lignes en utilisant Python
-lastmod: "2024-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Suivi de la Césure de Texte Multi-Lignes
-
-Le snippet de code suivant montre comment suivre le comportement de la césure d'un TextFragment multi-lignes dans un document PDF.
-
-La fonction track_line_breaking() est définie pour démontrer cette fonctionnalité. Elle commence par spécifier les chemins des fichiers de sortie pour le document PDF généré et un fichier texte correspondant qui contiendra des informations sur la césure.
-
-Au sein de la fonction, un nouvel objet document PDF est créé, et une nouvelle page y est ajoutée. Par la suite, une boucle est utilisée pour générer quatre instances d'un TextFragment contenant un texte avec des sauts de ligne ("\r\n") insérés dans la chaîne pour simuler un texte multi-lignes.
-
-Chaque TextFragment est configuré avec une taille de police de 20 points avant d'être ajouté aux paragraphes de la page.
-
-Après que tous les TextFragments ont été ajoutés, le document est sauvegardé.
-
-La fonction procède ensuite à extraire des notifications sur la césure de la deuxième page du document PDF généré en utilisant la méthode get_notifications().
- Ces notifications sont écrites dans un fichier texte spécifié précédemment.
-
-Cet extrait de code illustre comment créer un document PDF contenant du texte sur plusieurs lignes, puis extraire des informations concernant le comportement de saut de ligne, fournissant des insights sur la disposition du texte dans le document.
-
-```python
-
- import aspose.pdf as ap
-
- def track_line_breaking():
- """Suivre le découpage de ligne de TextFragment multi-ligne"""
- output_pdf = DIR_OUTPUT_TEXTS + "track_line_breaking.pdf"
- output_txt = DIR_OUTPUT_TEXTS + "track_line_breaking.txt"
-
- # Créer un nouvel objet document
- document = ap.Document()
- page = document.pages.add()
-
- for i in range(4):
- text = ap.text.TextFragment(
- "Lorem ipsum \r\ndolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
- )
- text.text_state.font_size = 20
- page.paragraphs.add(text)
- document.save(output_pdf)
-
- notifications = document.pages[1].get_notifications()
- with open(output_txt, "w") as f:
- f.write(notifications)
-```
-
-
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/floating-box/_index.md b/fr/python-net/advanced-operations/working-with-text/floating-box/_index.md
new file mode 100644
index 0000000000..8313c3dbcf
--- /dev/null
+++ b/fr/python-net/advanced-operations/working-with-text/floating-box/_index.md
@@ -0,0 +1,304 @@
+---
+title: Utilisez FloatingBox pour la mise en page PDF en Python
+linktitle: Utilisation de FloatingBox
+type: docs
+weight: 30
+url: /fr/python-net/floating-box/
+description: Apprenez à utiliser FloatingBox pour la mise en page du texte, le contenu multi-colonnes et le positionnement précis dans les documents PDF avec Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Créez et positionnez des conteneurs FloatingBox stylisés dans un PDF avec Python.
+Abstract: Cet article explique comment utiliser FloatingBox dans Aspose.PDF for Python via .NET. Apprenez comment placer du texte et d'autres contenus dans des conteneurs flottants stylisés, contrôler la mise en page, les bordures, l'alignement et le rognage, et créer des conceptions de pages PDF plus structurées en Python.
+---
+
+## Utilisation de base de FloatingBox
+
+Le [`FloatingBox`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/) Une classe est un conteneur pour placer du texte et d'autres contenus sur une page PDF. Elle vous offre un contrôle plus fin sur la mise en page, les bordures et le style par rapport aux paragraphes de texte ordinaires. Si le contenu dépasse la taille de la boîte, le comportement de découpage est contrôlé par les paramètres de la boîte.
+
+Utilisez cette page lorsque vous avez besoin de conteneurs de texte structurés, de mises en page à plusieurs colonnes et d’un positionnement précis dans les documents PDF avec Aspose.PDF for Python via .NET.
+
+1. Créer un nouveau [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Ajouter un [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) au document.
+1. Créer un [`FloatingBox`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/).
+1. Définir la bordure de la boîte en utilisant [`BorderInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/) et [`BorderSide`](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderside/).
+1. Répétition de la boîte de contrôle avec le [`is_need_repeating`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) propriété.
+1. Ajouter du contenu texte en utilisant [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/).
+1. Ajouter le `FloatingBox` au [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Enregistrez le document PDF final en utilisant [`Document.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+
+```python
+import aspose.pdf as ap
+
+def create_and_add_floating_box(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Create and fill box
+ box = ap.FloatingBox(400, 30)
+ box.border = ap.BorderInfo(ap.BorderSide.ALL, 1.5, ap.Color.dark_green)
+ box.is_need_repeating = False
+ phrase = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quam odio, sollicitudin ac mauris vel, suscipit pellentesque nisi."
+ box.paragraphs.add(ap.text.TextFragment(phrase))
+ # Add box
+ page.paragraphs.add(box)
+ document.save(outfile)
+```
+
+Dans l'exemple ci-dessus, le `FloatingBox` est créé avec une largeur de 400 pt et une hauteur de 30 pt.
+Le texte dépasse intentionnellement la hauteur disponible, de sorte qu'une partie est rognée.
+
+
+
+Le [`is_need_repeating`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) propriété avec une valeur de `False` limite le rendu du texte à une seule page.
+
+Si vous définissez cette propriété sur `True`, le texte se reformate sur les pages suivantes à la même position.
+
+
+
+## Fonctionnalités avancées de FloatingBox
+
+### Prise en charge multicolonnes
+
+#### Mise en page à plusieurs colonnes (cas simple)
+
+`FloatingBox` prend en charge la mise en page à plusieurs colonnes. Pour créer une telle mise en page, vous devez définir les valeurs de [`ColumnInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/columninfo/) propriétés.
+
+* `column_widths` est une chaîne qui définit la largeur de chaque colonne en points.
+* `column_spacing` est une chaîne qui définit la largeur de l'écart entre les colonnes.
+* `column_count` est le nombre de colonnes.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def multi_column_layout(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Set margin settings
+ page.page_info.margin = ap.MarginInfo(36, 18, 36, 18)
+ column_count = 3
+ spacing = 10
+ width = (
+ page.page_info.width
+ - page.page_info.margin.left
+ - page.page_info.margin.right
+ - (column_count - 1) * spacing
+ )
+ column_width = width / 3
+ # Create FloatingBox
+ box = ap.FloatingBox()
+ box.is_need_repeating = True
+ box.column_info.column_widths = f"{column_width} {column_width} {column_width}"
+ box.column_info.column_spacing = f"{spacing}"
+ box.column_info.column_count = 3
+ phrase = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quam odio, sollicitudin ac mauris vel, suscipit pellentesque nisi."
+ paragraphs = [
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ ]
+ for paragraph in paragraphs:
+ box.paragraphs.add(ap.text.TextFragment(paragraph))
+ # Add a box to a page
+ page.paragraphs.add(box)
+ # Save PDF document
+ document.save(outfile)
+```
+
+L'exemple génère des paragraphes d'exemple et les place dans trois colonnes. Le contenu se poursuit sur des pages supplémentaires jusqu'à ce que tous les paragraphes soient rendus.
+
+#### Mise en page à colonnes multiples avec démarrage de colonne forcé
+
+Cet exemple utilise la même configuration multicolonnes, mais force chaque paragraphe ajouté à commencer dans une nouvelle colonne. Pour ce faire, définissez `is_first_paragraph_in_column = True` sur chaque `TextFragment` avant de l'ajouter à `FloatingBox`.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def multi_column_layout_2(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Set margin settings
+ page.page_info.margin = ap.MarginInfo(36, 18, 36, 18)
+ column_count = 3
+ spacing = 10
+ width = (
+ page.page_info.width
+ - page.page_info.margin.left
+ - page.page_info.margin.right
+ - (column_count - 1) * spacing
+ )
+ column_width = width / 3
+ # Create FloatingBox
+ box = ap.FloatingBox()
+ box.is_need_repeating = True
+ box.column_info.column_widths = f"{column_width} {column_width} {column_width}"
+ box.column_info.column_spacing = f"{spacing}"
+ box.column_info.column_count = 3
+ phrase = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quam odio, sollicitudin ac mauris vel, suscipit pellentesque nisi."
+ paragraphs = [
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ ]
+ for paragraph in paragraphs:
+ text = ap.text.TextFragment(paragraph)
+ text.is_first_paragraph_in_column = True
+ box.paragraphs.add(text)
+ # Add a box to a page
+ page.paragraphs.add(box)
+ # Save PDF document
+ document.save(outfile)
+```
+
+### Support en arrière-plan
+
+Appliquer une couleur d'arrière-plan à un `FloatingBox` dans un document PDF en utilisant Aspose.PDF for Python via .NET.
+En attribuant un [`Color`](https://reference.aspose.com/pdf/python-net/aspose.pdf/color/) à `background_color`, vous pouvez mettre en évidence le contenu pour les en-têtes, les encadrés ou les sections stylisées.
+
+Cet extrait de code montre comment créer une zone de texte vert clair avec un contenu d'exemple.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def background_support(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Create and fill box
+ box = ap.FloatingBox(400, 30)
+ box.background_color = ap.Color.light_green
+ box.is_need_repeating = False
+ box.paragraphs.add(ap.text.TextFragment("text example"))
+ # Add box
+ page.paragraphs.add(box)
+ # Save PDF document
+ document.save(outfile)
+```
+
+### Prise en charge du positionnement
+
+La position de `FloatingBox` sur la page est contrôlé par `positioning_mode`, `left`, et `top`.
+Quand `positioning_mode` est:
+
+* [`ParagraphPositioningMode.DEFAULT`](https://reference.aspose.com/pdf/python-net/aspose.pdf/paragraphpositioningmode/) (par défaut)
+
+L'emplacement dépend des éléments ajoutés précédemment. L'ajout d'un nouveau paragraphe affecte le flux des éléments suivants. Si [`left`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) ou [`top`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) sont non nuls, ils sont également appliqués.
+
+* [`ParagraphPositioningMode.ABSOLUTE`](https://reference.aspose.com/pdf/python-net/aspose.pdf/paragraphpositioningmode/)
+
+L'emplacement est fixé par `left` et `top`; il ne dépend pas des éléments antérieurs et n'affecte pas le déroulement des suivants.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def offset_support(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Create and fill box
+ box = ap.FloatingBox(400, 30)
+ box.top = 45
+ box.left = 15
+ box.positioning_mode = ap.ParagraphPositioningMode.ABSOLUTE
+ box.border = ap.BorderInfo(ap.BorderSide.ALL, 1.5, ap.Color.dark_green)
+ box.paragraphs.add(ap.text.TextFragment("text example 1"))
+ page.paragraphs.add(ap.text.TextFragment("text example 2"))
+ # Add the box to the page
+ page.paragraphs.add(box)
+ page.paragraphs.add(ap.text.TextFragment("text example 3"))
+ document.save(outfile)
+```
+
+### Aligner les boîtes flottantes avec un alignement vertical et horizontal dans le PDF
+
+Aligner `FloatingBox` éléments sur une page PDF en utilisant [`VerticalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/verticalalignment/) et [`HorizontalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/horizontalalignment/) en Aspose.PDF for Python via .NET. Cela vous aide à placer des conteneurs flottants en haut, au centre ou en bas pour les dispositions de page, les blocs d'en-tête/pied de page ou les notes latérales.
+
+1. Créer un nouveau document PDF.
+1. Ajoutez une page au document.
+1. Ajouter le premier `FloatingBox` avec un alignement en bas à droite.
+1. Ajouter le second `FloatingBox` avec un alignement centré à droite.
+1. Ajouter le troisième `FloatingBox` avec un alignement en haut à droite.
+1. Enregistrez le document.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def align_text_to_float(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+
+ # Create float box
+ float_box = ap.FloatingBox(100, 100)
+ # Set settings to float box
+ float_box.vertical_alignment = ap.VerticalAlignment.BOTTOM
+ float_box.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ float_box.paragraphs.add(ap.text.TextFragment("FloatingBox_bottom"))
+ float_box.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.blue)
+ # Add float box
+ page.paragraphs.add(float_box)
+
+ # Create float box
+ float_box_2 = ap.FloatingBox(100, 100)
+ # Set settings to float box
+ float_box_2.vertical_alignment = ap.VerticalAlignment.CENTER
+ float_box_2.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ float_box_2.paragraphs.add(ap.text.TextFragment("FloatingBox_center"))
+ float_box_2.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.blue)
+ # Add float box
+ page.paragraphs.add(float_box_2)
+
+ # Create float box
+ float_box_3 = ap.FloatingBox(100, 100)
+ # Set settings to float box
+ float_box_3.vertical_alignment = ap.VerticalAlignment.TOP
+ float_box_3.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ float_box_3.paragraphs.add(ap.text.TextFragment("FloatingBox_top"))
+ float_box_3.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.blue)
+ # Add float box
+ page.paragraphs.add(float_box_3)
+
+ # Save the document
+ document.save(outfile)
+```
+
+## Sujets de texte associés
+
+* [Travailler avec le texte dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-text/)
+* [Ajout de texte au PDF](/pdf/fr/python-net/add-text-to-pdf-file/)
+* [Formater le texte PDF en Python](/pdf/fr/python-net/text-formatting-inside-pdf/)
+* [Ajouter des info-bulles au texte PDF en Python](/pdf/fr/python-net/pdf-tooltip/)
diff --git a/fr/python-net/advanced-operations/working-with-text/floating-box/image01.png b/fr/python-net/advanced-operations/working-with-text/floating-box/image01.png
new file mode 100644
index 0000000000..362771c51d
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/floating-box/image01.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/floating-box/image02.png b/fr/python-net/advanced-operations/working-with-text/floating-box/image02.png
new file mode 100644
index 0000000000..c179e185fb
Binary files /dev/null and b/fr/python-net/advanced-operations/working-with-text/floating-box/image02.png differ
diff --git a/fr/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md b/fr/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md
index 1bf80b30a8..9aca04f2f3 100644
--- a/fr/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md
@@ -1,557 +1,507 @@
---
-title: Remplacer du Texte dans un PDF via Python
-linktitle: Remplacer du Texte dans un PDF
+title: Remplacer le texte dans le PDF avec Python
+linktitle: Remplacer le texte dans le PDF
type: docs
weight: 40
url: /fr/python-net/replace-text-in-pdf/
-description: En savoir plus sur les différentes manières de remplacer et de supprimer du texte avec Aspose.PDF pour Python via la bibliothèque .NET.
-lastmod: "2024-02-17"
+description: Apprenez comment remplacer, réorganiser et supprimer du texte dans des documents PDF à l'aide de Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+aliases:
+ - /python-net/replace-text-in-a-pdf-document/
+TechArticle: true
+AlternativeHeadline: Remplacez, supprimez et ajustez le contenu texte dans un PDF à l'aide de Python
+Abstract: Cet article couvre les flux de travail pratiques de remplacement de texte dans les documents PDF utilisant Aspose.PDF for Python via .NET. Il comprend le remplacement de texte à travers les pages, la limitation du remplacement à des régions spécifiques, l'ajustement de la mise en page du texte lors du remplacement, le travail avec la correspondance basée sur les expressions régulières, le remplacement des polices, et la suppression du contenu texte lorsque nécessaire.
---
-
-
-
-## Remplacer le texte dans toutes les pages d'un document PDF
+
+Ces exemples montrent comment **modifier ou supprimer du texte dans un PDF existant**.
+
+Utilisez cette page lorsque vous devez mettre à jour les valeurs de texte, supprimer le contenu indésirable ou appliquer des règles de remplacement de texte sur les pages PDF.
+
+## Remplacer le texte existant
+
+### Remplacer le texte dans toutes les pages du document PDF
{{% alert color="primary" %}}
-Vous pouvez essayer de trouver et remplacer le texte dans le document en utilisant Aspose.PDF et obtenir les résultats en ligne à ce [lien](https://products.aspose.app/pdf/redaction)
+Vous pouvez essayer de trouver et remplacer le texte dans le document en utilisant Aspose.PDF et obtenir les résultats en ligne à cet endroit [lien](https://products.aspose.app/pdf/redaction)
{{% /alert %}}
-Pour remplacer le texte dans toutes les pages d'un document PDF, vous devez d'abord utiliser [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) pour trouver la phrase particulière que vous souhaitez remplacer. Ensuite, vous devez parcourir tous les TextFragments pour remplacer le texte et modifier tous les autres attributs. Une fois cela fait, il vous suffit de sauvegarder le PDF de sortie en utilisant la méthode Save de l'objet Document. Le code suivant vous montre comment remplacer le texte dans toutes les pages d'un document PDF.
+Le remplacement de texte est une exigence courante lors de la mise à jour ou de la correction du contenu de documents PDF existants — par exemple, changer les noms de produits, corriger les fautes de frappe ou mettre à jour la terminologie sur plusieurs pages.
-```python
+Aspose.PDF for Python via .NET offre une méthode puissante et efficace pour rechercher et remplacer du texte programmatiquement à travers le [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) classe.
- import aspose.pdf as ap
+Cet exemple montre comment trouver toutes les occurrences d'une phrase spécifique (dans ce cas, "Black cat") et les remplacer par une nouvelle phrase ("White dog") dans l’ensemble d’un document PDF complet.
- # Ouvrir le document
- document = ap.Document(input_pdf)
+1. Spécifiez les expressions de recherche et de remplacement. Définissez le texte que vous souhaitez trouver et le texte avec lequel vous souhaitez le remplacer.
+1. Chargez le PDF Document.
+1. Créez un Text Absorber. Un TextFragmentAbsorber est initialisé avec la phrase de recherche. Il parcourt le document à la recherche de toutes les occurrences de la phrase donnée.
+1. Appliquer l'Absorber à toutes les pages. Cela parcourt toutes les pages et collecte les fragments de texte correspondant à la phrase.
+1. Remplacez chaque fragment trouvé. Chaque occurrence de "Black cat" doit être remplacée par "White dog".
+1. Enregistrez le PDF mis à jour.
- # Créer un objet TextAbsorber pour trouver toutes les instances de la phrase de recherche
- absorber = ap.text.TextFragmentAbsorber("format")
+```python
+import sys
+import aspose.pdf as ap
+from os import path
- # Accepter l'absorbeur pour toutes les pages
- document.pages.accept(absorber)
+def replace_text_on_all_pages(infile, outfile):
+ search_phrase = "PDF"
+ replace_phrase = "pdf"
- # Obtenir les fragments de texte extraits
- collection = absorber.text_fragments
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber(search_phrase)
+ document.pages.accept(absorber)
- # Parcourir les fragments
- for text_fragment in collection:
- # Mettre à jour le texte et d'autres propriétés
- text_fragment.text = "FORMAT"
- text_fragment.text_state.font = ap.text.FontRepository.find_font("Verdana")
- text_fragment.text_state.font_size = 22
- text_fragment.text_state.foreground_color = ap.Color.blue
- text_fragment.text_state.background_color = ap.Color.green
+ for fragment in absorber.text_fragments:
+ fragment.text = replace_phrase
- # Sauvegarder le document
- document.save(output_pdf)
+ document.save(outfile)
```
+### Remplacer le texte dans une région particulière de la page
+
+Parfois, vous pouvez avoir besoin de remplacer du texte uniquement dans une zone spécifique d’une page PDF au lieu de rechercher dans l’ensemble du document — par exemple, mettre à jour un en‑tête, un pied de page ou une cellule de tableau à une position connue.
+
+La bibliothèque Aspose.PDF for Python via .NET active cette fonctionnalité en utilisant le [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) en conjonction avec la recherche de texte basée sur les régions.
-## Remplacer le texte dans une région particulière de la page
+Cet exemple montre comment rechercher et remplacer toutes les occurrences d’une phrase cible dans une région rectangulaire définie sur une page spécifique.
-Afin de remplacer le texte dans une région particulière de la page, nous devons d'abord instancier un objet TextFragmentAbsorber, spécifier la région de la page en utilisant la propriété TextSearchOptions.Rectangle, puis parcourir tous les TextFragments pour remplacer le texte. Une fois ces opérations terminées, il ne reste plus qu'à enregistrer le PDF de sortie en utilisant la méthode Save de l'objet Document. Le code suivant vous montre comment remplacer le texte dans toutes les pages d'un document PDF.
+1. Spécifiez les expressions de recherche et de remplacement.
+1. Chargez le PDF Document.
+1. Créer un TextAbsorber pour la recherche. Initialiser un TextFragmentAbsorber afin de trouver le texte souhaité.
+1. Restreindre la zone de recherche. Le rectangle spécifie les limites des coordonnées x et y sur la page.
+1. Appliquer l'Absorber à une page spécifique. Cette opération effectue la recherche et collecte les fragments de texte correspondants dans la zone spécifiée.
+1. Remplacez le texte trouvé. Chaque occurrence de 'doc' dans la région définie devient 'DOC'.
+1. Enregistrez le PDF mis à jour.
```python
-// charger le fichier PDF
-Aspose.PDF.Document pdf = new Aspose.PDF.Document("c:/pdftest/programaticallyproducedpdf.pdf");
+import sys
+import aspose.pdf as ap
+from os import path
-// instancier l'objet TextFragment Absorber
-Aspose.PDF.Text.TextFragmentAbsorber TextFragmentAbsorberAddress = new Aspose.PDF.Text.TextFragmentAbsorber();
+def replace_text_in_particular_page_region(infile, outfile):
+ search_phrase = "doc"
+ replace_phrase = "DOC"
-// rechercher du texte à l'intérieur des limites de la page
-TextFragmentAbsorberAddress.TextSearchOptions.LimitToPageBounds = true;
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber(search_phrase)
+ absorber.text_search_options.limit_to_page_bounds = True
+ absorber.text_search_options.rectangle = ap.Rectangle(300, 442, 500, 742, True)
+ document.pages[1].accept(absorber)
+
+ for fragment in absorber.text_fragments:
+ fragment.text = replace_phrase
+
+ document.save(outfile)
+```
-// spécifier la région de la page pour les options de recherche de texte
-TextFragmentAbsorberAddress.TextSearchOptions.Rectangle = new Aspose.PDF.Rectangle(100, 100, 200, 200);
+### Redimensionner et déplacer le texte sans changer la taille de la police
-// rechercher du texte à partir de la première page du fichier PDF
-pdf.Pages[1].Accept(TextFragmentAbsorberAddress);
+Lors du remplacement de texte dans un PDF, il arrive parfois de vouloir ajuster ou repositionner le nouveau texte dans une zone spécifique sans modifier la taille de la police.
+Aspose.PDF for Python via .NET propose des options pour ajuster la disposition et l'espacement du texte tout en conservant la taille de police d'origine.
-// parcourir chaque TextFragment
-foreach( Aspose.PDF.Text.TextFragment tf in TextFragmentAbsorberAddress.TextFragments)
-{
- // mettre à jour le texte avec des caractères vides
- tf.Text = "";
-}
+1. Chargez le PDF Document.
+1. Collectez tous les fragments de texte sur la page en utilisant un 'TextFragmentAbsorber'.
+1. Sélectionnez le Fragment à modifier.
+1. Déplacer et redimensionner le rectangle de texte.
+1. Ajuster l'espacement du texte. Activer l'ajustement de l'espacement pour faire tenir le texte à l'intérieur du rectangle modifié.
+1. Remplacez le texte du fragment.
+1. Enregistrez le PDF mis à jour.
-// enregistrer le fichier PDF mis à jour après le remplacement du texte
-pdf.Save("c:/pdftest/TextUpdated.pdf");
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_resize_and_shift_without_changing_font_size(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ rect = fragment.rectangle
+ rect.llx += 50
+ rect.urx -= 50
+ fragment.replace_options.rectangle = rect
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
```
+### Redimensionner et déplacer un paragraphe dans le PDF
-## Remplacer le texte basé sur une expression régulière
+Lorsque vous travaillez avec des PDF, il arrive parfois de devoir remplacer ou étendre un paragraphe tout en le maintenant visuellement aligné avec la mise en page de la page. Aspose.PDF vous permet de redimensionner le rectangle englobant du paragraphe et d’ajuster l’espacement pour faire tenir le nouveau texte, le tout sans modifier la taille de la police.
-Si vous souhaitez remplacer certaines phrases basées sur une expression régulière, vous devez d'abord trouver toutes les phrases correspondant à cette expression régulière particulière en utilisant TextFragmentAbsorber. Vous devrez passer l'expression régulière en tant que paramètre au constructeur de TextFragmentAbsorber. Vous devez également créer un objet TextSearchOptions qui spécifie si l'expression régulière est utilisée ou non. Une fois que vous avez les phrases correspondantes dans TextFragments, vous devez parcourir chacune d'elles et mettre à jour si nécessaire. Enfin, vous devez enregistrer le PDF mis à jour en utilisant la méthode Save de l'objet Document. Le code suivant montre comment remplacer du texte basé sur une expression régulière.
+1. Chargez le PDF Document.
+1. Utilisez 'TextFragmentAbsorber' pour collecter tous les fragments de texte sur la page.
+1. Sélectionnez le Fragment à modifier.
+1. Redimensionner et déplacer le paragraphe. Utilisez la boîte média de la page pour déterminer les limites et ajuster le rectangle.
+1. Ajuster l'espacement. Cela modifie l'espacement entre les mots/lettres au lieu de changer la taille de la police.
+1. Remplacez le texte du fragment.
+1. Enregistrez le PDF modifié.
```python
-// Pour des exemples complets et des fichiers de données, veuillez aller sur https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Ouvrir le document
-Document pdfDocument = new Document(dataDir + "SearchRegularExpressionPage.pdf");
-
-// Créer un objet TextAbsorber pour trouver toutes les phrases correspondant à l'expression régulière
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\\d{4}-\\d{4}"); // Comme 1999-2000
-
-// Définir l'option de recherche de texte pour spécifier l'utilisation de l'expression régulière
-TextSearchOptions textSearchOptions = new TextSearchOptions(true);
-textFragmentAbsorber.TextSearchOptions = textSearchOptions;
-
-// Accepter l'absorbeur pour une seule page
-pdfDocument.Pages[1].Accept(textFragmentAbsorber);
-
-// Obtenir les fragments de texte extraits
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-
-// Parcourir les fragments
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- // Mettre à jour le texte et d'autres propriétés
- textFragment.Text = "Nouvelle Phrase";
- // Définir comme instance d'un objet.
- textFragment.TextState.Font = FontRepository.FindFont("Verdana");
- textFragment.TextState.FontSize = 22;
- textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Blue);
- textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
-}
-dataDir = dataDir + "ReplaceTextonRegularExpression_out.pdf";
-pdfDocument.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_resize_and_shift_paragraph(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ rect = document.pages[1].media_box
+ rect.llx += 20
+ rect.urx -= 20
+ rect.ury -= 20
+ fragment.replace_options.rectangle = rect
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
```
+### Remplacer le texte et agrandir automatiquement la police pour remplir la zone cible
-## Remplacer les polices dans un fichier PDF existant
+Remplacez le texte dans un PDF tout en redimensionnant automatiquement et en élargissant la police pour remplir une zone rectangulaire spécifique. En utilisant la bibliothèque Aspose.PDF for Python via .NET, le code ajuste dynamiquement la taille de la police et l'espacement afin que le nouveau contenu texte s'adapte parfaitement à une boîte englobante définie — sans calculs manuels de police.
-Aspose.PDF pour Python via .NET prend en charge la capacité de remplacer le texte dans un document PDF. Cependant, il arrive parfois que vous ayez besoin de remplacer uniquement la police utilisée dans le document PDF. Ainsi, au lieu de remplacer le texte, seule la police utilisée est remplacée. L'une des surcharges du constructeur TextFragmentAbsorber accepte un objet TextEditOptions comme argument, et nous pouvons utiliser la valeur RemoveUnusedFonts de l'énumération TextEditOptions.FontReplace pour répondre à nos besoins. Le code suivant montre comment remplacer la police dans un document PDF.
+1. Chargez le PDF.
+1. Capture des fragments de texte.
+1. Sélectionner un fragment spécifique.
+1. Définir le rectangle cible.
+1. Activer les options d’ajustement du texte.
+1. Remplacer le texte.
+1. Enregistrez le Document.
```python
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Charger le fichier PDF source
-Document pdfDocument = new Document(dataDir + "ReplaceTextPage.pdf");
-// Rechercher des fragments de texte et définir l'option d'édition pour supprimer les polices inutilisées
-TextFragmentAbsorber absorber = new TextFragmentAbsorber(new TextEditOptions(TextEditOptions.FontReplace.RemoveUnusedFonts));
-
-// Accepter l'absorbeur pour toutes les pages
-pdfDocument.Pages.Accept(absorber);
-// Parcourir tous les TextFragments
-foreach (TextFragment textFragment in absorber.TextFragments)
-{
- // Si le nom de la police est ArialMT, remplacer le nom de la police par Arial
- if (textFragment.TextState.Font.FontName == "Arial,Bold")
- {
- textFragment.TextState.Font = FontRepository.FindFont("Arial");
- }
-
-}
-
-dataDir = dataDir + "ReplaceFonts_out.pdf";
-// Enregistrer le document mis à jour
-pdfDocument.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_resize_and_expand_font(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ fragment.replace_options.rectangle = ap.Rectangle(100, 300, 512, 692, True)
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.replace_options.font_size_adjustment_action = (
+ ap.text.TextReplaceOptions.FontSizeAdjustment.SCALE_TO_FILL
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
```
+### Remplacer le texte et l'ajuster dans un rectangle
+
+Remplacez le texte dans un document PDF tout en vous assurant que le nouveau contenu tient dans la zone rectangulaire du texte original en réduisant automatiquement la taille de la police si nécessaire.
+
+En utilisant la bibliothèque Aspose.PDF for Python via .NET, cette fonction ajuste dynamiquement la disposition du texte et la taille du Font, tout en préservant la structure du Document et en évitant le dépassement.
+
+1. Créer un objet TextFragmentAbsorber pour extraire tous les fragments de texte de la première page.
+1. Accéder à un fragment de texte spécifique.
+1. Définir la zone de remplacement.
+1. Configurez les options d'ajustement du texte. Définissez deux options de remplacement clés :
+ - Ajustement de la taille de police - 'SHRINK_TO_FIT' réduit automatiquement la taille de la police si le nouveau texte est trop long.
+ - Ajustement de l'espacement - 'ADJUST_SPACE_WIDTH' maintient l'espacement proportionnel.
+1. Remplacez le texte.
+1. Enregistrez le PDF modifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_fit_text_into_rectangle(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ fragment.replace_options.rectangle = fragment.rectangle
+ fragment.replace_options.font_size_adjustment_action = (
+ ap.text.TextReplaceOptions.FontSizeAdjustment.SHRINK_TO_FIT
+ )
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
+```
-## Le Remplacement de Texte devrait réorganiser automatiquement le Contenu des Pages
+### Remplacer automatiquement le texte d'espace réservé et réarranger la mise en page du PDF
-Aspose.PDF pour Python via .NET prend en charge la fonctionnalité de recherche et de remplacement de texte dans le fichier PDF. Cependant, récemment, certains clients ont rencontré des problèmes lors du remplacement de texte lorsque TextFragment particulier est remplacé par des contenus plus petits et que des espaces supplémentaires sont affichés dans le PDF résultant ou dans le cas où le TextFragment est remplacé par une chaîne plus longue, les mots chevauchent le contenu existant de la page. Ainsi, l'exigence était d'introduire un mécanisme selon lequel une fois que le texte à l'intérieur d'un document PDF est remplacé, le contenu devrait être réorganisé.
+Remplacez le texte de l'espace réservé à l'intérieur d'un PDF (p. ex., des modèles ou des formulaires) par des données réelles telles que des noms ou des informations d\'entreprise.
+Il ajuste automatiquement la mise en page pour accueillir du nouveau texte tout en appliquant une mise en forme personnalisée (police, couleur, taille).
-Afin de répondre aux scénarios mentionnés ci-dessus, Aspose.PDF pour Python via .NET a été amélioré afin que de tels problèmes n'apparaissent pas lors du remplacement de texte à l'intérieur d'un fichier PDF. Le code suivant montre comment remplacer du texte à l'intérieur d'un fichier PDF et le contenu de la page devrait être réorganisé automatiquement.
+1. Importer et charger le PDF.
+1. Créer un Text Absorber pour le Placeholder.
+1. Appliquer l'Absorber à toutes les pages.
+1. Parcourir les fragments de texte trouvés.
+1. Appliquer le formatage de texte personnalisé.
+1. Enregistrez le document mis à jour.
```python
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Charger le fichier PDF source
-Document doc = new Document(dataDir + "ExtractTextPage.pdf");
-// Créer un objet TextFragment Absorber avec une expression régulière
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("[TextFragmentAbsorber,companyname,Textbox,50]");
-doc.Pages.Accept(textFragmentAbsorber);
-// Remplacer chaque TextFragment
-foreach (TextFragment textFragment in textFragmentAbsorber.TextFragments)
-{
- // Définir la police du fragment de texte à remplacer
- textFragment.TextState.Font = FontRepository.FindFont("Arial");
- // Définir la taille de la police
- textFragment.TextState.FontSize = 12;
- textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Navy;
- // Remplacer le texte par une chaîne plus grande que l'espace réservé
- textFragment.Text = "This is a Larger String for the Testing of this issue";
-}
-dataDir = dataDir + "RearrangeContentsUsingTextReplacement_out.pdf";
-// Enregistrer le PDF résultant
-doc.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def automatically_rearrange_page_contents(input_file, output_file):
+ document = ap.Document(input_file)
+
+ absorber = ap.text.TextFragmentAbsorber("[Long_placeholder_Long_placeholder]")
+ document.pages.accept(absorber)
+
+ for text_fragment in absorber.text_fragments:
+ # text_fragment.text = "John Smith"
+ text_fragment.text = "John Smith, South Development Studio"
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Calibri")
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.foreground_color = ap.Color.navy
+
+ # Save PDF document
+ document.save(output_file)
```
+### Remplacer le texte basé sur une expression régulière
-## Rendu des symboles remplaçables lors de la création de PDF
+Lorsque vous travaillez avec des documents PDF, il se peut que vous deviez remplacer du texte qui suit un modèle plutôt qu'une phrase spécifique — par exemple, des numéros de téléphone, des codes ou des formats similaires à des dates.
-Les symboles remplaçables sont des symboles spéciaux dans une chaîne de texte qui peuvent être remplacés par le contenu correspondant au moment de l'exécution. Les symboles remplaçables actuellement pris en charge par le nouveau modèle d'objet document du namespace Aspose.PDF sont `$P`, `$p,` `\n`, `\r`. Les symboles `$p` et `$P` sont utilisés pour gérer la numérotation des pages au moment de l'exécution. `$p` est remplacé par le numéro de la page où la classe Paragraph actuelle se trouve. `$P` est remplacé par le nombre total de pages dans le document. Lors de l'ajout d'un `TextFragment` à la collection de paragraphes des documents PDF, il ne prend pas en charge le retour à la ligne à l'intérieur du texte. Cependant, pour ajouter du texte avec un retour à la ligne, veuillez utiliser `TextFragment` avec `TextParagraph` :
+Aspose.PDF for Python via .NET vous permet d'effectuer de tels remplacements à l'aide d'expressions régulières (regex) avec la classe TextFragmentAbsorber.
-- utilisez "\r\n" ou Environment.NewLine dans TextFragment au lieu d'un simple "\n" ;
-- créez un objet TextParagraph. Il ajoutera du texte avec séparation de ligne ;
-- ajoutez le TextFragment avec TextParagraph.AppendLine ;
-- ajoutez le TextParagraph avec TextBuilder.AppendParagraph.
+Cet exemple montre comment trouver des motifs de texte (dans ce cas, tout texte correspondant au format ####-####, comme 1234-5678) et les remplacer par une chaîne formatée \u0027ABC1-2XZY\u0027. Il montre également comment personnaliser la police, la couleur et la taille du texte remplacé.
+
+L'extrait de code suivant vous montre comment remplacer du texte en fonction d'une expression régulière.
+
+1. Chargez le PDF Document.
+1. Créer un Text Absorber basé sur les expressions régulières. Initialisez le TextFragmentAbsorber avec un modèle d'expression régulière.
+1. Activer le mode d'expression régulière. Le paramètre \u0027True\u0027 active le mode de recherche d'expression régulière.
+1. Appliquez l'Absorber à une Page. Cela analyse la page pour tous les fragments de texte qui correspondent au modèle regex défini.
+1. Remplacez chaque correspondance par un nouveau texte et appliquez un style personnalisé.
+1. Enregistrez le document modifié.
```python
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_based_on_regex(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber(r"\d{4}-\d{4}")
+ absorber.text_search_options = ap.text.TextSearchOptions(True)
+ document.pages[1].accept(absorber)
+
+ for fragment in absorber.text_fragments:
+ fragment.text = "ABC1-2XZY"
+ fragment.text_state.font = ap.text.FontRepository.find_font("Verdana")
+ fragment.text_state.font_size = 12
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.background_color = ap.Color.light_green
+
+ document.save(outfile)
+```
-Aspose.Pdf.Document pdfApplicationDoc = new Aspose.Pdf.Document();
-Aspose.Pdf.Page applicationFirstPage = (Aspose.Pdf.Page)pdfApplicationDoc.Pages.Add();
+## Remplacer les polices ou supprimer les polices inutilisées
-// Initialiser un nouveau TextFragment avec du texte contenant les marqueurs de nouvelle ligne requis
-Aspose.Pdf.Text.TextFragment textFragment = new Aspose.Pdf.Text.TextFragment("Nom du candidat : " + Environment.NewLine + " Joe Smoe");
+### Remplacer les polices dans le fichier PDF existant
-// Définir les propriétés du fragment de texte si nécessaire
-textFragment.TextState.FontSize = 12;
-textFragment.TextState.Font = Aspose.Pdf.Text.FontRepository.FindFont("TimesNewRoman");
-textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
-textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Red;
+Il arrive parfois que vous deviez standardiser ou mettre à jour les polices d'un PDF — par exemple, remplacer une police obsolète ou propriétaire par une police plus accessible. La bibliothèque Aspose.PDF for Python via .NET vous permet de détecter et de remplacer les polices de manière programmatique, garantissant une typographie cohérente et une compatibilité du document.
-// Créer un objet TextParagraph
-TextParagraph par = new TextParagraph();
+Cet exemple montre comment remplacer toutes les occurrences d’une police spécifique (par exemple, 'Arial-BoldMT') par une autre police (par exemple, 'Verdana') dans un document PDF.
-// Ajouter un nouveau TextFragment au paragraphe
-par.AppendLine(textFragment);
+L'extrait de code suivant montre comment remplacer la police dans le document PDF :
+
+1. Ouvrez le Document PDF.
+1. Initialisez un TextFragmentAbsorber.
+1. Utilisez l'Absorber pour extraire les fragments de texte de chaque page du document.
+1. Identifier et remplacer les polices. Le script vérifie si la police actuelle d'un fragment est 'Arial-BoldMT'. Si c'est le cas, il la remplace par la police 'Verdana' en utilisant la méthode FontRepository.find_font().
+1. Enregistrez le document modifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
-// Définir la position du paragraphe
-par.Position = new Aspose.Pdf.Text.Position(100, 600);
+def replace_fonts(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ document.pages.accept(absorber)
-// Créer un objet TextBuilder
-TextBuilder textBuilder = new TextBuilder(applicationFirstPage);
-// Ajouter le TextParagraph en utilisant TextBuilder
-textBuilder.AppendParagraph(par);
+ for fragment in absorber.text_fragments:
+ if fragment.text_state.font.font_name == "Arial-BoldMT":
+ fragment.text_state.font = ap.text.FontRepository.find_font("Verdana")
-dataDir = dataDir + "RenderingReplaceableSymbols_out.pdf";
-pdfApplicationDoc.Save(dataDir);
+ document.save(outfile)
```
+### Supprimer les polices inutilisées
-## Symboles remplaçables dans la zone d'en-tête/pied de page
+Au fil du temps, les documents PDF peuvent accumuler des polices inutilisées ou intégrées qui augmentent la taille du fichier et ralentissent le traitement. Ces polices inutilisées restent souvent même après des modifications ou remplacements de texte, en particulier lorsqu’on travaille avec des PDF volumineux ou complexes.
-Les symboles remplaçables peuvent également être placés à l'intérieur de la section En-tête/Pied de page du fichier PDF. Veuillez consulter l'extrait de code suivant pour plus de détails sur la façon d'ajouter un symbole remplaçable dans la section pied de page.
+La bibliothèque Aspose.PDF for Python via .NET offre une méthode efficace pour supprimer ces polices redondantes en utilisant la classe TextEditOptions. Cela optimise non seulement votre document, mais garantit également qu'il n'utilise que les polices réellement appliquées au texte visible.
+
+La méthode 'remove_unused_fonts()' est une façon simple mais puissante d'optimiser les fichiers PDF en supprimant les données de police redondantes.
+
+Cet exemple montre comment :
+
+- Scannez un PDF pour les polices inutilisées.
+- Supprimez-les en toute sécurité.
+- Réattribuer les fragments de texte actifs à une police cohérente (par exemple, Times New Roman).
+
+1. Ouvrez le Document PDF.
+1. Configurez les options d'édition de texte. Cela indique au moteur d'éliminer toutes les polices incorporées qui ne sont pas actuellement utilisées dans le texte visible.
+1. Créer un TextAbsorber avec des options. Un TextFragmentAbsorber extrait des fragments de texte du document pour les modifier.
+1. Réassigner une police standard. Une fois que l'absorbeur a collecté tous les fragments, parcourez-les et appliquez une police cohérente.
+1. Enregistrez le PDF nettoyé.
```python
-// Pour des exemples complets et des fichiers de données, veuillez aller à https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-Document doc = new Document();
-Page page = doc.Pages.Add();
-
-MarginInfo marginInfo = new MarginInfo();
-marginInfo.Top = 90;
-marginInfo.Bottom = 50;
-marginInfo.Left = 50;
-marginInfo.Right = 50;
-// Assigner l'instance marginInfo à la propriété Margin de sec1.PageInfo
-page.PageInfo.Margin = marginInfo;
-
-HeaderFooter hfFirst = new HeaderFooter();
-page.Header = hfFirst;
-hfFirst.Margin.Left = 50;
-hfFirst.Margin.Right = 50;
-
-// Instancier un paragraphe de texte qui contiendra le contenu à afficher comme en-tête
-TextFragment t1 = new TextFragment("titre du rapport");
-t1.TextState.Font = FontRepository.FindFont("Arial");
-t1.TextState.FontSize = 16;
-t1.TextState.ForegroundColor = Aspose.Pdf.Color.Black;
-t1.TextState.FontStyle = FontStyles.Bold;
-t1.TextState.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Center;
-t1.TextState.LineSpacing = 5f;
-hfFirst.Paragraphs.Add(t1);
-
-TextFragment t2 = new TextFragment("Nom_du_Rapport");
-t2.TextState.Font = FontRepository.FindFont("Arial");
-t2.TextState.ForegroundColor = Aspose.Pdf.Color.Black;
-t2.TextState.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Center;
-t2.TextState.LineSpacing = 5f;
-t2.TextState.FontSize = 12;
-hfFirst.Paragraphs.Add(t2);
-
-// Créer un objet HeaderFooter pour la section
-HeaderFooter hfFoot = new HeaderFooter();
-// Définir l'objet HeaderFooter pour les pieds de page impairs et pairs
-page.Footer = hfFoot;
-hfFoot.Margin.Left = 50;
-hfFoot.Margin.Right = 50;
-
-// Ajouter un paragraphe de texte contenant le numéro de page actuel sur le nombre total de pages
-TextFragment t3 = new TextFragment("Généré à la date de test");
-TextFragment t4 = new TextFragment("nom du rapport ");
-TextFragment t5 = new TextFragment("Page $p de $P");
-
-// Instancier un objet table
-Table tab2 = new Table();
-
-// Ajouter la table dans la collection de paragraphes de la section souhaitée
-hfFoot.Paragraphs.Add(tab2);
-
-// Définir les largeurs des colonnes de la table
-tab2.ColumnWidths = "165 172 165";
-
-// Créer des lignes dans la table puis des cellules dans les lignes
-Row row3 = tab2.Rows.Add();
-
-row3.Cells.Add();
-row3.Cells.Add();
-row3.Cells.Add();
-
-// Définir l'alignement vertical du texte comme centré
-row3.Cells[0].Alignment = Aspose.Pdf.HorizontalAlignment.Left;
-row3.Cells[1].Alignment = Aspose.Pdf.HorizontalAlignment.Center;
-row3.Cells[2].Alignment = Aspose.Pdf.HorizontalAlignment.Right;
-
-row3.Cells[0].Paragraphs.Add(t3);
-row3.Cells[1].Paragraphs.Add(t4);
-row3.Cells[2].Paragraphs.Add(t5);
-
-// Sec1.Paragraphs.Add(New Text("Aspose.Total pour Java est une compilation de chaque composant Java proposé par Aspose. Il est compilé sur un#$NL" + "basis quotidien pour s'assurer qu'il contient les versions les plus récentes de chacun de nos composants Java. #$NL " + "En utilisant Aspose.Total pour Java, les développeurs peuvent créer une large gamme d'applications. #$NL #$NL #$NP" + "Aspose.Total pour Java est une compilation de chaque composant Java proposé par Aspose. Il est compilé sur un#$NL" + "basis quotidien pour s'assurer qu'il contient les versions les plus récentes de chacun de nos composants Java. #$NL " + "En utilisant Aspose.Total pour Java, les développeurs peuvent créer une large gamme d'applications. #$NL #$NL #$NP" + "Aspose.Total pour Java est une compilation de chaque composant Java proposé par Aspose. Il est compilé sur un#$NL" + "basis quotidien pour s'assurer qu'il contient les versions les plus récentes de chacun de nos composants Java. #$NL " + "En utilisant Aspose.Total pour Java, les développeurs peuvent créer une large gamme d'applications. #$NL #$NL"))
-Table table = new Table();
-
-table.ColumnWidths = "33% 33% 34%";
-table.DefaultCellPadding = new MarginInfo();
-table.DefaultCellPadding.Top = 10;
-table.DefaultCellPadding.Bottom = 10;
-
-// Ajouter la table dans la collection de paragraphes de la section souhaitée
-page.Paragraphs.Add(table);
-
-// Définir la bordure de cellule par défaut à l'aide de l'objet BorderInfo
-table.DefaultCellBorder = new BorderInfo(BorderSide.All, 0.1f);
-
-// Définir la bordure de la table à l'aide d'un autre objet BorderInfo personnalisé
-table.Border = new BorderInfo(BorderSide.All, 1f);
-
-table.RepeatingRowsCount = 1;
-
-// Créer des lignes dans la table puis des cellules dans les lignes
-Row row1 = table.Rows.Add();
-
-row1.Cells.Add("col1");
-row1.Cells.Add("col2");
-row1.Cells.Add("col3");
-const string CRLF = "\r\n";
-for (int i = 0; i <= 10; i++)
-{
- Row row = table.Rows.Add();
- row.IsRowBroken = true;
- for (int c = 0; c <= 2; c++)
- {
- Cell c1;
- if (c == 2)
- c1 = row.Cells.Add("Aspose.Total pour Java est une compilation de chaque composant Java proposé par Aspose. Il est compilé sur un" + CRLF + "basis quotidien pour s'assurer qu'il contient les versions les plus récentes de chacun de nos composants Java. " + CRLF + "basis quotidien pour s'assurer qu'il contient les versions les plus récentes de chacun de nos composants Java. " + CRLF + "En utilisant Aspose.Total pour Java, les développeurs peuvent créer une large gamme d'applications.");
- else
- c1 = row.Cells.Add("item1" + c);
- c1.Margin = new MarginInfo();
- c1.Margin.Left = 30;
- c1.Margin.Top = 10;
- c1.Margin.Bottom = 10;
- }
-}
-
-dataDir = dataDir + "ReplaceableSymbolsInHeaderFooter_out.pdf";
-doc.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_unused_fonts(input_file, output_file):
+ # Open PDF document
+ document = ap.Document(input_file)
+
+ # Initialize text edit options to remove unused fonts
+ options = ap.text.TextEditOptions(
+ ap.text.TextEditOptions.FontReplace.REMOVE_UNUSED_FONTS
+ )
+
+ # Create a TextFragmentAbsorber with the specified options
+ absorber = ap.text.TextFragmentAbsorber(options)
+ document.pages.accept(absorber)
+
+ # Iterate through all TextFragments
+ for text_fragment in absorber.text_fragments:
+ text_fragment.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+
+ # Save the updated PDF document
+ document.save(output_file)
```
+## Supprimer tout le texte
+
+### Supprimer le texte du PDF
+
+Supprimez tout le contenu texte d'un fichier PDF tout en conservant les images, les formes et les structures de mise en page intactes.
+En utilisant TextFragmentAbsorber, le code analyse efficacement l'ensemble du document et supprime chaque fragment de texte trouvé sur chaque page.
-## Supprimer les polices inutilisées d'un fichier PDF
+1. Chargez le PDF Document.
+1. Un objet TextFragmentAbsorber est créé pour détecter et gérer les fragments de texte dans le PDF.
+1. Supprimer tout le contenu texte. La méthode ‘absorber.remove_all_text()’ supprime chaque élément texte du document chargé, laissant les composants non textuels intacts.
+1. Enregistrez le document mis à jour.
-Aspose.PDF pour Python via .NET prend en charge la fonctionnalité d'incorporer des polices lors de la création d'un document PDF, ainsi que la capacité d'incorporer des polices dans des fichiers PDF existants. À partir d'Aspose.PDF pour Python via .NET 7.3.0, il vous permet également de supprimer les polices en double ou inutilisées des documents PDF.
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_all_text_using_absorber1(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.remove_all_text(document)
+ document.save(outfile)
+```
-Pour remplacer les polices, utilisez l'approche suivante :
+### Supprimer tout le texte d'une page spécifique
-1. Appelez la classe [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber).
-1. Appelez le paramètre TextEditOptions.FontReplace.RemoveUnusedFonts de la classe TextFragmentAbsorber. (Cela supprime les polices qui sont devenues inutilisées lors du remplacement de la police).
-1. Définissez la police individuellement pour chaque fragment de texte.
+Supprimez tout le texte d'une seule page d'un document PDF en utilisant la classe TextFragmentAbsorber dans Aspose.PDF.
+Contrairement à la suppression de l'ensemble du document, cette méthode effectue un nettoyage du texte au niveau de la page, supprimant le texte uniquement de la page choisie tout en laissant les autres pages intactes.
-Le code suivant remplace la police pour tous les fragments de texte de toutes les pages du document et supprime les polices inutilisées.
+1. Chargez le fichier PDF.
+1. Créer une instance de TextFragmentAbsorber.
+1. Supprimer tout le texte de la première page.
+1. Enregistrez le PDF modifié.
```python
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Charger le fichier PDF source
-Document doc = new Document(dataDir + "ReplaceTextPage.pdf");
-TextFragmentAbsorber absorber = new TextFragmentAbsorber(new TextEditOptions(TextEditOptions.FontReplace.RemoveUnusedFonts));
-doc.Pages.Accept(absorber);
-
-// Itérer à travers tous les TextFragments
-foreach (TextFragment textFragment in absorber.TextFragments)
-{
- textFragment.TextState.Font = FontRepository.FindFont("Arial, Bold");
-}
-
-dataDir = dataDir + "RemoveUnusedFonts_out.pdf";
-// Sauvegarder le document mis à jour
-doc.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_all_text_using_absorber2(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.remove_all_text(document.pages[1])
+ document.save(outfile)
```
+### Supprimer tout le texte d'une zone particulière sur la page PDF
+
+Supprimez tout le texte d'une région rectangulaire spécifique sur une page en utilisant TextFragmentAbsorber d'Aspose.PDF.
+Au lieu d'effacer une page entière, cette méthode effectue une suppression ciblée du texte, permettant un contrôle précis de la partie de la page qui est affectée.
-## Supprimer Tout le Texte d'un Document PDF
+1. Chargez le PDF Document.
+1. Créer un TextFragmentAbsorber.
+1. Définir la zone cible (Rectangle).
+1. Supprimer le texte de la région spécifiée.
+1. Conservez le reste du document.
+1. Enregistrez le PDF modifié.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_all_text_using_absorber3(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.remove_all_text(
+ document.pages[1], ap.Rectangle(10, 200, 120, 600, True)
+ )
+ document.save(outfile)
+```
-### Supprimer Tout le Texte en Utilisant des Opérateurs
+### Supprimer tout le texte caché d'un document PDF
-Dans certaines opérations sur le texte, vous devez supprimer tout le texte d'un document PDF et pour cela, vous devez généralement définir le texte trouvé comme une chaîne de caractères vide. Le point est que changer le texte pour une multitude de fragments de texte entraîne un certain nombre de vérifications et d'opérations d'ajustement de position du texte. Ils sont essentiels dans les scénarios d'édition de texte. La difficulté est que vous ne pouvez pas déterminer combien de fragments de texte seront supprimés dans le scénario où ils sont traités dans une boucle.
+Supprimez tout le texte d'une région rectangulaire spécifique sur une page en utilisant TextFragmentAbsorber d'Aspose.PDF.
+Au lieu d'effacer une page entière, cette méthode effectue une suppression ciblée du texte, permettant un contrôle précis de la partie de la page qui est affectée.
-Par conséquent, nous recommandons d'utiliser une autre approche pour le scénario de suppression de tout le texte des pages PDF. Veuillez considérer l'extrait de code suivant qui fonctionne très rapidement.
+1. Chargez le PDF Document.
+1. Créer un TextFragmentAbsorber.
+1. Définir la zone cible (Rectangle).
+1. Supprimer le texte de la région spécifiée.
+1. Conservez le reste du document.
+1. Enregistrez le PDF modifié.
```python
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Ouvrir le document
-Document pdfDocument = new Document(dataDir + "RemoveAllText.pdf");
-// Boucle à travers toutes les pages du document PDF
-for (int i = 1; i <= pdfDocument.Pages.Count; i++)
-{
- Page page = pdfDocument.Pages[i];
- OperatorSelector operatorSelector = new OperatorSelector(new Aspose.Pdf.Operators.TextShowOperator());
- // Sélectionner tout le texte sur la page
- page.Contents.Accept(operatorSelector);
- // Supprimer tout le texte
- page.Contents.Delete(operatorSelector.Selected);
-}
-// Enregistrer le document
-pdfDocument.Save(dataDir + "RemoveAllText_out.pdf", Aspose.Pdf.SaveFormat.Pdf);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_hidden_text(infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ text_absorber = ap.text.TextFragmentAbsorber()
+ # This option can be used to prevent other text fragments from moving after hidden text replacement
+ text_absorber.text_replace_options = ap.text.TextReplaceOptions(
+ ap.text.TextReplaceOptions.ReplaceAdjustment.NONE
+ )
+ document.pages.accept(text_absorber)
+ # Remove hidden text
+ for fragment in text_absorber.text_fragments:
+ if fragment.text_state.invisible:
+ fragment.text = ""
+ # Save PDF document
+ document.save(outfile)
```
+## Sujets de texte associés
-{
- "@context": "http://schema.org",
- "@type": "SoftwareApplication",
- "name": "Aspose.PDF pour Python via .NET Library",
- "image": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "url": "https://www.aspose.com/",
- "publisher": {
- "@type": "Organization",
- "name": "Aspose.PDF",
- "url": "https://products.aspose.com/pdf",
- "logo": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "alternateName": "Aspose",
- "sameAs": [
- "https://facebook.com/aspose.pdf/",
- "https://twitter.com/asposepdf",
- "https://www.youtube.com/channel/UCmV9sEg_QWYPi6BJJs7ELOg/featured",
- "https://www.linkedin.com/company/aspose",
- "https://stackoverflow.com/questions/tagged/aspose",
- "https://aspose.quora.com/",
- "https://aspose.github.io/"
- ],
- "contactPoint": [
- {
- "@type": "ContactPoint",
- "telephone": "+1 903 306 1676",
- "contactType": "ventes",
- "areaServed": "US",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+44 141 628 8900",
- "contactType": "ventes",
- "areaServed": "GB",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+61 2 8006 6987",
- "contactType": "ventes",
- "areaServed": "AU",
- "availableLanguage": "en"
- }
- ]
- },
- "offers": {
- "@type": "Offer",
- "price": "1199",
- "priceCurrency": "USD"
- },
- "applicationCategory": "Bibliothèque de manipulation PDF pour Python",
- "downloadUrl": "https://www.nuget.org/packages/Aspose.PDF/",
- "operatingSystem": "Windows, MacOS, Linux",
- "screenshot": "https://docs.aspose.com/pdf/python-net/create-pdf-document/screenshot.png",
- "softwareVersion": "2024.1",
- "aggregateRating": {
- "@type": "AggregateRating",
- "ratingValue": "5",
- "ratingCount": "16"
- }
-}
\ No newline at end of file
+- [Travailler avec le texte dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-text/)
+- [Ajout de texte au PDF](/pdf/fr/python-net/add-text-to-pdf-file/)
+- [Rechercher et extraire le texte PDF en Python](/pdf/fr/python-net/search-and-get-text-from-pdf/)
+- [Formater le texte PDF en Python](/pdf/fr/python-net/text-formatting-inside-pdf/)
diff --git a/fr/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md b/fr/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md
index 259f80c230..ecb00f901b 100644
--- a/fr/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md
@@ -1,315 +1,288 @@
---
-title: Faire pivoter le texte à l'intérieur d'un PDF en utilisant Python
-linktitle: Faire pivoter le texte à l'intérieur d'un PDF
+title: Faire pivoter le texte PDF en Python
+linktitle: Faire pivoter le texte à l'intérieur du PDF
type: docs
weight: 50
url: /fr/python-net/rotate-text-inside-pdf/
-description: Découvrez différentes façons de faire pivoter du texte dans un PDF. Aspose.PDF vous permet de faire pivoter du texte à n'importe quel angle, de faire pivoter un fragment de texte ou un paragraphe entier.
-lastmod: "2024-02-17"
+description: Apprenez comment faire pivoter les fragments de texte et les paragraphes à l'intérieur des documents PDF en Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Faire pivoter les fragments de texte et les paragraphes dans les documents PDF avec Python
+Abstract: Cet article explique comment faire pivoter du texte dans des documents PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment définir la propriété `rotation` sur `TextFragment`, créer du contenu pivoté avec `TextBuilder` et `TextParagraph`, et ajouter du texte pivoté directement aux paragraphes de la page pour différents scénarios de mise en page.
---
-
-
-
-## Rotation du Texte à l'Intérieur d'un PDF en Utilisant la Propriété de Rotation
-
-En utilisant la propriété Rotation de la Classe [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment), vous pouvez faire pivoter le texte à divers angles. La rotation du texte peut être utilisée dans différents scénarios de génération de documents. Vous pouvez spécifier l'angle de rotation en degrés pour faire pivoter le texte selon vos besoins. Veuillez vérifier les différents scénarios suivants, dans lesquels vous pouvez implémenter la rotation du texte.
-
-## Implémenter la Rotation en Utilisant TextFragment et TextBuilder
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Initialiser l'objet document
-Document pdfDocument = new Document();
-// Obtenir une page particulière
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-// Créer un fragment de texte
-TextFragment textFragment1 = new TextFragment("texte principal");
-textFragment1.Position = new Position(100, 600);
-// Définir les propriétés du texte
-textFragment1.TextState.FontSize = 12;
-textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Créer un fragment de texte pivoté
-TextFragment textFragment2 = new TextFragment("texte pivoté");
-textFragment2.Position = new Position(200, 600);
-// Définir les propriétés du texte
-textFragment2.TextState.FontSize = 12;
-textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-textFragment2.TextState.Rotation = 45;
-// Créer un fragment de texte pivoté
-TextFragment textFragment3 = new TextFragment("texte pivoté");
-textFragment3.Position = new Position(300, 600);
-// Définir les propriétés du texte
-textFragment3.TextState.FontSize = 12;
-textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-textFragment3.TextState.Rotation = 90;
-// créer un objet TextBuilder
-TextBuilder textBuilder = new TextBuilder(pdfPage);
-// Ajouter le fragment de texte à la page PDF
-textBuilder.AppendText(textFragment1);
-textBuilder.AppendText(textFragment2);
-textBuilder.AppendText(textFragment3);
-// Enregistrer le document
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated1_out.pdf");
+
+Faire pivoter les fragments de texte dans un document PDF à l'aide d'Aspose.PDF for Python via .NET. Cette page montre comment contrôler la position et la rotation du texte en utilisant `TextFragment`, `TextState`, et `TextBuilder`. En ajustant les angles de rotation, vous pouvez créer des mises en page telles que des en-têtes diagonaux, des étiquettes verticales et des annotations rotatives.
+
+## Faire pivoter des fragments de texte à l’aide de TextBuilder dans un PDF
+
+Crée un fichier PDF nommé `rotated_fragments.pdf` contenant trois fragments de texte alignés horizontalement :
+
+- Le premier texte n'est pas tourné
+- Le deuxième est tourné de 45°
+- Le troisième est tourné de 90°
+
+1. Créer un nouveau document PDF.
+1. Insérez une nouvelle page pour accueillir le texte tourné.
+1. Créez le premier fragment de texte (sans rotation).
+1. Créez le deuxième fragment de texte (rotation de 45°).
+1. Créez le troisième fragment de texte (rotation de 90°).
+1. Ajouter des fragments de texte en utilisant `TextBuilder`.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+
+def rotate_text_inside_pdf_1(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("main text")
+ text_fragment_1.position = ap.text.Position(100, 600)
+ # Set text properties
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Create rotated text fragment
+ text_fragment_2 = ap.text.TextFragment("rotated text")
+ text_fragment_2.position = ap.text.Position(200, 600)
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_2.text_state.rotation = 45
+ # Create rotated text fragment
+ text_fragment_3 = ap.text.TextFragment("rotated text")
+ text_fragment_3.position = ap.text.Position(300, 600)
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_3.text_state.rotation = 90
+ # create TextBuilder object
+ builder = ap.text.TextBuilder(page)
+ # Append the text fragment to the PDF page
+ builder.append_text(text_fragment_1)
+ builder.append_text(text_fragment_2)
+ builder.append_text(text_fragment_3)
+
+ # Save the document
+ document.save(outfile)
```
+## Faire pivoter des TextFragment individuels à l'intérieur d'un paragraphe dans le PDF
+
+Faire pivoter des fragments de texte individuels au sein d'un paragraphe. Cela montre comment créer un paragraphe multi‑lignes (TextParagraph) contenant plusieurs fragments (TextFragment), chacun avec son propre angle de rotation. Cette technique est utile pour créer des documents visuellement riches qui combinent du texte orienté horizontalement et en diagonale — par exemple, des en‑têtes stylisées, des diagrammes ou des libellés annotés.
+
+Crée un PDF nommé `rotated_paragraph_fragments.pdf` contenant un paragraphe avec trois lignes de texte, chaque ligne étant pivotée différemment :
+
+- la première ligne est pivotée à 45°
+- la deuxième ligne reste horizontale (0°)
+- la troisième ligne est tournée de -45°
+
+1. Créer un nouveau document PDF.
+1. Ajoutez une page blanche où le texte tourné apparaîtra.
+1. Créer un `TextParagraph`.
+1. Créez et configurez le premier fragment de texte (rotation de +45°).
+1. Créez le deuxième fragment de texte (sans rotation).
+1. Créez le troisième fragment de texte (-45° rotation).
+1. Ajoutez les fragments de texte au paragraphe.
+1. Ajouter le paragraphe à la page en utilisant `TextBuilder`.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
-## Implémenter la Rotation en utilisant TextParagraph et TextBuilder (Fragments Rotés)
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Initialiser l'objet document
-Document pdfDocument = new Document();
-// Obtenir une page particulière
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-TextParagraph paragraph = new TextParagraph();
-paragraph.Position = new Position(200, 600);
-// Créer un fragment de texte
-TextFragment textFragment1 = new TextFragment("texte roté");
-// Définir les propriétés du texte
-textFragment1.TextState.FontSize = 12;
-textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Définir la rotation
-textFragment1.TextState.Rotation = 45;
-// Créer un fragment de texte
-TextFragment textFragment2 = new TextFragment("texte principal");
-// Définir les propriétés du texte
-textFragment2.TextState.FontSize = 12;
-textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Créer un fragment de texte
-TextFragment textFragment3 = new TextFragment("autre texte roté");
-// Définir les propriétés du texte
-textFragment3.TextState.FontSize = 12;
-textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Définir la rotation
-textFragment3.TextState.Rotation = -45;
-// Ajouter les fragments de texte au paragraphe
-paragraph.AppendLine(textFragment1);
-paragraph.AppendLine(textFragment2);
-paragraph.AppendLine(textFragment3);
-// Créer un objet TextBuilder
-TextBuilder textBuilder = new TextBuilder(pdfPage);
-// Ajouter le paragraphe de texte à la page PDF
-textBuilder.AppendParagraph(paragraph);
-// Enregistrer le document
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated2_out.pdf");
+def rotate_text_inside_pdf_2(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ paragraph = ap.text.TextParagraph()
+ paragraph.position = ap.text.Position(200, 600)
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("rotated text")
+ # Set text properties
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_1.text_state.rotation = 45
+ # Create text fragment
+ text_fragment_2 = ap.text.TextFragment("main text")
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Create text fragment
+ text_fragment_3 = ap.text.TextFragment("another rotated text")
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_3.text_state.rotation = -45
+ # Append the text fragments to the paragraph
+ paragraph.append_line(text_fragment_1)
+ paragraph.append_line(text_fragment_2)
+ paragraph.append_line(text_fragment_3)
+ # Create TextBuilder object
+ text_builder = ap.text.TextBuilder(page)
+ # Append the text paragraph to the PDF page
+ text_builder.append_paragraph(paragraph)
+
+ # Save the document
+ document.save(outfile)
```
+## Faire pivoter le texte à l'aide des paragraphes de page dans le PDF
+
+Cette section présente une méthode simplifiée pour faire pivoter du texte dans un PDF à l'aide d'Aspose.PDF for Python via .NET.
+Contrairement aux approches de bas niveau avec `TextBuilder` ou `TextParagraph`, cette méthode ajoute des fragments de texte tournés directement à la collection de paragraphes de la page (`page.paragraphs`). Il est idéal lorsque vous avez besoin d'une rotation de texte basique mais que vous ne nécessitez pas de positionnement précis ou de structuration de paragraphe.
+
+Génère un fichier nommé `simple_rotated_text.pdf` contenant :
+
+- un fragment de texte principal horizontal avec une rotation de 0°
+- fragment tourné de 315°
+- fragment tourné à 270°
+
+1. Initialisez un nouveau document PDF.
+1. Créez une page où le texte pivoté sera placé.
+1. Créez le premier fragment de texte (sans rotation).
+1. Créez le deuxième fragment de texte (rotation de 315°).
+1. Créer le troisième fragment de texte (rotation de 270°).
+1. Ajoutez des fragments de texte directement aux paragraphes de la page.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+
+def rotate_text_inside_pdf_3(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("main text")
+ # Set text properties
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Create text fragment
+ text_fragment_2 = ap.text.TextFragment("rotated text")
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_2.text_state.rotation = 315
+ # Create text fragment
+ text_fragment_3 = ap.text.TextFragment("rotated text")
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_3.text_state.rotation = 270
+ page.paragraphs.add(text_fragment_1)
+ page.paragraphs.add(text_fragment_2)
+ page.paragraphs.add(text_fragment_3)
-## Implémenter la rotation en utilisant TextFragment et Page.Paragraphs
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Initialiser l'objet document
-Document pdfDocument = new Document();
-// Obtenir une page particulière
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-// Créer un fragment de texte
-TextFragment textFragment1 = new TextFragment("texte principal");
-// Définir les propriétés du texte
-textFragment1.TextState.FontSize = 12;
-textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Créer un fragment de texte
-TextFragment textFragment2 = new TextFragment("texte tourné");
-// Définir les propriétés du texte
-textFragment2.TextState.FontSize = 12;
-textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Définir la rotation
-textFragment2.TextState.Rotation = 315;
-// Créer un fragment de texte
-TextFragment textFragment3 = new TextFragment("texte tourné");
-// Définir les propriétés du texte
-textFragment3.TextState.FontSize = 12;
-textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Définir la rotation
-textFragment3.TextState.Rotation = 270;
-pdfPage.Paragraphs.Add(textFragment1);
-pdfPage.Paragraphs.Add(textFragment2);
-pdfPage.Paragraphs.Add(textFragment3);
-// Enregistrer le document
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated3_out.pdf");
+ # Save the document
+ document.save(outfile)
```
+## Faire pivoter les paragraphes entiers dans un PDF
+
+Cet exemple démontre la rotation avancée du texte au niveau du paragraphe dans un PDF. Contrairement à la rotation au niveau du fragment (où chaque morceau de texte est pivoté individuellement), cette méthode fait pivoter des paragraphes entiers comme des blocs unifiés sous différents angles.
+Chaque paragraphe contient plusieurs fragments de texte stylisés, et le paragraphe complet est tourné à des angles spécifiques — permettant des transformations de mise en page complexes et cohérentes.
+Ceci est idéal pour les mises en page artistiques, les filigranes ou les PDF fortement axés sur le design où des sections entières de texte doivent être orientées dans différentes directions.
+
+Crée `rotated_paragraphs.pdf`, contenant quatre paragraphes entièrement stylisés et pivotés :
+
+- chacun tourné à un angle unique (45°, 135°, 225° et 315°)
+- chaque paragraphe comporte trois lignes de texte avec des arrière-plans colorés, du soulignement et une mise en forme cohérente
+
+1. Créer un nouveau document PDF.
+1. Ajoutez une page vierge pour contenir les paragraphes tournés.
+1. Itérer pour créer plusieurs paragraphes.
+1. Créer et positionner le paragraphe.
+1. Créer des fragments de texte avec mise en forme.
+1. Appliquer le formatage du texte.
+1. Ajouter des fragments de texte au paragraphe.
+1. Ajoutez le paragraphe à la page en utilisant `TextBuilder`.
+1. Répétez pour les quatre rotations.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+
+def rotate_text_inside_pdf_4(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ for i in range(4):
+ paragraph = ap.text.TextParagraph()
+ paragraph.position = ap.text.Position(200, 600)
+ # Specify rotation
+ paragraph.rotation = i * 90 + 45
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("Paragraph Text")
+ # Create text fragment
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_1.text_state.background_color = ap.Color.light_gray
+ text_fragment_1.text_state.foreground_color = ap.Color.blue
+ # Create text fragment
+ text_fragment_2 = ap.text.TextFragment("Second line of text")
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_2.text_state.background_color = ap.Color.light_gray
+ text_fragment_2.text_state.foreground_color = ap.Color.blue
+ # Create text fragment
+ text_fragment_3 = ap.text.TextFragment("And some more text...")
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_3.text_state.background_color = ap.Color.light_gray
+ text_fragment_3.text_state.foreground_color = ap.Color.blue
+ text_fragment_3.text_state.underline = True
+ paragraph.append_line(text_fragment_1)
+ paragraph.append_line(text_fragment_2)
+ paragraph.append_line(text_fragment_3)
+ # Create TextBuilder object
+ builder = ap.text.TextBuilder(page)
+ # Append the text fragment to the PDF page
+ builder.append_paragraph(paragraph)
-## Implémenter la Rotation en utilisant TextParagraph et TextBuilder (Paragraphe Entier Tourné)
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Initialiser l'objet document
-Document pdfDocument = new Document();
-// Obtenir une page particulière
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-for (int i = 0; i < 4; i++)
-{
- TextParagraph paragraph = new TextParagraph();
- paragraph.Position = new Position(200, 600);
- // Spécifier la rotation
- paragraph.Rotation = i * 90 + 45;
- // Créer un fragment de texte
- TextFragment textFragment1 = new TextFragment("Texte du Paragraphe");
- // Créer un fragment de texte
- textFragment1.TextState.FontSize = 12;
- textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
- textFragment1.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
- textFragment1.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- // Créer un fragment de texte
- TextFragment textFragment2 = new TextFragment("Deuxième ligne de texte");
- // Définir les propriétés du texte
- textFragment2.TextState.FontSize = 12;
- textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
- textFragment2.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
- textFragment2.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- // Créer un fragment de texte
- TextFragment textFragment3 = new TextFragment("Et encore du texte...");
- // Définir les propriétés du texte
- textFragment3.TextState.FontSize = 12;
- textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
- textFragment3.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
- textFragment3.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- textFragment3.TextState.Underline = true;
- paragraph.AppendLine(textFragment1);
- paragraph.AppendLine(textFragment2);
- paragraph.AppendLine(textFragment3);
- // Créer un objet TextBuilder
- TextBuilder textBuilder = new TextBuilder(pdfPage);
- // Ajouter le fragment de texte à la page PDF
- textBuilder.AppendParagraph(paragraph);
-}
-// Enregistrer le document
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated4_out.pdf");
+ # Save the document
+ document.save(outfile)
```
+## Sujets de texte liés
-
\ No newline at end of file
+- [Travailler avec du texte dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-text/)
+- [Ajout de texte au PDF](/pdf/fr/python-net/add-text-to-pdf-file/)
+- [Formater le texte PDF en Python](/pdf/fr/python-net/text-formatting-inside-pdf/)
+- [Remplacer le texte dans le PDF avec Python](/pdf/fr/python-net/replace-text-in-pdf/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md b/fr/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md
index e28a04a022..27b70205d1 100644
--- a/fr/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md
@@ -1,556 +1,430 @@
---
-title: Rechercher et Obtenir du Texte à partir des Pages d'un PDF
-linktitle: Rechercher et Obtenir du Texte
+title: Rechercher et extraire le texte PDF en Python
+linktitle: Rechercher et obtenir le texte
type: docs
weight: 60
url: /fr/python-net/search-and-get-text-from-pdf/
-description: Cet article explique comment utiliser divers outils pour rechercher et obtenir du texte à partir d'Aspose.PDF pour .NET.
-lastmod: "2024-02-17"
+description: Apprenez à rechercher, inspecter et extraire du texte à partir de documents PDF en Python.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recherchez du texte PDF et inspectez les fragments extraits en Python
+Abstract: Cet article explique comment rechercher et extraire du texte à partir de documents PDF à l'aide d'Aspose.PDF for Python via .NET. Il couvre `TextAbsorber` et `TextFragmentAbsorber`, y compris l'extraction basée sur des régions, les recherches spécifiques à une page, la correspondance de phrases et l'inspection de la position du texte ainsi que des propriétés de police.
---
-
-
-
-## Rechercher et obtenir du texte à partir de toutes les pages d'un document PDF
-
-La classe [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber) vous permet de trouver du texte, correspondant à une phrase particulière, à partir de toutes les pages d'un document PDF. Afin de rechercher du texte dans tout le document, vous devez appeler la méthode Accept de la collection Pages. La méthode [Accept](https://reference.aspose.com/pdf/python-net/aspose.pdf.page/accept/methods/3) prend un objet TextFragmentAbsorber comme paramètre, qui renvoie une collection d'objets TextFragment. Vous pouvez parcourir tous les fragments et obtenir leurs propriétés comme Text, Position (XIndent, YIndent), FontName, FontSize, IsAccessible, IsEmbedded, IsSubset, ForegroundColor, etc.
-
-L'extrait de code suivant montre comment rechercher du texte à partir de toutes les pages.
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Ouvrir le document
-Document pdfDocument = new Document(dataDir + "SearchAndGetTextFromAll.pdf");
-
-// Créer un objet TextAbsorber pour trouver toutes les instances de la phrase de recherche entrée
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("text");
-
-// Accepter l'absorbeur pour toutes les pages
-pdfDocument.Pages.Accept(textFragmentAbsorber);
-
-// Obtenir les fragments de texte extraits
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-
-// Parcourir les fragments
-foreach (TextFragment textFragment in textFragmentCollection)
-{
-
- Console.WriteLine("Texte : {0} ", textFragment.Text);
- Console.WriteLine("Position : {0} ", textFragment.Position);
- Console.WriteLine("XIndent : {0} ", textFragment.Position.XIndent);
- Console.WriteLine("YIndent : {0} ", textFragment.Position.YIndent);
- Console.WriteLine("Police - Nom : {0}", textFragment.TextState.Font.FontName);
- Console.WriteLine("Police - Est accessible : {0} ", textFragment.TextState.Font.IsAccessible);
- Console.WriteLine("Police - Est intégrée : {0} ", textFragment.TextState.Font.IsEmbedded);
- Console.WriteLine("Police - Est un sous-ensemble : {0} ", textFragment.TextState.Font.IsSubset);
- Console.WriteLine("Taille de la police : {0} ", textFragment.TextState.FontSize);
- Console.WriteLine("Couleur de premier plan : {0} ", textFragment.TextState.ForegroundColor);
-}
-```
+## Rechercher du texte dans le PDF
-Au cas où vous auriez besoin de rechercher du texte à l'intérieur d'une page PDF particulière, veuillez spécifier le numéro de la page dans la collection de pages de l'instance Document et appeler la méthode Accept pour cette page (comme montré dans la ligne de code ci-dessous).
+Rechercher et extraire le texte d'une zone rectangulaire définie dans un document PDF en utilisant le `TextAbsorber` classe. Il utilise le mode de formatage texte pur pour une sortie propre et non formatée, ce qui est utile pour extraire le contenu de régions structurées telles que les en-têtes, pieds de page ou zones de tableau. En combinant `TextExtractionOptions` et `TextSearchOptions` Avec des contraintes rectangulaires, vous pouvez contrôler où et comment le texte est extrait.
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Accepter l'absorbeur pour une page particulière
-pdfDocument.Pages[2].Accept(textFragmentAbsorber);
-```
+Utilisez cette page lorsque vous devez auditer le contenu texte du PDF, extraire le texte pour l'analyse ou inspecter les positions et le formatage des fragments de texte correspondants.
-## Rechercher et Obtenir des Segments de Texte de Toutes les Pages du Document PDF
-
-Afin de rechercher des segments de texte de toutes les pages, vous devez d'abord obtenir les objets TextFragment du document.
- TextFragmentAbsorber vous permet de trouver du texte, correspondant à une phrase particulière, à partir de toutes les pages d'un document PDF. Afin de rechercher du texte dans l'ensemble du document, vous devez appeler la méthode Accept de la collection Pages. La méthode Accept prend l'objet TextFragmentAbsorber comme paramètre, qui renvoie une collection d'objets TextFragment. Une fois que la TextFragmentCollection est récupérée du document, vous devez parcourir cette collection et obtenir TextSegmentCollection de chaque objet TextFragment. Après cela, vous pouvez obtenir toutes les propriétés de l'objet TextSegment individuel. Le snippet de code suivant vous montre comment rechercher des segments de texte à partir de toutes les pages.
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Ouvrir le document
-Document pdfDocument = new Document(dataDir + "SearchAndGetTextPage.pdf");
-
-// Créer un objet TextAbsorber pour trouver toutes les instances de la phrase de recherche entrée
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("Figure");
-// Accepter l'absorbeur pour toutes les pages
-pdfDocument.Pages.Accept(textFragmentAbsorber);
-// Obtenez les fragments de texte extraits
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-// Parcourir les fragments
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- foreach (TextSegment textSegment in textFragment.Segments)
- {
- Console.WriteLine("Texte : {0} ", textSegment.Text);
- Console.WriteLine("Position : {0} ", textSegment.Position);
- Console.WriteLine("XIndent : {0} ", textSegment.Position.XIndent);
- Console.WriteLine("YIndent : {0} ", textSegment.Position.YIndent);
- Console.WriteLine("Police - Nom : {0}", textSegment.TextState.Font.FontName);
- Console.WriteLine("Police - Est accessible : {0} ", textSegment.TextState.Font.IsAccessible);
- Console.WriteLine("Police - Est incorporée : {0} ", textSegment.TextState.Font.IsEmbedded);
- Console.WriteLine("Police - Est un sous-ensemble : {0} ", textSegment.TextState.Font.IsSubset);
- Console.WriteLine("Taille de la police : {0} ", textSegment.TextState.FontSize);
- Console.WriteLine("Couleur de premier plan : {0} ", textSegment.TextState.ForegroundColor);
- }
-}
-```
+1. Chargez le fichier PDF en utilisant 'ap.Document'.
+1. Configurer les options d'extraction de texte.
+1. Définir la zone de recherche avec des contraintes de rectangle.
+1. Créer et configurer TextAbsorber.
+1. Traiter toutes les pages du document.
+1. Récupérer et afficher le texte extrait.
+
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_absorber_search(input_file_path):
+ # Open PDF document
+ document = ap.Document(input_file_path)
+
+ text_extraction_options = ap.text.TextExtractionOptions(
+ ap.text.TextExtractionOptions.TextFormattingMode.PURE
+ )
+ text_search_options = ap.text.TextSearchOptions(ap.Rectangle(0, 0, 842, 250, True))
-Pour rechercher et obtenir des TextSegments à partir d'une page particulière d'un PDF, vous devez spécifier l'index de la page particulière lors de l'appel de la méthode Accept(..). Veuillez jeter un œil aux lignes de code suivantes.
+ absorber = ap.text.TextAbsorber(text_extraction_options, text_search_options)
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Accepter l'absorbeur pour toutes les pages
-pdfDocument.Pages[2].Accept(textFragmentAbsorber);
+ # Process all pages
+ document.pages.accept(absorber)
+
+ print(f"Text fragments found: {absorber.text}")
```
-## Rechercher et obtenir du texte de toutes les pages à l'aide d'une expression régulière
+## Rechercher du texte d'une page PDF spécifique
-TextFragmentAbsorber vous aide à rechercher et à récupérer du texte, de toutes les pages, basé sur une expression régulière.
- Tout d'abord, vous devez passer une expression régulière au constructeur de TextFragmentAbsorber en tant que phrase. Après cela, vous devez définir la propriété TextSearchOptions de l'objet TextFragmentAbsorber. Cette propriété nécessite un objet TextSearchOptions et vous devez passer true en tant que paramètre à son constructeur lors de la création de nouveaux objets. Comme vous souhaitez récupérer le texte correspondant de toutes les pages, vous devez appeler la méthode Accept de la collection Pages. TextFragmentAbsorber renvoie une TextFragmentCollection contenant tous les fragments correspondant aux critères spécifiés par l'expression régulière. L'extrait de code suivant vous montre comment rechercher et obtenir du texte de toutes les pages en fonction d'une expression régulière.
+Rechercher et extraire du texte d'une page et d'une zone spécifiques dans un PDF en utilisant TextAbsorber d'Aspose.PDF. Il cible la page 2 du document et n'extrait que le texte trouvé à l'intérieur d'une zone rectangulaire définie.
+En combinant TextExtractionOptions (pour le contrôle du formatage) et TextSearchOptions (pour la limitation de zone), vous pouvez effectuer une extraction de texte précise et spécifique à chaque page de manière efficace.
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+1. Charger le Document PDF.
+1. Configurer les options d'extraction de texte.
+1. Restreindre l'extraction de texte à une zone rectangulaire spécifique sur la page.
+1. Créer et configurer TextAbsorber.
+1. Traiter une page spécifique.
+1. Récupérer et afficher le texte extrait.
-// Ouvrir le document
-Document pdfDocument = new Document(dataDir + "SearchRegularExpressionAll.pdf");
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-// Créer un objet TextAbsorber pour trouver toutes les phrases correspondant à l'expression régulière
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\\d{4}-\\d{4}"); // Comme 1999-2000
+def text_absorber_search_page(input_file_path):
+ document = ap.Document(input_file_path)
-// Définir l'option de recherche de texte pour spécifier l'utilisation de l'expression régulière
-TextSearchOptions textSearchOptions = new TextSearchOptions(true);
+ text_extraction_options = ap.text.TextExtractionOptions(
+ ap.text.TextExtractionOptions.TextFormattingMode.PURE
+ )
+ text_search_options = ap.text.TextSearchOptions(ap.Rectangle(0, 0, 842, 250, True))
-textFragmentAbsorber.TextSearchOptions = textSearchOptions;
+ absorber = ap.text.TextAbsorber(text_extraction_options, text_search_options)
-// Accepter l'absorbeur pour toutes les pages
-pdfDocument.Pages.Accept(textFragmentAbsorber);
+ # Only page 2
+ document.pages[2].accept(absorber)
-// Obtenir les fragments de texte extraits
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
+ print(f"Text fragments found: {absorber.text}")
+```
-// Boucle à travers les fragments
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- Console.WriteLine("Texte : {0} ", textFragment.Text);
- Console.WriteLine("Position : {0} ", textFragment.Position);
- Console.WriteLine("XIndent : {0} ", textFragment.Position.XIndent);
- Console.WriteLine("YIndent : {0} ", textFragment.Position.YIndent);
- Console.WriteLine("Police - Nom : {0}", textFragment.TextState.Font.FontName);
- Console.WriteLine("Police - EstAccessible : {0} ", textFragment.TextState.Font.IsAccessible);
- Console.WriteLine("Police - EstIntégrée : {0} ", textFragment.TextState.Font.IsEmbedded);
- Console.WriteLine("Police - EstSous-ensemble : {0} ", textFragment.TextState.Font.IsSubset);
- Console.WriteLine("Taille de la police : {0} ", textFragment.TextState.FontSize);
- Console.WriteLine("Couleur de premier plan : {0} ", textFragment.TextState.ForegroundColor);
-}
+## Analyser et extraire les propriétés détaillées des fragments de texte à partir d'un PDF
+
+Contrairement à TextAbsorber, qui extrait le texte brut, TextFragmentAbsorber fournit des informations détaillées et de bas niveau sur chaque fragment de texte — telles que sa position, ses attributs de police, sa couleur et les détails d’intégration.
+
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber.
+1. Traiter toutes les pages du document.
+1. Itérer à travers les fragments de texte extraits.
+1. Imprimer les informations de texte de base.
+1. Imprimer les détails de la police et de la mise en forme.
+
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_fragment_absorber_search(input_file_path):
+ document = ap.Document(input_file_path)
+
+ absorber = ap.text.TextFragmentAbsorber()
+ document.pages.accept(absorber)
+
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
+ print("XIndent:", fragment.position.x_indent)
+ print("YIndent:", fragment.position.y_indent)
+ print("Font - Name:", fragment.text_state.font.font_name)
+ print("Font - IsAccessible:", fragment.text_state.font.is_accessible)
+ print("Font - IsEmbedded:", fragment.text_state.font.is_embedded)
+ print("Font - IsSubset:", fragment.text_state.font.is_subset)
+ print("Font Size:", fragment.text_state.font_size)
+ print("Foreground Color:", fragment.text_state.foreground_color)
```
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-TextFragmentAbsorber textFragmentAbsorber;
-// Afin de rechercher une correspondance exacte d'un mot, vous pouvez envisager d'utiliser une expression régulière.
-textFragmentAbsorber = new TextFragmentAbsorber(@"\bWord\b", new TextSearchOptions(true));
+## Rechercher une phrase texte spécifique sur une seule page PDF
+
+Recherchez une phrase texte spécifique dans une page d'un document PDF en utilisant TextFragmentAbsorber. Contrairement à la recherche sur l'ensemble du document, cette approche limite la recherche à une seule page, ce qui la rend plus efficace pour confirmer la présence et l'emplacement du texte dans des zones ciblées comme les en-têtes, les pieds de page ou des sections de contenu spécifiques.
-// Afin de rechercher une chaîne en majuscules ou minuscules, vous pouvez envisager d'utiliser une expression régulière.
-textFragmentAbsorber = new TextFragmentAbsorber("(?i)Line", new TextSearchOptions(true));
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber avec la phrase de recherche.
+1. Appliquer Absorber à une page spécifique.
+1. Itérer sur les fragments trouvés.
-// Afin de rechercher toutes les chaînes (analyser toutes les chaînes) à l'intérieur du document PDF, veuillez essayer d'utiliser l'expression régulière suivante.
-textFragmentAbsorber = new TextFragmentAbsorber(@"[\S]+");
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-// Trouver la correspondance de la chaîne de recherche et obtenir tout ce qui suit la chaîne jusqu'à la rupture de ligne.
-textFragmentAbsorber = new TextFragmentAbsorber(@"(?i)the ((.)*)");
+def text_fragment_absorber_search_page(input_file_path):
+ document = ap.Document(input_file_path)
-// Veuillez utiliser l'expression régulière suivante pour trouver le texte suivant la correspondance regex.
-textFragmentAbsorber = new TextFragmentAbsorber(@"(?<=word).*");
+ absorber = ap.text.TextFragmentAbsorber("whale")
+ document.pages[2].accept(absorber)
-// Afin de rechercher des Hyperliens/URL's à l'intérieur du document PDF, veuillez essayer d'utiliser l'expression régulière suivante.
-textFragmentAbsorber = new TextFragmentAbsorber(@"(http|ftp|https):\/\/([\w\-_]+(?:(?:\.[\w\-_]+)+))([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?");
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
```
+## Recherche séquentielle de texte page par page avec résultats cumulatifs
-## Rechercher du Texte basé sur une Expression Régulière et Ajouter un Hyperlien
-
-Si vous souhaitez ajouter un hyperlien sur une phrase de texte basée sur une expression régulière, commencez par trouver toutes les phrases correspondant à cette expression régulière particulière en utilisant TextFragmentAbsorber et ajoutez un hyperlien sur ces phrases.
-
-Pour trouver une phrase et ajouter un hyperlien sur celle-ci :
-
-1. Passez l'expression régulière en tant que paramètre au constructeur TextFragmentAbsorber.
-2. Créez un objet TextSearchOptions qui spécifie si l'expression régulière est utilisée ou non.
-3. Obtenez les phrases correspondantes dans TextFragments.
-4. Parcourez les correspondances pour obtenir leurs dimensions rectangulaires, changez la couleur de premier plan en bleu (optionnel - pour qu'il apparaisse comme un hyperlien et créez un lien en utilisant la méthode CreateWebLink(..) de la classe PdfContentEditor.
-5. Enregistrez le PDF mis à jour en utilisant la méthode Save de l'objet Document.
-Le code suivant vous montre comment rechercher du texte à l'intérieur d'un fichier PDF en utilisant une expression régulière et ajouter des hyperliens sur les correspondances.
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Créer un objet absorbeur pour trouver toutes les instances de la phrase de recherche entrée
-TextFragmentAbsorber absorber = new TextFragmentAbsorber("\\d{4}-\\d{4}");
-// Activer la recherche par expression régulière
-absorber.TextSearchOptions = new TextSearchOptions(true);
-// Ouvrir le document
-PdfContentEditor editor = new PdfContentEditor();
-// Lier le fichier PDF source
-editor.BindPdf(dataDir + "SearchRegularExpressionPage.pdf");
-// Accepter l'absorbeur pour la page
-editor.Document.Pages[1].Accept(absorber);
-
-int[] dashArray = { };
-String[] LEArray = { };
-System.Drawing.Color blue = System.Drawing.Color.Blue;
-
-// Parcourir les fragments
-foreach (TextFragment textFragment in absorber.TextFragments)
-{
- textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- System.Drawing.Rectangle rect = new System.Drawing.Rectangle((int)textFragment.Rectangle.LLX,
- (int)Math.Round(textFragment.Rectangle.LLY), (int)Math.Round(textFragment.Rectangle.Width + 2),
- (int)Math.Round(textFragment.Rectangle.Height + 1));
- Enum[] actionName = new Enum[2] { Aspose.Pdf.Annotations.PredefinedAction.Document_AttachFile, Aspose.Pdf.Annotations.PredefinedAction.Document_ExtractPages };
- editor.CreateWebLink(rect, "http:// Www.aspose.com", 1, blue, actionName);
- editor.CreateLine(rect, "", (float)textFragment.Rectangle.LLX + 1, (float)textFragment.Rectangle.LLY - 1,
- (float)textFragment.Rectangle.URX, (float)textFragment.Rectangle.LLY - 1, 1, 1, blue, "S", dashArray, LEArray);
-}
-
-dataDir = dataDir + "SearchTextAndAddHyperlink_out.pdf";
-editor.Save(dataDir);
-editor.Close();
-```
+Recherchez du texte de façon incrémentielle sur plusieurs pages d'un document PDF à l'aide de TextFragmentAbsorber d'Aspose.PDF.
+Contrairement à une recherche à page unique ou sur l'ensemble du document, cette approche vous permet de traiter les pages séquentiellement, de collecter les résultats de manière progressive et d'analyser les fragments de texte avec un contexte spécifique à chaque page. Cette méthode est idéale pour les documents volumineux ou les flux de travail de traitement progressif.
+
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber et définir la phrase de recherche.
+1. Traiter la première page. Rechercher uniquement la page 1. Imprimer le texte, le numéro de page et la position. Fournir des résultats isolés spécifiques à la page pour plus de clarté.
+1. Traiter la page suivante séquentiellement. Passer à la page 2 et éventuellement continuer à travers le reste du document. La fonction 'absorber.visit()' assure l'accumulation des résultats de toutes les pages visitées. Imprime les résultats de recherche cumulatifs, montrant à la fois le texte et la localisation.
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-## Rechercher et dessiner un rectangle autour de chaque TextFragment
+def text_fragment_absorber_sequential_search(input_file_path):
+ document = ap.Document(input_file_path)
-Aspose.PDF pour .NET prend en charge la fonctionnalité de recherche et d'obtention des coordonnées de chaque caractère ou fragment de texte. Donc, pour être certain des coordonnées retournées pour chaque caractère, nous pouvons envisager de surligner (ajouter un rectangle) autour de chaque caractère.
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.phrase = "whale"
-Dans le cas d'un paragraphe de texte, vous pouvez envisager d'utiliser une expression régulière pour déterminer la rupture de paragraphe et dessiner un rectangle autour de celle-ci. Veuillez jeter un œil au code suivant. Le code suivant obtient les coordonnées de chaque caractère et crée un rectangle autour de chaque caractère.
+ # First page
+ document.pages[1].accept(absorber)
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Page:", fragment.page.number)
+ print("Position:", fragment.position)
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ print("--")
-// Ouvrir le document
-Document document = new Document(dataDir + "SearchAndGetTextFromAll.pdf");
+ # Continue to next page
+ document.pages[2].accept(absorber)
+ absorber.visit(document)
-// Créer un objet TextAbsorber pour trouver toutes les phrases correspondant à l'expression régulière
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Page:", fragment.page.number)
+ print("Position:", fragment.position)
+```
+
+## Recherche ciblée de phrase dans une zone rectangulaire
-TextFragmentAbsorber textAbsorber = new TextFragmentAbsorber(@"[\S]+");
+Rechercher une phrase spécifique dans un PDF tout en limitant la recherche à une zone rectangulaire précise sur une seule page.
+En combinant la recherche de phrases avec des contraintes spatiales, vous pouvez localiser le contenu avec précision dans des régions désignées sans scanner l'intégralité de la page ou du document. Cela est particulièrement utile pour les formulaires, en-têtes, pieds de page ou rapports structurés où le contenu apparaît à des emplacements prévisibles.
-TextSearchOptions textSearchOptions = new TextSearchOptions(true);
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber avec Phrase et contraintes rectangulaires
+1. Appliquer l'Absorber à la page 2. Restreint le traitement à la page 2, réduisant les calculs inutiles. Assure que la recherche est spécifique à la page.
+1. Parcourir les fragments trouvés et les imprimer
-textAbsorber.TextSearchOptions = textSearchOptions;
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-document.Pages.Accept(textAbsorber);
+def text_fragment_absorber_search_phrase(input_file_path):
+ document = ap.Document(input_file_path)
-var editor = new PdfContentEditor(document);
+ absorber = ap.text.TextFragmentAbsorber(
+ "elephant", ap.text.TextSearchOptions(ap.Rectangle(0, 0, 842, 250, True))
+ )
-foreach (TextFragment textFragment in textAbsorber.TextFragments)
-{
- foreach (TextSegment textSegment in textFragment.Segments)
- {
- DrawBox(editor, textFragment.Page.Number, textSegment, System.Drawing.Color.Red);
- }
+ document.pages[2].accept(absorber)
-}
-dataDir = dataDir + "SearchTextAndDrawRectangle_out.pdf";
-document.Save(dataDir);
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
```
+## Recherche de motifs de texte dans le PDF à l'aide d'expressions régulières
-## Mettre en évidence chaque caractère dans un document PDF
-
-{{% alert color="primary" %}}
-
-Vous pouvez essayer de rechercher du texte dans un document en utilisant Aspose.PDF et obtenir les résultats en ligne à ce [lien](https://products.aspose.app/pdf/search)
-
-{{% /alert %}}
-
-Aspose.PDF pour .NET prend en charge la fonctionnalité de recherche et d'obtention des coordonnées de chaque caractère ou fragment de texte. Donc, pour être certain des coordonnées renvoyées pour chaque caractère, nous pouvons envisager de mettre en évidence (ajouter un rectangle) autour de chaque caractère. Le code suivant obtient les coordonnées de chaque caractère et crée un rectangle autour de chaque caractère.
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-int resolution = 150;
-
-Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(dataDir + "input.pdf");
-
-using (MemoryStream ms = new MemoryStream())
-{
- PdfConverter conv = new PdfConverter(pdfDocument);
- conv.Resolution = new Resolution(resolution, resolution);
- conv.GetNextImage(ms, System.Drawing.Imaging.ImageFormat.Png);
-
- Bitmap bmp = (Bitmap)Bitmap.FromStream(ms);
-
- using (System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(bmp))
- {
- float scale = resolution / 72f;
- gr.Transform = new System.Drawing.Drawing2D.Matrix(scale, 0, 0, -scale, 0, bmp.Height);
-
- for (int i = 0; i < pdfDocument.Pages.Count; i++)
- {
-Page page = pdfDocument.Pages[1];
-// Créer un objet TextAbsorber pour trouver tous les mots
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber(@"[\S]+");
-textFragmentAbsorber.TextSearchOptions.IsRegularExpressionUsed = true;
-page.Accept(textFragmentAbsorber);
-// Obtenir les fragments de texte extraits
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-// Boucle à travers les fragments
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- if (i == 0)
- {
- gr.DrawRectangle(
- Pens.Yellow,
- (float)textFragment.Position.XIndent,
- (float)textFragment.Position.YIndent,
- (float)textFragment.Rectangle.Width,
- (float)textFragment.Rectangle.Height);
-
- for (int segNum = 1; segNum <= textFragment.Segments.Count; segNum++)
- {
-TextSegment segment = textFragment.Segments[segNum];
-
-for (int charNum = 1; charNum <= segment.Characters.Count; charNum++)
-{
- CharInfo characterInfo = segment.Characters[charNum];
-
- Aspose.Pdf.Rectangle rect = page.GetPageRect(true);
- Console.WriteLine("TextFragment = " + textFragment.Text + " Page URY = " + rect.URY +
- " TextFragment URY = " + textFragment.Rectangle.URY);
-
- gr.DrawRectangle(
- Pens.Black,
- (float)characterInfo.Rectangle.LLX,
- (float)characterInfo.Rectangle.LLY,
- (float)characterInfo.Rectangle.Width,
- (float)characterInfo.Rectangle.Height);
-}
-
-gr.DrawRectangle(
-Pens.Green,
-(float)segment.Rectangle.LLX,
-(float)segment.Rectangle.LLY,
-(float)segment.Rectangle.Width,
-(float)segment.Rectangle.Height);
- }
- }
-}
- }
- }
- dataDir = dataDir + "HighlightCharacterInPDF_out.png";
- bmp.Save(dataDir, System.Drawing.Imaging.ImageFormat.Png);
-}
-```
+Recherchez des motifs de texte dans un PDF à l'aide d'expressions régulières. En activant le mode regex dans TextFragmentAbsorber, vous pouvez localiser des motifs complexes tels que des nombres, des dates, des prix, des coordonnées ou des formats de texte personnalisés. La fonction limite la recherche à une page spécifique, ce qui la rend efficace pour l'extraction ciblée de données structurées.
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber avec un motif Regex.
+1. Appliquer l'Absorber à la Page 2. Limite la recherche à la page 2 pour plus d'efficacité et de précision. Seul le texte de cette page est analysé.
+1. Itérer à travers les fragments trouvés. Imprime les fragments de texte correspondants et leurs coordonnées. Fournit des informations de localisation précises pour les motifs extraits.
-## Ajouter et Rechercher du Texte Caché
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-Parfois, nous voulons ajouter du texte caché dans un document PDF, puis rechercher ce texte caché et utiliser sa position pour un post-traitement. Pour votre commodité, Aspose.PDF pour .NET offre ces capacités. Vous pouvez ajouter du texte caché lors de la génération du document. De plus, vous pouvez trouver du texte caché en utilisant TextFragmentAbsorber. Pour ajouter du texte caché, réglez TextState.Invisible à ‘true’ pour le texte ajouté. TextFragmentAbsorber trouve tout le texte qui correspond au modèle (si spécifié). C'est le comportement par défaut qui ne peut pas être modifié. Afin de vérifier si le texte trouvé est réellement invisible, la propriété TextState.Invisible peut être utilisée. Le fragment de code ci-dessous montre comment utiliser cette fonctionnalité.
+def text_fragment_absorber_search_regex(input_file_path):
+ document = ap.Document(input_file_path)
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ absorber = ap.text.TextFragmentAbsorber(
+ r"\d+\.\d+", ap.text.TextSearchOptions(is_regular_expression_used=True)
+ )
-//Créer un document avec du texte caché
-Aspose.Pdf.Document doc = new Aspose.Pdf.Document();
-Page page = doc.Pages.Add();
-TextFragment frag1 = new TextFragment("Ceci est un texte commun.");
-TextFragment frag2 = new TextFragment("Ceci est un texte invisible.");
+ document.pages[2].accept(absorber)
-//Définir la propriété du texte - invisible
-frag2.TextState.Invisible = true;
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
+```
-page.Paragraphs.Add(frag1);
-page.Paragraphs.Add(frag2);
-doc.Save(dataDir + "39400_out.pdf");
-doc.Dispose();
+## Convertir les correspondances de texte en hyperliens dans un PDF en utilisant TextFragmentAbsorber
-//Rechercher du texte dans le document
-doc = new Aspose.Pdf.Document(dataDir + "39400_out.pdf");
-TextFragmentAbsorber absorber = new TextFragmentAbsorber();
-absorber.Visit(doc.Pages[1]);
+Recherchez des expressions textuelles spécifiques dans un PDF et convertissez‑les en hyperliens cliquables. En utilisant TextFragmentAbsorber avec des modèles regex, il localise les mots cibles et applique un style visuel (couleur et soulignement) ainsi que des liens interactifs.
-foreach (TextFragment fragment in absorber.TextFragments)
-{
- //Faire quelque chose avec les fragments
- Console.WriteLine("Texte '{0}' à la position {1} invisibilité : {2} ",
- fragment.Text, fragment.Position.ToString(), fragment.TextState.Invisible);
-}
-doc.Dispose();
-```
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber avec un motif Regex.
+1. Appliquer Absorber à la page 1.
+1. Styliser et ajouter des hyperliens aux correspondances.
+1. Enregistrer le PDF modifié.
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-## Recherche de texte avec .NET Regex
+def text_fragment_absorber_search_and_add_hyperlink(input_file_path):
+ document = ap.Document(input_file_path)
-Aspose.PDF pour .NET permet de rechercher des documents en utilisant l'option standard .NET Regex. Le TextFragmentAbsorber peut être utilisé à cette fin comme montré dans l'exemple de code ci-dessous.
+ absorber = ap.text.TextFragmentAbsorber("whale|elephant")
+ absorber.text_search_options = ap.text.TextSearchOptions(True)
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ absorber.visit(document.pages[1])
-// Créer un objet Regex pour trouver tous les mots
-System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"[\S]+");
+ for fragment in absorber.text_fragments:
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.underline = True
+ fragment.hyperlink = ap.WebHyperlink(
+ f"https://en.wikipedia.org/wiki/{fragment.text}"
+ )
-// Ouvrir le document
-Aspose.Pdf.Document document = new Aspose.Pdf.Document(dataDir + "SearchTextRegex.pdf");
+ output = input_file_path.replace("in.pdf", "out.pdf")
+ document.save(output)
+```
-// Obtenir une page particulière
-Page page = document.Pages[1];
+## Rechercher et identifier le texte stylisé dans le PDF à l'aide de TextFragmentAbsorber
-// Créer un objet TextAbsorber pour trouver toutes les instances de l'expression régulière d'entrée
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber(regex);
-textFragmentAbsorber.TextSearchOptions.IsRegularExpressionUsed = true;
+Recherchez des fragments de texte dans un PDF en fonction de leurs propriétés de formatage plutôt qu'en fonction de leur contenu. En utilisant TextFragmentAbsorber, il identifie le texte avec des styles spécifiques, comme le texte en gras.
-// Accepter l'absorbeur pour la page
-page.Accept(textFragmentAbsorber);
+1. Charger le Document PDF.
+1. Initialiser TextFragmentAbsorber.
+1. Appliquer Absorber à la page 1.
+1. Inspecter les fragments de texte en fonction du formatage. Vérifie le style de police pour le format gras.
-// Obtenir les fragments de texte extraits
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_fragment_absorber_search_styled_text(input_file_path):
+ document = ap.Document(input_file_path)
+
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.text_search_options = ap.text.TextSearchOptions(True)
+
+ absorber.visit(document.pages[1])
+
+ for fragment in absorber.text_fragments:
+ if fragment.text_state.font_style == ap.text.FontStyles.BOLD:
+ print(f"Bold: {fragment.text}")
+ if fragment.text_state.invisible:
+ print(f"Invisible: {fragment.text}")
+```
-// Boucler à travers les fragments
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- Console.WriteLine(textFragment.Text);
-}
+## Mise en surbrillance visuelle du texte dans les pages PDF
+
+Cette fonction combine la reconnaissance de texte et le rendu en un seul flux de travail. Elle ne se contente pas d'extraire le texte, mais le visualise également en mettant en évidence les fragments, les segments et les caractères avec des rectangles colorés sur les images PNG de chaque page.
+
+Notre exemple effectue une visualisation avancée du texte sur un PDF en :
+
+- recherche de tous les fragments de texte visibles en utilisant des expressions régulières
+- rendu de chaque page PDF en image PNG haute résolution
+- dessiner des rectangles colorés autour des fragments de texte, des segments de texte et des caractères individuels
+
+1. Définir la résolution de l'image de sortie. Chaque page PDF est convertie en une image PNG à 150 DPI.
+1. Ouvrez le PDF et initialisez Text Absorber.
+1. Traiter chaque page. Appliquer l'absorbeur à chaque page. Collecter tous les fragments de texte détectés et leurs positions géométriques.
+1. Convertir la page en flux PNG.
+1. Préparer l'objet graphique pour le dessin.
+1. Appliquer la transformation de coordonnées. Convertir les coordonnées PDF en pixels d'image.
+1. Dessiner des rectangles pour les éléments de texte.
+1. Enregistrez le résultat.
+
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_fragment_absorber_search_and_highlight(infile):
+ resolution = 150
+ png_device = ap.devices.PngDevice(ap.devices.Resolution(resolution, resolution))
+
+ # Open PDF document
+ document = ap.Document(infile)
+ absorber = ap.text.TextFragmentAbsorber(r"[\S]+")
+ absorber.text_search_options.is_regular_expression_used = True
+
+ for page in document.pages:
+ page.accept(absorber)
+ stream = io.BytesIO()
+ png_device.process(page, stream)
+ with drawing.Bitmap.from_stream(stream) as bmp:
+ with drawing.Graphics.from_image(bmp) as gr:
+ scale = resolution / 72
+ gr.transform = drawing.drawing2d.Matrix(
+ float(scale),
+ float(0),
+ float(0),
+ float(-scale),
+ float(0),
+ float(bmp.height),
+ )
+ text_fragment_collection = absorber.text_fragments
+ # Loop through the fragments
+ for text_fragment in text_fragment_collection:
+ gr.draw_rectangle(
+ drawing.Pens.yellow,
+ float(text_fragment.position.x_indent),
+ float(text_fragment.position.y_indent),
+ float(text_fragment.rectangle.width),
+ float(text_fragment.rectangle.height),
+ )
+ for seg_num in range(1, len(text_fragment.segments) + 1):
+ segment = text_fragment.segments[seg_num]
+ for char_num in range(1, len(segment.characters) + 1):
+ character_info = segment.characters[char_num]
+ rect = page.get_page_rect(True)
+ print(
+ f"TextFragment = {text_fragment.text}"
+ + f" Page URY = {rect.ury}"
+ + f" TextFragment URY = {text_fragment.rectangle.ury}"
+ )
+ gr.draw_rectangle(
+ drawing.Pens.black,
+ float(character_info.rectangle.llx),
+ float(character_info.rectangle.lly),
+ float(character_info.rectangle.width),
+ float(character_info.rectangle.height),
+ )
+ gr.draw_rectangle(
+ drawing.Pens.green,
+ float(segment.rectangle.llx),
+ float(segment.rectangle.lly),
+ float(segment.rectangle.width),
+ float(segment.rectangle.height),
+ )
+
+ # Save result
+ bmp.save(
+ infile.replace("_in.pdf", str(page.number) + "_out.png"),
+ drawing.imaging.ImageFormat.png,
+ )
```
+## Sujets de texte associés
-
\ No newline at end of file
+- [Travailler avec du texte dans le PDF en utilisant Python](/pdf/fr/python-net/working-with-text/)
+- [Remplacer le texte dans le PDF via Python](/pdf/fr/python-net/replace-text-in-pdf/)
+- [Ajouter des infobulles au texte du PDF en Python](/pdf/fr/python-net/pdf-tooltip/)
+- [Ajout de texte au PDF](/pdf/fr/python-net/add-text-to-pdf-file/)
\ No newline at end of file
diff --git a/fr/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md b/fr/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md
index 248f81e6b2..bcb55700f4 100644
--- a/fr/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md
+++ b/fr/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md
@@ -1,428 +1,991 @@
---
-title: Formatage de texte à l'intérieur d'un PDF en utilisant Python
-linktitle: Formatage de texte à l'intérieur d'un PDF
+title: Formater le texte PDF en Python
+linktitle: Mise en forme du texte dans PDF
type: docs
-weight: 30
+weight: 70
url: /fr/python-net/text-formatting-inside-pdf/
-description: Cette page explique comment formater du texte à l'intérieur de votre fichier PDF. Il y a l'ajout d'un retrait de ligne, l'ajout d'une bordure de texte, l'ajout de texte souligné, etc.
-lastmod: "2024-02-17"
+description: Découvrez comment mettre en forme le texte dans des documents PDF en Python à l'aide des espacements, bordures, retraits et options de style.
+lastmod: "2026-05-25"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mettre en forme et styliser le texte dans des fichiers PDF avec Python
+Abstract: Cet article explique comment mettre en forme le texte dans des documents PDF avec Aspose.PDF for Python via .NET. Découvrez comment contrôler les espacements, retraits, bordures, soulignements, effets de barré et autres options de style de texte en Python.
---
-
-
-
-## Comment ajouter une indentation de ligne au PDF
-
-Aspose.PDF pour .NET offre la propriété SubsequentLinesIndent dans la classe [TextFormattingOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textformattingoptions). Elle peut être utilisée pour spécifier l'indentation de ligne dans les scénarios de génération de PDF avec TextFragment et la collection Paragraphs.
-
-Veuillez utiliser l'extrait de code suivant pour utiliser la propriété :
-
-```csharp
-// Pour des exemples complets et des fichiers de données, veuillez visiter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Le chemin vers le répertoire des documents.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Créer un nouvel objet document
-Aspose.Pdf.Document document = new Aspose.Pdf.Document();
-Aspose.Pdf.Page page = document.Pages.Add();
-
-string textFragment = string.Concat(Enumerable.Repeat("Un rapide renard brun a sauté par-dessus le chien paresseux. ", 10));
-
-Aspose.Pdf.Text.TextFragment text = new Aspose.Pdf.Text.TextFragment(textFragment);
-
-// Initialiser TextFormattingOptions pour le fragment de texte et spécifier la valeur de SubsequentLinesIndent
-text.TextState.FormattingOptions = new Aspose.Pdf.Text.TextFormattingOptions()
-{
- SubsequentLinesIndent = 20
-};
-
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Ligne2");
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Ligne3");
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Ligne4");
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Ligne5");
-page.Paragraphs.Add(text);
-
-document.Save(dataDir + "SubsequentIndent_out.pdf");
+
+## Espacement des lignes et des caractères
+
+### Utiliser l'espacement des lignes
+
+#### Comment mettre en forme du texte avec un interligne personnalisé en Python - Cas simple
+
+Aspose.PDF for Python propose une approche directe pour contrôler la mise en page et la lisibilité du texte grâce aux réglages d'interligne.
+
+Notre extrait de code montre comment contrôler l'interligne dans un document PDF. Il lit le texte à partir d'un fichier, ou utilise un message de secours, applique une taille de police et un interligne personnalisés, puis ajoute le texte formaté à une nouvelle page PDF.
+
+1. Créez un nouveau document PDF.
+1. Chargez le texte source.
+1. Initialisez un objet `TextFragment` et affectez-lui le texte chargé.
+1. Définissez les propriétés de police et d'espacement pour le texte. Ces valeurs déterminent si les lignes de texte apparaissent plus serrées ou plus espacées :
+ - Taille de police : 12 points
+ - Interligne : 16 points
+1. Insérez le fragment de texte formaté dans la collection de paragraphes de la page.
+1. Enregistrez le document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def specify_line_spacing_simple_case(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as f:
+ text = f.read()
+ else:
+ text = "Lorem ipsum text not found."
+
+ text_fragment = ap.text.TextFragment(text)
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.line_spacing = 16
+ page.paragraphs.add(text_fragment)
+
+ document.save(outfile)
+```
+
+#### Comment mettre en forme du texte avec un interligne personnalisé en Python - Cas spécifique
+
+Voyons comment appliquer différents modes d'interligne dans un document PDF en utilisant une police TrueType (TTF) personnalisée.
+L'exemple charge du texte à partir d'un fichier, incorpore une police spécifique et affiche deux fois le même texte sur une page PDF, chaque fois avec un mode d'interligne différent :
+
+- Mode `FONT_SIZE` : l'interligne est égal à la taille de la police.
+- Mode `FULL_SIZE` : l'interligne tient compte de la hauteur complète de la police, y compris les ascendantes et descendantes.
+
+L'exemple montre comment le comportement de l'interligne peut varier selon le mode sélectionné.
+
+1. Créez un nouveau document PDF.
+1. Spécifiez les chemins du fichier de police personnalisée et du fichier texte source.
+1. Chargez le contenu du texte.
+1. Ouvrez la police personnalisée.
+1. Créez et configurez le premier `TextFragment` en mode `FONT_SIZE`. Définissez `line_spacing` sur `TextFormattingOptions.LineSpacingMode.FONT_SIZE`, ce qui signifie que l'interligne est égal à la taille de la police.
+1. Créez et configurez le second `TextFragment` en mode `FULL_SIZE`. Définissez `line_spacing` sur `TextFormattingOptions.LineSpacingMode.FULL_SIZE`, qui utilise la hauteur complète de la police.
+1. Ajoutez les deux fragments de texte à la même page PDF.
+1. Enregistrez le document final à l'emplacement de sortie spécifié.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def specify_line_spacing_specific_case(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ font_file = path.join(DATA_DIR, "HPSimplified.ttf")
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as f:
+ text = f.read()
+ else:
+ text = "Lorem ipsum text not found."
+
+ with open(font_file, "rb") as font_stream:
+ font = ap.text.FontRepository.open_font(font_stream, ap.text.FontTypes.TTF)
+
+ fragment1 = ap.text.TextFragment(text)
+ fragment1.text_state.font = font
+ fragment1.text_state.formatting_options = ap.text.TextFormattingOptions()
+ fragment1.text_state.formatting_options.line_spacing = (
+ ap.text.TextFormattingOptions.LineSpacingMode.FONT_SIZE
+ )
+ page.paragraphs.add(fragment1)
+
+ fragment2 = ap.text.TextFragment(text)
+ fragment2.text_state.font = font
+ fragment2.text_state.formatting_options = ap.text.TextFormattingOptions()
+ fragment2.text_state.formatting_options.line_spacing = (
+ ap.text.TextFormattingOptions.LineSpacingMode.FULL_SIZE
+ )
+ page.paragraphs.add(fragment2)
+
+ document.save(outfile)
+```
+
+
+
+### Utiliser l'espacement des caractères
+
+#### Comment contrôler l'espacement des caractères dans du texte PDF avec la classe TextFragment
+
+L'espacement des caractères détermine la distance entre chaque caractère d'une ligne de texte. C'est utile pour ajuster finement l'apparence du texte ou obtenir des effets typographiques spécifiques.
+
+1. Initialisez un nouvel objet `Document` et ajoutez une page vide pour y placer le texte.
+1. Définissez un générateur de fragments. Implémentez une fonction utilitaire `make_fragment(spacing)` :
+ - créez un `TextFragment` avec le texte d'exemple ;
+ - définissez la police.
+1. Ajoutez des fragments de texte avec différentes valeurs d'espacement.
+1. Enregistrez le `Document`.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def character_spacing_using_text_fragment(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ def make_fragment(spacing):
+ fragment = ap.text.TextFragment("Sample Text with character spacing")
+ fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment.text_state.font_size = 14
+ fragment.text_state.character_spacing = spacing
+ return fragment
+
+ page.paragraphs.add(make_fragment(2.0))
+ page.paragraphs.add(make_fragment(1.0))
+ page.paragraphs.add(make_fragment(0.75))
+
+ document.save(outfile)
+```
+
+
+
+#### Comment contrôler l'espacement des caractères dans du texte PDF avec TextParagraph et TextBuilder
+
+Aspose.PDF permet d'appliquer un espacement personnalisé entre les caractères lors de l'ajout de texte à un document PDF à l'aide de `TextParagraph` et `TextBuilder`.
+L'exemple définit une zone spécifique sur la page, configure le retour à la ligne et affiche un fragment de texte avec un espacement ajusté entre les caractères.
+
+L'utilisation de `TextParagraph` est idéale lorsque vous avez besoin d'un contrôle précis sur le placement et la mise en page du texte, par exemple pour créer des blocs de texte structurés ou multicolonnes.
+
+1. Créez un nouveau document PDF.
+1. Initialisez une instance de `TextBuilder` pour la page.
+1. Créez et configurez un `TextParagraph`.
+ - Définissez le mode de retour à la ligne sur `TextFormattingOptions.WordWrapMode.BY_WORDS`.
+1. Créez un `TextFragment` avec un espacement personnalisé entre les caractères.
+ - Créez un nouveau `TextFragment` et définissez son texte, par exemple `"Sample Text with character spacing"`.
+ - Spécifiez les attributs de police tels qu'Arial et une taille de 14 pt.
+ - Appliquez `character_spacing = 2.0`, ce qui augmente l'espace entre les caractères.
+1. Ajoutez le `TextFragment` au `TextParagraph`.
+1. Ajoutez le `TextParagraph` à la page.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def character_spacing_using_text_paragraph(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.rectangle = ap.Rectangle(100, 700, 500, 750, True)
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ fragment = ap.text.TextFragment("Sample Text with character spacing")
+ fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment.text_state.font_size = 14
+ fragment.text_state.character_spacing = 2.0
+
+ paragraph.append_line(fragment)
+ builder.append_paragraph(paragraph)
+ document.save(outfile)
+```
+
+## Créer des listes
+
+Lorsque vous travaillez avec des fichiers PDF, vous pouvez avoir besoin d'afficher des informations structurées sous forme de listes, qu'elles soient à puces, numérotées ou formatées en HTML ou en LaTeX.
+Aspose.PDF for Python via .NET propose plusieurs façons flexibles de créer et de formater des listes directement dans vos documents PDF, avec un contrôle total sur la mise en page, la police et le style.
+
+Cet article présente plusieurs approches pour créer des listes dans des PDF, de la simple mise en forme de texte jusqu'au rendu avancé en HTML et en LaTeX. Chaque méthode répond à un cas d'usage particulier, que vous préfériez un contrôle programmatique précis ou une mise en forme pratique basée sur le balisage.
+
+À la fin de cet article, vous saurez comment :
+
+- créer des listes à puces et des listes numérotées personnalisées avec `TextParagraph` et `TextBuilder` ;
+- utiliser des fragments HTML (`HtmlFragment`) pour afficher facilement des listes `
` et `` dans des PDF ;
+- tirer parti de fragments LaTeX (`TeXFragment`) pour la mise en forme de listes mathématiques ou scientifiques ;
+- contrôler le retour à la ligne, les styles de police et le positionnement de la mise en page dans une page ;
+- comprendre la différence entre la construction manuelle de listes et les approches pilotées par balisage.
+
+### Créer une liste numérotée
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_bullet_list(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.rectangle = ap.Rectangle(80, 200, 400, 800, True)
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ for item in items:
+ fragment = ap.text.TextFragment("• " + item)
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+ paragraph.append_line(fragment)
+
+ builder.append_paragraph(paragraph)
+ document.save(outfile)
+```
+
+### Créer une liste à puces
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_numbered_list(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.rectangle = ap.Rectangle(80, 200, 400, 800, True)
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ for i, item in enumerate(items):
+ fragment = ap.text.TextFragment(f"{i + 1}. {item}")
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+ paragraph.append_line(fragment)
+
+ builder.append_paragraph(paragraph)
+ document.save(outfile)
+```
+
+### Créer une liste numérotée en version HTML
+
+Créez une liste numérotée dans un document PDF à l'aide de fragments HTML. L'exemple convertit une liste Python de chaînes en un élément HTML `` et l'insère dans une page PDF en tant que `HtmlFragment`.
+
+L'utilisation de fragments HTML vous permet d'incorporer directement dans le PDF des fonctionnalités de mise en forme basées sur HTML, comme des listes numérotées, du texte en gras, en italique, etc.
+
+1. Créez un nouveau document PDF et ajoutez une page.
+1. Préparez les éléments de la liste.
+1. Convertissez la liste en liste HTML ordonnée.
+ - Utilisez la balise `` pour une liste numérotée.
+ - Entourez chaque élément de balises `li` à l'aide d'une compréhension de liste.
+1. Convertissez la chaîne HTML en objet `HtmlFragment` pouvant être ajouté à la page PDF.
+1. Insérez le `HtmlFragment` dans la collection de paragraphes de la page.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_numbered_list_html_version(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+ html_list = "" + "".join([f"
{item}
" for item in items]) + ""
+ html_fragment = ap.HtmlFragment(html_list)
+ page.paragraphs.add(html_fragment)
+ document.save(outfile)
+```
+
+
+
+### Créer une liste à puces en version HTML
+
+Notre bibliothèque montre comment créer une liste à puces dans un document PDF à l'aide de fragments HTML. L'exemple convertit une liste Python de chaînes en élément HTML `
` et l'insère dans une page PDF sous forme de `HtmlFragment`. Les fragments HTML permettent d'utiliser directement dans le PDF des fonctionnalités de mise en forme HTML comme les listes, le gras et l'italique.
+
+1. Créez un nouveau document PDF et ajoutez une page.
+1. Préparez les éléments de la liste.
+1. Convertissez la liste en liste HTML non ordonnée.
+ - Utilisez la balise `
` pour une liste à puces.
+ - Entourez chaque élément de balises `li` à l'aide d'une compréhension de liste.
+1. Créez un `HtmlFragment`. Convertissez la chaîne HTML en objet `HtmlFragment` pouvant être ajouté à la page PDF.
+1. Insérez le `HtmlFragment` dans la collection de paragraphes de la page.
+1. Enregistrez le document PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_bullet_list_html_version(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+ html_list = "
Quels formats Aspose.PDF for Python via .NET prend‑il en charge ?
Aspose.PDF for Python via .NET prend en charge les formats de fichiers populaires tels que PDF, TXT, HTML, PCL, XML, XPS, EPUB, TEX et les formats d'image. Pour plus de détails, veuillez consulter la page Formats de fichiers pris en charge.
Quelles fonctionnalités d'IA Aspose.PDF for Python via .NET prend-elle en charge ?
Oui, la bibliothèque possède des clients API intégrés pour OpenAI et Llama. Ils vous permettent d'effectuer des requêtes API et de créer des copilotes IA. Vous pouvez trouver des exemples sur Copilote IA PDF page.
Combien de fichiers puis-je combiner en PDF à la fois ?
Vous pouvez fusionner un nombre illimité de fichiers en PDF en une seule fois.
Comment insérer une image dans un PDF ?
Pour insérer une image dans un PDF à l'aide d'Aspose.PDF for Python via .NET, vous pouvez trouver ici.
Comment modifier le texte dans le PDF ?
Pour modifier le texte dans un PDF en utilisant Aspose.PDF for Python via .NET, vous pouvez trouver ici.
Comment ajouter des numéros de page à un fichier PDF ?
Pour ajouter des numéros de page à un PDF en utilisant Aspose.PDF for Python via .NET, vous pouvez trouver ici.
Comment créer un arrière-plan pour les documents PDF ?
Pour créer un arrière-plan pour un document PDF en utilisant Aspose.PDF for Python via .NET, vous pouvez trouver ici.
Comment sécuriser le document PDF ?
Pour sécuriser un document PDF en utilisant Aspose.PDF for Python via .NET, vous pouvez trouver ici.
Comment ajouter du texte en gras dans une annotation mise en évidence sur une page PDF ?
Pour ajouter du texte en gras dans une annotation mise en surbrillance, vous pouvez trouver ici.
Comment valider un PDF balisé ?
Pour valider un document PDF balisé, vous pouvez trouver ici.
Comment implémenter une recherche regex pour TextFragmentAbsorber ?
Pour utiliser les expressions régulières avec le `TextFragmentAbsorber` classe dans Aspose.PDF for Python via .NET, vous pouvez trouver ici.
Comment créer un document PDF/A valide à moins que la police manquante ou sa substitution ne soit fournie ?
Pour créer un document PDF/A valide, vous pouvez trouver ici.
Je vois des erreurs dans le journal de conversion PDF/A. Cela signifie-t-il que le document n’a pas été converti avec succès ?
Non, Aspose.PDF consigne tous les problèmes qu'il a rencontrés, y compris ceux qui ont été corrigés automatiquement. Si toutes les entrées du journal sont marquées comme Convertable=True, tous les problèmes ont été résolus et le document a été converti avec succès. Seules les entrées avec Convertable=False indiquent l'échec de la conversion.
Comment créer un document PDF/A valide si le journal de conversion contient des erreurs "Font not embedded" ?
Si un journal de conversion PDF/A contient des entrées d’erreur "Font not embedded" marquées comme Convertable=False, cela signifie que le document original inclut des polices qui sont manquantes à la fois dans le document lui‑même et sur la machine où la conversion est réalisée. Vérifiez ici apprendre à remplacer les polices manquantes.
Pourquoi Aspose.PDF ne convertit‑il pas un document en PDF/A avec l'option ConvertErrorAction.None ?
L'option ConvertErrorAction.None empêche Aspose.PDF de supprimer des éléments du document, même si ces éléments sont interdits par la norme PDF/A. En conséquence, il peut être impossible de convertir un document en utilisant le mode ConvertErrorAction.None. Utilisez cette option lorsque vous ne souhaitez pas qu'Aspose.PDF supprime automatiquement les éléments interdits du document, surtout si vous prévoyez de consulter le journal de conversion et de corriger manuellement les problèmes du document. Un autre scénario d'utilisation de cette option est lorsque votre document est déjà en grande partie ou totalement conforme à PDF/A, et que vous souhaitez éviter des modifications inutiles. Les versions PDF/A plus permissives (par exemple, PDF/A-2 ou PDF/A-3) ont plus de chances d'être converties avec succès en utilisant l'option ConvertErrorAction.None. Cependant, pour les normes PDF/A-1a et PDF/A-1b, il est généralement recommandé d'utiliser l'option ConvertErrorAction.Delete.
Aspose.PDF for Python via .NET prend‑il en charge Linux ?
Oui, Aspose.PDF for Python via .NET prend en charge l'exécution sur des environnements Linux. Vous pouvez utiliser la version Python via .NET Core ou ultérieure, qui est multiplateforme et peut être utilisée sur Windows, macOS et Linux.
+
diff --git a/fr/python-net/get-started/_index.md b/fr/python-net/get-started/_index.md
index 8431deeb40..2d0b6aa1ba 100644
--- a/fr/python-net/get-started/_index.md
+++ b/fr/python-net/get-started/_index.md
@@ -1,51 +1,50 @@
---
-title: Commencer
+title: Commencer
linktitle: Commencer
type: docs
weight: 30
url: /fr/python-net/get-started/
-description: Cette section décrit les principes de base du travail d'Aspose.PDF pour Python via .NET. La bibliothèque Python prend en charge une grande variété de fonctions.
+description: Apprenez comment commencer avec Aspose.PDF for Python via .NET pour créer, modifier, convertir, valider et extraire le contenu des documents PDF.
is_node: true
-lastmod: "2022-12-20"
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
---
-## Qu'est-ce qu'un fichier PDF ?
+## Qu'est-ce qu'un fichier PDF ?
-Le PDF a été créé par Adobe dans les années 1990 pour atteindre deux objectifs. Le premier est que vous devriez pouvoir ouvrir les documents sur n'importe quel matériel ou système d'exploitation, sans avoir besoin de l'application utilisée pour les créer—tout ce dont vous avez besoin est un lecteur PDF, et de nos jours la plupart des navigateurs web remplissent cette fonction. Le second est que où que vous ouvriez un PDF, la mise en page du document devrait être identique.
+PDF a été créé par Adobe dans les années 1990 pour atteindre deux objectifs. Le premier est que vous puissiez ouvrir les documents sur n'importe quel matériel ou système d'exploitation, sans avoir besoin de l'application utilisée pour les créer — tout ce qu'il vous faut est un lecteur PDF, et de nos jours la plupart des navigateurs web répondent à ce besoin. Le second est que, où que vous ouvriez un PDF, la mise en page du document doit rester la même.
-Cependant, il ne suffit pas seulement d'ouvrir votre document. En travaillant avec des PDF, vous serez confronté à la nécessité de créer un tel document à nouveau, de le modifier ou de le convertir au format dont vous avez besoin.
+Aspose.PDF for Python via .NET vous aide à aller au-delà de la simple ouverture de fichiers PDF. Vous pouvez utiliser la bibliothèque pour créer des PDF à partir de zéro, modifier des documents existants, extraire du contenu, valider la conformité aux normes, et convertir des PDF en d’autres formats dans les applications Python.
-## Pourquoi utiliser Aspose.PDF pour Python via .NET ?
+## Pourquoi utiliser Aspose.PDF for Python via .NET ?
-Utiliser Aspose.PDF pour Python via .NET dans votre projet vous offre les avantages suivants :
+Utiliser Aspose.PDF for Python via .NET dans votre projet vous offre les avantages suivants :
-- grande variété de fonctions
-- basé sur Aspose.PDF pour .NET
-- commodité et facilité d'utilisation
+- Une large gamme de fonctionnalités de traitement PDF
+- Accès au moteur éprouvé Aspose.PDF for .NET depuis Python
+- Une API pratique pour les tâches courantes de création, de modification, d'analyse et de conversion de documents
-## Grande variété de fonctions
+## Tâches PDF courantes que vous pouvez automatiser
-- Prend en charge la plupart des normes PDF établies et des spécifications PDF.
-- [Ajouter, rechercher, extraire et remplacer du texte dans les fichiers PDF]().
-- [Ajouter/supprimer, extraire et remplacer des images]().
-- [Insérer, supprimer, diviser des pages PDF]().
-- [Définir et obtenir des métadonnées XMP]().
-- [Valider (PDF/A-1a, PDF/A-1b)]().
-- Travailler avec [signets](), [annotations](), [formulaires PDF](), [tampons](), [filigranes]() et plus encore.
+- Prise en charge des normes et spécifications PDF largement utilisées
+- [Ajouter, rechercher, extraire et remplacer du texte dans des fichiers PDF](/pdf/fr/python-net/working-with-text/)
+- [Ajouter, supprimer, extraire et remplacer des images](/pdf/fr/python-net/working-with-images/)
+- [Insérer, supprimer, extraire et gérer des pages PDF](/pdf/fr/python-net/working-with-pages/)
+- [Définir et enregistrer les métadonnées XMP](/pdf/fr/python-net/save-metadata-with-xmp/)
+- [Valider les documents PDF pour la conformité PDF/A-1a et PDF/A-1b](/pdf/fr/python-net/manipulate-pdf-document/)
+- Travailler avec [signets](/pdf/fr/python-net/bookmarks/), [annotations](/pdf/fr/python-net/annotations/), [formulaires PDF](/pdf/fr/python-net/working-with-forms/), [tampons](/pdf/fr/python-net/stamping/), et [filigranes](/pdf/fr/python-net/add-watermarks/)
-## Fonctionnalités de conversion
+## Fonctionnalités de conversion de documents
-- [Convertir PDF en Word, Excel et PowerPoint](/pdf/fr/python-net/convert-pdf-to-word/).
-- [Convertir PDF en formats d'images](/pdf/fr/python-net/convert-pdf-to-images-format/).
-- [Convertir un fichier PDF en format HTML et vice versa](/pdf/fr//python-net/convert-pdf-to-html/).
-- [Convertir PDF en EPUB, Texte, XPS, etc.](/pdf/fr/python-net/convert-pdf-to-other-files/).
-- Convertir EPUB, Markdown, Texte, XPS, PostScript, XML, LaTex en PDF
+- [Convertir le PDF en Word, Excel et PowerPoint](/pdf/fr/python-net/convert-pdf-to-word/).
+- [Convertir le PDF en formats d'images](/pdf/fr/python-net/convert-pdf-to-images-format/).
+- [Convertir des fichiers PDF en HTML et convertir le HTML en PDF](/pdf/fr/python-net/convert-pdf-to-html/).
+- [Convertir le PDF en EPUB, texte, XPS, etc.](/pdf/fr/python-net/convert-pdf-to-other-files/).
+- [Convertir EPUB, Markdown, texte, XPS, PostScript, XML, LaTex en PDF](/pdf/fr/python-net/convert-other-files-to-pdf/)
+## Commencez avec ces tutoriels
-### En savoir plus sur :
-
-- [Exemple Python "Hello, World"](/pdf/fr/python-net/hello-world-example/)
-- [PDF Complexe](/pdf/fr/python-net/complex-pdf-example/)
\ No newline at end of file
+- ["Hello, World" exemple Python](/pdf/fr/python-net/hello-world-example/)
+- [Créez un document PDF complexe](/pdf/fr/python-net/complex-pdf-example/)
\ No newline at end of file
diff --git a/fr/python-net/get-started/complex-pdf/_index.md b/fr/python-net/get-started/complex-pdf/_index.md
index bd536eb81e..d0df926077 100644
--- a/fr/python-net/get-started/complex-pdf/_index.md
+++ b/fr/python-net/get-started/complex-pdf/_index.md
@@ -4,59 +4,65 @@ linktitle: Création d'un PDF complexe
type: docs
weight: 30
url: /fr/python-net/complex-pdf-example/
-description: Aspose.PDF pour Python via .NET vous permet de créer des documents plus complexes contenant des images, des fragments de texte et des tableaux dans un seul document.
-lastmod: "2022-12-22"
+description: Aspose.PDF for Python via .NET vous permet de créer des documents plus complexes contenant des images, des fragments de texte et des tableaux dans un seul document.
+lastmod: "2026-05-25"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un PDF complexe avec Python
+Abstract: Cet article approfondit le processus de création de PDF de base présenté dans l'exemple "Hello, World" en illustrant comment créer un document PDF plus complexe en utilisant Python et Aspose.PDF. Le document d'exemple est développé pour une société fictive de services de ferries de passagers et comprend une image, deux fragments de texte (un en-tête et un paragraphe), ainsi qu'un tableau. Le processus implique plusieurs étapes – l'instanciation d'un objet `Document` pour créer un PDF vide, l'ajout d'une `Page`, puis l'insertion d'une `Image` dans la page. Un `TextFragment` est créé pour l'en-tête en utilisant la police Arial avec une taille de 24 pt et un alignement centré, qui est ensuite ajouté aux paragraphes de la page. Un second `TextFragment` est ajouté pour la description, utilisant la police Times New Roman à une taille de 14 pt avec un alignement à gauche. Ensuite, un tableau est créé et formaté avec des largeurs de colonne spécifiques, des bordures et des marges. Le tableau comprend une ligne d'en-tête avec des cellules surlignées et plusieurs lignes de données générées par itération
---
-L'exemple [Bonjour, le Monde](/pdf/fr/python-net/hello-world-example/) a montré des étapes simples pour créer un document PDF en utilisant Python et Aspose.PDF. Dans cet article, nous allons examiner la création d'un document plus complexe avec Aspose.PDF pour Python. Comme exemple, nous prendrons un document d'une entreprise fictive qui exploite des services de ferry pour passagers. Notre document contiendra une image, deux fragments de texte (en-tête et paragraphe), et un tableau.
+Le [Hello World](/pdf/fr/python-net/hello-world-example/) exemple a montré des étapes simples pour créer un document PDF en utilisant Python et Aspose.PDF. Dans cet article, nous examinerons la création d'un document plus complexe avec Aspose.PDF for Python. À titre d'exemple, nous prendrons un document d'une entreprise fictive qui exploite des services de ferries de passagers. Notre document contiendra une image, deux fragments de texte (en-tête et paragraphe) et un tableau.
Si nous créons un document à partir de zéro, nous devons suivre certaines étapes :
-1. Instancier un objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Dans cette étape, nous allons créer un document PDF vide avec des métadonnées mais sans pages.
-1. Ajouter une [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à l'objet document. Ainsi, notre document aura maintenant une page.
-1. Ajouter une [Image](https://reference.aspose.com/pdf/python-net/aspose.pdf/image/) à la Page.
-1. Créer un [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) pour l'en-tête. Pour l'en-tête, nous utiliserons la police Arial avec une taille de police de 24pt et un alignement centré.
-1. Ajouter l'en-tête aux [paragraphes](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) de la page.
-1. Créer un [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) pour la description. Pour la description, nous utiliserons la police Arial avec une taille de police de 24pt et un alignement centré.
-1. Ajouter la (description) aux Paragraphes de la page.
-1. Créer un tableau, ajouter des propriétés au tableau.
-
-1. Ajouter (table) à la page [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
+1. Instancier un [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objet. Dans cette étape, nous créerons un document PDF vide avec quelques métadonnées mais sans pages.
+1. Ajouter un [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à l'objet document. Ainsi, maintenant notre document aura une page.
+1. Ajouter un [Image](https://reference.aspose.com/pdf/python-net/aspose.pdf/image/) à la Page.
+1. Créer un [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) pour l'en-tête. Pour l'en-tête, nous utiliserons la police Arial avec une taille de 24 pt et un alignement centré.
+1. Ajouter l'en-tête à la page [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
+1. Créer un [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) pour la description. Pour la description, nous utiliserons la police Arial avec une taille de 24 pt et un alignement centré.
+1. Ajouter la description à la page [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
+1. Créer et styliser le tableau. Définir la largeur des colonnes, les bordures, le remplissage et la police.
+1. Ajouter un tableau à la page [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
1. Enregistrer un document "Complex.pdf".
```python
+from datetime import timedelta
+import aspose.pdf as ap
+
- import aspose.pdf as ap
+def run_complex(self):
- # Initialiser l'objet document
+ # Initialize document object
document = ap.Document()
- # Ajouter une page
+ # Add page
page = document.pages.add()
- # Ajouter une image
- page.add_image(image_file, ap.Rectangle(20, 730, 120, 830, True))
+ # Add image
+ imageFileName = self.data_dir + "logo.png"
+ page.add_image(imageFileName, ap.Rectangle(20, 730, 120, 830, True))
- # Ajouter un en-tête
- header = ap.text.TextFragment("Nouvelles routes de ferry à l'automne 2020")
+ # Add Header
+ header = ap.text.TextFragment("New ferry routes in Fall 2029")
header.text_state.font = ap.text.FontRepository.find_font("Arial")
header.text_state.font_size = 24
header.horizontal_alignment = ap.HorizontalAlignment.CENTER
header.position = ap.text.Position(130, 720)
page.paragraphs.add(header)
- # Ajouter une description
- descriptionText = "Les visiteurs doivent acheter des billets en ligne et les billets sont limités à 5 000 par jour. \
- Le service de ferry fonctionne à moitié capacité et sur un horaire réduit. Attendez-vous à des files d'attente."
+ # Add description
+ descriptionText = "Visitors must buy tickets online and tickets are limited to 5,000 per day. \
+ Ferry service is operating at half capacity and on a reduced schedule. Expect lineups."
description = ap.text.TextFragment(descriptionText)
description.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
description.text_state.font_size = 14
description.horizontal_alignment = ap.HorizontalAlignment.LEFT
page.paragraphs.add(description)
- # Ajouter un tableau
+ # Add table
table = ap.Table()
table.column_widths = "200"
@@ -67,13 +73,15 @@ Si nous créons un document à partir de zéro, nous devons suivre certaines ét
table.default_cell_text_state.font = ap.text.FontRepository.find_font("Helvetica")
headerRow = table.rows.add()
- headerRow.cells.add("Départs Ville")
- headerRow.cells.add("Départs Île")
+ headerRow.cells.add("Departs City")
+ headerRow.cells.add("Departs Island")
i = 0
while i < headerRow.cells.count:
headerRow.cells[i].background_color = ap.Color.gray
- headerRow.cells[i].default_cell_text_state.foreground_color = ap.Color.white_smoke
+ headerRow.cells[
+ i
+ ].default_cell_text_state.foreground_color = ap.Color.white_smoke
i += 1
time = timedelta(hours=6, minutes=0)
@@ -89,5 +97,5 @@ Si nous créons un document à partir de zéro, nous devons suivre certaines ét
page.paragraphs.add(table)
- document.save(output_pdf)
-```
\ No newline at end of file
+ document.save(self.data_dir + "Complex.pdf")
+```
diff --git a/fr/python-net/get-started/hello-world-example/_index.md b/fr/python-net/get-started/hello-world-example/_index.md
index 34caaff710..039cd3841b 100644
--- a/fr/python-net/get-started/hello-world-example/_index.md
+++ b/fr/python-net/get-started/hello-world-example/_index.md
@@ -1,42 +1,59 @@
---
-title: Exemple de Hello World en utilisant Python
+title: Exemple de Hello World en Python
linktitle: Exemple de Hello World
type: docs
weight: 20
url: /fr/python-net/hello-world-example/
-description: Cet exemple démontre comment créer un document PDF simple avec le texte Hello World en utilisant Aspose.PDF pour Python via .NET.
-lastmod: "2022-12-22"
+description: Cet exemple montre comment créer un document PDF simple contenant le texte Hello World en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Exemple Hello World via Python
+Abstract: Cet article fournit un exemple Hello World utilisant la bibliothèque Aspose.PDF for Python via .NET pour créer un document PDF. L'exemple montre les étapes de base de l'utilisation de l'API Aspose.PDF en générant un PDF contenant le texte "Hello World!". Le processus consiste à instancier un objet `Document`, ajouter une `Page`, créer un objet `TextFragment`, définir des propriétés de texte telles que la taille et la couleur de la police, et utiliser un `TextBuilder` pour ajouter le texte à la page. Le PDF résultant est ensuite enregistré sous le nom "HelloWorld_out.pdf". L'article inclut un extrait de code Python complet illustrant ces étapes, servant de guide d'introduction à l'utilisation de la bibliothèque.
---
-Un exemple "Hello World" montre la syntaxe la plus simple et le programme le plus simple dans n'importe quel langage de programmation donné. Les développeurs sont initiés à la syntaxe de base du langage de programmation en apprenant comment imprimer "Hello World" sur l'écran de l'appareil. Par conséquent, nous commencerons traditionnellement notre connaissance de notre bibliothèque par cela.
+Un exemple "Hello World" montre la syntaxe la plus simple et le programme le plus simple dans n'importe quel langage de programmation. Les développeurs sont initiés à la syntaxe de base du langage de programmation en apprenant à afficher "Hello World" sur l'écran de l'appareil. Par conséquent, nous commencerons traditionnellement notre prise en main de notre bibliothèque par celui-ci.
-Dans cet article, nous créons un document PDF contenant le texte "Hello World!". Après avoir installé **Aspose.PDF pour Python via .NET** dans votre environnement, vous pouvez exécuter l'exemple de code ci-dessous pour voir comment fonctionne l'API Aspose.PDF.
+Dans cet article, nous créons un document PDF contenant le texte "Hello World!". Après avoir installé **Aspose.PDF for Python via .NET** dans votre environnement, vous pouvez exécuter l'exemple de code ci‑dessous pour voir comment fonctionne l'API Aspose.PDF.
-L'extrait de code ci-dessous suit ces étapes :
+Le fragment de code ci‑dessous suit ces étapes :
-1. Instancier un objet [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
-1. Ajouter une [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à l'objet document
-1. Créer un objet [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/)
-1. Ajouter TextFragment à la collection de [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) de la page
-1. [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) le document PDF résultant
+1. Instancier un [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objet
+1. Ajouter un [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) vers l'objet document
+1. Créer un [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) objet
+1. Définir les couleurs du texte
+1. Créer un Text Builder
+1. Ajouter [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) à la Page
+1. [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) document PDF résultant
-Le code suivant est un programme "Hello World" pour démontrer le fonctionnement d'Aspose.PDF pour Python via l'API .NET.
+Le fragment de code suivant est un programme "Hello World" qui démontre la fonctionnalité d'Aspose.PDF for Python via l'API .NET.
```python
+from datetime import timedelta
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Initialiser l'objet document
+def run_simple(self):
+ # Initialize document object
document = ap.Document()
- # Ajouter une page
+ # Add page
page = document.pages.add()
- # Initialiser l'objet textfragment
- text_fragment = ap.text.TextFragment("Hello,world!")
- # Ajouter le fragment de texte à la nouvelle page
- page.paragraphs.add(text_fragment)
- # Enregistrer le PDF mis à jour
- document.save("output.pdf")
-```
\ No newline at end of file
+ # Add text to new page
+ textFragment = ap.text.TextFragment("Hello, world!")
+ textFragment.position = ap.text.Position(100, 600)
+
+ textFragment.text_state.font_size = 12
+ textFragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ textFragment.text_state.background_color = ap.Color.blue
+ textFragment.text_state.foreground_color = ap.Color.yellow
+
+ # Create TextBuilder object
+ textBuilder = ap.text.TextBuilder(page)
+
+ # Append the text fragment to the PDF page
+ textBuilder.append_text(textFragment)
+
+ document.save(self.data_dir + "HelloWorld_out.pdf")
+```
diff --git a/fr/python-net/overview/_index.md b/fr/python-net/overview/_index.md
index 563df3904c..bffdf319d3 100644
--- a/fr/python-net/overview/_index.md
+++ b/fr/python-net/overview/_index.md
@@ -1,39 +1,41 @@
---
-title: Aperçu
-linktitle: Aperçu
+title: Vue d’ensemble
+linktitle: Vue d’ensemble
type: docs
weight: 20
url: /fr/python-net/overview/
-lastmod: "2022-12-20"
-description: Aperçu des fonctionnalités clés et des formats pris en charge par Aspose.PDF pour Python via .NET, manuel d'installation et de licence de la bibliothèque.
+lastmod: "2026-05-22"
+description: Vue d'ensemble des fonctionnalités clés et des formats pris en charge d'Aspose.PDF for Python via .NET, manuel d'installation et de licence de la bibliothèque.
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Vue d'ensemble des fonctionnalités clés d'Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET est une API complète de traitement PDF conçue pour les développeurs afin de manipuler des documents PDF sans dépendre de Microsoft Office ou d'Adobe Acrobat Automation. La bibliothèque prend en charge un large éventail de fonctionnalités, y compris le respect des normes et spécifications PDF établies, la capacité de lire et d'exporter des PDF dans divers formats d'image tels que BMP, GIF, JPEG et PNG, ainsi que la possibilité de définir des informations de document de base comme l'auteur et le créateur. Elle permet également la configuration des propriétés des pages PDF, telles que la largeur, la hauteur, le cropbox et le bleedbox, ainsi que des fonctionnalités comme la numérotation des pages, les niveaux de signets et les tailles de page. Les utilisateurs peuvent manipuler le texte, les paragraphes, les titres, les hyperliens, les graphiques et les pièces jointes dans les PDF. De plus, Aspose.PDF for Python offre des capacités de conversion efficaces depuis des formats tels que EPUB, Markdown, Texte, XPS, PostScript, XML et LaTex vers PDF, et inversement, garantissant des performances élevées et une qualité optimale.
---
-_Cette page est un aperçu des fonctionnalités d'Aspose.PDF pour Python._
+_Cette page est une vue d'ensemble des fonctionnalités d'Aspose.PDF for Python._
-**Aspose.PDF pour Python via .NET**, API de traitement des PDF qui permet aux développeurs de travailler avec des documents PDF sans avoir besoin de Microsoft Office® ou d'Adobe Acrobat Automation. Consultez les pages de destination d'[Aspose.PDF pour Python](https://products.aspose.com/pdf/python-net/) pour une description plus détaillée des fonctionnalités et des possibilités de la bibliothèque.
+**Aspose.PDF for Python via .NET**, API de traitement PDF qui permet aux développeurs de travailler avec des documents PDF sans nécessiter Microsoft Office® ou l'automatisation d'Adobe Acrobat. Découvrez les pages d'atterrissage de [Aspose.PDF for Python](https://products.aspose.com/pdf/python-net/) pour une description plus détaillée des fonctionnalités et des possibilités de la bibliothèque.
-Aspose.PDF pour Python prend en charge une grande variété de fonctions telles que :
+Le Aspose.PDF for Python prend en charge une grande variété de fonctions telles que :
- Prend en charge la plupart des normes PDF établies et des spécifications PDF.
-- Capacité de lire et d'exporter des PDFs dans plusieurs formats d'image, y compris BMP, GIF, JPEG et PNG.
-- Définir des informations de base (par exemple.
- auteur, créateur) du document PDF.
-- Configurer les propriétés de la page PDF (par exemple, largeur, hauteur, cropbox, bleedbox, etc.).
-- Définir la numérotation des pages, le niveau des signets, les tailles de pages, etc.
-- Capacité à travailler avec du texte, des paragraphes, des titres, des hyperliens, des graphiques, des pièces jointes, etc.
+- Capacité de lire & d'exporter des PDF dans plusieurs formats d'image, notamment BMP, GIF, JPEG & PNG.
+- Définir les informations de base (p. ex. auteur, créateur) du document PDF.
+- Configurer les propriétés des pages PDF (p. ex. largeur, hauteur, cropbox, bleedbox, etc.).
+- Définir la numérotation des pages, le niveau des signets, les tailles de page, etc.
+- Capacité de travailler avec du texte, des paragraphes, des titres, des hyperliens, des graphiques, des pièces jointes, etc.
-De plus, Aspose.PDF pour Python via .NET peut être appliqué pour convertir facilement EPUB, Markdown, Texte, XPS, PostScript, XML, LaTex en PDF et convertir PDF en divers formats de documents avec d'excellentes performances et une bonne qualité.
+De plus, Aspose.PDF for Python via .NET peut être utilisé pour convertir facilement les formats EPUB, Markdown, texte, XPS, PostScript, XML, LaTex en PDF et convertir le PDF en divers formats de document avec d'excellentes performances et une bonne qualité.
-Essayez nos [Applications en ligne gratuites](https://products.aspose.app/pdf/applications) démontrant certaines des fonctionnalités Aspose.PDF les plus populaires.
+Essayez notre [Applications en ligne](https://products.aspose.app/pdf/applications) qui démontrent certaines des fonctionnalités les plus populaires d'Aspose.PDF.
En savoir plus sur :
- [Formats de fichiers pris en charge](/pdf/fr/python-net/supported-file-formats/)
-- [Principales caractéristiques d'Aspose.PDF](/pdf/fr/python-net/key-features/)
-- [Configuration système requise](/pdf/fr/python-net/system-requirements/)
+- [Fonctionnalités clés d'Aspose.PDF](/pdf/fr/python-net/key-features/)
+- [Exigences système](/pdf/fr/python-net/system-requirements/)
- [Installation](/pdf/fr/python-net/installation/)
-- [Licences](/pdf/fr/python-net/licensing/)
-- [Support technique](/pdf/fr/python-net/technical-support/)
\ No newline at end of file
+- [Licence](/pdf/fr/python-net/licensing/)
+- [Support technique](/pdf/fr/python-net/technical-support/)
diff --git a/fr/python-net/overview/installation/_index.md b/fr/python-net/overview/installation/_index.md
index 69f1a98471..54931b7567 100644
--- a/fr/python-net/overview/installation/_index.md
+++ b/fr/python-net/overview/installation/_index.md
@@ -1,43 +1,51 @@
---
-title: Comment Installer Aspose.PDF pour Python
+title: Comment installer Aspose.PDF for Python
linktitle: Installation
type: docs
weight: 40
url: /fr/python-net/installation/
-description: Cette section montre une description du produit et des instructions pour installer Aspose.PDF pour Python.
-lastmod: "2022-12-21"
+description: Trouvez des instructions étape par étape pour installer Aspose.PDF for Python et .NET afin de commencer à travailler avec des documents PDF.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Installation d'Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET est une bibliothèque complète conçue pour intégrer des capacités de traitement PDF dans les applications Python, compatible avec les systèmes 32 bits et 64 bits. Cette bibliothèque prend en charge une large gamme de tâches de traitement de documents, notamment la manipulation de texte et de pages, le traitement de formulaires, la gestion des métadonnées et la gestion des annotations, des signets, des filigranes et des polices personnalisées. Elle convient à une utilisation sur divers systèmes d'exploitation où Python 3.5 ou ultérieur est installé. La bibliothèque peut être évaluée en téléchargeant une version d'essai, qui passe à un état licencié avec les ajouts de code appropriés. La version d'essai conserve toutes les fonctionnalités mais inclut un filigrane d'évaluation et limite les interactions avec les éléments de collection à quatre. Les utilisateurs peuvent demander une licence temporaire de 30 jours pour contourner ces limitations. Aspose.PDF for Python via .NET peut être installé via pip, garantissant un accès facile aux dernières versions.
---
{{% alert color="primary" %}}
-**Aspose.PDF pour Python via .NET** est une bibliothèque qui permet aux développeurs d'ajouter des capacités de traitement PDF à leurs applications. L'API peut être utilisée pour créer des applications 32 bits et 64 bits pour générer, lire, convertir et manipuler des fichiers PDF sans utiliser Adobe Acrobat.
+**Aspose.PDF for Python via .NET** est une bibliothèque qui permet aux développeurs d'ajouter des capacités de traitement PDF à leurs applications. L'API peut être utilisée pour créer des applications 32 bits et 64 bits afin de générer, lire, convertir et manipuler des fichiers PDF sans recourir à Adobe Acrobat.
{{% /alert %}}
-## Description du Produit
+## Description du produit
-**Aspose.PDF pour Python** permet d'effectuer une gamme de tâches de traitement de documents telles que le traitement de formulaires, obtenir et définir des informations de métadonnées, la manipulation de texte et de pages, la gestion des annotations, ajouter ou supprimer des signets et des filigranes, des pièces jointes, la gestion de polices personnalisées et bien plus encore.
+**Aspose.PDF for Python** permet d'effectuer une gamme de tâches de traitement de documents telles que le form processing, obtenir et définir les informations de metadata, la manipulation de texte et de pages, la gestion des annotations, ajouter ou supprimer des signets et des filigranes, les pièces jointes, la gestion de polices personnalisées et bien plus encore.
-**Aspose.PDF pour Python** peut être utilisé pour développer des applications Python 32 bits et 64 bits pour différents systèmes d'exploitation (comme Windows et Linux) où Python 3.5 ou une version ultérieure est installé.
+**Aspose.PDF for Python** peut être utilisé pour développer des applications Python 32 bits et 64 bits pour différents systèmes d'exploitation (comme Windows et Linux) où Python 3.5 ou une version ultérieure est installé.
-# Installation
+## Installation
-## Évaluer Aspose.PDF pour Python via .NET
+## Évaluez Aspose.PDF for Python via .NET
-Vous pouvez facilement télécharger Aspose.PDF pour Python pour évaluation. Le téléchargement d'évaluation est identique au téléchargement acheté. La version d'évaluation devient simplement sous licence lorsque vous ajoutez quelques lignes de code pour appliquer la licence.
+Vous pouvez facilement télécharger Aspose.PDF for Python pour l'évaluation. Le téléchargement d'évaluation est identique au téléchargement acheté. La version d'évaluation devient simplement licenciée lorsque vous ajoutez quelques lignes de code pour appliquer la licence.
-Vous pouvez télécharger [Aspose.PDF pour Python](https://releases.aspose.com/pdf/pythonnet/) pour évaluation. Le téléchargement d'évaluation est identique au téléchargement acheté. La version d'évaluation devient sous licence lorsque vous ajoutez quelques lignes de code pour [appliquer la licence](/pdf/fr/python-net/licensing/).
+Vous pouvez télécharger [Aspose.PDF for Python](https://releases.aspose.com/pdf/pythonnet/) pour l'évaluation. Le téléchargement d'évaluation est identique au téléchargement acheté. La version d'évaluation devient licenciée lorsque vous ajoutez quelques lignes de code pour [appliquer la licence](/pdf/fr/python-net/licensing/).
+
+La version d'évaluation d'Aspose.PDF (sans licence spécifiée) offre toutes les fonctionnalités du produit, mais elle présente deux limitations : elle insère un filigrane d'évaluation, et seuls quatre éléments de toute collection peuvent être affichés/modifiés.
-La version d'évaluation d'Aspose.PDF (sans licence spécifiée) offre une fonctionnalité complète du produit, mais elle présente deux limitations : elle insère un filigrane d'évaluation et seuls quatre éléments de toute collection peuvent être visualisés/modifiés.
{{% alert color="primary" %}}
-Si vous souhaitez tester Aspose.PDF pour Python sans les limitations de la version d'évaluation, vous pouvez également demander une Licence Temporaire de 30 jours. Veuillez vous référer à [Comment obtenir une Licence Temporaire ?](https://purchase.aspose.com/temporary-license)
+Si vous souhaitez tester Aspose.PDF for Python sans les limitations de la version d'évaluation, vous pouvez également demander une licence temporaire de 30 jours. Veuillez vous référer à [Comment obtenir une licence temporaire ?](https://purchase.aspose.com/temporary-license)
{{% /alert %}}
-## Installation d'Aspose.PDF pour Python via .NET
+## Installation d'Aspose.PDF for Python via .NET
+
+Vous pouvez facilement utiliser aspose-pdf pour Python depuis le lien de téléchargement direct [pip](https://pypi.org/project/aspose-pdf/).
+Exécutez ’pip install aspose-pdf’ pour récupérer le paquet. Si vous avez déjà Aspose.PDF for Python et souhaitez obtenir la dernière version, veuillez exécuter ’pip install --upgrade aspose-pdf’.
+
+
-Vous pouvez facilement utiliser aspose-pdf pour Python à partir du lien de téléchargement direct [pip](https://pypi.org/project/aspose-pdf/). Exécutez 'pip install aspose-pdf' pour récupérer le package. Si vous avez déjà Aspose.PDF pour Python et souhaitez obtenir la dernière version, veuillez exécuter 'pip install --upgrade aspose-pdf'.
\ No newline at end of file
diff --git a/fr/python-net/overview/key-features/_index.md b/fr/python-net/overview/key-features/_index.md
index 7b89dd6b53..d957549233 100644
--- a/fr/python-net/overview/key-features/_index.md
+++ b/fr/python-net/overview/key-features/_index.md
@@ -1,113 +1,130 @@
---
-title: Caractéristiques clés d'Aspose.PDF pour Python
-linktitle: Caractéristiques clés
+title: Fonctionnalités clés d'Aspose.PDF for Python
+linktitle: Fonctionnalités clés
type: docs
weight: 20
url: /fr/python-net/key-features/
-description: Aspose.PDF pour Python via .NET démontre ses fonctionnalités générales. Il montre les versions PDF prises en charge et toutes les manipulations que nous pouvons faire avec les PDF.
-lastmod: "2022-12-21"
+description: Aspose.PDF for Python via .NET met en avant ses principales fonctionnalités, notamment les versions PDF prises en charge et les options de manipulation de PDF disponibles.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fonctionnalités générales d'Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET est une bibliothèque robuste offrant de nombreuses fonctionnalités pour la gestion et la manipulation de documents PDF. Elle prend en charge les normes PDF établies et facilite la lecture et l'exportation des PDF vers divers formats d'image tels que BMP, GIF, JPEG et PNG. Les utilisateurs peuvent configurer les propriétés du document, les attributs des pages, et gérer le texte, les paragraphes, les hyperliens, les graphiques et les pièces jointes. La bibliothèque excelle dans les capacités de conversion, permettant une transformation fluide des PDF vers les formats Word, Excel, PowerPoint et HTML, entre autres, tout en convertissant également divers formats en PDF.
---
## Fonctionnalités générales
- Prend en charge la plupart des normes PDF établies et des spécifications PDF.
-- Capacité à lire et exporter des PDF dans plusieurs formats d'image, y compris BMP, GIF, JPEG et PNG.
-- Définir des informations de base (par exemple, auteur, créateur) du document PDF.
-- Configurer les propriétés de la page PDF (par exemple, largeur, hauteur, cropbox, bleedbox, etc.).
-- Définir la numérotation des pages, le niveau des signets, les tailles de pages, etc.
-- Capacité à travailler avec du texte, des paragraphes, des titres, des hyperliens, des graphiques, des pièces jointes, etc.
+- Capacité de lire & d'exporter des PDF dans plusieurs formats d'image, notamment BMP, GIF, JPEG & PNG.
+- Définir les informations de base (p. ex. auteur, créateur) du document PDF.
+- Configurer les propriétés des pages PDF (p. ex. largeur, hauteur, cropbox, bleedbox, etc.).
+- Définir la numérotation des pages, le niveau des signets, les tailles de page, etc.
+- Capacité de travailler avec du texte, des paragraphes, des titres, des hyperliens, des graphiques, des pièces jointes, etc.
+
+## Normes PDF prises en charge
+
+- ISO 32000-1 (PDF 1.2, PDF 1.3, PDF 1.4, PDF 1.5, PDF 1.6, PDF 1.7).
+- ISO 32000-2 (PDF 2.0).
+- ISO 19005 (PDF/A), ISO 15930 (PDF/X), ISO 24517 (PDF/E), ISO 14289 (PDF/UA).
## Fonctionnalités de conversion
-La bibliothèque Aspose.PDF pour Python via .NET vous permet de convertir avec succès, rapidement et facilement vos documents PDF vers les formats les plus populaires et vice versa.
+La bibliothèque Aspose.PDF for Python via .NET vous permet de convertir vos documents PDF rapidement, facilement et avec succès vers les formats les plus populaires, et inversement.
-- Convertir PDF en Word, Excel et PowerPoint.
-- Convertir PDF en formats d'images.
-- Convertir un fichier PDF en format HTML et vice versa.
-- Convertir PDF en EPUB, Texte, XPS, etc.
-- Convertir EPUB, Markdown, Texte, XPS, PostScript, XML, LaTex en PDF.
+- Convertir le PDF en Word, Excel et PowerPoint.
+- Convertir le PDF en formats d'images.
+- Convertir le fichier PDF au format HTML et inversement.
+- Convertir le PDF en EPUB, texte, XPS, etc.
+- Convertir EPUB, Markdown, texte, XPS, PostScript, XML, LaTex en PDF.
## Versions PDF prises en charge
-Aspose.PDF pour Python prend en charge les versions PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, et 2.0.
+Aspose.PDF for Python prend en charge les versions PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 et 2.0.
## Texte
- Extraire le texte des pages.
-- Rechercher du texte dans les pages.
+- Rechercher le texte dans les pages.
- Remplacer le texte.
- Ajouter du texte dans le fichier PDF.
+## Fonts
+
+- 14 polices de base.
+- Polices Type 1.
+- Polices TrueType.
+- Polices Type 3.
+- Polices CJK.
+- Prise en charge Unicode.
+
## Images
- Ajouter une image dans le fichier PDF.
-- Supprimer des images.
-- Remplacer des images.
-- Extraire des images.
-- Conversion du PDF en format d'image.
+- Supprimer les images.
+- Remplacer les images.
+- Extraire les images.
+- Conversion du format PDF en image.
## Pièces jointes
- Ajouter une pièce jointe.
-- Supprimer des pièces jointes.
+- Supprimer les pièces jointes.
## Page
- Insérer des pages PDF.
-- Supprimer des pages PDF.
+- Supprimer les pages PDF.
- Diviser le PDF en pages individuelles.
- Déplacer un groupe de pages d'un document PDF à un autre
- Déplacer une page à un nouvel emplacement dans le document PDF actuel
-- Changer la taille de la page PDF
-- Changer l'orientation de la page
+- Modifier la taille de la page PDF
+- Modifier l'orientation de la page
- Obtenir les propriétés de la page
- Obtenir le nombre de pages
-- Obtenir un compte de pages
+- Obtenir le nombre de pages
- Obtenir une page particulière
## Document
- Créer un fichier PDF
-- Ouvrir un document PDF existant depuis un flux
+- Ouvrir un document PDF existant depuis le flux
- Ouvrir un document PDF existant
-
- Définir les propriétés prédéfinies de la boîte de dialogue d'impression
-- Ajouter une table des matières à un PDF existant
-- Ajouter une table des matières à un PDF existant
-- Personnaliser les numéros de page lors de l'ajout de la table des matières
+- Ajouter TOC à un PDF existant
+- Ajouter TOC à un PDF existant
+- Personnaliser les numéros de page lors de l'ajout de TOC
- Définir la date d'expiration du PDF
- Aplatir le PDF remplissable
- Optimiser le document PDF pour le Web
- Réduire la taille du PDF
-- Rétrécir ou compresser toutes les images
+- Réduire ou compresser toutes les images
- Supprimer les objets inutilisés
-- Lier les flux en double
-- Supprimer les flux inutilisés
-- Désintégrer les polices
-- Obtenir les propriétés du visualisateur de documents.
-- Définir les propriétés du visualisateur de documents.
+- Lier les flux dupliqués
+- Suppression des flux inutilisés
+- Dé-embedding des Fonts
+- Obtenir les propriétés du visualiseur de document.
+- Définir les propriétés du visualiseur de document.
- Valider (PDF/A-1a, PDF/A-1b).
-- Supprimer les champs de formulaire
+- Suppression des FormFields
- Déterminer et définir les métadonnées des documents
## Signets
- Ajouter des signets.
-- Ajouter des sous-signets.
+- Ajouter des signets enfants.
- Supprimer des signets.
- Obtenir des signets.
-- Obtenir des sous-signets.
-- Modifier des signets.
+- Obtenir les signets enfants.
+- Modifier les signets.
- Signets développés lors de la visualisation du document.
## Annotations
- Ajouter des annotations.
-- Obtenir des annotations.
-- Supprimer des annotations.
+- Obtenir les annotations.
+- Supprimer les annotations.
## Formulaires
@@ -116,1041 +133,16 @@ Aspose.PDF pour Python prend en charge les versions PDF 1.2, 1.3, 1.4, 1.5, 1.6,
- Modifier des champs.
- Remplir des champs.
- Obtenir les valeurs des champs.
+- Prise en charge de XFA (Formulaires basés sur XML) et AcroForms (Formulaires standard).
-## Tampon et Filigrane
+## Tampon et filigrane
- Ajouter un tampon de texte.
- Ajouter un tampon d'image.
- Ajouter un tampon de page PDF.
+## Ouvrir le document PDF chiffré
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Open encrypted PDF document
-- Chiffrer PDF.
-- Déchiffrer PDF.
-- Modifier le mot de passe.
\ No newline at end of file
+- Chiffrer le PDF.
+- Déchiffrer le PDF.
+- Modifier le mot de passe.
diff --git a/fr/python-net/overview/licensing/_index.md b/fr/python-net/overview/licensing/_index.md
index 8fe7638348..691accffec 100644
--- a/fr/python-net/overview/licensing/_index.md
+++ b/fr/python-net/overview/licensing/_index.md
@@ -1,34 +1,36 @@
---
title: Licence Aspose PDF
-linktitle: Licences et limitations
+linktitle: Licence et limitations
type: docs
weight: 50
url: /fr/python-net/licensing/
-description: Aspose. PDF pour Python invite ses clients à obtenir une licence Classique. Ainsi qu'à utiliser une licence limitée pour mieux explorer le produit.
-lastmod: "2022-12-21"
+description: Aspose.PDF for Python invite ses clients à obtenir une licence Classic, ainsi que d’utiliser une licence limitée pour mieux explorer le produit.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Licence d'Aspose.PDF for Python
+Abstract: L'article aborde les limitations et les options de licence pour Aspose.PDF for Python. Il souligne que la version d'évaluation permet de tester l'intégralité des fonctionnalités, mais ajoute un filigrane aux PDF générés, indiquant "Evaluation Only" ainsi que les informations de droit d'auteur. Pour les utilisateurs souhaitant tester sans ces limitations, une licence temporaire de 30 jours est disponible. L'article explique en outre comment implémenter une licence classic en la chargeant depuis un fichier ou un flux, en recommandant de placer le fichier de licence dans le même répertoire que le fichier Aspose.PDF.dll et de définir la licence à l'aide de la classe `Aspose.Pdf.License`. Des extraits de code sont fournis pour illustrer le processus de licence.
---
## Limitation d'une version d'évaluation
-Nous souhaitons que nos clients testent nos composants de manière exhaustive avant d'acheter, c'est pourquoi la version d'évaluation vous permet de l'utiliser comme vous le feriez normalement.
+Nous voulons que nos clients testent nos composants de manière approfondie avant d'acheter, donc la version d'évaluation vous permet de l'utiliser comme vous le feriez normalement.
-- **PDF créé avec un filigrane d'évaluation.** La version d'évaluation de Aspose.PDF pour Python offre toutes les fonctionnalités du produit, mais toutes les pages des documents PDF générés portent un filigrane avec "Évaluation uniquement. Créé avec Aspose.PDF. Copyright 2002-2020 Aspose Pty Ltd" en haut.
+- **PDF créé avec un filigrane d'évaluation.** La version d'évaluation d'Aspose.PDF pour Python fournit toutes les fonctionnalités du produit, mais toutes les pages des documents PDF générés sont filigranées avec "Evaluation Only. Created with Aspose.PDF. Copyright 2002-2020 Aspose Pty Ltd" en haut.
->Si vous souhaitez tester Aspose.PDF sans les limitations de la version d'évaluation, vous pouvez également demander une Licence Temporaire de 30 jours.
- Veuillez vous référer à [Comment obtenir une licence temporaire ?](https://purchase.aspose.com/temporary-license)
+>Si vous souhaitez tester Aspose.PDF sans les limitations de la version d'évaluation, vous pouvez également demander une licence temporaire de 30 jours. Veuillez vous référer à [Comment obtenir une licence temporaire ?](https://purchase.aspose.com/temporary-license)
## Licence classique
-La licence peut être chargée à partir d'un fichier ou d'un objet flux. La manière la plus simple de configurer une licence est de placer le fichier de licence dans le même dossier que le fichier Aspose.PDF.dll et de spécifier le nom du fichier sans chemin, comme indiqué dans l'exemple ci-dessous.
+La licence peut être chargée à partir d'un fichier ou d'un objet flux. La façon la plus simple de définir une licence est de placer le fichier de licence dans le même dossier que le fichier Aspose.PDF.dll et de spécifier le nom du fichier sans chemin, comme le montre l'exemple ci-dessous.
-Si vous utilisez un autre composant Aspose pour Python avec Aspose.PDF pour Python, veuillez spécifier l'espace de noms pour License comme la [classe Aspose.Pdf.License]().
+Si vous utilisez tout autre composant Aspose pour Python avec Aspose.PDF pour Python, veuillez spécifier l'espace de noms pour License comme [Aspose.Pdf.License classe]().
```python
license_file = LICENSE_FILE
license = ap.License()
license.set_license(license_file)
-```
\ No newline at end of file
+```
diff --git a/fr/python-net/overview/supported-file-formats/_index.md b/fr/python-net/overview/supported-file-formats/_index.md
index 3eb828da5d..ca9100470c 100644
--- a/fr/python-net/overview/supported-file-formats/_index.md
+++ b/fr/python-net/overview/supported-file-formats/_index.md
@@ -1,46 +1,51 @@
---
-title: Formats de Fichiers Pris en Charge
-linktitle: Formats de Fichiers Pris en Charge
+title: Formats de fichiers pris en charge
+linktitle: Formats de fichiers pris en charge
type: docs
weight: 10
url: /fr/python-net/supported-file-formats/
-description: Cette page montre quels formats de fichiers Aspose.PDF pour Python via .NET peut charger et enregistrer.
-lastmod: "2022-12-22"
+description: Cette page montre quels formats de fichiers Aspose.PDF for Python via .NET peut charger et enregistrer.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Charger et enregistrer les formats de fichiers par Aspose.PDF for Python
+Abstract: Cet article fournit un tableau complet détaillant les formats de fichiers qu'Aspose.PDF for Python peut gérer. Il décrit les capacités de la bibliothèque à charger et enregistrer divers types de documents, offrant un aperçu de sa polyvalence pour la gestion de différents formats de fichiers. Les formats couverts comprennent des types bien connus tels que PDF, EPUB, HTML et XML, tous pouvant être à la fois chargés et enregistrés par la bibliothèque. Il prend également en charge les formats d'image tels que JPEG, PNG et TIFF pour les deux opérations. Toutefois, certains formats comme CGM, MHT, PCL, PS, XSLFO et MD ne sont disponibles que pour le chargement, tandis que d’autres comme XLS, XLSX, PPTX, DOC, DOCX et MobiXML ne sont disponibles que pour l’enregistrement. Ce tableau sert de guide pratique aux utilisateurs souhaitant comprendre la compatibilité des formats d’Aspose.PDF for Python, en soulignant à la fois ses points forts et ses limites en matière de prise en charge des formats de documents et d’images.
---
-Le tableau suivant indique les formats de fichiers que Aspose.PDF Python peut charger et enregistrer.
+Le tableau suivant indique les formats de fichiers qu'Aspose.PDF Python peut charger et enregistrer.
|**Format**|**Description**|**Charger**|**Enregistrer**|**Remarques**|
| :- | :- | :- | :- | :- |
-|[PDF](https://docs.fileformat.com/pdf/)|Format de Document Portable|{{< emoticons/tick >}}|{{< emoticons/tick >}} | |
-|[CGM](https://docs.fileformat.com/page-description-language/cgm/)|Metafile de Graphiques Informatiques pour graphiques vectoriels 2D|{{< emoticons/tick >}}| | |
-|[EPUB](https://docs.fileformat.com/ebook/epub/)|Format de fichier Ebook|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[PDF](https://docs.fileformat.com/pdf/)|Format de document portable|{{< emoticons/tick >}}|{{< emoticons/tick >}} | |
+|[CGM](https://docs.fileformat.com/page-description-language/cgm/)|Metafile de graphiques informatiques pour les graphiques vectoriels 2D|{{< emoticons/tick >}}| | |
+|[EPUB](https://docs.fileformat.com/ebook/epub/)|Format de fichier eBook|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[HTML](https://docs.fileformat.com/web/html/)|Format HTML|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-
-|[TeX](https://docs.fileformat.com/page-description-language/tex/)|Format de fichier de composition LaTex|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[TeX](https://docs.fileformat.com/page-description-language/tex/)|format de composition LaTex|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[MHT](https://docs.fileformat.com/web/mhtml/)|Document MHTML|{{< emoticons/tick >}}| | |
-|[PCL](https://docs.fileformat.com/page-description-language/pcl/)|Fichiers de Langage de Contrôle d'Imprimante|{{< emoticons/tick >}}| | |
-|[PS](https://docs.fileformat.com/page-description-language/ps/)|Fichiers Postscript|{{< emoticons/tick >}}| | |
-|[SVG](https://docs.fileformat.com/page-description-language/svg/)|Graphiques Vectoriels Scalables (Un format d'image vectorielle basé sur XML)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[PCL](https://docs.fileformat.com/page-description-language/pcl/)|Fichiers de langage de contrôle d'imprimante|{{< emoticons/tick >}}| | |
+|[PS](https://docs.fileformat.com/page-description-language/ps/)|Fichiers PostScript|{{< emoticons/tick >}}| | |
+|[SVG](https://docs.fileformat.com/page-description-language/svg/)|Graphiques vectoriels évolutifs (un format d'image vectorielle basé sur XML)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[XML](https://docs.fileformat.com/web/xml/)|Format XML|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[XPS](https://docs.fileformat.com/page-description-language/xps/)|Documents XPS|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[XSLFO](https://docs.fileformat.com/page-description-language/xslfo/)|XSL-FO fait partie du fichier XSL utilisé pour la transformation et la mise en forme des données XML|{{< emoticons/tick >}}| | |
-
+|[XSLFO](https://docs.fileformat.com/page-description-language/xslfo/)|XSL-FO est une partie du fichier XSL qui est utilisé pour la transformation et le formatage des données XML|{{< emoticons/tick >}}| | |
|[MD](https://docs.fileformat.com/word-processing/md/)|Format Markdown|{{< emoticons/tick >}}| | |
-|[XLS](https://docs.fileformat.com/spreadsheet/xls/)|Enregistre le document au format Microsoft Excel SpreadSheet| |{{< emoticons/tick >}}| |
+|[XLS](https://docs.fileformat.com/spreadsheet/xls/)|Enregistre le document dans la feuille de calcul Microsoft Excel| |{{< emoticons/tick >}}| |
|[XLSX](https://docs.fileformat.com/spreadsheet/xlsx/)|Enregistre le document au format Microsoft Excel 2007| |{{< emoticons/tick >}}| |
|[PPTX](https://docs.fileformat.com/presentation/pptx/)|Enregistre le document au format Microsoft PowerPoint Presentations| |{{< emoticons/tick >}}| |
+|[XLSM](https://docs.fileformat.com/spreadsheet/xlsm/)|Enregistre le document au format XLSM qui est un type de fichiers de feuille de calcul prenant en charge les macros.||{{< emoticons/tick >}} | |
|[DOC](https://docs.fileformat.com/word-processing/doc/)|Enregistre le document au format Microsoft Word| |{{< emoticons/tick >}}| |
|[DOCX](https://docs.fileformat.com/word-processing/docx/)|Enregistre le document au format Microsoft Word| |{{< emoticons/tick >}}| |
-|[MobiXML](https://docs.fileformat.com/ebook/mobi/)|Enregistre le document au format standard eBook MobiXML| |{{< emoticons/tick >}}| |
+|[OFD](https://en.wikipedia.org/wiki/OFD)|Le format OFD fait référence à “Open Fixed-layout Document”, établi comme norme nationale chinoise pour le stockage électronique de fichiers, utilisé comme alternative au format PDF populaire.|{{< emoticons/tick >}}| | |
+|[DJVU](https://docs.fileformat.com/image/djvu/)|DjVu est un format de fichier graphique destiné aux documents numérisés et aux livres, développé par les laboratoires AT&T.|{{< emoticons/tick >}}| | |
+|[CDR](https://docs.fileformat.com/image/cdr/)|Un fichier CDR est un fichier image de dessin vectoriel créé nativement avec CorelDRAW|{{< emoticons/tick >}}| | |
+|[MobiXML](https://docs.fileformat.com/ebook/mobi/)|Enregistre le document au format eBook MobiXML Standard| |{{< emoticons/tick >}}| |
|[JPEG](https://docs.fileformat.com/image/jpeg/)|Enregistre le document au format JPEG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-
|[EMF](https://docs.fileformat.com/image/emf/)|Format de métafichier amélioré (EMF)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
- |[PNG](https://docs.fileformat.com/image/png/)|Enregistre le document au format PNG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[PNG](https://docs.fileformat.com/image/png/)|Enregistre le document au format PNG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[BMP](https://docs.fileformat.com/image/bmp/)|Enregistre le document au format BMP|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[GIF](https://docs.fileformat.com/image/gif/)|Format d'échange graphique| |{{< emoticons/tick >}}| |
-|[TIFF](https://docs.fileformat.com/image/tiff/)|Enregistre le document en tant qu'image TIFF simple ou multipage|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[Text](https://docs.fileformat.com/word-processing/txt/)|Enregistre le document au format texte|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
\ No newline at end of file
+|[GIF](https://docs.fileformat.com/image/gif/)|Format d'échange graphique| |{{< emoticons/tick >}}| |
+|[TIFF](https://docs.fileformat.com/image/tiff/)|Enregistre le document en tant qu'image TIFF simple ou multi‑pages|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[Text](https://docs.fileformat.com/word-processing/txt/)|Enregistrer le document au format texte|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+
diff --git a/fr/python-net/overview/system-requirements/_index.md b/fr/python-net/overview/system-requirements/_index.md
index 70378cc366..fa4e911c8a 100644
--- a/fr/python-net/overview/system-requirements/_index.md
+++ b/fr/python-net/overview/system-requirements/_index.md
@@ -1,19 +1,22 @@
---
-title: Exigences du système
-linktitle: Exigences du système
+title: Exigences système
+linktitle: Exigences système
type: docs
weight: 30
url: /fr/python-net/system-requirements/
-description: Cette section liste les systèmes d'exploitation pris en charge dont un développeur a besoin pour travailler avec succès avec Aspose.PDF pour Python.
-lastmod: "2022-12-22"
+description: Cette section répertorie les systèmes d’exploitation pris en charge dont un développeur a besoin pour travailler avec succès avec Aspose.PDF for Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Systèmes d’exploitation pris en charge par Aspose.PDF for Python via .NET
+Abstract: Aspose.PDF for Python via .NET est une API de traitement PDF conçue pour les développeurs afin de gérer des documents PDF sans avoir besoin de Microsoft Office ou d’Adobe Acrobat Automation. Elle prend en charge le développement d’applications Python 32 bits et 64 bits sur divers systèmes d’exploitation, notamment Windows et Linux, où Python 3.5 ou une version ultérieure est installé. L’API est compatible avec plusieurs versions de Windows, de Windows XP à Windows 11, ainsi qu’avec les principales distributions Linux telles qu’Ubuntu, OpenSUSE et CentOS. Pour les systèmes Linux, les exigences spécifiques incluent les bibliothèques d’exécution GCC‑6, les dépendances du .NET Core Runtime (sans nécessiter le runtime lui‑même), et la version pymalloc de Python pour les versions 3.5‑3.7. De plus, une bibliothèque partagée libpython est nécessaire, ce qui peut nécessiter des ajustements de configuration pour la reconnaissance correcte du chemin de la bibliothèque.
---
-## Aperçu
+## Vue d’ensemble
-Aspose.PDF pour Python via .NET, une API de traitement PDF qui permet aux développeurs de travailler avec des documents PDF sans avoir besoin de Microsoft Office® ou d'Adobe Acrobat Automation. Aspose.PDF pour Python peut être utilisé pour développer des applications Python 32 bits et 64 bits pour différents systèmes d'exploitation (tels que Windows et Linux) où Python 3.5 ou ultérieur est installé.
+Aspose.PDF for Python via .NET, API de traitement PDF qui permet aux développeurs de travailler avec des documents PDF sans avoir besoin de Microsoft Office® ou d'automatisation Adobe Acrobat. Aspose.PDF for Python peut être utilisé pour développer des applications Python 32 bits et 64 bits pour différents systèmes d'exploitation (tels que Windows et Linux) où Python 3.5 ou version ultérieure est installé.
## Système d'exploitation pris en charge
@@ -22,9 +25,9 @@ Aspose.PDF pour Python via .NET, une API de traitement PDF qui permet aux dével
- Windows 2003 Server
- Windows 2008 Server
- Windows 2012 Server
-- Windows 2012 R2 Server
-- Windows 2016 Server
-- Windows 2019 Server
+- Windows 2012 R2 Serveur
+- Windows 2016 Serveur
+- Windows 2019 Serveur
- Windows XP
- Windows Vista
- Windows 7
@@ -39,14 +42,14 @@ Aspose.PDF pour Python via .NET, une API de traitement PDF qui permet aux dével
- CentOS
- et d'autres
-
-## Exigences système pour le Linux cible
+## Exigences système pour Linux cible
- Bibliothèques d'exécution GCC-6 (ou ultérieures).
-- Dépendances de l'environnement d'exécution .NET Core. L'installation de l'environnement d'exécution .NET Core lui-même n'est PAS requise.
+- Dépendances du runtime .NET Core. L'installation du runtime .NET Core lui‑même n'est PAS requise.
+
+- Pour Python 3.5-3.7 : la version pymalloc de Python est nécessaire. L'option de compilation --with-pymalloc de Python est activée par défaut. En général, la version pymalloc de Python est indiquée par le suffixe m dans le nom de fichier.
+
+- Bibliothèque partagée libpython pour Python. L'option de construction --enable-shared de Python est désactivée par défaut, certaines distributions Python ne contiennent pas la bibliothèque partagée libpython. Sur certaines plateformes Linux, la bibliothèque partagée libpython peut être installée à l'aide du gestionnaire de paquets, par exemple : sudo apt-get install libpython3.7. Le problème habituel est que la bibliothèque libpython est installée dans un emplacement différent de l'emplacement standard du système pour les bibliothèques partagées. Le problème peut être résolu en utilisant les options de construction de Python pour définir des chemins de bibliothèque alternatifs lors de la compilation de Python, ou en créant un lien symbolique vers le fichier de bibliothèque libpython dans l'emplacement standard du système pour les bibliothèques partagées. Typiquement, le nom du fichier de la bibliothèque partagée libpython est libpythonX.Ym.so.1.0 pour Python 3.5-3.7, ou libpythonX.Y.so.1.0 pour Python 3.8 ou ultérieur (par exemple : libpython3.7m.so.1.0, libpython3.9.so.1.0).
-- Pour Python 3.5-3.7 : La version pymalloc de Python est nécessaire. L'option de construction --with-pymalloc de Python est activée par défaut. Typiquement, la version pymalloc de Python est marquée avec le suffixe m dans le nom de fichier.
-- Bibliothèque partagée libpython de Python.
- L'option de construction --enable-shared de Python est désactivée par défaut, certaines distributions de Python ne contiennent pas la bibliothèque partagée libpython. Pour certaines plateformes Linux, la bibliothèque partagée libpython peut être installée à l'aide du gestionnaire de paquets, par exemple : sudo apt-get install libpython3.7. Le problème courant est que la bibliothèque libpython est installée à un emplacement différent de l'emplacement système standard pour les bibliothèques partagées. Le problème peut être résolu en utilisant les options de construction de Python pour définir des chemins de bibliothèque alternatifs lors de la compilation de Python, ou en créant un lien symbolique vers le fichier de la bibliothèque libpython dans l'emplacement système standard pour les bibliothèques partagées. Typiquement, le nom de fichier de la bibliothèque partagée libpython est libpythonX.Ym.so.1.0 pour Python 3.5-3.7, ou libpythonX.Y.so.1.0 pour Python 3.8 ou ultérieur (par exemple : libpython3.7m.so.1.0, libpython3.9.so.1.0).
\ No newline at end of file
diff --git a/fr/python-net/overview/technical-support/_index.md b/fr/python-net/overview/technical-support/_index.md
index 85bc1f337d..408995e4bd 100644
--- a/fr/python-net/overview/technical-support/_index.md
+++ b/fr/python-net/overview/technical-support/_index.md
@@ -1,30 +1,35 @@
---
-title: Aspose.PDF pour Python Support
-linktitle: Support Technique
+title: Support Aspose.PDF pour Python
+linktitle: Support technique
type: docs
weight: 60
url: /fr/python-net/technical-support/
-description: Cette page donne des recommandations pour résoudre rapidement et efficacement vos tâches en utilisant Aspose.PDF pour Python.
-lastmod: "2021-06-05"
+description: Cette page fournit des recommandations rapides et de qualité pour résoudre vos tâches en utilisant Aspose.PDF pour Python.
+lastmod: "2026-05-22"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Support technique d'Aspose.PDF pour Python
+Abstract: Aspose.PDF fournit un support technique gratuit via ses différents canaux, la source principale étant les Aspose.Forums, en particulier la section du forum Aspose.PDF où les utilisateurs peuvent poser des questions et recevoir des réponses rapides. Il est important de noter qu'Aspose n'offre pas de support technique par téléphone, les appels téléphoniques étant limités aux demandes de vente et d'achat. En raison des différences de fuseaux horaires éventuelles, les temps de réponse peuvent varier. Pour garantir une résolution efficace des problèmes, il est recommandé aux utilisateurs de vérifier d'abord qu'ils utilisent la dernière version d'Aspose.PDF en consultant les [Aspose.PDF for Python Downloads](https://pypi.org/project/aspose-pdf/). De plus, les utilisateurs devraient parcourir les discussions existantes sur le forum, la documentation et les références API pour voir si leur problème a déjà été traité. Lors de la publication d'une question, il est conseillé d'inclure le document original et tout extrait de code problématique, qui peuvent être compressés en zip pour plus de commodité. Tous les fichiers téléchargés ne sont accessibles qu'à l'utilisateur et aux développeurs d'Aspose, garantissant confidentialité et sécurité.
---
-Aspose.PDF vous permet d'utiliser un support technique gratuit pour tous ses produits. Si vous avez des questions sur Aspose.PDF, consultez l'article suivant :
+Aspose.PDF vous permet d'utiliser le support technique gratuit pour tous ses produits. Si vous avez des questions sur Aspose.PDF, consultez l'article suivant :
-- La source de support la plus populaire est [Aspose.Forums](https://forum.aspose.com/). Dans la section [forum Aspose.PDF](https://forum.aspose.com/c/pdf/10), vous pouvez poser votre question et obtenir une réponse dès que possible.
+- La source de support la plus populaire est [Aspose.Forums](https://forum.aspose.com/). Dans le [forum Aspose.PDF](https://forum.aspose.com/c/pdf/10) section, vous pouvez poser votre question et obtenir une réponse le plus rapidement possible.
- Vous devez savoir qu'Aspose ne fournit pas de support technique par téléphone. Vous pouvez appeler uniquement pour des questions de vente et d'achat.
-- Veuillez vous rappeler que nous avons des différences de fuseaux horaires, cela peut affecter la rapidité des réponses.
+- Veuillez vous rappeler que nous avons des différences de fuseau horaire, cela peut affecter la rapidité de nos réponses envers vous.
-Si vous avez besoin d'aide pour un problème avec Aspose.PDF, suivez les recommandations suivantes pour vous assurer qu'il est résolu de la manière la plus efficace :
+Si vous avez besoin d'aide pour un problème avec Aspose.PDF, suivez les recommandations suivantes pour vous assurer qu'il soit résolu de la manière la plus efficace :
-- Tout d'abord, vérifiez que vous utilisez la dernière version d'Aspose.PDF avant de signaler le problème, consultez [Aspose.PDF pour les téléchargements Python](https://pypi.org/project/aspose-pdf/) pour découvrir la dernière version.
+- Tout d'abord, vérifiez que vous utilisez la dernière version d'Aspose.PDF avant de signaler le problème, voir [Téléchargements Aspose.PDF for Python](https://pypi.org/project/aspose-pdf/) pour connaître la dernière version.
-- Il est possible que la solution à votre problème ait déjà été discutée et ait une solution, pour cela, étudiez le forum et la documentation, vérifiez la Référence API avant de signaler le problème.
+- Il se peut que la solution à votre problème ait déjà été discutée et qu'une réponse existe ; pour cela, étudiez le forum et la documentation, consultez la référence API avant de signaler le problème.
- Lorsque vous formulez votre question, veuillez inclure le document original et éventuellement un fragment de votre code qui cause le problème. Vous pouvez compresser ces fichiers en un seul document s'il y en a plusieurs.
-- Ne vous inquiétez pas, seuls vous et les développeurs d'Aspose avez accès aux fichiers confidentiels.
\ No newline at end of file
+- Ne vous inquiétez pas, seuls vous et les développeurs d'Aspose ont accès aux fichiers temporaires.
+
+
diff --git a/fr/python-net/parsing/_index.md b/fr/python-net/parsing/_index.md
index da7a20bed9..91c07a12ee 100644
--- a/fr/python-net/parsing/_index.md
+++ b/fr/python-net/parsing/_index.md
@@ -1,14 +1,25 @@
---
-title: Analyser les documents PDF
-linktitle: Analyser les documents PDF
+title: Analyser des documents PDF
+linktitle: Analyser des documents PDF
type: docs
weight: 80
url: /fr/python-net/parsing/
-description: Voulez-vous analyser des documents PDF ? Découvrez diverses méthodes d'extraction de données PDF avec Aspose.PDF pour Python via .NET.
-lastmod: "2021-06-05"
+description: Voulez-vous analyser des documents PDF ? Découvrez diverses méthodes d'extraction de données PDF avec Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Analyser des fichiers PDF avec Aspose.PDF for Python
+Abstract: L'article Parse PDF explore les différentes méthodologies d'extraction de divers types d'informations à partir de fichiers PDF. Il met en évidence plusieurs opérations clés et fournit des guides.
---
-**Analyser les documents PDF** est un terme lié à l'extraction de divers types d'informations à partir d'un fichier PDF. Cette section couvre comment :
\ No newline at end of file
+**Parse PDF** documents est un terme lié à l'extraction de divers types d'informations à partir d'un fichier PDF. Cette section couvre comment :
+
+- [Extraire du texte d'un PDF](/pdf/fr/python-net/extract-text-from-pdf/). L'analyse ou l'extraction de texte est l'opération la plus populaire avec les PDF prêts à l'emploi. Vous apprendrez l'analyse de texte à partir d'un document complet, d'une page particulière ou d'une région spécifique d'une page.
+- [Extraire des images du PDF](/pdf/fr/python-net/extract-images-from-the-pdf-file/). L'extraction d'images fait la même chose pour les images que l'opération ci-dessus pour le texte.
+- [Extraire les polices du PDF](/pdf/fr/python-net/extract-fonts-from-pdf/). L'extraction de polices est une opération spécifique avec les polices dans les PDF.
+- [Extraire les données du formulaire](/pdf/fr/python-net/extract-data-from-acroform/). Si vous avez un tas de documents PDF avec des formulaires, il vous faut probablement extraire les données de ces formulaires. Cet article vous aidera à comprendre comment extraire les données AcroForms avec Aspose.PDF for Python via .NET.
+- [Extraire des données d'un tableau](/pdf/fr/python-net/extract-data-from-table-in-pdf/). Obtenir les données du tableau dans le document PDF.
+- [Extraire les données vectorielles du PDF](/pdf/fr/python-net/extract-vector-data-from-pdf/). Vous pouvez obtenir les données vectorielles (chemin, polygone, polyligne), telles que la position, la couleur, l'épaisseur de ligne, etc.
+
diff --git a/fr/python-net/parsing/extract-data-from-acroform/_index.md b/fr/python-net/parsing/extract-data-from-acroform/_index.md
new file mode 100644
index 0000000000..3bf09ed4a3
--- /dev/null
+++ b/fr/python-net/parsing/extract-data-from-acroform/_index.md
@@ -0,0 +1,197 @@
+---
+title: Extraire des données d'AcroForm avec Python
+linktitle: Extraire des données d'AcroForm
+type: docs
+weight: 50
+url: /fr/python-net/extract-data-from-acroform/
+description: Aspose.PDF facilite l'extraction des données de champs de formulaire à partir de fichiers PDF. Apprenez comment extraire les données des AcroForms et les enregistrer au format JSON, XML ou FDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment extraire des données d'AcroForm via Python
+Abstract: L'article fournit un guide complet sur l'utilisation d'Aspose.PDF for Python pour gérer les champs de formulaire dans les documents PDF. Il détaille diverses méthodes d'extraction, de manipulation et d'exportation des données de formulaire à partir de PDFs. L'article commence par démontrer comment extraire les valeurs des champs de formulaire et les stocker dans un dictionnaire, puis les sortir au format JSON. Il illustre également l'exportation directe des données de formulaire vers des fichiers JSON, améliorant les capacités de sérialisation des données. De plus, l'article couvre l'exportation des données de formulaire vers d'autres formats tels que XML, FDF (Forms Data Format) et XFDF, qui sont utiles pour l'échange de données et le stockage structuré. Chaque section comprend des extraits de code Python pour faciliter la compréhension et la mise en œuvre. Dans l'ensemble, l'article constitue une ressource pratique pour les développeurs souhaitant intégrer la manipulation de formulaires PDF dans leurs applications Python.
+---
+
+## Extraire les champs de formulaire du document PDF
+
+[Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) de `aspose.pdf.facades` namespace fournit un moyen simple de lire les données des champs AcroForm sans ouvrir le modèle complet d’objet du document. Itérer sur `form.field_names` pour obtenir chaque nom de champ présent dans le formulaire, puis appeler `form.get_field(name)` pour récupérer sa valeur actuelle.
+
+1. Construire un `Form` objet en passant le chemin du fichier d'entrée.
+1. Itérer sur `form.field_names` pour énumérer tous les noms de champs.
+1. Appeler `form.get_field(name)` pour chaque nom et stockez le résultat dans un dictionnaire.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+ import json
+ from aspose.pycore import cast, is_assignable
+
+ path_infile = self.dataDir + infile
+ form = apdf.facades.Form(path_infile)
+
+ form_values = {}
+ # Get values from all fields
+ for formField in form.field_names:
+ # Analyze names and values if needed
+ form_values[formField] = form.get_field(formField)
+
+ print(form_values)
+```
+
+## Récupérer la valeur du champ de formulaire par titre
+
+Lorsque vous connaissez le nom exact du champ (title) défini dans le formulaire PDF, vous pouvez récupérer sa valeur directement avec `form.get_field(name)` sans parcourir l'intégralité de la collection de champs. C’est l'approche la plus rapide lorsque seuls des champs spécifiques sont nécessaires.
+
+1. Construire un [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) objet contenant le chemin du fichier d'entrée.
+1. Appeler `form.get_field("FieldName")` en utilisant le titre exact du champ tel qu'il apparaît dans le PDF.
+1. Utilisez la valeur de chaîne retournée selon les besoins dans votre application.
+
+```python
+
+ import aspose.pdf as apdf
+
+ form = apdf.facades.Form(path_infile)
+
+ # Retrieve a single field value by its name
+ value = form.get_field("FirstName")
+ print(value)
+```
+
+## Extraire les champs de formulaire du document PDF vers JSON
+
+Il existe deux façons d'exporter les données AcroForm en JSON. La première utilise la fonction intégrée `export_json` méthode sur [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form), qui sérialise toutes les données de champ directement vers un flux de fichier en un seul appel.
+
+1. Construire un `Form` objet contenant le chemin du fichier d'entrée.
+1. Ouvrez le fichier de sortie en tant que flux binaire en utilisant `FileIO`.
+1. Appeler `form.export_json(stream, True)` écrire la sortie JSON.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ form = apdf.facades.Form(path_infile)
+ with FileIO(path_outfile, "w") as json_file:
+ form.export_json(json_file, True)
+```
+
+La deuxième approche construit un dictionnaire Python à partir de `field_names` et `get_field`, puis le sérialise avec `json.dumps`. Utilisez ceci lorsque vous devez transformer ou filtrer les données avant de les écrire.
+
+1. Itérer sur `form.field_names` et remplissez un dictionnaire avec les valeurs des champs.
+1. Sérialiser le dictionnaire avec `json.dumps(form_data, indent=4)`.
+1. Écrivez la chaîne JSON résultante dans le fichier de sortie.
+
+```python
+
+ import aspose.pdf as apdf
+ from os import path
+ import json
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ form = apdf.facades.Form(path_infile)
+ form_data = {}
+ # Get values from all fields
+ for formField in form.field_names:
+ form_data[formField] = form.get_field(formField)
+
+ # Serialize to JSON
+ json_string = json.dumps(form_data, indent=4)
+ print(json_string)
+
+ with open(path_outfile, "w", encoding="utf-8") as json_file:
+ json_file.write(json_string)
+```
+
+## Extraire des données au format XML à partir d'un fichier PDF
+
+L'exportation XML est utile pour intégrer les données de formulaire PDF aux systèmes qui consomment des flux XML structurés ou des schémas. Le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) classe fournit `export_xml` pour gérer la conversion en une seule étape.
+
+1. Créer un `Form` instance et lier le PDF avec `form.bind_pdf(path)`.
+1. Ouvrez le fichier de sortie en tant que flux binaire.
+1. Appeler `form.export_xml(stream)` pour écrire toutes les données des champs au format XML.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ # Create Form object
+ form = apdf.facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(path_infile)
+
+ # Export data to XML file
+ with FileIO(path_outfile, "w") as f:
+ form.export_xml(f)
+```
+
+## Exporter les données vers le format FDF à partir d'un fichier PDF
+
+FDF (Forms Data Format) est le format d'échange standard pour les données AcroForm et est largement pris en charge par les visionneuses PDF et les outils de traitement. Utilisez `export_fdf` sur le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) classe pour produire un fichier FDF autonome qui peut être importé de nouveau dans le PDF original ou dans un autre formulaire compatible.
+
+1. Créer un `Form` instanciez et liez le PDF source avec `form.bind_pdf(path)`.
+1. Ouvrez le fichier de sortie en tant que flux binaire.
+1. Appeler `form.export_fdf(stream)` pour écrire les données FDF.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ # Create Form object
+ form = apdf.facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(path_infile)
+
+ # Export form data to an FDF file
+ with FileIO(path_outfile, "w") as f:
+ form.export_fdf(f)
+```
+
+## Exporter les données vers XFDF à partir d'un fichier PDF
+
+XFDF (XML Forms Data Format) est le successeur basé sur XML du FDF et est mieux adapté à une utilisation dans les services Web et les pipelines de données modernes. Comme le FDF, un fichier XFDF peut être importé de nouveau dans un formulaire PDF compatible. Utilisez `export_xfdf` sur le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) classe pour générer la sortie.
+
+1. Créer un `Form` instanciez et liez le PDF source avec `form.bind_pdf(path)`.
+1. Ouvrez le fichier de sortie en tant que flux binaire.
+1. Appeler `form.export_xfdf(stream)` écrire les données XFDF.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ # Create Form object
+ form = apdf.facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(path_infile)
+
+ # Export form data to an XFDF file
+ with FileIO(path_outfile, "w") as f:
+ form.export_xfdf(f)
+```
diff --git a/fr/python-net/parsing/extract-data-from-tables/_index.md b/fr/python-net/parsing/extract-data-from-tables/_index.md
new file mode 100644
index 0000000000..1e0acd3f26
--- /dev/null
+++ b/fr/python-net/parsing/extract-data-from-tables/_index.md
@@ -0,0 +1,139 @@
+---
+title: Extraire des données d'un tableau dans un PDF avec Python
+linktitle: Extraire des données d'un tableau
+type: docs
+weight: 40
+url: /fr/python-net/extract-data-from-table-in-pdf/
+description: Apprenez comment extraire les données d'un tableau à partir de fichiers PDF avec Aspose.PDF for Python et exporter les résultats pour un traitement ultérieur.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment extraire des données d'un tableau dans un PDF via Python
+Abstract: Cet article explique comment extraire et traiter les données de tableau à partir de documents PDF avec Aspose.PDF for Python. Il montre comment analyser chaque page avec TableAbsorber, lire les lignes et les cellules des tableaux détectés, limiter l'extraction à une région annotée spécifique, et exporter le contenu PDF au format CSV pour une utilisation dans des outils de tableur et un traitement en aval.
+---
+
+## Extraire des tables d'un PDF de manière programmatique
+
+Utiliser [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) pour détecter les tableaux sur chaque page d'un [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Après avoir visité une page, parcourir `table_list`, puis parcourez chaque ligne et chaque cellule pour reconstruire le contenu du tableau sous un format de texte lisible.
+
+1. Ouvrez le PDF en tant que `Document`.
+1. Parcourir les pages de `document.pages`.
+1. Créer un `TableAbsorber` pour chaque page et appeler `visit(page)`.
+1. Parcourir les tables, les lignes et les cellules détectées.
+1. Lire les fragments de texte de chaque cellule et assembler la sortie de ligne extraite.
+
+```python
+import aspose.pdf as apdf
+from os import path
+
+path_infile = path.join(self.dataDir, infile)
+
+# Open PDF document
+document = apdf.Document(path_infile)
+
+# Iterate through each page in the document
+for page in document.pages:
+ absorber = apdf.text.TableAbsorber()
+ absorber.visit(page)
+
+ for table in absorber.table_list:
+ print("Table")
+ for row in table.row_list:
+ row_text = []
+ for cell in row.cell_list:
+ cell_text = []
+ for fragment in cell.text_fragments:
+ cell_text.append("".join(seg.text for seg in fragment.segments))
+ row_text.append("|".join(cell_text))
+ print("|".join(row_text))
+```
+
+## Extraire le tableau dans une zone spécifique de la page PDF
+
+Si vous devez extraire uniquement les tableaux situés à l'intérieur d'une région marquée, combinez [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) avec un [SquareAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squareannotation/). Dans cet exemple, le rectangle d'annotation est utilisé comme limite, et seules les tables entièrement contenues dans cette région sont traitées.
+
+1. Ouvrez le PDF en tant que `Document`.
+1. Sélectionnez la page cible.
+1. Trouvez l'annotation carrée qui marque la région d'intérêt.
+1. Créer un `TableAbsorber` et visitez la page.
+1. Comparez chaque rectangle de table détecté avec le rectangle d'annotation.
+1. Traitez uniquement les tables qui se trouvent entièrement à l'intérieur de la zone marquée.
+
+```python
+import aspose.pdf as apdf
+from os import path
+
+# The path to the documents directory
+path_infile = path.join(self.dataDir, infile)
+
+# Open PDF document
+document = apdf.Document(path_infile)
+
+# Get the first page (index starts from 1 in Aspose.PDF)
+page = document.pages[1]
+
+# Find the first square annotation
+square_annotation = next(
+ (
+ ann
+ for ann in page.annotations
+ if ann.annotation_type == apdf.annotations.AnnotationType.SQUARE
+ ),
+ None,
+)
+
+if square_annotation is None:
+ print("No square annotation found.")
+ return
+
+# Initialize the TableAbsorber
+absorber = apdf.text.TableAbsorber()
+absorber.visit(page)
+
+# Iterate through tables on the page
+for table in absorber.table_list:
+ table_rect = table.rectangle
+ annotation_rect = square_annotation.rect
+
+ # Check if the table is inside the annotation region
+ is_in_region = (
+ annotation_rect.llx < table_rect.llx
+ and annotation_rect.lly < table_rect.lly
+ and annotation_rect.urx > table_rect.urx
+ and annotation_rect.ury > table_rect.ury
+ )
+
+ if is_in_region:
+ for row in table.row_list:
+ row_text = []
+ for cell in row.cell_list:
+ cell_text = []
+ for fragment in cell.text_fragments:
+ cell_text.append("".join(seg.text for seg in fragment.segments))
+ row_text.append("|".join(cell_text))
+ print("|".join(row_text))
+```
+
+## Exporter les données du tableau du PDF en CSV
+
+Lorsque vous avez besoin des données extraites dans un format convivial pour les feuilles de calcul, enregistrez le PDF en utilisant [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) et définissez le format de sortie sur CSV. Le fichier résultant peut être ouvert dans Excel, Google Sheets ou importé dans des flux de travail analytiques.
+
+1. Ouvrez le PDF source en tant que [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Créer un `ExcelSaveOptions` instance.
+1. Définir `excel_save.format` à `ExcelSaveOptions.ExcelFormat.CSV`.
+1. Enregistrez le document vers le chemin CSV cible.
+
+```python
+import aspose.pdf as apdf
+from os import path
+
+path_infile = path.join(self.dataDir, infile)
+path_outfile = path.join(self.dataDir, outfile)
+
+document = apdf.Document(path_infile)
+excel_save = apdf.ExcelSaveOptions()
+excel_save.format = apdf.ExcelSaveOptions.ExcelFormat.CSV
+document.save(path_outfile, excel_save)
+```
diff --git a/fr/python-net/parsing/extract-fonts-from-pdf/_index.md b/fr/python-net/parsing/extract-fonts-from-pdf/_index.md
new file mode 100644
index 0000000000..2e871155c3
--- /dev/null
+++ b/fr/python-net/parsing/extract-fonts-from-pdf/_index.md
@@ -0,0 +1,37 @@
+---
+title: Extraire les polices du PDF via Python
+linktitle: Extraire les polices du PDF
+type: docs
+weight: 30
+url: /fr/python-net/extract-fonts-from-pdf/
+description: Utilisez la bibliothèque Aspose.PDF for Python pour extraire toutes les polices intégrées de votre document PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment extraire les polices du PDF en utilisant Python
+Abstract: Cet article explique comment examiner les polices utilisées dans un document PDF avec Aspose.PDF for Python. Il montre comment ouvrir un PDF avec la classe Document, appeler font_utilities.get_all_fonts() pour récupérer les objets de police disponibles, et parcourir les résultats afin de lire les noms des polices pour l'analyse, l'audit ou les flux de travail de traitement de documents.
+---
+
+Utiliser [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) pour ouvrir le PDF et appeler `font_utilities.get_all_fonts()` pour récupérer tout disponible [Font](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/font/) objets référencés par le document. Ceci est utile lors de l'audit des polices intégrées, de la vérification de la disponibilité des polices avant la conversion, ou de l'analyse des ressources du document.
+
+1. Ouvrez le PDF source en tant que `Document`.
+1. Appeler `document.font_utilities.get_all_fonts()` pour obtenir la collection de polices.
+1. Parcourir les éléments retournés `Font` objets.
+1. Lire et imprimer chaque `font.font_name` valeur.
+
+```python
+
+ import aspose.pdf as apdf
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+
+ # Open PDF document
+ document = apdf.Document(path_infile)
+
+ fonts = document.font_utilities.get_all_fonts()
+ for font in fonts:
+ print(font.font_name)
+```
diff --git a/fr/python-net/parsing/extract-images-from-pdf/_index.md b/fr/python-net/parsing/extract-images-from-pdf/_index.md
new file mode 100644
index 0000000000..f24b653607
--- /dev/null
+++ b/fr/python-net/parsing/extract-images-from-pdf/_index.md
@@ -0,0 +1,37 @@
+---
+title: Extraire des images du PDF à l'aide de Python
+linktitle: Extraire des images du PDF
+type: docs
+weight: 20
+url: /fr/python-net/extract-images-from-the-pdf-file/
+description: Apprenez comment extraire des images intégrées des fichiers PDF avec Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comment extraire des images du PDF via Python
+Abstract: Cet article explique comment extraire des images intégrées d'un document PDF avec Aspose.PDF for Python. Il couvre l'ouverture du PDF source avec la classe Document, l'accès à une image de la collection des ressources de la page, et l'enregistrement de l'XImage extrait vers un fichier externe pour réutilisation, inspection ou traitement en aval.
+---
+
+Utiliser [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) pour ouvrir le PDF, puis accéder aux ressources de la page afin de récupérer un [XImage](https://reference.aspose.com/pdf/python-net/aspose.pdf/ximage/) objet et l'enregistrer comme un fichier distinct. Cette approche est utile lorsque vous devez réutiliser des images, inspecter les ressources extraites, ou créer des flux de travail de traitement d'images à partir du contenu PDF.
+
+1. Ouvrez le PDF en tant que `Document`.
+1. Accédez à la ressource d'image depuis la page cible.
+1. Récupérer le requis `XImage` à partir de la collection d'images de la page.
+1. Enregistrez l'image extraite dans un fichier de sortie.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ document = apdf.Document(path_infile)
+ xImage = document.pages[1].resources.images[1]
+ with FileIO(path_outfile, "w") as output_image:
+ xImage.save(output_image)
+```
diff --git a/fr/python-net/parsing/extract-text-from-pdf/_index.md b/fr/python-net/parsing/extract-text-from-pdf/_index.md
new file mode 100644
index 0000000000..dd020d6064
--- /dev/null
+++ b/fr/python-net/parsing/extract-text-from-pdf/_index.md
@@ -0,0 +1,19 @@
+---
+title: Extraire du texte d'un PDF avec Python
+linktitle: Extraire du texte d'un PDF
+type: docs
+weight: 10
+url: /fr/python-net/extract-text-from-pdf/
+description: Cette section contient des articles sur l'extraction de texte à partir de documents PDF en utilisant Aspose.PDF avec Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+## Articles de cette section
+
+- [Extraction de texte de base](/pdf/fr/python-net/basic-text-extraction/)
+- [Extraction basée sur la région](/pdf/fr/python-net/region-based-extraction/)
+- [Extraction de texte à partir de PDF multi‑colonnes](/pdf/fr/python-net/text-extraction-from-multi‑column-pdf/)
+- [Annotations et texte spécial](/pdf/fr/python-net/annotations-and-special-text/)
\ No newline at end of file
diff --git a/fr/python-net/parsing/extract-text-from-pdf/annotations-and-special-text/_index.md b/fr/python-net/parsing/extract-text-from-pdf/annotations-and-special-text/_index.md
new file mode 100644
index 0000000000..d8b7652bcd
--- /dev/null
+++ b/fr/python-net/parsing/extract-text-from-pdf/annotations-and-special-text/_index.md
@@ -0,0 +1,161 @@
+---
+title: Annotations et texte spécial avec Python
+linktitle: Annotations et texte spécial
+type: docs
+weight: 40
+url: /fr/python-net/annotation-and-special-text/
+description: Apprenez comment extraire le texte des annotations de tampon, du texte surligné et du contenu exposant/sous‑exposant dans les documents PDF en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Extraire le texte des annotations de tampon
+
+Utiliser [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber) pour extraire le texte intégré dans un [StampAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/stampannotation) flux d'apparence. Ceci est utile lorsque le contenu du tampon est rendu comme un Form XObject plutôt que stocké en texte brut.
+
+1. Ouvrir le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Accédez à l'annotation cible depuis `page.annotations`.
+1. Vérifiez que c'est un `StampAnnotation`, puis récupérer son apparence normale XForm.
+1. Passez le XForm à `TextAbsorber.visit()` pour extraire le texte incorporé.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_text_from_stamp(infile, page_number, annotation_index, outfile):
+ """
+ Extracts text from a stamp annotation on a given page in a PDF document.
+ Args:
+ infile (str): Path to the input PDF file.
+ page_number (int): 1-based index of the page containing the stamp.
+ annotation_index (int): 1-based index of the annotation in that page.
+ outfile (str): Path to the output text file where extracted text will be saved.
+ """
+ document = ap.Document(infile)
+ try:
+ page = document.pages[page_number]
+ annot = page.annotations[annotation_index]
+ # Ensure it's a StampAnnotation
+ if isinstance(annot, ap.annotations.StampAnnotation):
+ # Get normal appearance XForm of the stamp
+ xform = annot.appearance["N"]
+ absorber = ap.text.TextAbsorber()
+ absorber.visit(xform)
+ extracted = absorber.text
+ with open(outfile, "w", encoding="utf-8") as f:
+ f.write(extracted)
+ finally:
+ document.close()
+```
+
+## Extraire le texte surligné
+
+Itérer sur les annotations d’une page et utiliser [HighlightAnnotation.get_marked_text()](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/highlightannotation) pour lire les segments de texte couverts par chaque surlignage. La collection d’annotations de la page est indexée à partir de 1.
+
+1. Ouvrir le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document) et sélectionnez la page cible.
+1. Parcourir `page.annotations`.
+1. Utiliser `is_assignable` filtrer pour [HighlightAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/highlightannotation) instances.
+1. Caster l'annotation et appeler `get_marked_text()` pour récupérer le contenu surligné.
+
+```python
+def extract_highlight_text(infile):
+ """
+ Extract text from highlight annotations.
+
+ Args:
+ infile (str): Input PDF filename
+
+ Returns:
+ None
+
+ Example:
+ extract_highlight_text("sample.pdf")
+
+ Note:
+ Prints marked text from each highlight annotation on first page.
+ """
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ for annotation in page.annotations:
+ if is_assignable(annotation, ap.annotations.HighlightAnnotation):
+ highlight_annotation = cast(ap.annotations.HighlightAnnotation, annotation)
+ print(highlight_annotation.get_marked_text())
+```
+
+## Extraire le texte en exposant et en indice
+
+Les exposants et les indices apparaissent fréquemment dans les formules, les expressions mathématiques et les noms de composés chimiques. Aspose.PDF for Python via .NET prend en charge l'extraction de ce contenu via [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber), qui détecte les métadonnées de positionnement au niveau des caractères.
+
+1. Ouvrir le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Créer un `TextFragmentAbsorber` instance.
+1. Appeler `document.pages[page_number].accept(absorber)` scanner la page cible.
+1. Récupérer le texte complet extrait de `absorber.text`.
+1. Écrivez le résultat dans un fichier et fermez le document.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_super_sub_text(infile, outfile, page_number=1):
+ """
+ Extract text (including superscript/subscript) from a specified page of a PDF and write to a text file.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ page_number (int): 1‑based index of the page to extract.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.TextFragmentAbsorber()
+ # Accept only the specific page for extraction
+ document.pages[page_number].accept(absorber)
+ extracted_text = absorber.text
+ with open(outfile, "w", encoding="utf-8") as f:
+ f.write(extracted_text)
+ finally:
+ document.close()
+```
+
+## Itérer à travers les fragments de texte pour détecter les exposants/sous‑exposants
+
+Pour l'inspection fragment par fragment, itérez sur `absorber.text_fragments` et lire le `text_state.superscript` et `text_state.subscript` drapeaux booléens sur chaque [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment).
+
+1. Ouvrir le [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document) et créer un [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber).
+1. Accepter l'absorbeur sur la page cible afin de le remplir `absorber.text_fragments`.
+1. Pour chaque fragment, lire `fragment.text`, `fragment.text_state.superscript`, et `fragment.text_state.subscript`.
+1. Écrivez les résultats dans le fichier de sortie et fermez le document.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_super_sub_details(infile, outfile, page_number=1):
+ """
+ Extract details of each text fragment on a page, identifying superscript and subscript items.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ page_number (int): 1‑based page index.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.TextFragmentAbsorber()
+ document.pages[page_number].accept(absorber)
+
+ with open(outfile, "w", encoding="utf-8") as f:
+ for fragment in absorber.text_fragments:
+ text = fragment.text
+ is_sup = fragment.text_state.superscript # True if superscript
+ is_sub = fragment.text_state.subscript # True if subscript
+ f.write(
+ f"Text: '{text}' | Superscript: {is_sup} | Subscript: {is_sub}\n"
+ )
+ finally:
+ document.close()
+```
diff --git a/fr/python-net/parsing/extract-text-from-pdf/basic-text-extraction/_index.md b/fr/python-net/parsing/extract-text-from-pdf/basic-text-extraction/_index.md
new file mode 100644
index 0000000000..9421f21771
--- /dev/null
+++ b/fr/python-net/parsing/extract-text-from-pdf/basic-text-extraction/_index.md
@@ -0,0 +1,78 @@
+---
+title: Extraction de texte de base avec Python
+linktitle: Extraction de texte de base
+type: docs
+weight: 10
+url: /fr/python-net/basic-text-extraction/
+description: Apprenez comment extraire du texte à partir de documents PDF en utilisant Aspose.PDF for Python — depuis toutes les pages à la fois ou depuis une page spécifique.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Extraire le texte de toutes les pages d'un document PDF
+
+Utiliser [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber) pour capturer tout le texte de chaque page d'un document PDF et l'écrire dans un fichier texte. Cette approche convient parfaitement à la conversion de PDF en texte interrogeable, à l'analyse du contenu ou à la préparation du texte pour l'indexation et le traitement en aval.
+
+1. Ouvrez le document PDF en utilisant [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Créer un `TextAbsorber` instance.
+1. Appeler `document.pages.accept(text_absorber)` scanner toutes les pages.
+1. Récupérer le texte extrait de `text_absorber.text`.
+1. Écrivez le résultat dans un fichier texte de sortie.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_text_from_all_pages(infile, outfile):
+ """
+ Extract all text from every page of the PDF and write to an output text file.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ """
+ # Open the PDF document
+ document = ap.Document(infile)
+ # Create a TextAbsorber to extract text
+ text_absorber = ap.text.TextAbsorber()
+ # Accept the absorber for all pages
+ document.pages.accept(text_absorber)
+ # Get extracted text
+ extracted_text = text_absorber.text
+ # Write the text to an output file
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
+
+## Extraire le texte d'une page particulière
+
+Appliquer [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber) vers une seule page pour isoler et enregistrer le texte de cette section d'un document multipage. Ceci est utile lorsque vous avez besoin du contenu d'une seule page — par exemple, une facture, une section de rapport ou un résumé de formulaire.
+
+1. Ouvrez le document PDF en utilisant [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Créer un `TextAbsorber` instance.
+1. Appeler `accept` sur la page cible : `document.pages[page_number].accept(text_absorber)`.
+1. Récupérez le texte extrait et écrivez‑le dans un fichier.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_text_from_page(infile, outfile, page_number):
+ """
+ Extract text from a specific page number of the PDF.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ page_number (int): 1-based page index to extract.
+ """
+ document = ap.Document(infile)
+ text_absorber = ap.text.TextAbsorber()
+ # Accept the absorber on only the specified page
+ document.pages[page_number].accept(text_absorber)
+ extracted_text = text_absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
diff --git a/fr/python-net/parsing/extract-text-from-pdf/region-based-extraction/_index.md b/fr/python-net/parsing/extract-text-from-pdf/region-based-extraction/_index.md
new file mode 100644
index 0000000000..b4ad186e0d
--- /dev/null
+++ b/fr/python-net/parsing/extract-text-from-pdf/region-based-extraction/_index.md
@@ -0,0 +1,140 @@
+---
+title: Extraction basée sur la région avec Python
+linktitle: Extraction basée sur la région
+type: docs
+weight: 20
+url: /fr/python-net/region-based-extraction/
+description: Apprenez comment extraire du texte d'une région spécifique d'une page ou d'une structure de paragraphe dans des documents PDF avec Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Extraire du texte d'une région spécifique d'une page
+
+Utiliser [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/) avec un [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) pour limiter l'extraction à une zone spécifique d'une page. Cette approche est utile pour l'extraction basée sur des zones à partir des en-têtes, pieds de page, cellules de tableau, champs de formulaire, factures, ou d'autres régions à mise en page fixe où la position du texte est connue à l'avance.
+
+1. Ouvrez le PDF source en tant que [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Créer un `TextAbsorber` instance.
+1. Configurer `text_search_options` pour limiter l'extraction à un rectangle.
+1. Accepter l'absorbeur sur la page cible.
+1. Écrire le texte extrait dans un fichier de sortie.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_text_from_region(infile, page_number, rect_coords, outfile):
+ """
+ Extract text from a specified rectangular region on a given page.
+ Args:
+ infile (str): Path to input PDF file.
+ page_number (int): 1-based index of the page.
+ rect_coords (tuple): (llx, lly, urx, ury) coordinates of the rectangle.
+ outfile (str): Output text file path.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.TextAbsorber()
+ # Set options to restrict search to the rectangle
+ absorber.text_search_options.limit_to_page_bounds = True
+ llx, lly, urx, ury = rect_coords
+ absorber.text_search_options.rectangle = ap.Rectangle(llx, lly, urx, ury, True)
+ # Accept on the specific page
+ document.pages[page_number].accept(absorber)
+ extracted_text = absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+ finally:
+ document.close()
+```
+
+## Extraire les paragraphes en les parcourant
+
+Utiliser [ParagraphAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/paragraphabsorber/) lorsque vous avez besoin d'une extraction sensible aux paragraphes au lieu de texte de page simple. Contrairement [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/) ou [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/), cette API organise la sortie par page, section et paragraphe, ce qui est utile pour l'analyse de texte, l'exportation structurée et le traitement sensible à la mise en page.
+
+1. Ouvrez le PDF source en tant que [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Créer un `ParagraphAbsorber` instance.
+1. Appeler `absorber.visit(document)` pour analyser toutes les pages.
+1. Parcourir `page_markups`, puis à travers chaque section et paragraphe.
+1. Lire les fragments de texte de chaque paragraphe et écrire le résultat dans un fichier.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_paragraphs_from_pdf(infile, outfile):
+ """
+ Extract all paragraphs from a PDF document, and write each paragraph’s text into an output file.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.ParagraphAbsorber()
+ absorber.visit(document)
+
+ with open(outfile, "w", encoding="utf-8") as tw:
+ for page_markup in absorber.page_markups:
+ for sec_idx, section in enumerate(page_markup.sections, start=1):
+ for para_idx, paragraph in enumerate(section.paragraphs, start=1):
+ # Concatenate all fragments/lines in the paragraph
+ parts = []
+ for line in paragraph.lines:
+ for fragment in line:
+ parts.append(fragment.text)
+ parts.append("\r\n")
+ paragraph_text = "".join(parts)
+ tw.write(
+ f"Page {page_markup.number}, Section {sec_idx}, Paragraph {para_idx}:\n"
+ )
+ tw.write(paragraph_text + "\n")
+ finally:
+ document.close()
+```
+
+## Extraire les paragraphes avec le rendu du polygone de délimitation
+
+Vous pouvez également utiliser [ParagraphAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/paragraphabsorber/) pour inspecter la géométrie des paragraphes. En plus d’extraire le texte, cette approche enregistre chaque rectangle de section et chaque polygone de paragraphe, ce qui est utile pour la cartographie de la mise en page, l’analyse de documents, les outils d’accessibilité ou le post‑traitement sensible aux régions.
+
+1. Ouvrez le PDF source en tant que [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Créer un `ParagraphAbsorber` instance.
+1. Visitez la page cible.
+1. Lire le balisage de la page depuis `absorber.page_markups`.
+1. Parcourez les sections et les paragraphes pour capturer la géométrie et le texte.
+1. Écrivez les données du rectangle, du polygone et du texte dans le fichier de sortie.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_paragraphs_with_geometry(infile, outfile):
+ """
+ Extract paragraphs and record geometry info (rectangle / polygon) for each paragraph in a PDF.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.ParagraphAbsorber()
+ absorber.visit(document.pages[1]) # Visit page 2 (pages are 1-indexed)
+
+ page_markup = absorber.page_markups[0]
+ with open(outfile, "w", encoding="utf-8") as tw:
+ for sec_idx, section in enumerate(page_markup.sections, start=1):
+ tw.write(f"Section {sec_idx}: rectangle = {section.rectangle}\n")
+ for para_idx, paragraph in enumerate(section.paragraphs, start=1):
+ tw.write(f" Paragraph {para_idx}: polygon = {paragraph.points}\n")
+ # Concatenate paragraph text
+ parts = []
+ for line in paragraph.lines:
+ for fragment in line:
+ parts.append(fragment.text)
+ parts.append("\r\n")
+ tw.write(" Text: " + "".join(parts) + "\n\n")
+ finally:
+ document.close()
+```
diff --git a/fr/python-net/parsing/extract-text-from-pdf/text-extraction-from-multi-column-pdf/_index.md b/fr/python-net/parsing/extract-text-from-pdf/text-extraction-from-multi-column-pdf/_index.md
new file mode 100644
index 0000000000..61d7456693
--- /dev/null
+++ b/fr/python-net/parsing/extract-text-from-pdf/text-extraction-from-multi-column-pdf/_index.md
@@ -0,0 +1,88 @@
+---
+title: Améliorer l'extraction de texte des PDF multi‑colonnes
+linktitle: Extraction de texte à partir de PDF multi‑colonnes
+type: docs
+weight: 30
+url: /fr/python-net/text-extraction-from-multi-column-pdf/
+description: Apprenez des techniques pour améliorer l'extraction de texte à partir de mises en page PDF multi‑colonnes avec Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Réduisez la taille de la police manuellement, puis extrayez
+
+Dans certaines mises en page à plusieurs colonnes, réduire la taille de la police des fragments de texte avant l'extraction peut améliorer l'ordre de lecture et réduire les problèmes de chevauchement. Cette technique peut aider avec des documents fortement formatés tels que des magazines, des articles de recherche, des brochures ou des rapports contenant des colonnes de texte denses.
+
+1. Chargez le PDF.
+1. Utiliser [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) collecter les fragments de texte.
+1. Réduisez la taille de police de chaque fragment, puis enregistrez et rouvrez le document.
+1. Utiliser [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/) extraire le texte.
+1. Écrire le texte extrait dans un fichier de sortie.
+
+```python
+import io
+import aspose.pdf as ap
+
+
+def extract_text_reduce_font(infile, outfile, reduce_ratio=0.7):
+ """
+ Extract text from a multi-column PDF by first reducing font size of all text fragments.
+ Args:
+ infile (str): Path to input PDF.
+ outfile (str): Output text file.
+ reduce_ratio (float): Ratio to reduce font size (e.g., 0.7 = 70%).
+ """
+ doc = ap.Document(infile)
+
+ frag_absorber = ap.text.TextFragmentAbsorber()
+ doc.pages.accept(frag_absorber)
+ for frag in frag_absorber.text_fragments:
+ frag.text_state.font_size = frag.text_state.font_size * reduce_ratio
+ # Save to memory stream and reopen (to apply changes)
+ ms = io.BytesIO()
+ doc.save(ms)
+ ms.seek(0)
+ doc2 = ap.Document(ms)
+ text_absorber = ap.text.TextAbsorber()
+ doc2.pages.accept(text_absorber)
+ extracted_text = text_absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
+
+## Extraire le texte avec un facteur d'échelle
+
+Une autre option pour l'extraction multicolonnes consiste à configurer [TextExtractionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textextractionoptions/) avec un facteur d'échelle. Ajuster le facteur d'échelle peut améliorer l'interprétation des fragments très rapprochés et aider à préserver un ordre de lecture plus précis dans les mises en page denses, les tableaux ou les documents à colonnes.
+
+1. Chargez le PDF.
+1. Créer un [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/).
+1. Configurer `TextExtractionOptions.scale_factor`.
+1. Attribuez les options d'extraction à l'absorbeur.
+1. Extrayez le texte de la page et écrivez le résultat dans un fichier de sortie.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_text_scale_factor(infile, outfile, scale_factor=0.5):
+ """
+ Extract text from a PDF with multi-column layout using scale factor.
+ Args:
+ infile (str): Input PDF path.
+ outfile (str): Output text file path.
+ scale_factor (float): Scale factor between 0.1 and 1.0 or 0 for auto-scaling.
+ """
+ doc = ap.Document(infile)
+ text_absorber = ap.text.TextAbsorber()
+ ext_opts = ap.text.TextExtractionOptions(
+ ap.text.TextExtractionOptions.TextFormattingMode.PURE
+ )
+ ext_opts.scale_factor = scale_factor
+ text_absorber.extraction_options = ext_opts
+ doc.pages.accept(text_absorber)
+ extracted_text = text_absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
diff --git a/fr/python-net/parsing/extract-vector-data-from-pdf/_index.md b/fr/python-net/parsing/extract-vector-data-from-pdf/_index.md
new file mode 100644
index 0000000000..612d37819c
--- /dev/null
+++ b/fr/python-net/parsing/extract-vector-data-from-pdf/_index.md
@@ -0,0 +1,178 @@
+---
+title: Extraire les données vectorielles d'un fichier PDF à l'aide de Python
+linktitle: Extraire les données vectorielles du PDF
+type: docs
+weight: 80
+url: /fr/python-net/extract-vector-data-from-pdf/
+description: Aspose.PDF facilite l'extraction des données vectorielles d'un fichier PDF. Vous pouvez obtenir les données vectorielles (path, polygon, polyline), telles que la position, la couleur, l'épaisseur de ligne, etc.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+## Accéder aux données vectorielles d'un Document PDF
+
+Utiliser [GraphicsAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicsabsorber/) pour inspecter les éléments graphiques vectoriels sur une page de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Après avoir visité la page cible, parcourez les éléments extraits pour examiner les propriétés telles que les limites rectangulaires, les positions et les opérateurs de dessin.
+
+1. Ouvrez le PDF source en tant que `Document`.
+1. Créer un `GraphicsAbsorber` instance.
+1. Appeler `gr_absorber.visit(page)` sur la page cible.
+1. Lire les éléments extraits de `gr_absorber.elements`.
+1. Itérez à travers les éléments et écrivez leurs propriétés dans un fichier de sortie.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_graphics_elements(infile, outfile):
+ """
+ Extract vector graphic elements from a specified page of a PDF and log basic element properties.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file for logging element info.
+ """
+ document = ap.Document(infile)
+ try:
+ gr_absorber = ap.vector.GraphicsAbsorber()
+ # Visit page 2 (pages collection is 1-indexed; document.pages[1] is the second page)
+ gr_absorber.visit(document.pages[1])
+
+ elements = gr_absorber.elements
+ with open(outfile, "w", encoding="utf-8") as f:
+ for idx, elem in enumerate(elements, start=1):
+ # Basic properties
+ rect = elem.rectangle
+ pos = elem.position
+ ops_count = len(elem.operators)
+ f.write(
+ f"Element {idx}: Rectangle = {rect}, Position = {pos}, Operators = {ops_count}\n"
+ )
+ finally:
+ document.close()
+```
+
+## Enregistrer les graphiques vectoriels d’une page dans un fichier SVG
+
+Exporter les graphiques vectoriels d’une page PDF vers SVG afin de préserver les tracés et formes évolutifs en dehors du PDF d’origine. Cette méthode est utile pour réutiliser les illustrations vectorielles dans les flux de travail web, design ou édition.
+
+1. Charger le document PDF.
+1. Accédez à la page cible.
+1. Appeler `page.try_save_vector_graphics()` exporter les chemins vectoriels de la page au format SVG.
+1. Fermez le document.
+
+```python
+import aspose.pdf as ap
+
+
+def save_vector_graphics_to_svg(infile, svg_outfile):
+ """
+ Save vector graphics from a specified page of a PDF document into an SVG file.
+ Args:
+ infile (str): Path to input PDF file.
+ svg_outfile (str): Path to output SVG file.
+ """
+ document = ap.Document(infile)
+ try:
+ page = document.pages[1]
+ # Try to save vector graphics into SVG
+ page.try_save_vector_graphics(svg_outfile)
+ finally:
+ document.close()
+```
+
+### Extraire chaque sous-chemin dans un SVG séparé
+
+Lorsqu'une page contient plusieurs chemins vectoriels indépendants, utilisez [SvgExtractionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/svgextractionoptions/) avec [SvgExtractor](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/svgextractor/) pour écrire chaque sous-chemin dans un fichier SVG séparé.
+
+1. Chargez le PDF.
+1. Créer `SvgExtractionOptions` et définir `extract_every_subpath_to_svg`.
+1. Accédez à la première page du document.
+1. Instancier `SvgExtractor` avec les options.
+1. Appeler `extractor.extract()` pour écrire des fichiers SVG séparés pour chaque sous-chemin vectoriel.
+1. Fermez le document.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_subpaths_to_svgs(infile, output_dir):
+ """
+ Extract each vector sub-path on a PDF page into separate SVG files using extraction options.
+ Args:
+ infile (str): Input PDF file path.
+ output_dir (str): Directory path where SVG files will be saved.
+ """
+ document = ap.Document(infile)
+ try:
+ options = ap.vector.SvgExtractionOptions()
+ options.extract_every_subpath_to_svg = True
+
+ page = document.pages[1]
+ extractor = ap.vector.SvgExtractor(options)
+ extractor.extract(page, output_dir)
+ finally:
+ document.close()
+```
+
+### Extraire une liste d'éléments en une seule image
+
+Extraire plusieurs éléments vectoriels d'une page PDF et les enregistrer en une seule image SVG combinée. Ceci est utile lorsque vous souhaitez préserver la relation visuelle entre des formes groupées, des diagrammes ou des fragments de dessin.
+
+1. Ouvrez le PDF en utilisant [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Sélectionnez une page et préparez une liste d'éléments vectoriels.
+1. Utiliser [SvgExtractor](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/svgextractor/) pour combiner ces éléments en un seul SVG.
+1. Enregistrez le fichier de sortie.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_list_of_elements_to_single_image(infile, outfile):
+ """
+ Extracts multiple vector graphic elements from a PDF page and saves them as a single SVG image.
+ Args:
+ infile (str): Path to the input PDF file.
+ outfile (str): Path to the output SVG file.
+ """
+ document = ap.Document(infile)
+ try:
+ page = document.pages[1]
+ svg_extractor = ap.vector.SvgExtractor()
+ elements = [] # Fill this list with specific graphic elements as needed
+ svg_extractor.extract(elements, page, outfile)
+ finally:
+ document.close()
+```
+
+### Extraire un seul élément
+
+Extraire un élément vectoriel spécifique d'un PDF et le sauvegarder en tant que fichier SVG individuel. Cela est utile pour isoler des logos, des icônes ou des formes autonomes à partir de pages plus complexes basées sur des vecteurs.
+
+1. Créer un [GraphicsAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicsabsorber/) pour capturer des données vectorielles.
+1. Visitez une page spécifique pour collecter ses éléments vectoriels.
+1. Sélectionnez un élément cible, tel un [XFormPlacement](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/xformplacement/).
+1. Enregistrez cet unique élément dans un fichier SVG.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_single_vector_element(infile, outfile):
+ """
+ Extracts a specific vector graphic element (e.g., an XFormPlacement) from a PDF page and saves it as an SVG file.
+ Args:
+ infile (str): Path to the input PDF file.
+ outfile (str): Path to the output SVG file.
+ """
+ document = ap.Document(infile)
+ try:
+ graphics_absorber = ap.vector.GraphicsAbsorber()
+ page = document.pages[1]
+ graphics_absorber.visit(page)
+ xform_placement = graphics_absorber.elements[1]
+ if isinstance(xform_placement, ap.vector.XFormPlacement):
+ xform_placement.elements[2].save_to_svg(outfile)
+ finally:
+ document.close()
+```
diff --git a/fr/python-net/whatsnew/_index.md b/fr/python-net/whatsnew/_index.md
index a6601b5d3c..34ef783b38 100644
--- a/fr/python-net/whatsnew/_index.md
+++ b/fr/python-net/whatsnew/_index.md
@@ -1,345 +1,1169 @@
---
-title: Quoi de neuf
-linktitle: Quoi de neuf
+title: Nouveautés
+linktitle: Nouveautés
type: docs
weight: 10
url: /fr/python-net/whatsnew/
-description: Cette page présente les nouvelles fonctionnalités les plus populaires dans Aspose.PDF pour Python via .NET qui ont été introduites dans les versions récentes.
+description: Cette page présente les fonctionnalités nouvelles les plus populaires d'Aspose.PDF for Python via .NET qui ont été introduites dans les dernières versions.
sitemap:
changefreq: "monthly"
priority: 0.8
-lastmod: "2021-12-24"
+lastmod: "2026-05-22"
+TechArticle: false
---
-## Quoi de neuf dans Aspose.PDF 23.12
+## Quoi de neuf dans Aspose.PDF 26.3
-À partir d'Aspose.PDF 23.12, la prise en charge des nouvelles fonctionnalités de conversion a été ajoutée :
+Dans **Aspose.PDF for Python via .NET** 26.3, nous avons ajouté :
-- Implémenter la conversion de PDF en Markdown
+Recompression sans perte des flux d'images lors de l'optimisation de PDF. La propriété OptimizationOptions.CompressAllContentStreams compresse désormais également les flux XObject d'images éligibles avec FlateDecode, aidant à réduire la taille du fichier tout en conservant la qualité de l'image.
```python
+import aspose.pdf as ap
+
+
+def optimize_pdf_with_loss_less_image_stream_recompression(infile, outfile):
+ with ap.Document(infile) as document:
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.subset_fonts = True
+ optimize_options.allow_reuse_page_content = True
+ optimize_options.compress_objects = True
+ optimize_options.link_duplicate_streams = True
+ optimize_options.remove_unused_objects = True
+ optimize_options.remove_unused_streams = True
+ # Compress content streams and eligible image streams
+ optimize_options.compress_all_content_streams = True
+ # Optimize PDF document
+ document.optimize_resources(optimize_options)
+ # Save optimized PDF document
+ document.save(outfile)
+```
+
+La recompression des images correspond désormais au paramètre ImageCompressionOptions.Encoding sélectionné lors de l'optimisation, garantissant des résultats plus cohérents lors de l'utilisation de Jpeg2000 ou Flate, ainsi que le redimensionnement des images, les limites de résolution et les contrôles de qualité.
+
+```python
+import aspose.pdf as ap
+
+
+def optimize_pdf_images_with_selected_encoding(infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as pdf:
+ # Configure optimization options
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.allow_reuse_page_content = False
+ optimize_options.compress_objects = True
+ optimize_options.link_duplicate_streams = False
+ optimize_options.remove_unused_objects = True
+ optimize_options.remove_unused_streams = True
+ optimize_options.image_compression_options.compress_images = True
+ optimize_options.image_compression_options.resize_images = True
+ optimize_options.image_compression_options.max_resolution = 130
+ optimize_options.image_compression_options.image_quality = 100
+ optimize_options.image_compression_options.encoding = (
+ ap.optimization.ImageEncoding.FLATE
+ )
+ optimize_options.image_compression_options.version = (
+ ap.optimization.ImageCompressionVersion.MIXED
+ )
+
+ # Optimize PDF document resources
+ pdf.optimize_resources(optimize_options)
+ # Save optimized PDF document
+ pdf.save(outfile)
+```
+
+Prise en charge du rendu des commentaires lors de l’enregistrement de documents PDF en tant qu’images ou HTML, aidant à préserver les annotations visibles lors de l’exportation de documents annotés pour les partager en dehors des visionneuses PDF.
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+
+
+def render_comments_to_image_and_html(infile, outfile, output_png):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Save the first page to PNG with comments rendered
+ device = ap.devices.PngDevice()
+ device.process(document.pages[1], output_png)
+ # Save the first page to HTML with comments rendered
+ options = ap.HtmlSaveOptions()
+ options.explicit_list_of_saved_pages = [1]
+ options.use_z_order = True
+ document.save(outfile, options)
+```
- input_pdf_path = DIR_INPUT + "input.pdf"
- markdown_output_file_path = DIR_OUTPUT + "output_md_file.md"
+Performances de rendu PDF‑to‑TIFF améliorées pour les scénarios de rasterisation à haut volume, en particulier lors de l'exportation de pages vers des images TIFF bicolores.
- doc = ap.Document(input_pdf_path)
- save_options = ap.pdftomarkdown.MarkdownSaveOptions()
- save_options.resources_directory_name = "images"
- doc.save(markdown_output_file_path, save_options)
+```python
+import aspose.pdf as ap
+
+
+def convert_pdf_to_tiff(infile, data_dir):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Create Resolution object
+ resolution = ap.devices.Resolution(300)
+
+ # Create TiffSettings object
+ tiff_settings = ap.devices.TiffSettings()
+ tiff_settings.compression = ap.devices.CompressionType.CCITT4
+ tiff_settings.shape = ap.devices.ShapeType.NONE
+ tiff_settings.skip_blank_pages = False
+ tiff_settings.depth = ap.devices.ColorDepth.FORMAT_1BPP
+
+ # Create TIFF device
+ tiff_device = ap.devices.TiffDevice(resolution, tiff_settings)
+ for i in range(1, len(document.pages) + 1):
+ target_file_name = data_dir + "Asposeout-" + str(i) + ".tif"
+ tiff_device.process(document, i, i, target_file_name)
```
-- Implémenter la conversion de OFD en PDF
+## Quoi de neuf dans Aspose.PDF 26.2
+
+Aspose.PDF 26.2 introduit la prise en charge de la conversion RTF vers PDF. Cette fonctionnalité permet aux développeurs de convertir directement les documents Rich Text Format (RTF) en fichiers PDF.
+
+Le RTF est un format de document largement pris en charge et multiplateforme, développé à l'origine par Microsoft. Il est conçu pour permettre l'échange de documents entre différentes applications de traitement de texte tout en conservant la mise en forme de base telle que les polices, les couleurs, le texte en gras et en italique, ainsi que les images intégrées.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- input_path = DIR_INPUT + "input.ofd"
- output_path = DIR_OUTPUT + "output.pdf"
- document = ap.Document(input_path, ap.OfdLoadOptions())
- document.save(output_path)
+def convert_rtf_to_pdf(infile, outfile):
+ # Initialize RTF load options
+ options = ap.RtfLoadOptions()
+ # Open RTF document
+ with ap.Document(infile, options) as document:
+ # Save PDF document
+ document.save(outfile)
```
+Cet extrait de code montre comment insérer un tableau après le contenu existant sur une page PDF en utilisant Aspose.PDF for Python.
+
+Le script ouvre un document PDF existant et calcule la boîte englobante du contenu actuel sur la première page. En utilisant ces informations, il trouve où se termine le contenu existant et place un nouveau tableau sous le dernier élément, en laissant une marge spécifiée avant le début du tableau.
-Le support pour Python 3.6 a été interrompu.
+Un tableau est ensuite créé et rempli avec plusieurs lignes et colonnes à l’aide d’une boucle. Après avoir configuré la structure et le contenu du tableau, le tableau est ajouté à la collection de paragraphes de la page. Enfin, le document mis à jour est enregistré sous forme d’un nouveau fichier PDF.
-## Quoi de neuf dans Aspose.PDF 23.11
+```python
+import aspose.pdf as ap
+
+
+def add_table_after_last_element(infile, outfile):
+ # Load source PDF document
+ with ap.Document(infile) as document:
+ # Initializes a new instance of the Table
+ table = ap.Table()
+ # Determine the existing content area on the page
+ content_area_lly = document.pages[1].calculate_content_b_box().lly
+ top_margin = 20
+ # Add the table after the existing content, with the 20pt margin before the table.
+ table.top = document.pages[1].rect.height - (content_area_lly - top_margin)
+ # Set the top margin for the new pages added.
+ document.page_info.margin.top = top_margin
+ # Create a loop to add 10 rows
+ for row_count in range(1, 11):
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ row.cells.add("Column (" + str(row_count) + ", 1)")
+ row.cells.add("Column (" + str(row_count) + ", 2)")
+ row.cells.add("Column (" + str(row_count) + ", 3)")
+
+ # Add table object to first page of input document
+ document.pages[1].paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```
-Depuis la version 23.11, il est possible de supprimer le texte caché. Le code suivant peut être utilisé :
+Détecter et supprimer le texte invisible d'un document PDF à l'aide d'Aspose.PDF for Python :
```python
+import aspose.pdf as ap
+
+
+def remove_invisible_text(infile, outfile):
+ with ap.Document(infile) as pdf_doc:
+ for page in pdf_doc.pages:
+ absorber = ap.text.TextFragmentAbsorber()
+ page.accept(absorber)
+ fragments_to_remove = [
+ x
+ for x in absorber.text_fragments
+ if (
+ x.text_state.invisible
+ or x.text_state.rendering_mode
+ == ap.text.TextRenderingMode.INVISIBLE
+ or (
+ x.text_state.foreground_color is not None
+ and x.text_state.foreground_color.a == 0
+ )
+ )
+ ]
+ for fragment in fragments_to_remove:
+ absorber.text_fragments.remove(
+ fragment
+ ) # Now properly removes text from document
+ pdf_doc.save(outfile)
+```
- import aspose.pdf as ap
+## Quoi de neuf dans Aspose.PDF 26.1
- document = ap.Document(input_file)
- text_absorber = ap.text.TextFragmentAbsorber()
- # Cette option peut être utilisée pour empêcher d'autres fragments de texte de se déplacer après le remplacement du texte caché.
- text_absorber.text_replace_options = ap.text.TextReplaceOptions(ap.text.TextReplaceOptions.ReplaceAdjustment.NONE)
- document.pages.accept(text_absorber)
+Dans **Aspose.PDF for Python via .NET** 26.1, nous avons ajouté :
- for fragment in text_absorber.text_fragments:
- if fragment.text_state.invisible:
- fragment.text = ''
+1. Améliorations des performances – résolution de la mauvaise performance lors de l'ajout de texte aux documents et des problèmes de performances globales.
+1. Précision de rendu améliorée – correction du texte vertical manquant sur le côté gauche des PDF et correction du rendu des caractères chinois lors de la conversion PDF‑vers‑PNG.
+1. Conversion HTML améliorée – l'API respecte désormais la couleur des lignes lors de la conversion HTML-vers-PDF et a résolu les problèmes de chevauchement de texte lors de la conversion XFA-vers-Standard.
+1. Corrections de bugs pour la structure du document – NumberingStyle fonctionne maintenant correctement pour les objets Heading, et PDF-to-HTML préserve désormais la couleur du texte surligné.
- document.save(output_file)
-```
+## Quoi de neuf dans Aspose.PDF 25.12
-## Quoi de neuf dans Aspose.PDF 23.8
+Convertissez un document HTML en PDF tout en préservant les informations de structure logique. Le PDF résultant est mieux adapté à l'accessibilité, au balisage et au traitement en aval qui repose sur le contenu structuré du document.
-Depuis la version 23.8, le support pour ajouter la détection des mises à jour incrémentielles a été ajouté.
+```python
+import aspose.pdf as ap
+
+
+def convert_html_to_pdf_with_logical_structure(self, infile, outfile):
+ # Initialize HtmlLoadOptions
+ options = ap.HtmlLoadOptions()
+ # Convert HTML markup to PDF logical structure elements
+ options.create_logical_structure = True
+ # Open PDF document
+ with ap.Document(infile, options) as document:
+ # Save PDF document
+ document.save(outfile)
+```
-La fonction pour détecter les mises à jour incrémentielles dans un document PDF a été ajoutée.
- Cette fonction renvoie 'true' si un document a été enregistré avec des mises à jour incrémentielles; sinon, elle renvoie 'false'.
+Analysez un PDF signé numériquement afin d'identifier et de signaler le contenu qui n'est pas couvert par les signatures. Utilisez-le pour valider l'intégrité du document, auditer les PDFs signés et détecter les modifications post-signature.
```python
+import aspose.pdf as ap
+
+
+def extract_unsigned_content(self, infile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Create an instance of PdfFileSignature for working with signatures in the document
+ with ap.facades.PdfFileSignature(document) as signature:
+ # Create an instance of UnsignedContentAbsorber
+ unsigned_content = ap.security.UnsignedContentAbsorber(signature)
+ # Try to get unsigned content
+ result = unsigned_content.try_get_content()
+ # Print information about unsigned content
+ print(result.message)
+ print(result.coverage)
+ print(result.unsigned_content.pages.length)
+ print(result.unsigned_content.forms.length)
+```
- import aspose.pdf as ap
+## Quoi de neuf dans Aspose.PDF 25.11
- doc = ap.Document(file_path)
- updated = doc.has_incremental_update()
- print(updated)
+Cette fonction compare une page spécifique de deux documents PDF et produit une différence visuelle côte à côte. En personnalisant les options de comparaison et les couleurs, elle met en évidence les modifications significatives tout en ignorant les différences insignifiantes telles que les espaces blancs.
+
+```python
+import aspose.pdf as ap
+
+
+def comparing_specific_pages(self, infile1, infile2, outfile):
+ # Open PDF documents
+ with ap.Document(infile1) as document1:
+ with ap.Document(infile2) as document2:
+ options = ap.comparison.SideBySideComparisonOptions()
+ options.additional_change_marks = True
+ options.comparison_mode = ap.comparison.ComparisonMode.IGNORE_SPACES
+ options.delete_color = ap.Color.dark_gray
+ options.insert_color = ap.Color.light_yellow
+ # Compare
+ ap.comparison.SideBySidePdfComparer.compare(
+ document1.pages[1], document2.pages[1], outfile, options
+ )
```
-De plus, 23.8 prend en charge les moyens de travailler avec des champs de case à cocher imbriqués. De nombreux formulaires PDF remplissables ont des champs de case à cocher qui agissent comme des groupes radio:
+Suppression des données cachées et rasterisation des pages dans la version 25.11.
+
+```python
+import aspose.pdf as ap
+
+
+def clear_hidden_data(self, infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Create preconfigured “all-enabled” options (except conversion to images):
+ options = ap.security.hiddendatasanitization.HiddenDataSanitizationOptions.all()
+ # Additionally enable page conversion to images with a specified DPI:
+ options.convert_pages_to_images = True
+ options.image_dpi = 200
+ # Create the sanitizer with the specified options
+ sanitizer = ap.security.hiddendatasanitization.HiddenDataSanitizer(options)
+ # Sanitize the document
+ sanitizer.sanitize(document)
+ # Save the sanitized PDF document
+ document.save(outfile)
+```
-- Créer un champ de case à cocher à valeurs multiples :
+Optimisation des ressources avec le sous-ensemble de polices et la compression des flux de contenu version 25.11.
```python
+import aspose.pdf as ap
+
+
+def optimize_resources_with_font_subsetting(self, infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Configure optimization options
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.subset_fonts = True
+ optimize_options.allow_reuse_page_content = True
+ optimize_options.compress_objects = True
+ optimize_options.link_duplicate_streams = True
+ optimize_options.remove_unused_objects = True
+ optimize_options.remove_unused_streams = True
+ optimize_options.compress_all_content_streams = True
+ # Optimize PDF document
+ document.optimize_resources(optimize_options)
+ # Save the optimized PDF document
+ document.save(outfile)
+ # Display file size reduction
+ original_file = os.path.getsize(infile)
+ optimized_file = os.path.getsize(outfile)
+ print(
+ f"Original file size: {original_file} bytes. Optimized file size: {optimized_file} bytes."
+ )
+```
- import aspose.pdf as ap
-
- document = ap.Document()
- page = document.pages.add()
- checkbox = ap.forms.CheckboxField(page, ap.Rectangle(50, 50, 70, 70, True))
- # Définir la valeur de l'option du premier groupe de cases à cocher
- checkbox.export_value = "option 1"
- # Ajouter une nouvelle option juste en dessous des options existantes
- checkbox.add_option("option 2")
- # Ajouter une nouvelle option au rectangle donné
- checkbox.add_option("option 3", ap.Rectangle(100, 100, 120, 120, True))
- document.form.add(checkbox)
- # Sélectionner la case à cocher ajoutée
- checkbox.value = "option 2"
- document.save(DIR_OUTPUT + "checkbox_group.pdf")
+## Quoi de neuf dans Aspose.PDF 25.10
+
+Contrôle amélioré de la visibilité des calques PDF – cette version introduit la capacité de définir programmément l'état de visibilité initial des calques PDF et de les verrouiller afin d'empêcher les changements de visibilité dans les visualiseurs PDF.
+
+Une nouvelle propriété 'layer.default_state' permet de définir la visibilité par défaut d'un calque comme visible ou masquée en utilisant la propriété DefaultState. Cela offre un contrôle granulaire pour gérer des documents PDF à calques complexes avec un comportement de visibilité utilisateur prévisible.
+
+```python
+import aspose.pdf as ap
+
+
+def manage_layer_visibility(self, infile, outfile):
+ # Create a new PDF document
+ with ap.Document() as document:
+ # Add a page to the document
+ page = document.pages.add()
+ page.set_page_size(500, 500)
+ # Load an image from a file stream
+ with io.FileIO(infile, "r") as stream:
+ # Create a new layer with an ID and a name
+ layer = ap.Layer("1", "testlayer")
+ # Set the initial visibility state of the layer to hidden
+ layer.default_state = ap.DefaultState.HIDDEN
+ # Add the image to the page's resources
+ image_name = page.resources.images.add(stream)
+ # Add operators to the layer's contents to display the image
+ layer.contents.append(ap.operators.GSave())
+ layer.contents.append(ap.operators.ConcatenateMatrix(500, 0, 0, 500, 0, 0))
+ layer.contents.append(ap.operators.Do(image_name))
+ layer.contents.append(ap.operators.GRestore())
+ # Lock the layer to prevent its visibility from being changed in the PDF viewer
+ layer.lock()
+ # Add the layer to the page
+ page.layers.append(layer)
+ # Save the PDF document
+ document.save(outfile)
```
-- Obtenir et définir la valeur d'une case à cocher à valeurs multiples :
+## Quoi de neuf dans Aspose.PDF 25.9
+
+La version 25.9 introduit une accessibilité améliorée, un support de conformité renforcé et de nouvelles capacités d'API pour travailler avec des images balisées et les normes de documents.
+
+1. Convertir les PDF au format PDF/E-1.
+1. Ajouter des images balisées à partir de flux mémoire.
+
+### Convertir le PDF au format PDF/E-1
+
+Dans la version 25.9 de la bibliothèque Aspose.PDF for Python, la conversion au format PDF/E-1 est disponible. Vous pouvez trouver plus d'informations sur ce format sur le [Documentation des formats de fichiers](https://docs.fileformat.com/pdf/e/).
```python
+import aspose.pdf as ap
+
+
+def convert_pdf_to_pdf_e(self, infile, outfile):
+ """PDF/E-1 Standard Support: Added the capability to convert PDF files to the PDF/E-1 format and to validate
+ the output files for compliance with the standard."""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Set up the PDF/E-1 format with PdfFormatConversionOptions
+ options = ap.PdfFormatConversionOptions(
+ ap.PdfFormat.PDF_E_1, ap.ConvertErrorAction.DELETE
+ )
+ # Convert to PDF/E-1 compliant document
+ document.convert(options)
+ # Save PDF document
+ document.save(path_outfile)
+```
- import aspose.pdf as ap
-
- doc = ap.Document("example.pdf")
- form = doc.form
- checkbox = cast(ap.forms.CheckboxField, form.fields[0])
-
- # Les valeurs autorisées peuvent être récupérées à partir de la collection AllowedStates
- # Définir la valeur de la case à cocher en utilisant la propriété Value
- checkbox.value = checkbox.allowed_states[0]
- checkbox_value = checkbox.value # la valeur précédemment définie, par exemple "option 1"
- # La valeur doit être un élément de AllowedStates
- checkbox.value = "option 2"
- checkbox_value = checkbox.value # option 2
- # Décochez les cases en définissant soit Value à "Off", soit Checked à false
- checkbox.value = "Off"
- # ou, alternativement :
- # checkbox.checked = False
- checkbox_value = checkbox.value # Off
+### Ajouter des images balisées depuis un flux
+
+Ajouter des images balisées à partir d'un flux dans le PDF. La version 25.9 prend en charge une accessibilité améliorée des documents PDF en ajoutant une image à partir d'un flux mémoire et en la balisant avec un texte alternatif.
+
+```python
+import aspose.pdf as ap
+
+
+def add_tagged_image_from_stream(self, image_file, outfile):
+ """Enhanced Accessibility for Tagged Images: possible to add alternative text to images loaded from a memory stream."""
+
+ path_image = self.data_dir + image_file
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ page = document.pages.add()
+ # Tag the document for accessibility
+ tagged_content = document.tagged_content
+ tagged_content.set_title("Tagged Image from Stream")
+ tagged_content.set_language("en-US")
+ # Add an image from a stream to the page
+ image_stream = io.FileIO(path_image, "r")
+ page.add_image(image_stream, ap.Rectangle(100, 600, 300, 800, True), None, True)
+ # Get the added image and set its alternative text
+ img = page.resources.images[1]
+ img.try_set_alternative_text("Aspose Logo", page)
+ # Save the document
+ document.save(path_outfile)
```
-- Mettre à jour l'état de la case à cocher lors d'un clic utilisateur :
+## Quoi de neuf dans Aspose.PDF 25.8
+
+Cette mise à jour ajoute plus de flexibilité dans la mise en page et la gestion de la sécurité des documents.
+
+1. Créer des tables des matières balisées (TOC).
+1. Redimensionner les pages PDF avec mise à l’échelle du contenu.
+1. Appliquer des bordures pointillées aux tableaux.
+
+### Créer une Table des matières balisée (TOC)
+
+Générez automatiquement des tables des matières (TOC) accessibles dans des PDF balisés. Créer une table des matières (TOC) entièrement accessible dans un PDF permet aux lecteurs de naviguer efficacement dans le document et garantit la conformité PDF/UA-1 en matière d'accessibilité.
```python
+import aspose.pdf as ap
+
+
+def create_pdf_with_toc_page(self, outfile):
+ """
+ Supports generating fully accessible Tagged Table of Contents (TOC) pages with proper navigation to
+ corresponding sections, ensuring PDF/UA-1 compliance.
+ """
+
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ # Get tagged content for the PDF structure
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ # Add the table of contents (TOC) page
+ toc_page = document.pages.add()
+ toc_page.toc_info = ap.TocInfo()
+ # Create a TOC structure element
+ toc_element = content.create_toc_element()
+ # Add the TOC element to the document structure tree
+ root_element.append_child(toc_element, True)
+ # Add a content page
+ document.pages.add()
+ # Create a header element and set its text
+ header = content.create_header_element(1)
+ header.set_text("1. Header")
+ # Add the header to the document structure
+ root_element.append_child(header, True)
+ # Create a TOC item (TOCI) element
+ toci = content.create_toci_element()
+ # Add the TOCI element to the TOC element
+ toc_element.append_child(toci, True)
+ # Add an entry to the TOC page and link it to the TOCI element
+ header.add_entry_to_toc_page(toc_page, toci)
+ # Add a logical reference to the header within the TOCI element
+ toci.add_ref(header)
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Redimensionner les pages avec mise à l\u00e9chelle du contenu
- import aspose.pdf as ap
- from aspose.pycore import cast
-
- input_file = DIR_INPUT + "input.pdf"
- document = ap.Document(input_file)
- point = ap.Point(62,462) # par exemple, les coordonnées d'un clic de souris
- # Option 1 : parcourir les annotations sur la page
- page = document.pages[5]
- for annotation in page.annotations:
- if(annotation.rect.contains(point)):
- widget = cast(ap.annotations.WidgetAnnotation, annotation)
- checkbox = cast(ap.forms.CheckboxField, widget.parent)
- if(annotation.active_state == "Off"):
- checkbox.value = widget.get_checked_state_name()
- else:
- checkbox.value = "Off"
- break
- # Option 2 : parcourir les champs dans l'AcroForm
- for widget in document.form:
- field = cast(ap.forms.Field, widget)
- if(field == None):
- continue
- checkBoxFound = False
- for annotation in field:
- if(annotation.rect.contains(point)):
- checkBoxFound = True
- if(annotation.active_state=="Off"):
- annotation.parent.value = annotation.get_checked_state_name()
- else:
- annotation.parent.value = "Off"
- if(checkBoxFound):
- break
+Redimensionner les pages PDF tout en préservant la mise en page et en redimensionnant le contenu proportionnellement. Lors du travail avec les PDF, il peut être nécessaire de redimensionner les pages ou de mettre à l'échelle le contenu pour l'adapter à de nouvelles dimensions.
+
+```python
+import aspose.pdf as ap
+
+
+def resize_page(
+ self, document, page_number, target_width, target_height, width, height, outfile
+):
+ """
+ Resize and scale page content using PdfFileEditor.ResizeContents.
+
+ A high-level helper that scales and/or resizes the rendered content streams of one or more pages
+ without performing a full content reflow. Use this to make existing page contents larger or smaller,
+ fit content into a different page box, or uniformly scale content for printing or display.
+
+ Parameters (recommended)
+ ------------------------
+ pdf_editor : Aspose.Pdf.Facades.PdfFileEditor
+ The PdfFileEditor instance that exposes the ResizeContents API.
+ page_numbers : int | Iterable[int] | slice, optional
+ Page index (1-based) or collection of page indices to process. If omitted or None, all pages
+ in the document are processed.
+ scale : float, optional
+ Uniform scale factor to apply to content (e.g., 0.5 reduces content to 50%). Mutually exclusive
+ with target_width/target_height unless keep_aspect_ratio is explicitly handled.
+ target_width : float, optional
+ Desired content width in PDF points (1 point = 1/72 inch). When provided, content will be scaled
+ to match this width (subject to keep_aspect_ratio and fit_mode).
+ target_height : float, optional
+ Desired content height in PDF points.
+ keep_aspect_ratio : bool, default True
+ If True, preserve the original aspect ratio when scaling to a target width or height.
+ fit_mode : {'fit', 'fill', 'stretch'}, default 'fit'
+ 'fit' — scale so content fits entirely inside the target box, preserving aspect ratio;
+ 'fill' — scale so the target box is completely covered (may crop content);
+ 'stretch' — scale independently in X and Y (may distort).
+ margins : tuple(float, float, float, float), optional
+ (left, top, right, bottom) margins in points to preserve inside the target box.
+ preserve_annotations : bool, default True
+ When True, attempt to preserve annotations/forms/interactive elements; some annotations may
+ require special handling after scaling.
+ preserve_transparency : bool, default True
+ Preserve transparency settings of page contents where possible.
+
+ Returns
+ -------
+ bool
+ True if the operation completed successfully. Some implementations operate in-place and may
+ return a status rather than a new document object.
+
+ Raises
+ ------
+ ValueError
+ If parameters are invalid (e.g., scale <= 0 or both scale and conflicting target dimensions).
+ IOError
+ If input/output streams cannot be read or written.
+ PdfProcessingError
+ If the PDF content streams cannot be interpreted or transformed by the editor.
+
+ Notes
+ -----
+ - All size and margin values are in PDF points (1/72 inch). Convert from inches or millimeters
+ before calling if necessary.
+ - This API scales content streams and their transform matrices; it does not reflow text or rebuild
+ page layout. Text encoded as vectors will scale; text drawn by layout engines may not reflow.
+ - Complex page objects such as XObjects, forms, and annotations may require additional post-processing.
+ - For raster-output use-cases (images/screenshots), consider exporting to an image at a target DPI
+ instead of scaling content streams.
+ - When targeting printing, compute target page size in points from the physical paper size and DPI.
+
+ Example (conceptual)
+ --------------------
+ # Scale pages 1-3 to 50%:
+ editor = PdfFileEditor(input_stream, output_stream)
+ editor.ResizeContents(page_numbers=[1,2,3], scale=0.5)
+ editor.Save()
+
+ # Fit page content into a letter-sized box while preserving aspect ratio:
+ editor.ResizeContents(page_numbers=None, target_width=612, target_height=792, fit_mode='fit')
+
+ See also
+ --------
+ PdfFileEditor.ResizeContents : Low-level API that performs content scaling and transform adjustments.
+ """
+
+ path_outfile = self.data_dir + outfile
+
+ margin_width = (target_width - width) / 2
+ margin_height = (target_height - height) / 2
+
+ # Set the parameters
+ param = ap.facades.PdfFileEditor.ContentsResizeParameters.page_resize(width, height)
+ param.top_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(margin_height)
+ param.bottom_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(
+ margin_height
+ )
+ param.left_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(margin_width)
+ param.right_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(
+ margin_width
+ )
+ param.change_media_box = True
+
+ # Do resize
+ ap.facades.PdfFileEditor().resize_contents(document, [page_number], param)
+
+ document.save(path_outfile)
```
+### Appliquer des bordures en pointillés aux tableaux
+
+Ajoutez des tableaux avec des styles de bordure personnalisés en utilisant des lignes pointillées. Cet exemple démontre comment appliquer des styles de bordure personnalisés — tels que des lignes pointillées ou en pointillés — aux tableaux d'un document PDF en utilisant Aspose.PDF for Python via .NET.
+
+```python
+import aspose.pdf as ap
+
-## Quoi de neuf dans Aspose.PDF 23.7
+def create_table_with_dashed_border(self, outfile):
+ """Support style for table borders, allowing you to set dashed, dotted, or custom border styles for tables."""
-Depuis la version 23.7, il est possible d'ajouter l'extraction de formes :
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ page = document.pages.add()
+ table = ap.Table()
+ graph_info = ap.GraphInfo()
+ graph_info.dash_array = [10, 10]
+ graph_info.dash_phase = 5
+ graph_info.line_width = 3
+ table.border = ap.BorderInfo(ap.BorderSide.BOX, graph_info)
+ row = table.rows.add()
+ row.cells.add("Dashed border cell")
+
+ page.paragraphs.add(table)
+
+ document.save(path_outfile)
+```
+
+## Quoi de neuf dans Aspose.PDF 25.7
+
+La version 25.7 se concentre sur une meilleure prise en charge des annotations, l'ajustement du texte et la gestion des signatures numériques.
+
+1. Adapter le texte à l'intérieur des formes.
+1. Chiffrer les PDF à l'aide d'un certificat public.
+1. Ajouter des annotations de nuage et de polygone.
+
+### Chiffrer les PDF avec un certificat public
+
+Protégez vos PDF avec un chiffrement basé sur des certificats publics. Le chiffrement par certificat public permet de chiffrer les PDF pour des destinataires spécifiques, garantissant que seuls les détenteurs des clés privées correspondantes peuvent ouvrir et lire le document.
```python
+import aspose.pdf as ap
+
+
+def pub_sec_encryption(self, outfile, pub_cert, crypto_algorithm):
+ """Support for public certificate encryption, allowing PDFs to be encrypted so that only specified certificate
+ holders can open the document."""
- import aspose.pdf as ap
+ # The path to the recipient certificate
+ path_outfile = self.data_dir + outfile
+ path_cert = self.data_dir + pub_cert
- input1_file = DIR_INPUT + "input_1.pdf"
- input2_file = DIR_INPUT + "input_2.pdf"
+ # Create the PDF document
+ with ap.Document() as document:
+ # Add an info
+ document.info.title = "TestTitle"
+ document.info.author = "TestAuthor"
- source = ap.Document(input1_file)
- dest = ap.Document(input2_file)
+ # Add a page and add some text
+ page = document.pages.add()
+ text = ap.text.TextFragment("Hello World!")
+ page.paragraphs.add(text)
- graphic_absorber = ap.vector.GraphicsAbsorber()
- graphic_absorber.visit(source.pages[1])
- area = ap.Rectangle(90, 250, 300, 400, True)
- dest.pages[1].add_graphics(graphic_absorber.elements, area)
+ # Load certificate
+ with open(path_cert, "rb") as f:
+ cert_data = f.read()
+
+ # Encrypt the PDF document
+ document.encrypt(ap.Permissions.PRINT_DOCUMENT, crypto_algorithm, [cert_data])
+
+ # Save the PDF document. A private key certificate must be installed in the storage to open the document
+ # by Adobe Acrobat.
+ document.save(path_outfile)
```
-Il prend également en charge la capacité de détecter le débordement lors de l'ajout de texte :
+### Ajuster le texte dans un rectangle
+
+Redimensionner automatiquement le texte pour qu'il s'adapte à l'intérieur d'un rectangle défini. Lors de la mise à jour ou de l'agrandissement du texte dans un PDF, il peut dépasser les limites du paragraphe d'origine.
```python
+import re
+import aspose.pdf as ap
+
+
+def fit_text_into_rectangle(self, infile, outfile):
+ """New functionality to fit expanded text content within the bounds of a paragraph’s original rectangle,
+ adjusting font size and spacing automatically."""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Extract the paragraph text (or provide the specific text you want to replace)
+ text_absorber = ap.text.TextAbsorber()
+ text_absorber.visit(document)
+ paragraph_text = text_absorber.text
+ paragraph_text = paragraph_text.replace("\n", " ")
+
+ # Search for the text fragment
+ searchable_content = re.sub(" ", r"\\s+", paragraph_text)
+ text_fragment_absorber = ap.text.TextFragmentAbsorber(
+ searchable_content, ap.text.TextSearchOptions(True)
+ )
+ document.pages.accept(text_fragment_absorber)
+ text_fragment = text_fragment_absorber.text_fragments[1]
+ # Use the text fragment’s rectangle as the target replacement area
+ text_fragment.replace_options.rectangle = text_fragment.rectangle
+ # Enable font size reduction to fit the text within the specified area
+ text_fragment.replace_options.font_size_adjustment_action = (
+ ap.text.TextReplaceOptions.FontSizeAdjustment.SHRINK_TO_FIT
+ )
+ # Optionally adjust spacing to justify the text width
+ text_fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ # Duplicate the paragraph content and assign it to the text fragment
+ text_fragment.text = paragraph_text + " " + paragraph_text
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Ajouter des annotations de polygone nuage
+
+Améliorez les flux de travail de révision de PDF avec des annotations en forme de nuage ou de polygone. Les annotations de polygone vous permettent de mettre en évidence ou d'accentuer des zones spécifiques dans un PDF à l'aide de formes géométriques.
- import aspose.pdf as ap
-
- output_file = DIR_OUTPUT + "output.pdf"
- doc = ap.Document()
- paragraph_content = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras nisl tortor, efficitur sed cursus in, lobortis vitae nulla. Quisque rhoncus, felis sed dictum semper, est tellus finibus augue, ut feugiat enim risus eget tortor. Nulla finibus velit nec ante gravida sollicitudin. Morbi sollicitudin vehicula facilisis. Vestibulum ac convallis erat. Ut eget varius sem. Nam varius pharetra lorem, id ullamcorper justo auctor ac. Integer quis erat vitae lacus mollis volutpat eget et eros. Donec a efficitur dolor. Maecenas non dapibus nisi, ut pellentesque elit. Sed pellentesque rhoncus ante, a consectetur ligula viverra vel. Integer eget bibendum ante. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Curabitur elementum, sem a auctor vulputate, ante libero iaculis dolor, vitae facilisis dolor lorem at orci. Sed laoreet dui id nisi accumsan, id posuere diam accumsan."
- fragment = ap.text.TextFragment(paragraph_content)
- rectangle = ap.Rectangle(100, 600, 500, 700, False)
- paragraph = ap.text.TextParagraph()
- paragraph.vertical_alignment = ap.VerticalAlignment.TOP
- paragraph.formatting_options.wrap_mode = ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
- paragraph.rectangle = rectangle
- is_fit_rectangle = fragment.text_state.is_fit_rectangle(paragraph_content, rectangle)
-
- while is_fit_rectangle == False:
- fragment.text_state.font_size -= 0.5
- is_fit_rectangle = fragment.text_state.is_fit_rectangle(paragraph_content, rectangle)
-
- paragraph.append_line(fragment)
- builder = ap.text.TextBuilder(doc.pages.add())
- builder.append_paragraph(paragraph)
- doc.save(output_file)
+```python
+import aspose.pdf as ap
+
+
+def add_cloud_polygon_annotation(self, outfile):
+ """The ability to apply “Cloudy” border effects to polygon annotations for enhanced visual appearance."""
+
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ page = document.pages.add()
+ # Add Cloud Polygon (rectangle)
+ left = 100.0
+ top = 270.0
+ right = 420.0
+ bottom = 80.0
+ cloud_polygon = ap.annotations.PolygonAnnotation(
+ page,
+ ap.Rectangle(left, top, right, bottom, True),
+ [
+ ap.Point(left, top),
+ ap.Point(right, top),
+ ap.Point(right, bottom),
+ ap.Point(left, bottom),
+ ],
+ )
+ cloud_polygon.color = ap.Color.blue
+ border = ap.annotations.Border(cloud_polygon)
+ border.width = 3
+ border.effect = ap.annotations.BorderEffect.CLOUDY
+ cloud_polygon.border = border
+ page.annotations.append(cloud_polygon)
+ # Add another Cloud Polygon
+ cloud_polygon = ap.annotations.PolygonAnnotation(
+ page,
+ ap.Rectangle(400, 400, 580, 600, True),
+ [
+ ap.Point(400, 450),
+ ap.Point(450, 300),
+ ap.Point(520, 300),
+ ap.Point(580, 500),
+ ap.Point(500, 600),
+ ],
+ )
+ cloud_polygon.color = ap.Color.dark_green
+ cloud_polygon.interior_color = ap.Color.aqua
+ border = ap.annotations.Border(cloud_polygon)
+ border.width = 3
+ border.effect = ap.annotations.BorderEffect.CLOUDY
+ cloud_polygon.border = border
+ page.annotations.append(cloud_polygon)
+ # Save PDF document
+ document.save(path_outfile)
```
+## Quoi de neuf dans Aspose.PDF 25.6
+
+Les principales fonctionnalités de cette version :
+
+1. Prise en charge du texte alternatif d'image.
+1. Accès aux informations de licence.
+1. Annotations de texte libre stylisées.
+1. Apparence de signature numérique personnalisable.
-## Quoi de neuf dans Aspose.PDF 23.6
+### Prise en charge du texte alternatif des images
-Prise en charge de la possibilité de définir le titre de la page HTML, Epub :
+Définir et récupérer le texte alternatif des images pour améliorer l'accessibilité des lecteurs d'écran.
```python
+import aspose.pdf as ap
+
+
+def get_set_alternative_text_for_image(self, infile, outfile):
+ """To get and set the alternative text for images"""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Alternative text to be given to the image
+ alt_text = "Alternative text for image"
+ # Image for which alternative text will be set and get
+ x_image = document.pages[1].resources.images[1]
+ # Try to set alternative text for an image
+ result = x_image.try_set_alternative_text(alt_text, document.pages[1])
+ # If set is successful, then get the alternative text for the image
+ if result:
+ alt_texts = x_image.get_alternative_text(document.pages[1])
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Accès aux informations de licence
- import aspose.pdf as ap
+Récupérer les métadonnées détaillées de la licence (utilisateur licencié, date d'expiration) via LicenseInfo.
- input_pdf = DIR_INPUT + "input.pdf"
- output_html = DIR_OUTPUT + "output_title.html"
- options = ap.HtmlSaveOptions()
- options.fixed_layout = True
- options.raster_images_saving_mode = ap.HtmlSaveOptions.RasterImagesSavingModes.AS_EMBEDDED_PARTS_OF_PNG_PAGE_BACKGROUND
- options.parts_embedding_mode = ap.HtmlSaveOptions.PartsEmbeddingModes.EMBED_ALL_INTO_HTML
- options.title = "NOUVELLE PAGE & TITRE" # <-- ceci ajouté
+```python
+import aspose.pdf as ap
- document = ap.Document(input_pdf)
- document.save(output_html, options)
+
+def get_license_info_example(self, infile):
+ """A new way to access license information programmatically through the LicenseInfo property of the License class"""
+
+ path_infile = self.data_dir + infile
+
+ # Initialize license object
+ lic = ap.License()
+ # Set license
+ lic.set_license(path_infile)
+ # Get license info.
+ lic_license_info = lic.license_info
+ print(lic_license_info.licensed_to)
+ print(lic_license_info.subscription_expiry)
```
-## Quoi de neuf dans Aspose.PDF 23.5
+### Annotations de texte libre stylisées
-Depuis la version 23.5, support pour ajouter l'option RedactionAnnotation FontSize. Utilisez l'extrait de code suivant pour résoudre cette tâche :
+Utilisez SetTextStyle pour appliquer des styles tels que gras, italique, souligné, ou effacer le formatage existant du texte d'annotation.
```python
+import aspose.pdf as ap
+
+
+def add_free_annotation_and_set_styles(self, outfile):
+ """Extended formatting capabilities for annotation text through the SetTextStyle method family of the
+ FreeTextAnnotation class"""
+
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document() as document:
+ # Add new page
+ page = document.pages.add()
+ # Instantiate DefaultAppearance object
+ default_appearance = ap.annotations.DefaultAppearance(
+ "Arial", 16, drawing.Color.blue
+ )
+ # Create annotation
+ free_text = ap.annotations.FreeTextAnnotation(
+ page, ap.Rectangle(20, 600, 400, 650, True), default_appearance
+ )
+ # Specify the contents of annotation
+ free_text.contents = "Text of FreeTextAnnotation with different styles"
+ # Add annotation to annotations collection of page
+ page.annotations.append(free_text)
+ # Set styles for annotation text
+ free_text.set_text_style(0, 4, ap.annotations.RichTextFontStyles.ITALIC)
+ free_text.set_text_style(
+ 8,
+ 26,
+ ap.annotations.RichTextFontStyles.UNDERLINE
+ | ap.annotations.RichTextFontStyles.BOLD,
+ )
+ free_text.set_text_style(27, 86, ap.annotations.RichTextFontStyles.BOLD)
+ free_text.set_text_style(
+ 42,
+ 45,
+ ap.annotations.RichTextFontStyles.CLEAR_EXISTING
+ | ap.annotations.RichTextFontStyles.UNDERLINE,
+ )
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Apparence de signature numérique personnalisable
+
+Ajoutez des images, modifiez les polices et superposez des graphiques de signature sur le contenu d'arrière-plan pour une meilleure image de marque ou une cohérence de conception.
- import aspose.pdf as ap
-
- doc = ap.Document(DIR_INPUT + "input.pdf")
- # Créer une instance de RedactionAnnotation pour une région spécifique de la page
- annot = ap.annotations.RedactionAnnotation(doc.pages[1], ap.Rectangle(367, 756.919982910156, 420, 823.919982910156, True))
- annot.fill_color = ap.Color.black
- annot.border_color = ap.Color.yellow
- annot.color = ap.Color.blue
- # Texte à imprimer sur l'annotation de rédaction
- annot.overlay_text = "(Inconnu)"
- annot.text_alignment = ap.HorizontalAlignment.CENTER
- # Répéter le texte de superposition sur l'annotation de rédaction
- annot.repeat = False
- # Nouvelle propriété ici !
- annot.font_size = 20
- # Ajouter l'annotation à la collection d'annotations de la première page
- doc.pages[1].annotations.add(annot, False)
- # Aplatit l'annotation et rédige le contenu de la page (c'est-à-dire supprime le texte et l'image
- # sous l'annotation rédigée)
- annot.redact()
- out_file = DIR_OUTPUT + "RedactPage_out.pdf"
- doc.save(out_file)
+```python
+import aspose.pdf as ap
+
+
+def customization_features_for_digital_sign(
+ self, infile, outfile, image_file, pfx_file
+):
+ """Enhanced digital signature appearance allowing signature images to appear over background text."""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+ path_image = self.data_dir + image_file
+ path_pfx = self.data_dir + pfx_file
+
+ with ap.facades.PdfFileSignature() as pdf_file_signature:
+ # Bind PDF document
+ pdf_file_signature.bind_pdf(path_infile)
+ # Create a rectangle for signature location
+ rect = drawing.Rectangle(10, 10, 300, 50)
+ # Create any of the three signature types
+ signature = ap.forms.PKCS7Detached(path_pfx, "12345")
+ # Create signature appearance
+ signature_custom_appearance = ap.forms.SignatureCustomAppearance()
+ signature_custom_appearance.font_size = 6
+ signature_custom_appearance.font_family_name = "Times New Roman"
+ signature_custom_appearance.digital_signed_label = "Signed by:"
+ signature_custom_appearance.is_foreground_image = True
+ # Set signature appearance
+ signature.custom_appearance = signature_custom_appearance
+ # Set signature appearance
+ pdf_file_signature.signature_appearance = path_image
+ pdf_file_signature.sign(1, True, rect, signature)
+ # Save PDF document
+ pdf_file_signature.save(path_outfile)
```
+## Quoi de neuf dans Aspose.PDF 25.5
+
+La dernière mise à jour d'Aspose.PDF introduit plusieurs améliorations puissantes qui améliorent l'accessibilité, la compatibilité et la sécurité des documents. Les développeurs peuvent désormais extraire les certificats numériques directement à partir des fichiers PDF signés, permettant des vérifications avancées et des contrôles de conformité.
-Le support pour Python 3.5 a été interrompu. Le support pour Python 3.11 a été ajouté.
+1. Extraire les certificats des signatures PDF.
+1. Créer des listes ordonnées structurées dans les PDF balisés.
+1. Vérifier les signatures avec des certificats à clé publique.
+1. Convertir les formulaires XFA dynamiques en PDF AcroForm.
+1. Remplacement de police dans PDF - Conversion XPS.
-## Quoi de neuf dans Aspose.PDF 23.3
+### Extraire les certificats des signatures PDF
-La version 23.3 a introduit la prise en charge de l'ajout d'une résolution à une image. Deux méthodes peuvent être utilisées pour résoudre ce problème :
+Récupérez les certificats intégrés en utilisant 'extract_certificate()'.
```python
+import aspose.pdf as ap
+
+
+def extract_certificate(self, infile):
+ path_infile = self.data_dir + infile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ # Get signature names
+ signature_names = signature.get_signature_names(True)
+ for signature_name in signature_names:
+ # Extract certificate
+ certificate = []
+ if signature.try_extract_certificate(signature_name, certificate):
+ print(certificate[0] is not None)
+```
- import aspose.pdf as ap
+### Créer des listes ordonnées structurées dans les PDF balisés
- input_file = DIR_INPUT + "input.jpg"
- table = ap.Table()
- table.column_widths = "600"
- image = ap.Image()
- image.is_apply_resolution = True
- image.file = input_file
- for i in range(0, 2):
- row = table.rows.add()
- cell = row.cells.add()
- cell.paragraphs.add(image)
+Générer des listes numérotées accessibles (avec des éléments imbriqués) dans les documents balisés.
- page.paragraphs.add(table)
+```python
+import aspose.pdf as ap
+
+
+def create_ordered_list(self, outfile):
+ path_outfile = self.data_dir + outfile
+
+ # Create or open PDF document
+ with ap.Document() as document:
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ root_list = content.create_list_element()
+ span_for_lbl_1 = content.create_span_element()
+ span_for_lbl_1.set_text("1. ")
+ position_settings = ap.tagged.PositionSettings()
+ position_settings.is_in_line_paragraph = True
+ span_for_lbl_1.adjust_position(position_settings)
+ span_for_body_1 = content.create_span_element()
+ span_for_body_1.set_text("bread")
+ span_for_body_1.adjust_position(position_settings)
+ lbl_1 = content.create_list_lbl_element()
+ lbl_1.append_child(span_for_body_1, True)
+ l_body_1 = content.create_list_l_body_element()
+ l_body_1.append_child(span_for_lbl_1, True)
+ li_1 = content.create_list_li_element()
+ li_1.append_child(lbl_1, True)
+ li_1.append_child(l_body_1, True)
+ root_list.append_child(li_1, True)
+ span_for_lbl_2 = content.create_span_element()
+ span_for_lbl_2.set_text("2. ")
+ span_for_body_2 = content.create_span_element()
+ span_for_body_2.set_text("milk")
+ span_for_body_2.adjust_position(position_settings)
+ lbl_2 = content.create_list_lbl_element()
+ lbl_2.append_child(span_for_lbl_2, True)
+ l_body_2 = content.create_list_l_body_element()
+ l_body_2.append_child(span_for_body_2, True)
+ li_2 = content.create_list_li_element()
+ li_2.append_child(lbl_2, True)
+ li_2.append_child(l_body_2, True)
+ root_list.append_child(li_2, True)
+ nested_list_depth_1 = content.create_list_element()
+ span_for_lbl_3_1 = content.create_span_element()
+ span_for_lbl_3_1.set_text("3.1. ")
+ position_settings_lbl_3_1 = ap.tagged.PositionSettings()
+ position_settings_lbl_3_1.is_in_line_paragraph = False
+ margin_info = ap.MarginInfo()
+ margin_info.left = 50
+ position_settings_lbl_3_1.margin = margin_info
+ span_for_lbl_3_1.adjust_position(position_settings_lbl_3_1)
+ span_for_body_3_1 = content.create_span_element()
+ span_for_body_3_1.set_text("apples")
+ span_for_body_3_1.adjust_position(position_settings)
+ lbl_3_1 = content.create_list_lbl_element()
+ lbl_3_1.append_child(span_for_lbl_3_1, True)
+ l_body_3_1 = content.create_list_l_body_element()
+ l_body_3_1.append_child(span_for_body_3_1, True)
+ li_3_1 = content.create_list_li_element()
+ li_3_1.append_child(lbl_3_1, True)
+ li_3_1.append_child(l_body_3_1, True)
+ nested_list_depth_1.append_child(li_3_1, True)
+ span_for_lbl_3_2 = content.create_span_element()
+ span_for_lbl_3_2.set_text("3.2. ")
+ span_for_lbl_3_2.adjust_position(position_settings_lbl_3_1)
+ span_for_body_3_2 = content.create_span_element()
+ span_for_body_3_2.set_text("banana")
+ span_for_body_3_2.adjust_position(position_settings)
+ lbl_3_2 = content.create_list_lbl_element()
+ lbl_3_2.append_child(span_for_lbl_3_2, True)
+ l_body_3_2 = content.create_list_l_body_element()
+ l_body_3_2.append_child(span_for_body_3_2, True)
+ li_3_2 = content.create_list_li_element()
+ li_3_2.append_child(lbl_3_2, True)
+ li_3_2.append_child(l_body_3_2, True)
+ nested_list_depth_1.append_child(li_3_2, True)
+ span_for_lbl_3 = content.create_span_element()
+ span_for_lbl_3.set_text("3. ")
+ span_for_body_3 = content.create_span_element()
+ span_for_body_3.set_text("fruits")
+ span_for_body_3.adjust_position(position_settings)
+ lbl_3 = content.create_list_lbl_element()
+ lbl_3.append_child(span_for_lbl_3, True)
+ l_body_3 = content.create_list_l_body_element()
+ l_body_3.append_child(span_for_body_3, True)
+ li_3 = content.create_list_li_element()
+ li_3.append_child(lbl_3, True)
+ li_3.append_child(l_body_3, True)
+ l_body_3.append_child(nested_list_depth_1, True)
+ root_list.append_child(li_3, True)
+ root_element.append_child(root_list, True)
+ # Save Tagged PDF Document
+ document.save(path_outfile)
```
-L'image sera placée avec une résolution mise à l'échelle ou vous pouvez définir les propriétés FixedWidth ou FixedHeight en combinaison avec IsApplyResolution
+### Vérifier les signatures avec des certificats à clé publique
-## Quoi de neuf dans Aspose.PDF 23.1
+Valider les signatures numériques en utilisant des certificats de clé publique externes.
-Depuis la version 23.1, il est possible de créer une annotation PrinterMark.
+```python
+import aspose.pdf as ap
-Les marques d'imprimante sont des symboles graphiques ou du texte ajoutés à une page pour aider le personnel de production à identifier les composants d'un travail à plaques multiples et à maintenir une sortie cohérente pendant la production.
- Exemples couramment utilisés dans l'industrie de l'impression incluent :
-- Cibles d'enregistrement pour aligner les plaques
-- Rampes de gris et barres de couleur pour mesurer les couleurs et les densités d'encre
-- Marques de coupe indiquant où le support de sortie doit être coupé
+def verify_with_public_key_certificate1(self, certificate, infile):
+ path_infile = self.data_dir + infile
-Nous allons montrer l'exemple de l'option avec des barres de couleur pour mesurer les couleurs et les densités d'encre. Il y a une classe abstraite de base PrinterMarkAnnotation et de celle-ci un enfant ColorBarAnnotation - qui implémente déjà ces bandes. Vérifions l'exemple :
+ # Create an instance of PdfFileSignature for working with signatures in the document
+ with ap.facades.PdfFileSignature(path_infile) as file_sign:
+ # Get a list of signatures
+ signature_names = file_sign.get_signature_names(True)
+ # Verify the signature with the given name.
+ return file_sign.verify_signature(signature_names[0], certificate)
+```
-```python
+### Convertir les formulaires XFA dynamiques en PDF AcroForm
+
+Standardiser les formulaires XFA avec 'ignore_needs_rendering'.
- import aspose.pdf as ap
-
- out_file = DIR_OUTPUT + "ColorBarTest.pdf"
- doc = ap.Document()
- page = doc.pages.add()
- page.trim_box = ap.Rectangle(20, 20, 580, 820, True)
- add_annotations(page)
- doc.save(out_file)
-
-
-def add_annotations(page: ap.Page):
- rect_black = ap.Rectangle(100, 300, 300, 320, True)
- rect_cyan = ap.Rectangle(200, 600, 260, 690, True)
- rect_magenta = ap.Rectangle(10, 650, 140, 670, True)
- color_bar_black = ap.annotations.ColorBarAnnotation(page, rect_black, ap.annotations.ColorsOfCMYK.BLACK)
- color_bar_cyan = ap.annotations.ColorBarAnnotation(page, rect_cyan, ap.annotations.ColorsOfCMYK.CYAN)
- color_ba_magenta = ap.annotations.ColorBarAnnotation(page, rect_magenta, ap.annotations.ColorsOfCMYK.BLACK)
- color_ba_magenta.color_of_cmyk = ap.annotations.ColorsOfCMYK.MAGENTA
- color_bar_yellow = ap.annotations.ColorBarAnnotation(page, ap.Rectangle(400, 250, 450, 700, True), ap.annotations.ColorsOfCMYK.YELLOW)
- page.annotations.add(color_bar_black, False)
- page.annotations.add(color_bar_cyan, False)
- page.annotations.add(color_ba_magenta, False)
- page.annotations.add(color_bar_yellow, False)
+```python
+import aspose.pdf as ap
+
+
+def convert_xfa_form_with_ignore_needs_rendering(self, infile, outfile):
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Load dynamic XFA form
+ with ap.Document(path_infile) as document:
+ # check if XFA is present & if rendering should be overwritten
+ if not document.form.needs_rendering and document.form.has_xfa:
+ document.form.ignore_needs_rendering = True
+ # Set the form fields type as standard AcroForm
+ document.form.type = ap.forms.FormType.STANDARD
+ # Save the resultant PDF
+ document.save(path_outfile)
```
-Also supporte l'extraction des images vectorielles. Essayez d'utiliser le code suivant pour détecter et extraire des graphiques vectoriels :
+
+### Remplacement de police dans PDF - Conversion XPS
+
+Remplacer les polices manquantes par une police de secours par défaut (par ex., « Courier New »).
```python
+import aspose.pdf as ap
+
+
+def replace_font_when_converting_pdf_to_xps(self, infile, outfile):
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Create XpsSaveOptions instance
+ xps_save_options = ap.XpsSaveOptions()
+ # use_embedded_true_type_fonts option specifies whether to use embedded TrueType fonts
+ xps_save_options.use_embedded_true_type_fonts = False
+ # The specified default font will be used if the embedded font name cannot be found in the system
+ xps_save_options.default_font = "Courier New"
+ # Open PDF document
+ doc = ap.Document(path_infile)
+ # Save the resultant XPS
+ doc.save(path_outfile, xps_save_options)
+```
+
+## Quoi de neuf dans Aspose.PDF 25.4
+
+### Étiquetage automatique lors de la conversion PDF/A
- import aspose.pdf as ap
+Convertissez les PDF en PDF/A-1b avec création automatique de la structure logique pour améliorer l’accessibilité.
- input_pdf = DIR_INPUT + "input.pdf"
- output_pdf = DIR_OUTPUT + "output.svg"
- doc = ap.Document(input_pdf)
- doc.pages[1].try_save_vector_graphics(output_pdf)
-```
\ No newline at end of file
+```python
+import aspose.pdf as ap
+
+
+def convert_to_pdfa_with_automatic_tagging(self, infile, outfile, outlogfile):
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+ path_outlogfile = self.data_dir + outlogfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Create conversion options
+ options = ap.PdfFormatConversionOptions(
+ path_outlogfile, ap.PdfFormat.PDF_A_1B, ap.ConvertErrorAction.DELETE
+ )
+ # Create auto-tagging settings
+ # aspose.pdf.AutoTaggingSettings.default may be used to set the same settings as given below
+ auto_tagging_settings = ap.AutoTaggingSettings()
+ # Enable auto-tagging during the conversion process
+ auto_tagging_settings.enable_auto_tagging = True
+ # Use the heading recognition strategy that's optimal for the given document structure
+ auto_tagging_settings.heading_recognition_strategy = (
+ ap.HeadingRecognitionStrategy.AUTO
+ )
+ # Assign auto-tagging settings to be used during the conversion process
+ options.auto_tagging_settings = auto_tagging_settings
+ # During the conversion, the document logical structure will be automatically created
+ document.convert(options)
+ # Save PDF document
+ document.save(path_outfile)
+```
diff --git a/fr/python-net/working-with-facades/_index.md b/fr/python-net/working-with-facades/_index.md
new file mode 100644
index 0000000000..ed6570c560
--- /dev/null
+++ b/fr/python-net/working-with-facades/_index.md
@@ -0,0 +1,60 @@
+---
+title: Travailler avec PDF Facades
+linktitle: Travailler avec PDF Facades
+type: docs
+weight: 100
+url: /fr/python-net/working-with-facades/
+description: Apprenez comment utiliser Aspose.PDF Facades en Python via .NET pour modifier le contenu PDF, gérer les Form et les annotations, appliquer la sécurité, signer des fichiers, tamponner des pages, imprimer des documents et inspecter les métadonnées PDF.
+is_node: true
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Utilisez PDF Facades en Python via .NET pour les Form, les signatures, la sécurité, les tampons et le traitement des fichiers.
+Abstract: Cette section explique comment utiliser Aspose.PDF Facades pour Python via .NET afin de gérer des flux de travail PDF courants avec des API simplifiées. Apprenez à fusionner et diviser les fichiers, modifier le contenu, gérer les annotations et les Form, appliquer la sécurité, signer des documents, ajouter des tampons, imprimer des PDF et récupérer les informations du fichier.
+---
+
+Aspose.PDF Facades est un ensemble de classes d'assistance dans Aspose.PDF pour Python via .NET qui vous permet d'exécuter des opérations PDF courantes sans travailler directement avec le modèle d'objet document de bas niveau.
+
+Cette section couvre les principales classes de façade que vous pouvez utiliser pour modifier le contenu PDF, gérer les Form, ajouter des annotations, appliquer la sécurité, signer des fichiers, travailler avec les tampons, imprimer des documents et récupérer les informations du fichier PDF dans les applications Python.
+
+Si vous avez besoin d'une API pratique pour les tâches quotidiennes de traitement PDF telles que la fusion de documents, le remplissage de formulaires, l'application d'autorisations ou la signature de fichiers, l'API Facades offre un moyen simplifié de créer ces flux de travail.
+
+## Pourquoi utiliser les Facades dans Aspose.PDF for Python via .NET
+
+Les Facades PDF offrent une couche API simplifiée pour les flux de travail de documents courants. Elles sont utiles lorsque vous devez effectuer rapidement des opérations PDF pratiques, telles que la fusion de fichiers, le remplissage de formulaires, le tamponnage de pages ou l'application de signatures numériques, sans travailler directement avec le modèle d'objet complet du document.
+
+Elles sont particulièrement utiles pour les scénarios d'automatisation où vous souhaitez des API concises et orientées tâche pour l'édition PDF, la gestion de formulaires, la mise à jour d'annotations, la sécurité des documents et les flux de travail de sortie en Python.
+
+## Principales classes de façade PDF
+
+Dans cette section, vous apprendrez comment travailler avec ces classes de façade :
+
+- [Divisez, fusionnez et traitez les fichiers PDF avec **PdfFileEditor**](/pdf/fr/python-net/pdffileeditor-class/).
+- [Modifiez le contenu PDF avec **PdfContentEditor**](/pdf/fr/python-net/pdfcontenteditor-class/).
+- [Gérez les annotations et commentaires PDF avec **PdfAnnotationEditor**](/pdf/fr/python-net/pdfannotationeditor-class/).
+- [Signez les fichiers PDF avec des certificats en utilisant **PdfFileSignature**](/pdf/fr/python-net/pdffilesignature-class/).
+- [Ajoutez, mettez à jour et supprimez les champs de formulaire avec **FormEditor**](/pdf/fr/python-net/formeditor-class/).
+- [Accédez aux métadonnées PDF et aux détails du fichier avec **PdfFileInfo**](/pdf/fr/python-net/pdffileinfo-class/).
+- [Chiffrez, déchiffrez et définissez les privilèges du document avec **PdfFileSecurity**](/pdf/fr/python-net/pdffilesecurity-class/).
+- [Ajoutez des tampons de page et d'image avec **PdfFileStamp**](/pdf/fr/python-net/pdffilestamp-class/).
+- [Imprimez des documents PDF avec **PdfViewer**](/pdf/fr/python-net/pdfviewer-class/).
+- [Travaillez avec les données AcroForm en utilisant **Form**](/pdf/fr/python-net/form-class/).
+- [Appliquez des tampons aux documents PDF avec **Stamp**](/pdf/fr/python-net/stamp-class/).
+
+## Flux de travail populaires de la façade PDF
+
+Utilisez ces API de façade lorsque vous devez automatiser des tâches PDF courantes en Python :
+
+- Fusionnez, scindez et réorganisez des fichiers PDF pour les flux de travail de traitement de documents.
+- Remplissez des formulaires PDF interactifs, mettez à jour les champs et extrayez les valeurs des formulaires.
+- Ajoutez des annotations, des commentaires et des tampons aux pages PDF existantes.
+- Appliquez le chiffrement, les autorisations et les signatures numériques pour sécuriser les documents.
+- Inspectez les métadonnées PDF et les propriétés du fichier avant l'archivage, l'impression ou la livraison.
+
+## Tâches PDF courantes couvertes dans cette section
+
+Utilisez les articles de cette section pour gérer des flux de travail PDF pratiques tels que le remplissage de formulaires, la gestion des champs, la modification d'annotations, la gestion des pièces jointes, le remplacement de texte, le traitement des pages, la sécurité PDF et les opérations de signature en Python.
+
+Pour explorer des API spécifiques, commencez par les liens de classe ci-dessus, puis passez aux articles basés sur les tâches de cette section pour des exemples étape par étape.
diff --git a/fr/python-net/working-with-facades/form/_index.md b/fr/python-net/working-with-facades/form/_index.md
new file mode 100644
index 0000000000..09e166f950
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/_index.md
@@ -0,0 +1,21 @@
+---
+title: Classe Form
+type: docs
+weight: 140
+url: /fr/python-net/form-class/
+description: Cette section explique comment travailler avec les façades Aspose.PDF en utilisant la classe Form.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Travaillez avec les données de formulaire PDF et les champs AcroForm en Python en utilisant la classe Form
+Abstract: Cette section explique comment utiliser la façade Form dans Aspose.PDF for Python via .NET pour gérer les formulaires PDF interactifs. Apprenez à exporter et importer les données de formulaire, à remplir différents types de champs, à gérer les champs existants, à travailler avec les champs de bouton et les images, et à lire les valeurs du formulaire de manière programmatique.
+---
+
+- [Exportation des données de formulaire](/pdf/fr/python-net/exporting-form-data/)
+- [Importation des données de formulaire](/pdf/fr/python-net/importing-form-data/)
+- [Remplissage des champs Form](/pdf/fr/python-net/filling-form-fields/)
+- [Champs de bouton et images](/pdf/fr/python-net/button-fields-and-images/)
+- [Gestion des champs de Form](/pdf/fr/python-net/managing-form-fields/)
+- [Lecture des valeurs du formulaire](/pdf/fr/python-net/reading-form-values/)
diff --git a/fr/python-net/working-with-facades/form/button-fields-and-images/_index.md b/fr/python-net/working-with-facades/form/button-fields-and-images/_index.md
new file mode 100644
index 0000000000..34ca74462d
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/button-fields-and-images/_index.md
@@ -0,0 +1,85 @@
+---
+title: Champs de bouton et images
+type: docs
+weight: 40
+url: /fr/python-net/button-fields-and-images/
+description: Cet exemple montre comment gérer les champs de bouton dans un formulaire PDF en utilisant l'API Aspose.PDF Facades.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Ajout d'une image aux champs de bouton et lecture des indicateurs de soumission
+Abstract: Les formulaires PDF comprennent souvent des boutons interactifs qui déclenchent soit des actions JavaScript, soit la soumission des données du formulaire. Vous pouvez améliorer visuellement les champs de bouton en ajoutant des images comme apparence et inspecter leur comportement de soumission de manière programmatique.
+---
+
+## Ajouter une apparence d'image aux champs de bouton
+
+Cet extrait de code explique comment ajouter une apparence d'image à un champ de bouton existant dans un formulaire PDF. L'opération améliore la présentation visuelle d'un bouton PDF en remplaçant son apparence par défaut par une image personnalisée.
+
+1. Créer un objet Form.
+1. Lier le fichier PDF à l'objet Form.
+1. Ajouter une image au champ Button.
+
+ - Déterminer le chemin du fichier image associé au PDF
+ - Ouvrir l'image en mode binaire en tant que image_stream.
+ - Appeler fill_image_field() avec le nom complet du champ button.
+
+1. Enregistrer le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Add image appearance to button fields
+def add_image_appearance_to_button_fields(infile, outfile):
+ """Add image appearance to button fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Add image appearance to button fields by providing the field name and image stream
+ image_path = infile.replace(".pdf", ".jpg")
+ with open(image_path, "rb") as image_stream:
+ pdf_form.fill_image_field("Image1_af_image", image_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
+
+## Obtenir les indicateurs de soumission
+
+La bibliothèque Python vous aide à récupérer les indicateurs de soumission d'un bouton de soumission dans un formulaire PDF en utilisant l'API Aspose.PDF Facades. Les indicateurs de soumission définissent le comportement d'un bouton de soumission, par exemple s'il envoie le formulaire complet, inclut les annotations, ou soumet au format FDF, XFDF, PDF ou HTML.
+
+1. Créer un objet Form.
+1. Appelez get_submit_flags() sur l'objet form en utilisant le nom complet du bouton de soumission.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_submit_flags(infile, outfile):
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+ flags = pdf_form.get_submit_flags("Submit1_af_submit")
+
+ print(f"Submit flags: {flags}")
+```
diff --git a/fr/python-net/working-with-facades/form/exporting-form-data/_index.md b/fr/python-net/working-with-facades/form/exporting-form-data/_index.md
new file mode 100644
index 0000000000..823e00215e
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/exporting-form-data/_index.md
@@ -0,0 +1,14 @@
+---
+title: Exportation des données de formulaire
+type: docs
+weight: 10
+url: /fr/python-net/exporting-form-data/
+description: Cet article montre comment exporter les données de formulaire PDF vers plusieurs formats structurés en utilisant Aspose.PDF for Python via .NET. Il fournit des exemples pratiques d'extraction des valeurs des champs de formulaire à partir des AcroForms standard et des PDF basés sur XFA, puis enregistrement en tant que fichiers XML, FDF, XFDF et JSON à l'aide des façades Aspose.PDF avec la classe Form.
+lastmod: "2026-05-22"
+---
+
+- [Exporter vers FDF](/pdf/fr/python-net/export-to-fdf/)
+- [Exporter vers XFDF](/pdf/fr/python-net/export-to-xfdf/)
+- [Exporter vers JSON](/pdf/fr/python-net/export-to-json/)
+- [Exporter vers XML](/pdf/fr/python-net/export-to-xml/)
+- [Extraire les données XFA](/pdf/fr/python-net/extract-xfa-data/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/form/exporting-form-data/export-to-fdf/_index.md b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-fdf/_index.md
new file mode 100644
index 0000000000..993bea4f6d
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-fdf/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exporter vers FDF
+type: docs
+weight: 10
+url: /fr/python-net/export-to-fdf/
+description: Cet exemple explique comment exporter les données de champ de formulaire PDF vers un fichier FDF (Formats de données de formulaire) en utilisant Aspose.PDF for Python via .NET. Il montre comment accéder aux données de formulaire interactives via la façade Form, lier un document PDF source et enregistrer les valeurs extraites dans un flux FDF.
+lastmod: "2026-05-22"
+---
+
+FDF est un format léger conçu spécifiquement pour stocker et transférer les données de formulaire PDF sans intégrer le document complet. Dans cet exemple, un [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objet est initialisé à partir du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module, permettant aux développeurs d'interagir avec les champs AcroForm et d'exporter leurs valeurs.
+
+1. Créez une instance de pdf_facades.Form() pour travailler avec les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le document PDF contenant le formulaire.
+1. Utilisez 'open(')' pour créer un flux binaire ouvrable pour le fichier FDF.
+1. Exportez les données du formulaire. Appelez 'export_fdf()' pour extraire et enregistrer toutes les valeurs des champs du formulaire.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to FDF
+def export_form_data_to_fdf(infile, outfile):
+ """Export PDF form data to FDF file."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Create FDF file stream
+ with open(outfile, "wb") as fdf_output_stream:
+ # Export form data to FDF file
+ pdf_form.export_fdf(fdf_output_stream)
+```
diff --git a/fr/python-net/working-with-facades/form/exporting-form-data/export-to-json/_index.md b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-json/_index.md
new file mode 100644
index 0000000000..3dde3c40cf
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-json/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exporter vers JSON
+type: docs
+weight: 30
+url: /fr/python-net/export-to-json/
+description: Cet exemple montre comment exporter les valeurs des champs de formulaire PDF vers un fichier JSON en utilisant Aspose.PDF for Python via .NET. Il explique comment charger un formulaire PDF, accéder à ses champs via la façade Form, et enregistrer les données extraites dans un format JSON structuré.
+lastmod: "2026-05-22"
+---
+
+JSON est un format de données largement utilisé qui permet un échange fluide entre les applications et les services. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objet du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour lier un fichier PDF et exporter ses valeurs de champs de formulaire dans une structure JSON lisible.
+
+1. Initialisez pdf_facades.Form() pour travailler avec les champs de formulaire.
+1. Utilisez 'bind_pdf()' pour attacher le document PDF source.
+1. Créez un flux en écriture en utilisant 'FileIO()'.
+1. Appelez 'export_json()' pour extraire les valeurs des champs du formulaire et les enregistrer au format JSON.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to JSON
+def export_form_to_json(infile, outfile):
+ """Export PDF form field values to JSON file."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ # Create JSON file stream
+ with FileIO(outfile, "w") as json_stream:
+ # Export form field values to JSON
+ form.export_json(json_stream, indented=True)
+```
diff --git a/fr/python-net/working-with-facades/form/exporting-form-data/export-to-xfdf/_index.md b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-xfdf/_index.md
new file mode 100644
index 0000000000..62e6c667bc
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-xfdf/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exporter vers XFDF
+type: docs
+weight: 20
+url: /fr/python-net/export-to-xfdf/
+description: Cet exemple montre comment exporter les données des champs de formulaire PDF vers un fichier XFDF (XML Forms Data Format) en utilisant Aspose.PDF for Python via .NET. Il démontre comment charger un formulaire PDF, accéder à ses champs via la façade Form, et enregistrer les valeurs extraites dans un flux XFDF.
+lastmod: "2026-05-22"
+---
+
+XFDF est une représentation XML des données de formulaire PDF qui permet aux développeurs de transférer les valeurs des champs de formulaire indépendamment du document original. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objet de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour lier le PDF source et exporter ses données dans un fichier XFDF structuré.
+
+1. Initialisez pdf_facades.Form() pour gérer les données du formulaire PDF.
+1. Appelez 'bind_pdf()' pour joindre le document PDF source.
+1. Utilisez 'open()' pour créer un flux binaire en écriture.
+1. Exporter les données du formulaire. Appelez 'export_xfdf()' pour extraire et enregistrer les valeurs des champs de formulaire au format XFDF.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to XFDF
+def export_pdf_form_to_xfdf(infile, outfile):
+ """Export PDF form data to XFDF file."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Create XFDF file stream
+ with open(outfile, "wb") as xfdf_output_stream:
+ # Export form data to XFDF file
+ pdf_form.export_xfdf(xfdf_output_stream)
+```
diff --git a/fr/python-net/working-with-facades/form/exporting-form-data/export-to-xml/_index.md b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-xml/_index.md
new file mode 100644
index 0000000000..0ddeecb60b
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/exporting-form-data/export-to-xml/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exporter vers XML
+type: docs
+weight: 40
+url: /fr/python-net/export-to-xml/
+description: Cet exemple montre comment exporter les données de formulaire PDF vers un fichier XML en utilisant Aspose.PDF for Python via .NET. Il montre comment charger un document PDF, accéder à ses champs de formulaire via la façade Form, et enregistrer les données extraites en XML structuré en utilisant Form Class.
+lastmod: "2026-05-22"
+---
+
+L'exportation des données de formulaire permet aux développeurs de réutiliser les informations stockées dans les PDF AcroForms sans copier manuellement les valeurs des champs. Dans cet exemple, un [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objet est créé à partir de aspose.pdf. Dans le module facades, le PDF source est lié à celui-ci, et les données du formulaire sont écrites dans un flux XML.
+
+1. Créez un objet Form. Initialisez pdf_facades.Form() pour accéder aux champs de formulaire et les gérer.
+1. Utilisez 'bind_pdf()' pour attacher le document PDF source à l'instance Form.
+1. Créez un flux de fichier accessible en écriture en utilisant 'FileIO()'.
+1. Appelez 'export_xml()' pour extraire toutes les valeurs des champs de formulaire et les écrire dans le fichier XML.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to XML
+def export_pdf_form_data_to_xml(infile, datafile):
+ """Export PDF form data to XML file."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open XML file as stream
+ with FileIO(datafile, "w") as xml_output_stream:
+ # Export data from PDF form fields to XML
+ pdf_form.export_xml(xml_output_stream)
+```
diff --git a/fr/python-net/working-with-facades/form/exporting-form-data/extract-xfa-data/_index.md b/fr/python-net/working-with-facades/form/exporting-form-data/extract-xfa-data/_index.md
new file mode 100644
index 0000000000..c9630057f8
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/exporting-form-data/extract-xfa-data/_index.md
@@ -0,0 +1,41 @@
+---
+title: Extraire les données XFA
+type: docs
+weight: 50
+url: /fr/python-net/extract-xfa-data/
+description: Cet exemple explique comment extraire les données de formulaire XFA d'un fichier PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF basé sur XFA à la façade Form et exporter sa structure de données interne dans un flux de fichier.
+lastmod: "2026-05-22"
+---
+
+Les formulaires XFA (XML Forms Architecture) diffèrent des AcroForms traditionnels car leurs données sont stockées en XML dans le PDF. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objet du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour lier le PDF et extraire ses données XFA directement dans un fichier.
+
+1. Créez une instance de pdf_facades.Form() pour gérer les données du formulaire.
+1. Appelez 'bind_pdf()' pour attacher le PDF source contenant des formulaires XFA.
+1. Utilisez 'FileIO()' pour créer un flux de fichier en écriture.
+1. Appelez 'extract_xfa_data()' pour exporter les données XML XFA intégrées.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Extract XFA Data
+def export_xfa_data(infile, outfile):
+ """Export XFA form data."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ with FileIO(outfile, "w") as stream:
+ # Export embedded XFA XML data to the output stream
+ form.extract_xfa_data(stream)
+```
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/_index.md
new file mode 100644
index 0000000000..28a1c959de
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/_index.md
@@ -0,0 +1,15 @@
+---
+title: Remplissage des champs Form
+type: docs
+weight: 30
+url: /fr/python-net/filling-form-fields/
+description: Cet article montre comment remplir programmétiquement les champs de formulaire PDF à l'aide d'Aspose.PDF for Python via .NET. Il couvre des techniques pratiques pour peupler différents types d'éléments de formulaire interactifs, y compris les champs de texte, les cases à cocher, les boutons radio, les listes déroulantes, les champs de code-barres et les paires nom‑valeur mappées dynamiquement. En utilisant la façade Form, les développeurs peuvent lier un document PDF, mettre à jour les valeurs des champs via des appels d'API simples, et enregistrer automatiquement le fichier modifié.
+lastmod: "2026-05-22"
+---
+
+- [Remplir les champs texte](/pdf/fr/python-net/fill-text-fields/)
+- [Remplir les champs de case à cocher](/pdf/fr/python-net/fill-check-box-fields/)
+- [Remplir les champs de boutons radio](/pdf/fr/python-net/fill-radio-button-fields/)
+- [Remplir la zone de liste](/pdf/fr/python-net/fill-list-box/)
+- [Remplir les champs de code-barres](/pdf/fr/python-net/fill-barcode-fields/)
+- [Remplir les champs par nom et valeur](/pdf/fr/python-net/fill-fields-by-name-and-value/)
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/fill-barcode-fields/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/fill-barcode-fields/_index.md
new file mode 100644
index 0000000000..6f8a9b9209
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/fill-barcode-fields/_index.md
@@ -0,0 +1,43 @@
+---
+title: Remplir les champs de code-barres
+type: docs
+weight: 50
+url: /fr/python-net/fill-barcode-fields/
+description: Cet exemple montre comment remplir programmétiquement des champs de code-barres dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, affecter une valeur à un champ de code-barres et enregistrer le fichier mis à jour.
+lastmod: "2026-05-22"
+---
+
+Les champs de code-barres dans les formulaires PDF permettent de stocker des informations encodées et de les afficher visuellement sous forme de codes-barres. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour accéder aux champs du formulaire et assigner une valeur de code-barres. Une fois les données remplies, le PDF est enregistré avec le contenu de code-barres mis à jour.
+
+1. Initialisez 'pdf_facades.Form()' pour gérer les interactions avec les formulaires PDF.
+1. Appelez 'bind_pdf()' pour attacher le PDF contenant les champs de code-barres.
+1. Utilisez 'fill_field()' pour attribuer une valeur de code-barres.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Barcode Fields
+def fill_barcode_fields(infile, outfile):
+ """Fill barcode fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill barcode fields by name
+ pdf_form.fill_field("product_barcode", "123456789012")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/fill-check-box-fields/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/fill-check-box-fields/_index.md
new file mode 100644
index 0000000000..72c6ff7b74
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/fill-check-box-fields/_index.md
@@ -0,0 +1,44 @@
+---
+title: Remplir les champs de case à cocher
+type: docs
+weight: 20
+url: /fr/python-net/fill-check-box-fields/
+description: Cet exemple montre comment remplir programmétiquement les champs de case à cocher d'un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, mettre à jour les valeurs des cases à cocher par nom de champ, et enregistrer le fichier modifié.
+lastmod: "2026-05-22"
+---
+
+La case à cocher est couramment utilisée dans les formulaires PDF pour représenter des choix binaires tels que les abonnements ou les confirmations d'accord. Dans cet exemple, la [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisée pour accéder aux champs du formulaire et définir leurs valeurs à l'état sélectionné. Après avoir mis à jour les cases à cocher, le PDF rempli est enregistré en tant que nouveau document.
+
+1. Initialisez 'pdf_facades.Form()' pour gérer les interactions avec les champs du formulaire.
+1. Utilisez 'bind_pdf()' pour joindre le PDF source contenant des champs de cases à cocher.
+1. Appelez 'fill_field()' pour marquer les champs tels que 'subscribe_newsletter' et 'accept_terms' comme sélectionnés.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Check Box Fields
+def fill_check_box_fields(infile, outfile):
+ """Fill check box fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill check box fields by name
+ pdf_form.fill_field("subscribe_newsletter", "Yes")
+ pdf_form.fill_field("accept_terms", "Yes")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/fill-fields-by-name-and-value/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/fill-fields-by-name-and-value/_index.md
new file mode 100644
index 0000000000..c638421172
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/fill-fields-by-name-and-value/_index.md
@@ -0,0 +1,50 @@
+---
+title: Remplir les champs par nom et valeur
+type: docs
+weight: 60
+url: /fr/python-net/fill-fields-by-name-and-value/
+description: Cet article explique comment remplir dynamiquement plusieurs champs de formulaire PDF par nom et valeur en utilisant Aspose.PDF for Python via .NET. Au lieu de définir chaque champ individuellement, il utilise une structure de dictionnaire pour associer les noms de champs aux valeurs et les remplit dans une boucle.
+lastmod: "2026-05-22"
+---
+
+Remplir les champs de formulaire à l'aide d'une collection nom–valeur permet aux développeurs de créer des solutions évolutives et flexibles pour l'automatisation des formulaires PDF. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour lier un document PDF et parcourir un dictionnaire de données de champs. Chaque entrée est appliquée en utilisant la méthode ‘fill_field’, permettant des mises à jour groupées efficaces des champs de formulaire.
+
+1. Initialisez ‘pdf_facades.Form()’ pour travailler avec les champs de formulaire interactifs.
+1. Utilisez 'bind_pdf()' pour attacher le document PDF source.
+1. Créez un dictionnaire contenant les noms des champs et les valeurs que vous souhaitez insérer.
+1. Itérer à travers le dictionnaire et appeler 'fill_field()' pour chaque entrée.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Fields by Name and Value
+def fill_fields_by_name_and_value(infile, outfile):
+ """Fill PDF form fields by name and value."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill fields by name and value
+ fields = {
+ "name": "Jane Smith",
+ "address": "456 Elm St, Othertown, USA",
+ "email": "jane.smith@example.com",
+ }
+ for field_name, value in fields.items():
+ pdf_form.fill_field(field_name, value)
+
+ # Save updated PDF using outfile
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/fill-list-box/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/fill-list-box/_index.md
new file mode 100644
index 0000000000..451ce7a217
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/fill-list-box/_index.md
@@ -0,0 +1,43 @@
+---
+title: Remplir la zone de liste
+type: docs
+weight: 40
+url: /fr/python-net/fill-list-box/
+description: Cet exemple montre comment remplir à l'aide d'un programme les zones de liste et les champs à sélection multiple dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, sélectionner des valeurs dans un champ de formulaire basé sur une liste, et enregistrer le fichier mis à jour.
+lastmod: "2026-05-22"
+---
+
+Les zones de liste et les champs à sélection multiple permettent aux utilisateurs de choisir une ou plusieurs valeurs parmi un ensemble d'options prédéfini. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour accéder au formulaire PDF et attribuer une valeur sélectionnée au champ favorite_colors. Une fois l'option souhaitée sélectionnée, le document mis à jour est enregistré.
+
+1. Initialisez 'pdf_facades.Form()' pour gérer et mettre à jour les champs de formulaire.
+1. Appelez 'bind_pdf()' pour joindre le PDF source contenant des zones de liste ou des champs à sélection multiple.
+1. Utilisez 'fill_field()' pour sélectionner une valeur parmi les options disponibles.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill List Box / Multi-Select Fields
+def fill_list_box_fields(infile, outfile):
+ """Fill list box and multi-select fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill list box / multi-select fields by name
+ pdf_form.fill_field("favorite_colors", "Red")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/fill-radio-button-fields/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/fill-radio-button-fields/_index.md
new file mode 100644
index 0000000000..8ffab59f1c
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/fill-radio-button-fields/_index.md
@@ -0,0 +1,44 @@
+---
+title: Remplir les champs de boutons radio
+type: docs
+weight: 30
+url: /fr/python-net/fill-radio-button-fields/
+description: Cet exemple montre comment remplir programmétiquement les champs de boutons radio dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, sélectionner une option de bouton radio par index, et enregistrer le fichier mis à jour.
+lastmod: "2026-05-22"
+---
+
+Les boutons radio permettent aux utilisateurs de sélectionner une seule option parmi un groupe prédéfini, tel que les champs de genre ou de préférence. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour lier le PDF source et attribuer une option sélectionnée par sa valeur d'index. Une fois l'option désirée choisie, le document modifié est enregistré.
+
+1. Initialisez pdf_facades.Form() pour gérer les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le PDF contenant les champs de boutons radio.
+1. Utilisez 'fill_field()' pour sélectionner la première option (indice 0).
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Radio Button Fields
+def fill_radio_button_fields(infile, outfile):
+ """Fill radio button fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill radio button fields by name
+ pdf_form.fill_field("gender", 0) # Select male option (index 0)
+ # pdf_form.fill_field("gender", 1) # Select female option (index 1)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/filling-form-fields/fill-text-fields/_index.md b/fr/python-net/working-with-facades/form/filling-form-fields/fill-text-fields/_index.md
new file mode 100644
index 0000000000..f0eb572fcb
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/filling-form-fields/fill-text-fields/_index.md
@@ -0,0 +1,45 @@
+---
+title: Remplir les champs texte
+type: docs
+weight: 10
+url: /fr/python-net/fill-text-fields/
+description: Cet exemple montre comment remplir automatiquement les champs texte d'un formulaire PDF à l'aide d'Aspose.PDF for Python via .NET. Il montre comment charger un document PDF, remplir des champs de formulaire spécifiques par leur nom, et enregistrer le fichier mis à jour.
+lastmod: "2026-05-22"
+---
+
+Le remplissage programmatique des champs texte permet aux applications de réutiliser des modèles PDF et d'insérer du contenu dynamique sans édition manuelle. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour lier un formulaire PDF et mettre à jour plusieurs champs tels que le nom, l'adresse et l'e‑mail. Après avoir attribué les valeurs, le PDF modifié est enregistré comme un nouveau document.
+
+1. Initialisez 'pdf_facades.Form()' pour gérer les opérations sur les champs de formulaire.
+1. Utilisez 'bind_pdf()' pour attacher le PDF d'entrée contenant les champs texte.
+1. Appelez 'fill_field()' pour insérer des données dans des champs tels que le nom, l'adresse et l'e-mail.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Text Fields
+def fill_text_fields(infile, outfile):
+ """Fill text fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill text fields by name
+ pdf_form.fill_field("name", "John Doe")
+ pdf_form.fill_field("address", "123 Main St, Anytown, USA")
+ pdf_form.fill_field("email", "john.doe@example.com")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/importing-form-data/_index.md b/fr/python-net/working-with-facades/form/importing-form-data/_index.md
new file mode 100644
index 0000000000..74546cb95f
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/importing-form-data/_index.md
@@ -0,0 +1,14 @@
+---
+title: Importation des données de formulaire
+type: docs
+weight: 20
+url: /fr/python-net/importing-form-data/
+description: Cette section montre comment importer et remplacer les données de formulaire PDF à partir de plusieurs formats externes en utilisant Aspose.PDF for Python via .NET. Elle couvre des exemples pratiques de remplissage des champs de formulaire PDF à partir de fichiers XML, FDF, XFDF et JSON, ainsi que le remplacement des ensembles de données XFA existants. En utilisant la façade Form, les développeurs peuvent lier un Document PDF, charger des données structurées via des flux de fichiers et mettre à jour automatiquement les champs de formulaire sans édition manuelle.
+lastmod: "2026-05-22"
+---
+
+- [Importer les données FDF](/pdf/fr/python-net/import-fdf-data/)
+- [Importer les données XFDF](/pdf/fr/python-net/import-xfdf-data/)
+- [Importer des données JSON](/pdf/fr/python-net/import-json-data/)
+- [Importer les données XML](/pdf/fr/python-net/import-xml-data/)
+- [Remplacer les données XFA](/pdf/fr/python-net/replace-xfa-data/)
diff --git a/fr/python-net/working-with-facades/form/importing-form-data/import-fdf-data/_index.md b/fr/python-net/working-with-facades/form/importing-form-data/import-fdf-data/_index.md
new file mode 100644
index 0000000000..24779912e1
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/importing-form-data/import-fdf-data/_index.md
@@ -0,0 +1,45 @@
+---
+title: Importer les données FDF
+type: docs
+weight: 10
+url: /fr/python-net/import-fdf-data/
+description: Cet exemple montre comment importer des données de formulaire à partir d'un fichier FDF dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, lire les valeurs des champs de formulaire à partir d'un flux FDF, et remplir automatiquement les champs correspondants.
+lastmod: "2026-05-22"
+---
+
+FDF (Formats de données de formulaires) est un format léger utilisé pour stocker et transférer les valeurs des champs de formulaire PDF sans inclure le document complet. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour charger un formulaire PDF et importer les données des champs à partir d'un fichier FDF externe. Après le processus d'importation, le PDF mis à jour est enregistré en tant que nouveau fichier.
+
+1. Initialisez pdf_facades.Form() pour travailler avec les champs de formulaire PDF interactifs.
+1. Appelez 'bind_pdf()' pour attacher le modèle de formulaire PDF.
+1. Utilisez 'open()' pour lire le fichier FDF en mode binaire.
+1. Appelez 'import_fdf()' pour remplir les champs PDF avec les données du fichier FDF.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import Data from FDF
+def import_fdf_to_pdf_form(infile, datafile, outfile):
+ """Import form data from FDF file into PDF form fields."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open FDF file as stream
+ with open(datafile, "rb") as fdf_input_stream:
+ pdf_form.import_fdf(fdf_input_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/importing-form-data/import-json-data/_index.md b/fr/python-net/working-with-facades/form/importing-form-data/import-json-data/_index.md
new file mode 100644
index 0000000000..7d6b3f6348
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/importing-form-data/import-json-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Importer des données JSON
+type: docs
+weight: 30
+url: /fr/python-net/import-json-data/
+description: Cet exemple montre comment importer les données de champs de formulaire à partir d'un fichier JSON dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, lire les données JSON structurées via un flux de fichier, et remplir automatiquement les champs de formulaire correspondants.
+lastmod: "2026-05-22"
+---
+
+JSON est largement utilisé pour stocker et transférer des données structurées entre systèmes. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) Le module est utilisé pour lier un formulaire PDF et importer les valeurs des champs à partir d'un fichier JSON externe. Après le processus d'importation, le document mis à jour est enregistré en tant que nouveau PDF.
+
+1. Initialisez pdf_facades.Form() pour interagir avec les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le modèle de formulaire PDF.
+1. Utilisez 'FileIO()' pour lire le fichier JSON contenant les valeurs du formulaire.
+1. Appelez 'import_json()' pour remplir les champs PDF en utilisant des paires clé‑valeur JSON.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import from JSON
+def import_json_to_pdf_form(infile, datafile, outfile):
+ """Import form data from JSON file into PDF form fields."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ # Open JSON file as stream
+ with FileIO(datafile, "r") as json_stream:
+ # Import data from JSON into PDF form fields
+ form.import_json(json_stream)
+
+ # Save updated PDF
+ form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/importing-form-data/import-xfdf-data/_index.md b/fr/python-net/working-with-facades/form/importing-form-data/import-xfdf-data/_index.md
new file mode 100644
index 0000000000..5ac245b1e6
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/importing-form-data/import-xfdf-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Importer les données XFDF
+type: docs
+weight: 20
+url: /fr/python-net/import-xfdf-data/
+description: Cet exemple montre comment importer des données de formulaire à partir d'un fichier XFDF dans un formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, lire les données XFDF basées sur XML via un flux de fichier, et remplir automatiquement les champs de formulaire correspondants. L'importation des données XFDF permet un échange efficace de données de formulaire et prend en charge les flux de travail documentaires automatisés qui reposent sur des formats XML structurés.
+lastmod: "2026-05-22"
+---
+
+XFDF (XML Forms Data Format) est une représentation XML des données de formulaire PDF conçue pour l'interopérabilité et l'échange de données. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour lier un formulaire PDF et importer les valeurs des champs à partir d'un fichier XFDF externe. Après l'importation des données, le PDF mis à jour est enregistré en tant que nouveau document.
+
+1. Initialisez pdf_facades.Form() pour interagir avec les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le modèle de formulaire PDF.
+1. Utilisez 'open()' pour lire le fichier XFDF.
+1. Appelez 'import_xfdf()' pour remplir les champs PDF avec les valeurs du fichier XFDF.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import Data from XFDF
+def import_data_from_xfdf(infile, datafile, outfile):
+ """Import form data from XFDF file into PDF form fields."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open XFDF file as stream
+ with open(datafile, "rb") as xfdf_input_stream:
+ # Import data from XFDF into PDF form fields
+ pdf_form.import_xfdf(xfdf_input_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/importing-form-data/import-xml-data/_index.md b/fr/python-net/working-with-facades/form/importing-form-data/import-xml-data/_index.md
new file mode 100644
index 0000000000..3376a8efb4
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/importing-form-data/import-xml-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Importer les données XML
+type: docs
+weight: 40
+url: /fr/python-net/import-xml-data/
+description: Cet exemple montre comment importer des données de formulaire à partir d'un fichier XML dans les champs de formulaire PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, lire des données XML structurées via un flux de fichier, et remplir automatiquement les champs de formulaire correspondants.
+lastmod: "2026-05-22"
+---
+
+XML est couramment utilisé pour stocker des données de formulaire structurées, ce qui en fait un format pratique pour transférer des valeurs entre systèmes. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour charger un formulaire PDF et appliquer les valeurs des champs directement à partir d'un fichier XML. Après l'importation des données, le PDF mis à jour est enregistré en tant que nouveau document.
+
+1. Initialisez pdf_facades.Form() pour interagir avec les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le modèle de formulaire PDF.
+1. Utilisez 'FileIO()' pour accéder au fichier XML contenant les données du formulaire.
+1. Appelez 'import_xml()' pour remplir les champs PDF avec les valeurs du fichier XML.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import data from XML
+def import_xml_to_pdf_fields(infile, datafile, outfile):
+ """Import form data from XML file into PDF form fields."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open XML file as stream
+ with FileIO(datafile, "r") as xml_input_stream:
+ # Import data from XML into PDF form fields
+ pdf_form.import_xml(xml_input_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/importing-form-data/replace-xfa-data/_index.md b/fr/python-net/working-with-facades/form/importing-form-data/replace-xfa-data/_index.md
new file mode 100644
index 0000000000..9f218a23e0
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/importing-form-data/replace-xfa-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Remplacer les données XFA
+type: docs
+weight: 50
+url: /fr/python-net/replace-xfa-data/
+description: Cet exemple montre comment remplacer les données de formulaire XFA existantes dans un PDF à l’aide d’Aspose.PDF for Python via .NET. Il montre comment lier un document PDF basé sur XFA, charger de nouvelles données à partir d’un fichier XFA externe, et mettre à jour le contenu du formulaire de manière programmatique.
+lastmod: "2026-05-22"
+---
+
+Les formulaires XFA (XML Forms Architecture) stockent leurs données au format XML dans la structure du PDF. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour lier un PDF et remplacer son jeu de données XFA existant à l’aide d’un flux XML externe. Après l’application des nouvelles données, le PDF mis à jour est enregistré comme un fichier séparé.
+
+1. Initialisez pdf_facades.Form() pour gérer les données du formulaire XFA.
+1. Appelez 'bind_pdf()' pour attacher le modèle de formulaire PDF.
+1. Utilisez 'FileIO()' pour lire le fichier XML XFA.
+1. Appelez 'set_xfa_data()' pour mettre à jour le PDF avec le nouveau contenu XFA.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Replace from XFA data
+def replace_xfa_data(infile, datafile, outfile):
+ """Import form data from XFA file into PDF form fields."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ # Open XFA file as stream
+ with FileIO(datafile, "r") as xfa_stream:
+ # Import data from XFA into PDF form fields
+ form.set_xfa_data(xfa_stream)
+
+ # Save updated PDF
+ form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/managing-form-fields/_index.md b/fr/python-net/working-with-facades/form/managing-form-fields/_index.md
new file mode 100644
index 0000000000..81498f0541
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/managing-form-fields/_index.md
@@ -0,0 +1,12 @@
+---
+title: Gestion des champs de Form
+type: docs
+weight: 50
+url: /fr/python-net/managing-form-fields/
+description: Cette section démontre comment gérer et modifier les champs de formulaire PDF à l'aide d'Aspose.PDF for Python via .NET. Elle présente des exemples pratiques d'aplatissement de champs spécifiques, d'aplatissement de tous les champs de Form, et de renommage programmatique des champs existants. En utilisant la façade Form, les développeurs peuvent lier un Document PDF, ajuster le comportement des champs, et enregistrer le fichier mis à jour avec les modifications permanentes appliquées.
+lastmod: "2026-05-22"
+---
+
+- [Aplatir des champs spécifiques](/pdf/fr/python-net/flatten-specific-fields/)
+- [Aplatir tous les champs](/pdf/fr/python-net/flatten-all-fields/)
+- [Renommer les champs de formulaire](/pdf/fr/python-net/rename-form-fields/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/form/managing-form-fields/flatten-all-fields/_index.md b/fr/python-net/working-with-facades/form/managing-form-fields/flatten-all-fields/_index.md
new file mode 100644
index 0000000000..730c59a867
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/managing-form-fields/flatten-all-fields/_index.md
@@ -0,0 +1,43 @@
+---
+title: Aplatir tous les champs
+type: docs
+weight: 10
+url: /fr/python-net/flatten-all-fields/
+description: Cet exemple montre comment aplatir tous les champs de formulaire dans un PDF en utilisant Aspose.PDF for Python via .NET. Il montre comment lier un document PDF, convertir chaque élément de formulaire interactif en contenu de page statique, et enregistrer le fichier finalisé.
+lastmod: "2026-05-22"
+---
+
+L'aplatissement supprime l'interactivité des formulaires PDF en fusionnant les valeurs des champs directement dans la mise en page du document. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) est utilisé pour lier le PDF source et appliquer la méthode flatten_all_fields(), qui convertit tous les champs en contenu non modifiable.
+
+1. Initialisez pdf_facades.Form() pour interagir avec les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le document source.
+1. Appelez 'flatten_all_fields()' pour convertir tous les champs interactifs en contenu statique.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Flatten all fields
+def flatten_all_fields(infile, outfile):
+ """Flatten all fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Flatten all fields in the PDF document
+ pdf_form.flatten_all_fields()
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/managing-form-fields/flatten-specific-fields/_index.md b/fr/python-net/working-with-facades/form/managing-form-fields/flatten-specific-fields/_index.md
new file mode 100644
index 0000000000..74425ce167
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/managing-form-fields/flatten-specific-fields/_index.md
@@ -0,0 +1,47 @@
+---
+title: Aplatir des champs spécifiques
+type: docs
+weight: 20
+url: /fr/python-net/flatten-specific-fields/
+description: Cette section montre comment gérer et modifier les champs de formulaire PDF à l'aide d'Aspose.PDF for Python via .NET. Elle présente des exemples pratiques d’aplatissement de champs spécifiques, d’aplatissement de tous les champs de formulaire et de renommage programmatique des champs existants.
+lastmod: "2026-05-22"
+---
+
+La gestion des champs de formulaire est une partie importante des flux de travail de traitement PDF. L’aplatissement des champs supprime l’interactivité en convertissant les éléments de formulaire en contenu de page ordinaire, tandis que le renommage des champs aide à standardiser les conventions de nommage pour faciliter la gestion des données.
+
+1. Initialisez pdf_facades.Form() pour accéder et gérer les champs de formulaire PDF.
+1. Utilisez 'bind_pdf()' pour joindre le document d'entrée.
+1. Fournissez les noms des champs et appelez 'flatten_field()' pour convertir les champs sélectionnés en contenu statique.
+1. Appelez 'flatten_all_fields()' pour supprimer l'interactivité de chaque champ de formulaire.
+1. Définissez les anciens et nouveaux noms de champ et appliquez 'rename_field()'.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Flatten specific fields
+def flatten_specific_fields(infile, outfile):
+ """Flatten specific fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Flatten specific fields by their names
+ fields_to_flatten = ["First Name", "Last Name"]
+ for field_name in fields_to_flatten:
+ pdf_form.flatten_field(field_name)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/managing-form-fields/rename-form-fields/_index.md b/fr/python-net/working-with-facades/form/managing-form-fields/rename-form-fields/_index.md
new file mode 100644
index 0000000000..53ad185b13
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/managing-form-fields/rename-form-fields/_index.md
@@ -0,0 +1,46 @@
+---
+title: Renommer les champs de formulaire
+type: docs
+weight: 30
+url: /fr/python-net/rename-form-fields/
+description: Cet exemple montre comment renommer les champs de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python via .NET. Il montre comment lier un formulaire PDF, mettre à jour les noms de champs existants de manière programmatique, puis enregistrer le fichier modifié. Renommer les champs permet de standardiser les structures de formulaire, d'améliorer le mappage des données et de simplifier l'intégration avec des flux de travail automatisés ou des systèmes externes.
+lastmod: "2026-05-22"
+---
+
+Renommer les champs de formulaire est utile lors de l'alignement des formulaires PDF avec les conventions de nommage internes ou lors de la préparation de documents pour le traitement de données structurées. Dans cet exemple, le [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) façade du [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module est utilisé pour lier le PDF source et appliquer un mappage qui remplace les anciens noms de champ par de nouveaux. Après la mise à jour des identifiants de champ, le document est enregistré avec les modifications appliquées.
+
+1. Initialisez pdf_facades.Form() pour interagir avec les champs de formulaire PDF.
+1. Appelez 'bind_pdf()' pour attacher le modèle de formulaire PDF.
+1. Créez une liste de tuples contenant les anciens noms de champ et leurs nouveaux noms correspondants.
+1. Parcourez le mapping et appelez 'rename_field()' pour chaque entrée.
+1. Enregistrez le Document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Rename form fields
+def rename_form_fields(infile, outfile):
+ """Rename form fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Rename form fields by providing a mapping of old names to new names
+ field_renaming_map = [("First Name", "NewFirstName"), ("Last Name", "NewLastName")]
+ for old_name, new_name in field_renaming_map:
+ pdf_form.rename_field(old_name, new_name)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/_index.md
new file mode 100644
index 0000000000..92d49335f1
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/_index.md
@@ -0,0 +1,15 @@
+---
+title: Lecture des valeurs du formulaire
+type: docs
+weight: 60
+url: /fr/python-net/reading-form-values/
+description: Cette section explique comment lire les valeurs du formulaire avec les façades Aspose.PDF en utilisant la classe Form.
+lastmod: "2026-05-22"
+---
+
+- [Obtenir les valeurs des champs](/pdf/fr/python-net/get-field-values/)
+- [Obtenir les options de bouton radio](/pdf/fr/python-net/get-radio-button-options/)
+- [Obtenir les noms des champs obligatoires](/pdf/fr/python-net/get-required-field-names/)
+- [Obtenir les valeurs de texte enrichi](/pdf/fr/python-net/get-rich-text-values/)
+- [Obtenir les façades de champ](/pdf/fr/python-net/get-field-facades/)
+- [Résoudre les noms complets des champs](/pdf/fr/python-net/resolve-full-field-names/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/get-field-facades/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/get-field-facades/_index.md
new file mode 100644
index 0000000000..3304d84b6f
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/get-field-facades/_index.md
@@ -0,0 +1,43 @@
+---
+title: Obtenir les façades de champ
+type: docs
+weight: 10
+url: /fr/python-net/get-field-facades/
+description: Cet exemple montre comment lire les valeurs de champs de formulaire spécifiques à partir d'un document PDF à l'aide de l'API Aspose.PDF Facades.
+lastmod: "2026-05-22"
+---
+
+Les formulaires PDF contiennent des champs où les utilisateurs peuvent saisir des données, tels que des zones de texte, des cases à cocher ou des boutons radio. Pour traiter ces formulaires de manière programmatique, il est souvent nécessaire de récupérer les valeurs actuelles de ces champs.
+
+1. Créer un objet Form.
+1. Lier le document PDF à l'objet formulaire.
+1. Récupérer les valeurs des champs.
+
+```python
+
+ from io import FileIO
+ import sys
+ from os import path
+ import aspose.pdf as ap
+ import aspose.pdf.facades as pdf_facades
+
+ sys.path.append(path.join(path.dirname(__file__), ".."))
+
+ from config import set_license, initialize_data_dir
+
+
+ # Get field values
+ def get_field_values(infile):
+ """Get field values from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get field values by their names
+ field_names = ["First Name", "Last Name"]
+ for field_name in field_names:
+ value = pdf_form.get_field(field_name)
+ print(f"Value of '{field_name}': {value}")
+```
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/get-field-values/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/get-field-values/_index.md
new file mode 100644
index 0000000000..d17438a09f
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/get-field-values/_index.md
@@ -0,0 +1,43 @@
+---
+title: Obtenir les valeurs des champs
+type: docs
+weight: 50
+url: /fr/python-net/get-field-values/
+description: Récupération des valeurs des champs d'un formulaire PDF avec Aspose.PDF Facades en utilisant la classe Form.
+lastmod: "2026-05-22"
+---
+
+Cet extrait de code montre comment récupérer les valeurs actuelles des champs de formulaire d'un document PDF en utilisant l'API Aspose.PDF Facades. Le [get_field()](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/#methods) Cette méthode vous permet d'accéder programmétiquement aux données saisies dans les champs de texte, les cases à cocher, les boutons radio et d'autres éléments AcroForm.
+
+1. Liez le PDF à un objet Form.
+1. Spécifiez les noms de champs que vous souhaitez lire.
+1. Récupérez la valeur de chaque champ à l’aide de get_field().
+
+```python
+
+ from io import FileIO
+ import sys
+ from os import path
+ import aspose.pdf as ap
+ import aspose.pdf.facades as pdf_facades
+
+ sys.path.append(path.join(path.dirname(__file__), ".."))
+
+ from config import set_license, initialize_data_dir
+
+
+ # Get field values
+ def get_field_values(infile):
+ """Get field values from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get field values by their names
+ field_names = ["First Name", "Last Name"]
+ for field_name in field_names:
+ value = pdf_form.get_field(field_name)
+ print(f"Value of '{field_name}': {value}")
+```
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/get-radio-button-options/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/get-radio-button-options/_index.md
new file mode 100644
index 0000000000..5964c1b961
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/get-radio-button-options/_index.md
@@ -0,0 +1,42 @@
+---
+title: Obtenir les options de bouton radio
+type: docs
+weight: 20
+url: /fr/python-net/get-radio-button-options/
+description: Cet article démontre comment récupérer la valeur actuellement sélectionnée d'un champ de bouton radio dans un document PDF en utilisant l'API Aspose.PDF Facades.
+lastmod: "2026-05-22"
+---
+
+Les champs de bouton radio dans les formulaires PDF sont des contrôles groupés où une seule option peut être sélectionnée à la fois. Chaque groupe a un nom de champ, et chaque option a une valeur correspondante.
+
+1. Créer un objet Form.
+1. Lier le document PDF.
+1. Récupérer l'option de bouton radio sélectionnée.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Get radio button options
+def get_radio_button_options(infile):
+ """Get radio button options from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get radio button options by their names
+ field_names = ["WorkType"]
+ for field_name in field_names:
+ options = pdf_form.get_button_option_current_value(field_name)
+ print(f"Options for '{field_name}': {options}")
+```
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/get-required-field-names/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/get-required-field-names/_index.md
new file mode 100644
index 0000000000..b0674cbb6f
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/get-required-field-names/_index.md
@@ -0,0 +1,41 @@
+---
+title: Obtenir les noms des champs obligatoires
+type: docs
+weight: 30
+url: /fr/python-net/get-required-field-names/
+description: Cet exemple montre comment identifier et récupérer les noms des champs de formulaire obligatoires dans un document PDF en utilisant l'API Aspose.PDF Facades.
+lastmod: "2026-05-22"
+---
+
+Les formulaires PDF peuvent contenir des champs obligatoires que les utilisateurs doivent remplir avant la soumission. Ces champs sont généralement marqués comme requis dans les propriétés du formulaire.
+
+1. Créer un objet Form.
+1. Lier le document PDF.
+1. Accédez à tous les noms de champs en utilisant 'pdf_form.field_names'.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Get required field names
+def get_required_field_names(infile):
+ """Get required field names from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get required field names
+ for field in pdf_form.field_names:
+ if pdf_form.is_required_field(field):
+ print(f"Required field: {field}")
+```
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/get-rich-text-values/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/get-rich-text-values/_index.md
new file mode 100644
index 0000000000..04d59861ef
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/get-rich-text-values/_index.md
@@ -0,0 +1,42 @@
+---
+title: Obtenir les valeurs de texte enrichi
+type: docs
+weight: 40
+url: /fr/python-net/get-rich-text-values/
+description: Cette section explique comment récupérer le contenu texte enrichi d’un champ de formulaire dans un document PDF à l’aide de l’API Aspose.PDF Facades. Contrairement aux champs de texte simple, les champs de texte enrichi peuvent contenir du contenu formaté tel que du texte en gras, différentes polices, des couleurs et la mise en forme des paragraphes.
+lastmod: "2026-05-22"
+---
+
+Les formulaires PDF peuvent inclure des champs de texte qui prennent en charge le formatage du texte enrichi. Ces champs peuvent stocker du contenu avec des attributs de style en plus des valeurs de texte simple.
+
+1. Créer un objet Form.
+1. Lier le document PDF.
+1. Récupérer les valeurs de texte enrichi.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Get rich text values
+def get_rich_text_values(infile):
+ """Get rich text values from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get rich text values by their names
+ field_names = ["Summary"]
+ for field_name in field_names:
+ rich_text_value = pdf_form.get_rich_text(field_name)
+ print(f"Rich text value of '{field_name}': {rich_text_value}")
+```
diff --git a/fr/python-net/working-with-facades/form/reading-form-values/resolve-full-field-names/_index.md b/fr/python-net/working-with-facades/form/reading-form-values/resolve-full-field-names/_index.md
new file mode 100644
index 0000000000..78b53202e7
--- /dev/null
+++ b/fr/python-net/working-with-facades/form/reading-form-values/resolve-full-field-names/_index.md
@@ -0,0 +1,42 @@
+---
+title: Résoudre les noms complets des champs
+type: docs
+weight: 60
+url: /fr/python-net/resolve-full-field-names/
+description: Cet exemple montre comment récupérer les noms pleinement qualifiés des champs de formulaire dans un document PDF en utilisant l'API Aspose.PDF Facades.
+lastmod: "2026-05-22"
+---
+
+Dans les formulaires PDF, les champs peuvent être organisés hiérarchiquement, notamment lorsque des sous‑formulaires sont utilisés. Chaque champ possède un nom court et un nom pleinement qualifié. Le nom pleinement qualifié représente le chemin complet du champ au sein de la hiérarchie du formulaire et est requis par de nombreuses méthodes d'API qui manipulent ou lisent les données de formulaire.
+
+1. Créer un objet Form.
+1. Lier le document PDF.
+1. Accéder à tous les noms de champs de formulaire.
+1. Le nom pleinement qualifié de chaque champ est résolu à l'aide de get_full_field_name().
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Resolve full field names
+def resolve_full_field_names(infile):
+ """Resolve full field names in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Resolve full field names
+ for field in pdf_form.field_names:
+ name = pdf_form.get_full_field_name(field)
+ print(f"Full field name: {name}")
+```
diff --git a/fr/python-net/working-with-facades/formeditor/_index.md b/fr/python-net/working-with-facades/formeditor/_index.md
new file mode 100644
index 0000000000..fb58f8df89
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe FormEditor
+type: docs
+weight: 100
+url: /fr/python-net/formeditor-class/
+description: Apprenez comment utiliser la classe FormEditor dans Aspose.PDF for Python via .NET pour créer des champs de formulaire, modifier les champs existants, personnaliser l'apparence des champs et ajouter des scripts ou des actions de soumission.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créez et modifiez des champs de formulaire PDF en Python avec la classe FormEditor
+Abstract: Cette section explique comment utiliser la façade FormEditor dans Aspose.PDF for Python via .NET pour créer et mettre à jour des formulaires PDF interactifs. Apprenez comment créer des champs de formulaire, personnaliser l'apparence des champs, modifier les champs existants et ajouter des scripts ou des actions de soumission de manière programmatique.
+---
+
+Le `FormEditor` La classe dans Aspose.PDF Facades est conçue pour créer et mettre à jour des champs de formulaire PDF interactifs. Elle vous aide à construire des structures de formulaire, à ajuster les propriétés des champs, à modifier les paramètres d'apparence et à ajouter un comportement interactif tel que des scripts et des actions de soumission dans les applications Python.
+
+## Tâches courantes du FormEditor
+
+Utilisez les tutoriels suivants pour travailler avec les principales capacités de `FormEditor` façade:
+
+- [Ajout de scripts et d'actions de soumission](/pdf/fr/python-net/adding-scripts-and-submit-actions/)
+- [Personnalisation de l'apparence des champs](/pdf/fr/python-net/customizing-field-appearance/)
+- [Modification des champs de formulaire](/pdf/fr/python-net/modifying-form-fields/)
+- [Création de champ de formulaire](/pdf/fr/python-net/creating-form-field)
diff --git a/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/_index.md b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/_index.md
new file mode 100644
index 0000000000..1ec5009485
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/_index.md
@@ -0,0 +1,21 @@
+---
+title: Ajout de scripts et d'actions de soumission
+type: docs
+weight: 40
+url: /fr/python-net/adding-scripts-and-submit-actions/
+description: En utilisant Aspose.PDF for Python, les développeurs peuvent automatiser ces actions sans modifier manuellement le PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter et gérer les scripts de champs de formulaire PDF et les actions de soumission en Python
+Abstract: Apprenez comment ajouter, modifier ou supprimer programmétiquement des actions JavaScript pour les champs de formulaire PDF, et configurer les URL de soumission à l'aide d'Aspose.PDF for Python. Ce guide explique comment attacher des scripts aux champs, mettre à jour les scripts existants, supprimer les actions des champs et définir les URL pour la soumission du formulaire, permettant des formulaires PDF dynamiques et interactifs.
+---
+
+- [Ajouter le script du champ](/pdf/fr/python-net/add-field-script/)
+- [Définir le script du champ](/pdf/fr/python-net/set-field-script/)
+- [Supprimer l'action du champ](/pdf/fr/python-net/remove-field-action/)
+- [Définir l'URL de soumission](/pdf/fr/python-net/set-submit-url/)
+- [Définir le drapeau de soumission](/pdf/fr/python-net/set-submit-flag/)
+
diff --git a/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/add-field-script/_index.md b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/add-field-script/_index.md
new file mode 100644
index 0000000000..085578e522
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/add-field-script/_index.md
@@ -0,0 +1,56 @@
+---
+title: Ajouter le script du champ
+type: docs
+weight: 10
+url: /fr/python-net/add-field-script/
+description: Les formulaires PDF interactifs peuvent inclure du JavaScript pour automatiser des actions lorsque les utilisateurs interagissent avec les champs de formulaire. En utilisant Aspose.PDF for Python, les développeurs peuvent facilement attacher des scripts aux éléments de formulaire tels que des boutons ou des champs de texte.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des actions JavaScript aux champs de formulaire PDF en utilisant Python
+Abstract: Cet article explique comment ouvrir un formulaire PDF, affecter du code JavaScript à un champ de formulaire spécifique, ajouter des actions de script supplémentaires et enregistrer le document mis à jour. L'exemple utilise la classe FormEditor de l'API Aspose.PDF Facades pour manipuler le comportement du formulaire de manière programmatique.
+---
+
+## Ajouter des actions JavaScript aux champs de formulaire PDF en utilisant Python
+
+Cet extrait de code vous permet d'ajouter des actions JavaScript à un champ de formulaire PDF existant en utilisant la bibliothèque Aspose.PDF for Python. Il ouvre un document PDF, assigne une action JavaScript à un champ de formulaire et ajoute un script qui s'exécute lorsque le champ est déclenché. Enfin, le PDF mis à jour est enregistré sous un nouveau fichier.
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de la [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module, vous pouvez attacher programmatiquement du JavaScript aux champs de formulaire existants :
+
+1. Ouvrez un formulaire PDF existant.
+1. Définissez une action JavaScript pour un champ spécifique.
+1. Ajouter une autre action JavaScript au même champ.
+1. Enregistrer le document PDF modifié.
+
+```python
+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 add_field_script(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Set JavaScript action for the field
+ form_editor.set_field_script(
+ "Script_Demo_Button", "app.alert('Script 1 has been executed');"
+ )
+
+ # Add JavaScript action to the field
+ form_editor.add_field_script(
+ "Script_Demo_Button", "app.alert('Script 2 has been executed');"
+ )
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/remove-field-action/_index.md b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/remove-field-action/_index.md
new file mode 100644
index 0000000000..5744d9bc12
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/remove-field-action/_index.md
@@ -0,0 +1,50 @@
+---
+title: Supprimer l'action du champ
+type: docs
+weight: 20
+url: /fr/python-net/remove-field-action/
+description: Supprimer le JavaScript des champs de formulaire peut être utile lors de la modification de formulaires PDF interactifs, de la désactivation des actions précédemment attribuées ou du nettoyage de documents contenant des scripts inutiles.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer les actions JavaScript des champs de formulaire PDF à l'aide de Python
+Abstract: En utilisant Aspose.PDF for Python, les développeurs peuvent supprimer programmatiquement les actions JavaScript attachées aux champs de formulaire. Cet article explique comment ouvrir un formulaire PDF existant, supprimer le script associé à un champ spécifique à l'aide de la classe FormEditor, vérifier l'opération et enregistrer le document modifié.
+---
+
+Les formulaires PDF contiennent souvent des actions JavaScript qui s'exécutent lorsque les utilisateurs interagissent avec des éléments de formulaire tels que des boutons ou des champs de saisie. Dans certains cas, ces scripts doivent être supprimés pour simplifier le comportement du formulaire, améliorer la sécurité ou mettre à jour la logique du formulaire. Supprimez une action JavaScript d'un champ de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python. Le code ouvre un formulaire PDF existant, localise un champ spécifique, supprime son action JavaScript associée et enregistre le document mis à jour en tant que nouveau fichier PDF.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de la [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/), vous pouvez supprimer les actions JavaScript de champs spécifiques dans un formulaire PDF existant :
+
+1. Ouvrez un formulaire PDF existant.
+1. Localisez un champ de formulaire nommé 'Script_Demo_Button'.
+1. Supprimez l'action JavaScript associée à ce champ.
+1. Vérifiez si la suppression a réussi.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+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 remove_field_script(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Remove JavaScript action from the field
+ if not form_editor.remove_field_action("Script_Demo_Button"):
+ raise Exception("Failed to remove field script")
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-field-script/_index.md b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-field-script/_index.md
new file mode 100644
index 0000000000..3e84c69e7e
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-field-script/_index.md
@@ -0,0 +1,59 @@
+---
+title: Définir le script du champ
+type: docs
+weight: 30
+url: /fr/python-net/set-field-script/
+description: Cet extrait de code montre comment attribuer une action JavaScript à un champ de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir les actions JavaScript pour les champs de formulaire PDF à l'aide de Python
+Abstract: Cet article explique comment ouvrir un document PDF, affecter du code JavaScript à un champ de formulaire, mettre à jour le script à l'aide de la classe FormEditor, et enregistrer le fichier modifié. L'exemple montre comment les scripts existants peuvent être remplacés afin de modifier le comportement des champs de formulaire.
+---
+
+Les formulaires PDF interactifs s'appuient souvent sur JavaScript pour effectuer des tâches telles que l'affichage d'alertes, la validation des entrées ou le déclenchement d'un comportement dynamique du formulaire. Avec Aspose.PDF for Python, les développeurs peuvent gérer ces scripts de manière programmatique.
+
+L'exemple ajoute d'abord une action JavaScript au champ, puis la remplace par un autre script en utilisant la méthode \u0027set_field_script\u0027. Cette approche permet aux développeurs de contrôler ou de mettre à jour le comportement interactif des éléments de formulaire PDF tels que les boutons ou les champs de saisie.
+
+Le champ de formulaire utilisé dans cet exemple s'appelle 'Script_Demo_Button', qui représente généralement un bouton qui exécute le script assigné lorsqu'il est déclenché.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de la [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module, les développeurs peuvent gérer de manière programmatique les actions JavaScript associées aux champs de formulaire :
+
+1. Ouvrez un document de formulaire PDF existant.
+1. Ajoutez une action JavaScript à un champ de formulaire.
+1. Définissez (remplacez) l'action JavaScript avec un nouveau script.
+1. Enregistrer le document PDF modifié.
+
+```python
+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 set_field_script(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Add JavaScript action to the field
+ form_editor.add_field_script(
+ "Script_Demo_Button", "app.alert('Script 1 has been executed');"
+ )
+
+ # Set JavaScript action for the field
+ form_editor.set_field_script(
+ "Script_Demo_Button", "app.alert('Script 2 has been executed');"
+ )
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-flag/_index.md b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-flag/_index.md
new file mode 100644
index 0000000000..34df28051e
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-flag/_index.md
@@ -0,0 +1,46 @@
+---
+title: Définir le drapeau de soumission
+type: docs
+weight: 50
+url: /fr/python-net/set-submit-flag/
+description: Apprenez comment définir programmétiquement un drapeau de soumission pour un bouton de formulaire PDF à l'aide d'Aspose.PDF for Python. Cela permet au bouton de soumettre les données du formulaire dans un format spécifique, tel que XFDF, lorsqu'il est cliqué par l'utilisateur.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir le drapeau de soumission pour un bouton de formulaire PDF à l'aide d'Aspose.PDF for Python
+Abstract: Les formulaires PDF peuvent être configurés pour soumettre les données du formulaire à un serveur ou point de terminaison dans différents formats. En définissant un drapeau de soumission sur le champ bouton, les développeurs peuvent préciser comment les données sont envoyées. Ce tutoriel montre comment utiliser la classe FormEditor pour définir un drapeau de soumission pour un bouton de soumission existant dans un document PDF et enregistrer le fichier mis à jour.
+---
+
+Les formulaires PDF incluent souvent des boutons de soumission pour envoyer les saisies de l'utilisateur à un serveur. Le drapeau de soumission détermine le format des données envoyées (par ex., XFDF, FDF, HTML).
+
+1. Lier un document PDF.
+1. Accédez à un bouton de soumission existant.
+1. Définissez le drapeau de soumission pour le format souhaité.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+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 set_submit_flag(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Set submit flag for the form
+ form_editor.set_submit_flag("Script_Demo_Button", ap.facades.SubmitFormFlag.XFDF)
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-url/_index.md b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-url/_index.md
new file mode 100644
index 0000000000..75a3f31d64
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-url/_index.md
@@ -0,0 +1,56 @@
+---
+title: Définir l'URL de soumission
+type: docs
+weight: 40
+url: /fr/python-net/set-submit-url/
+description: Cet exemple montre comment configurer une action de soumission pour un champ bouton dans un formulaire PDF en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir une URL de soumission pour un bouton de formulaire PDF en utilisant Python
+Abstract: Cet article explique comment ouvrir un formulaire PDF existant, définir une URL de soumission pour un champ bouton en utilisant la classe FormEditor, vérifier que l'opération réussit et enregistrer le document PDF mis à jour.
+---
+
+Les formulaires PDF peuvent être conçus pour soumettre leurs données à un serveur web lorsqu'un utilisateur clique sur un bouton de soumission. En utilisant Aspose.PDF for Python, les développeurs peuvent configurer programmétiquement une action de soumission pour les champs de formulaire.
+En définissant une URL de soumission, le formulaire peut envoyer les données saisies par l'utilisateur à un serveur lorsque le bouton est cliqué. Cette fonctionnalité est utile pour les flux de travail où les formulaires PDF doivent soumettre des informations aux applications web, aux bases de données ou aux services de traitement.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de la [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) module, les développeurs peuvent attribuer de manière programmatique une URL de soumission à un champ bouton dans un formulaire PDF existant.
+
+1. Ouvrez un formulaire PDF existant.
+1. Localisez un champ bouton nommé Script_Demo_Button.
+1. Attribuez une URL où les données du formulaire seront soumises.
+1. Vérifiez que l'action a été appliquée avec succès.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+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 set_submit_url(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Set license
+ set_license()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Set submit URL for the button
+ if not form_editor.set_submit_url(
+ "Script_Demo_Button", "http://www.example.com/submit"
+ ):
+ raise Exception("Failed to set submit URL")
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/_index.md
new file mode 100644
index 0000000000..fa1b7a62bb
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/_index.md
@@ -0,0 +1,21 @@
+---
+title: Création de champ de formulaire
+type: docs
+weight: 50
+url: /fr/python-net/creating-form-field/
+description: Cet article montre comment créer des champs de formulaire interactifs dans des documents PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer des champs de formulaire PDF en Python
+Abstract: Les formulaires PDF permettent aux utilisateurs de saisir ou de sélectionner des données directement dans un document. Avec Aspose.PDF, les développeurs peuvent créer programmatiquement une variété de champs de formulaire – CheckBox pour les sélections booléennes, ComboBox pour les listes déroulantes, ListBox pour les listes à sélection multiple, RadioButton pour les options exclusives, TextBox pour la saisie de texte, et SubmitButton pour l'envoi des données du formulaire. Cette approche unifiée simplifie la création de PDF interactifs, garantissant un placement précis, un style cohérent et une compatibilité avec le traitement automatisé ainsi que la gestion des entrées utilisateur.
+---
+
+- [Créer un champ case à cocher](/pdf/fr/python-net/create-checkbox-field/)
+- [Créer un champ ComboBox](/pdf/fr/python-net/create-combobox-field/)
+- [Créer un champ ListBox](/pdf/fr/python-net/create-listbox-field/)
+- [Créer un champ RadioButton](/pdf/fr/python-net/create-radiobutton-field/)
+- [Créer un bouton Submit](/pdf/fr/python-net/create-submit-button/)
+- [Créer un champ TextBox](/pdf/fr/python-net/create-textbox-field/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/create-checkbox-field/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-checkbox-field/_index.md
new file mode 100644
index 0000000000..58488e2157
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-checkbox-field/_index.md
@@ -0,0 +1,54 @@
+---
+title: Créer un champ case à cocher
+type: docs
+weight: 10
+url: /fr/python-net/create-checkbox-field/
+description: Apprenez comment ajouter de manière programmatique un champ de formulaire case à cocher à un document PDF en utilisant Aspose.PDF for Python. Ce guide montre comment utiliser la classe FormEditor pour insérer une case à cocher interactive dans un fichier PDF existant et enregistrer le document mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un champ case à cocher dans un PDF en utilisant Aspose.PDF for Python
+Abstract: Les champs de formulaire interactifs permettent aux utilisateurs de remplir et d’interagir avec les documents PDF de façon numérique. Dans ce tutoriel, vous apprendrez comment ajouter un champ case à cocher à un PDF en utilisant l’API Aspose.PDF Python. L’exemple montre comment lier un document PDF existant, créer un champ de formulaire case à cocher à des coordonnées spécifiées, et enregistrer le fichier modifié.
+---
+
+Les formulaires PDF sont largement utilisés pour recueillir les saisies des utilisateurs dans des documents tels que les formulaires de candidature, les enquêtes et les accords. Un champ case à cocher permet aux utilisateurs de sélectionner ou de désélectionner une option dans un formulaire.
+
+En utilisant Aspose.PDF for Python, les développeurs peuvent manipuler les formulaires PDF de manière programmatique. Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) la classe fournit des méthodes pour ajouter, modifier et gérer les champs de formulaire dans un document PDF.
+
+1. Chargez un fichier PDF existant.
+1. Appelez la méthode 'add_field()' avec le paramètre 'FieldType.CHECK_BOX' pour créer la case à cocher et spécifier sa position.
+1. Définissez le nom du champ, la légende et la position.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_checkbox_field(infile, outfile):
+ """Create CheckBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add CheckBox field to PDF form
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.CHECK_BOX,
+ "checkbox1",
+ "Check Box 1",
+ 1,
+ 240,
+ 498,
+ 256,
+ 514,
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/create-combobox-field/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-combobox-field/_index.md
new file mode 100644
index 0000000000..932c29e088
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-combobox-field/_index.md
@@ -0,0 +1,49 @@
+---
+title: Créer un champ ComboBox
+type: docs
+weight: 20
+url: /fr/python-net/create-combobox-field/
+description: Vérifiez comment ajouter programmétiquement un champ ComboBox (liste déroulante) à un document PDF en utilisant Aspose.PDF for Python. Cet exemple montre comment insérer un champ de formulaire ComboBox, ajouter des éléments sélectionnables et enregistrer le fichier PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un champ ComboBox dans un PDF en utilisant Aspose.PDF for Python
+Abstract: Les champs de formulaire interactifs rendent les PDF plus dynamiques et conviviaux. Un champ ComboBox permet aux utilisateurs de sélectionner une option dans une liste déroulante prédéfinie. Dans ce tutoriel, vous apprendrez comment créer un ComboBox dans un PDF en utilisant la classe FormEditor d'Aspose.PDF for Python, le remplir avec des options et enregistrer le document modifié.
+---
+
+Les formulaires PDF sont largement utilisés pour recueillir des informations structurées dans des documents numériques tels que des candidatures, des enquêtes et des formulaires d'inscription. Un champ ComboBox offre un moyen pratique aux utilisateurs de choisir parmi une liste de valeurs prédéfinies tout en maintenant le formulaire compact et organisé.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe permet de créer et de gérer différents types de champs, y compris les zones de texte, les cases à cocher, les boutons radio et les listes déroulantes.
+
+1. Chargez un document PDF existant.
+1. Ajoutez un champ ComboBox avec la méthode 'add_field()' et le paramètre 'FieldType.COMBO_BOX'.
+1. Utilisez la méthode 'add_list_item()' pour insérer des options sélectionnables dans la liste déroulante.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_combobox_field(infile, outfile):
+ """Create ComboBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add ComboBox field to PDF form
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.COMBO_BOX, "combobox1", "Australia", 1, 230, 498, 350, 514
+ )
+ pdf_form_editor.add_list_item("combobox1", ["Australia", "Australia"])
+ pdf_form_editor.add_list_item("combobox1", ["New Zealand", "New Zealand"])
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/create-listbox-field/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-listbox-field/_index.md
new file mode 100644
index 0000000000..b5ba62654e
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-listbox-field/_index.md
@@ -0,0 +1,49 @@
+---
+title: Créer un champ ListBox
+type: docs
+weight: 30
+url: /fr/python-net/create-listbox-field/
+description: Apprenez à ajouter programmétiquement un champ de formulaire ListBox à un document PDF à l'aide d'Aspose.PDF for Python. Ce guide montre comment insérer un champ ListBox, définir les éléments sélectionnables et enregistrer le fichier PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un champ ListBox dans un PDF à l'aide d'Aspose.PDF for Python
+Abstract: Les formulaires PDF permettent aux utilisateurs d'interagir avec les documents en sélectionnant des options, en saisissant des données et en soumettant des informations numériquement. Un champ ListBox permet aux utilisateurs de choisir une ou plusieurs valeurs parmi une liste visible d'options. Dans ce tutoriel, vous apprendrez à créer un champ ListBox dans un PDF en utilisant la classe FormEditor d'Aspose.PDF for Python et à le remplir avec des éléments prédéfinis.
+---
+
+Les formulaires PDF sont couramment utilisés pour les demandes, les enquêtes et les documents d'inscription. Un champ ListBox affiche plusieurs options simultanément, ce qui facilite la révision et la sélection d'éléments dans une liste par les utilisateurs.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) class fournit des fonctionnalités pour ajouter différents types de champs interactifs, y compris les éléments ListBox.
+
+1. Chargez un document PDF existant.
+1. Définir une liste d'options sélectionnables.
+1. Ajouter un champ ListBox à une page spécifique.
+1. Définir une valeur sélectionnée par défaut.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_listbox_field(infile, outfile):
+ """Create ListBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add ListBox field to PDF form
+ pdf_form_editor.items = ["Australia", "New Zealand", "Malaysia"]
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.LIST_BOX, "listbox1", "Australia", 1, 230, 398, 350, 514
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/create-radiobutton-field/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-radiobutton-field/_index.md
new file mode 100644
index 0000000000..0483e7b792
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-radiobutton-field/_index.md
@@ -0,0 +1,49 @@
+---
+title: Créer un champ RadioButton
+type: docs
+weight: 40
+url: /fr/python-net/create-radiobutton-field/
+description: Apprenez comment ajouter de manière programmatique un champ de bouton radio à un document PDF en utilisant Aspose.PDF for Python. Cet exemple montre comment créer un groupe de boutons radio, définir des options sélectionnables et enregistrer le fichier PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un champ de bouton radio dans un PDF en utilisant Aspose.PDF for Python
+Abstract: Les boutons radio sont couramment utilisés dans les formulaires PDF pour permettre aux utilisateurs de sélectionner une option parmi un groupe de choix prédéfini. Dans ce tutoriel, vous apprendrez comment créer un champ de bouton radio dans un PDF en utilisant la classe FormEditor d'Aspose.PDF for Python. L'exemple montre comment définir les éléments du bouton radio, définir une sélection par défaut et enregistrer le document mis à jour.
+---
+
+Les formulaires PDF interactifs permettent aux utilisateurs de fournir des entrées structurées directement dans un document. Un champ de bouton radio est utile lorsque les utilisateurs doivent choisir une seule option parmi plusieurs choix, par exemple la sélection d'un pays, du genre ou d'une préférence.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit des méthodes pour créer différents types de champs, y compris les zones de texte, les cases à cocher, les listes déroulantes, les listes et les boutons radio.
+
+1. Chargez un document PDF existant.
+1. Définir une liste d'options de bouton radio.
+1. Ajouter un champ de bouton radio à une page spécifique.
+1. Définir une valeur sélectionnée par défaut.
+1. Enregistrer le document PDF modifié.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_radiobutton_field(infile, outfile):
+ """Create RadioButton field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add RadioButton field to PDF form
+ pdf_form_editor.items = ["Australia", "New Zealand", "Malaysia"]
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.RADIO, "radiobutton1", "Malaysia", 1, 240, 498, 256, 514
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/create-submit-button/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-submit-button/_index.md
new file mode 100644
index 0000000000..f07b9af75a
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-submit-button/_index.md
@@ -0,0 +1,54 @@
+---
+title: Créer un bouton Submit
+type: docs
+weight: 50
+url: /fr/python-net/create-submit-button/
+description: Apprenez comment ajouter un bouton Submit à un document PDF de manière programmatique à l'aide d'Aspose.PDF for Python. Ce tutoriel montre comment créer un bouton qui soumet les données du formulaire à une URL spécifiée et enregistre le PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un bouton Submit dans un PDF à l'aide d'Aspose.PDF for Python
+Abstract: Les boutons Submit dans les formulaires PDF permettent aux utilisateurs d'envoyer les données du formulaire directement à un serveur ou un point de terminaison. Dans ce guide, vous apprendrez comment ajouter un champ Submit Button à un PDF en utilisant la classe FormEditor d'Aspose.PDF for Python. L'exemple montre comment configurer le nom du bouton, son libellé, l'URL cible et la position, puis enregistrer le document PDF mis à jour.
+---
+
+Les formulaires PDF interactifs exigent souvent que les utilisateurs soumettent leurs saisies pour traitement, par exemple l'envoi de résultats d'enquête, de formulaires de demande ou de données de retour. Un champ Submit Button fournit cette fonctionnalité en liant le bouton à un point de terminaison web.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe permet d'ajouter des boutons, des cases à cocher, des boutons radio, des champs de texte et d'autres contrôles de formulaire.
+
+1. Chargez un document PDF existant.
+1. Ajouter un champ Bouton d'envoi à une page spécifique.
+1. Définir le libellé du bouton et l'URL cible de soumission.
+1. Enregistrer le PDF mis à jour avec le nouveau bouton.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_submit_button(infile, outfile):
+ """Create Submit Button in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add Submit Button to PDF form
+ pdf_form_editor.add_submit_btn(
+ "submitbtn1",
+ 1,
+ "Submit Button",
+ "http://example.com/submit",
+ 100,
+ 450,
+ 200,
+ 470,
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/creating-form-field/create-textbox-field/_index.md b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-textbox-field/_index.md
new file mode 100644
index 0000000000..7eca6f4b36
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/creating-form-field/create-textbox-field/_index.md
@@ -0,0 +1,50 @@
+---
+title: Créer un champ TextBox
+type: docs
+weight: 60
+url: /fr/python-net/create-textbox-field/
+description: Apprenez comment ajouter programmatiquement des champs TextBox à un document PDF à l'aide d'Aspose.PDF for Python. Ce tutoriel montre comment insérer plusieurs champs de texte, définir des valeurs par défaut et enregistrer le document PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer des champs TextBox dans un PDF à l'aide d'Aspose.PDF for Python
+Abstract: Les champs TextBox dans les formulaires PDF permettent aux utilisateurs de saisir et de modifier du texte, rendant les documents interactifs et conviviaux. Dans ce tutoriel, vous apprendrez comment créer des champs de formulaire TextBox dans un PDF en utilisant la classe FormEditor d'Aspose.PDF for Python. L'exemple montre comment ajouter plusieurs champs, spécifier des valeurs par défaut et enregistrer le PDF modifié.
+---
+
+Les formulaires PDF nécessitent souvent une saisie de texte de la part des utilisateurs, comme des noms, adresses ou commentaires. Les champs TextBox offrent cette fonctionnalité en fournissant des champs éditables directement dans le document PDF.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe permet d'ajouter des champs de texte, des cases à cocher, des boutons radio, des listes déroulantes, des listes combinées et des boutons, facilitant la création de PDF interactifs.
+
+1. Chargez un document PDF existant.
+1. Ajouter plusieurs champs TextBox pour la saisie de l'utilisateur.
+1. Définir des valeurs par défaut pour chaque champ.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_textbox_field(infile, outfile):
+ """Create TextBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add TextBox field to PDF form
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.TEXT, "first_name", "Alexander", 1, 50, 570, 150, 590
+ )
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.TEXT, "last_name", "Smith", 1, 235, 570, 330, 590
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/_index.md
new file mode 100644
index 0000000000..63b4b194fd
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/_index.md
@@ -0,0 +1,23 @@
+---
+title: Personnalisation de l'apparence des champs
+type: docs
+weight: 30
+url: /fr/python-net/customizing-field-appearance/
+description: En utilisant Aspose.PDF pour Python, les développeurs peuvent personnaliser complètement l'apparence et le comportement des champs de manière programmatique.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Personnalisez l'apparence des champs de formulaire PDF en Python – Alignement, Couleurs, Limites et Attributs
+Abstract: Apprenez comment personnaliser l'apparence et le comportement des champs de formulaire PDF en utilisant Aspose.PDF pour Python. Ce guide couvre la décoration des champs avec des couleurs et des bordures, la définition de l'alignement horizontal et vertical, le contrôle de la visibilité, l'ajustement des attributs des champs, la configuration du nombre de comb et des limites de caractères, ainsi que la récupération des informations d'apparence des champs. Ces techniques aident les développeurs à créer des formulaires PDF visuellement cohérents et conviviaux.
+---
+
+- [Décorer le champ](/pdf/fr/python-net/decorate-field/)
+- [Définir l'alignement du champ](/pdf/fr/python-net/set-field-alignment/)
+- [Définir l'alignement vertical du champ](/pdf/fr/python-net/set-field-alignment-vertical/)
+- [Définir l'apparence du champ](/pdf/fr/python-net/set-field-appearance/)
+- [Définir le nombre de cases du champ](/pdf/fr/python-net/set-field-comb-number/)
+- [Définir la limite du champ](/pdf/fr/python-net/set-field-limit/)
+- [Obtenir l'apparence du champ](/pdf/fr/python-net/get-field-appearance/)
+
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/decorate-field/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/decorate-field/_index.md
new file mode 100644
index 0000000000..45a253797c
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/decorate-field/_index.md
@@ -0,0 +1,55 @@
+---
+title: Décorer le champ
+type: docs
+weight: 10
+url: /fr/python-net/decorate-field/
+description: Cet exemple montre comment personnaliser l'apparence d'un champ de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Décorer les champs de formulaire PDF avec des couleurs personnalisées et un alignement à l'aide de Python.
+Abstract: Cet article explique comment ouvrir un document PDF, configurer les options de style à l'aide de la classe FormFieldFacade, appliquer ces paramètres à un champ de formulaire et enregistrer le PDF mis à jour. L'exemple montre comment décorer un champ nommé \"First Name\" avec des couleurs personnalisées et un alignement du texte centré.
+---
+
+Les formulaires PDF nécessitent souvent une personnalisation visuelle pour améliorer l'utilisabilité et créer un design cohérent. Avec Aspose.PDF for Python, les développeurs peuvent décorer les champs de formulaire de manière programmatique en définissant des propriétés telles que les couleurs, les bordures et l'alignement du texte.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) et [FormFieldFacade](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formfieldfacade/) Les classes permettent aux développeurs de modifier facilement l'apparence des champs de formulaire pour améliorer la lisibilité, mettre en évidence les champs obligatoires ou répondre aux exigences de la marque.
+
+1. Ouvrez un document PDF existant.
+1. Créez un objet FormEditor pour manipuler les champs de formulaire.
+1. Définissez le style visuel à l'aide de FormFieldFacade.
+1. Appliquez le style à un champ de formulaire spécifique.
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def decorate_field(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+ form_editor.facade = pdf_facades.FormFieldFacade()
+ form_editor.facade.background_color = ap_pydrawing.Color.red
+ form_editor.facade.text_color = ap_pydrawing.Color.blue
+ form_editor.facade.border_color = ap_pydrawing.Color.green
+ form_editor.facade.alignment = pdf_facades.FormFieldFacade.ALIGN_CENTER
+ form_editor.decorate_field("First Name")
+
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/get-field-appearance/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/get-field-appearance/_index.md
new file mode 100644
index 0000000000..4826fc532a
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/get-field-appearance/_index.md
@@ -0,0 +1,45 @@
+---
+title: Obtenir l'apparence du champ
+type: docs
+weight: 20
+url: /fr/python-net/get-field-appearance/
+description: Cet article explique comment ouvrir un PDF, accéder à un champ de formulaire, récupérer ses paramètres d'apparence et les afficher. L'exemple montre la récupération de l'apparence d'un champ nommé "Last Name".
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Récupérer l'apparence du champ de formulaire PDF à l'aide de Python
+Abstract: Cet exemple montre comment récupérer les propriétés d'apparence visuelle d'un champ de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python. Le code ouvre un PDF existant, accède à un champ de formulaire spécifique et imprime les détails de son apparence, y compris la couleur d'arrière-plan, la couleur du texte, la couleur de la bordure et l'alignement.
+---
+
+Les champs de formulaire dans les documents PDF possèdent des propriétés visuelles telles que la couleur d'arrière-plan, la couleur du texte, la couleur de la bordure et l'alignement. Avec Aspose.PDF for Python, les développeurs peuvent inspecter ces paramètres d'apparence de manière programmatique en utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe.
+
+1. Ouvrez un document PDF existant.
+1. Créer un objet FormEditor.
+1. Récupérer les informations d'apparence d'un champ spécifique.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_field_appearance(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Get field appearance
+ appearance = form_editor.get_field_appearance("Last Name")
+ print("Field Appearance: " + str(appearance))
+```
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment-vertical/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment-vertical/_index.md
new file mode 100644
index 0000000000..5dd369dedc
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment-vertical/_index.md
@@ -0,0 +1,56 @@
+---
+title: Définir l'alignement vertical du champ
+type: docs
+weight: 40
+url: /fr/python-net/set-field-alignment-vertical/
+description: Cet exemple montre comment définir l'alignement vertical d'un champ de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir l'alignement vertical pour les champs de formulaire PDF à l'aide de Python
+Abstract: Cet article explique comment ouvrir un PDF, définir l'alignement vertical d'un champ à l'aide de la classe FormEditor, et enregistrer le PDF mis à jour. L'exemple définit l'alignement vertical d'un champ nommé "First Name" au bas de la zone du champ.
+---
+
+Les champs de formulaire PDF peuvent contenir du texte qui nécessite un alignement vertical approprié pour une apparence cohérente et professionnelle. En utilisant Aspose.PDF for Python, les développeurs peuvent modifier programmétiquement l'alignement vertical des champs de formulaire.
+L'alignement vertical permet aux développeurs de contrôler si le texte du champ apparaît en haut, au centre ou en bas de la boîte englobante du champ, améliorant ainsi la mise en page et la lisibilité des données du formulaire.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe et le [FormFieldFacade](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formfieldfacade/) constantes, les développeurs peuvent ajuster l'alignement vertical par programme pour obtenir une disposition de formulaire cohérente:
+
+1. Ouvrez un document PDF existant.
+1. Créer un objet FormEditor.
+1. Définissez l'alignement vertical d'un champ nommé "First Name" en bas.
+1. Enregistrez le document modifié.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_alignment_vertical(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Attempt to set vertical alignment of the "First Name" field to bottom
+ if form_editor.set_field_alignment_v(
+ "First Name", pdf_facades.FormFieldFacade.ALIGN_BOTTOM
+ ):
+ # Save updated document
+ form_editor.save(outfile)
+ else:
+ raise Exception(
+ "Failed to set field vertical alignment. Field may not support vertical alignment."
+ )
+```
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment/_index.md
new file mode 100644
index 0000000000..181fd91c40
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment/_index.md
@@ -0,0 +1,55 @@
+---
+title: Définir l'alignement du champ
+type: docs
+weight: 30
+url: /fr/python-net/set-field-alignment/
+description: Cet exemple montre comment définir l'alignement du texte d'un champ de formulaire dans un document PDF en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir l'alignement du texte pour les champs de formulaire PDF avec Python
+Abstract: Cet article explique comment ouvrir un document PDF, définir l'alignement d'un champ spécifique à l'aide de la classe FormEditor, et enregistrer le PDF mis à jour. L'exemple définit l'alignement du texte d'un champ nommé "First Name" au centre.
+---
+
+Les champs de formulaire PDF nécessitent souvent un alignement de texte personnalisé pour maintenir une mise en page cohérente et professionnelle. En utilisant Aspose.PDF for Python, les développeurs peuvent définir de manière programmatique l'alignement du contenu texte d'un champ de formulaire.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe, en combinaison avec le [FormFieldFacade](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formfieldfacade/) constants, permet aux développeurs de modifier l'alignement des champs de formulaire existants par programme.
+
+1. Ouvrez un document PDF existant.
+1. Créer un objet FormEditor.
+1. Définir l'alignement d'un champ nommé "First Name" au centre.
+1. Enregistrez le document modifié.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_alignment(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field alignment to center
+ if form_editor.set_field_alignment(
+ "First Name", pdf_facades.FormFieldFacade.ALIGN_CENTER
+ ):
+ # Save updated document
+ form_editor.save(outfile)
+ else:
+ raise Exception(
+ "Failed to set field alignment. Field may not support alignment."
+ )
+```
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-appearance/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-appearance/_index.md
new file mode 100644
index 0000000000..f12c27c0a3
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-appearance/_index.md
@@ -0,0 +1,55 @@
+---
+title: Définir l'apparence du champ
+type: docs
+weight: 50
+url: /fr/python-net/set-field-appearance/
+description: Cet exemple montre comment modifier l'apparence visuelle d'un champ de formulaire PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir l'apparence du champ de formulaire PDF à l'aide de Python
+Abstract: Cet article explique comment ouvrir un PDF, définir l'apparence d'un champ de formulaire à l'aide de la classe FormEditor, et enregistrer le document mis à jour. L'exemple définit l'apparence d'un champ nommé "First Name" comme invisible en utilisant le drapeau AnnotationFlags.INVISIBLE.
+---
+
+Les champs de formulaire PDF prennent en charge des drapeaux d'apparence qui contrôlent la visibilité, l'impression et l'interactivité. Avec Aspose.PDF for Python, les développeurs peuvent modifier ces drapeaux de manière programmatique pour des champs de formulaire spécifiques.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe, les développeurs peuvent modifier ces drapeaux pour masquer, afficher ou personnaliser le comportement des champs de formulaire dans un PDF interactif.
+
+1. Ouvrez un document PDF existant.
+1. Créer un objet FormEditor.
+1. Définissez l'apparence du champ nommé "First Name" sur invisible.
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_appearance(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field appearance to invisible
+ if not form_editor.set_field_appearance(
+ "First Name", ap.annotations.AnnotationFlags.INVISIBLE
+ ):
+ raise Exception(
+ "Failed to set field appearance. Field may not support appearance flags."
+ )
+
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-comb-number/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-comb-number/_index.md
new file mode 100644
index 0000000000..d9802a4797
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-comb-number/_index.md
@@ -0,0 +1,50 @@
+---
+title: Définir le nombre de cases du champ
+type: docs
+weight: 70
+url: /fr/python-net/set-field-comb-number/
+description: Cet exemple montre comment définir un nombre de comb pour un champ de formulaire PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir le nombre de comb pour les champs de formulaire PDF en utilisant Python
+Abstract: Avec Aspose.PDF for Python, les développeurs peuvent définir programmatiquement le nombre de cases (nombre de comb) pour un champ de formulaire afin d'imposer une saisie de longueur fixe. Cet article montre comment définir le nombre de comb pour un champ nommé "PIN".
+---
+
+Le nombre de comb définit la façon dont le contenu du champ est réparti en cases espacées de manière égale, souvent utilisé pour les codes PIN, les numéros de série ou d'autres champs de saisie à longueur fixe. Le code ouvre un PDF existant, définit le nombre de comb pour un champ, puis enregistre le document modifié.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode ‘set_field_comb_number’ pour définir le nombre de cases (caractères) dans un champ de formulaire.
+
+1. Ouvrez un formulaire PDF existant.
+1. Crée un objet FormEditor.
+1. Définit le nombre de comb du champ nommé "PIN" à 5.
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_comb_number(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field comb number to 5
+ form_editor.set_field_comb_number("PIN", 5)
+
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-limit/_index.md b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-limit/_index.md
new file mode 100644
index 0000000000..046e5b7062
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-limit/_index.md
@@ -0,0 +1,53 @@
+---
+title: Définir la limite du champ
+type: docs
+weight: 80
+url: /fr/python-net/set-field-limit/
+description: Cet exemple montre comment définir une limite maximale de caractères pour un champ de formulaire dans un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Définir la limite maximale de caractères pour les champs de formulaire PDF en utilisant Python
+Abstract: Cet exemple démontre la définition de la limite de caractères pour un champ nommé "Last Name" à 10 caractères, garantissant que les utilisateurs ne peuvent pas saisir plus que la limite spécifiée.
+---
+
+Les champs de formulaire dans les documents PDF peuvent nécessiter des restrictions d'entrée pour maintenir un formatage correct. En utilisant Aspose.PDF for Python, les développeurs peuvent définir programmatique une longueur maximale de caractères pour un champ.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode 'set_field_limit' pour définir la longueur maximale d'entrée pour un champ.
+
+1. Ouvrez un formulaire PDF existant.
+1. Créer un objet FormEditor.
+1. Définissez la limite maximale de caractères pour le champ "Last Name".
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_limit(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field limit to 10
+ if not form_editor.set_field_limit("Last Name", 10):
+ raise Exception(
+ "Failed to set field limit. Field may not support specified limit."
+ )
+
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/_index.md
new file mode 100644
index 0000000000..bc435e6548
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/_index.md
@@ -0,0 +1,24 @@
+---
+title: Modification des champs de formulaire
+type: docs
+weight: 20
+url: /fr/python-net/modifying-form-fields/
+description: En utilisant Aspose.PDF for Python, vous pouvez modifier efficacement les champs de formulaire de manière programmatique avec la classe FormEditor.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modifier les champs de formulaire PDF en Python - Ajouter, déplacer, copier, renommer et supprimer des champs
+Abstract: Apprenez à modifier les champs de formulaire PDF existants en utilisant Aspose.PDF for Python. Ce guide explique comment gérer les éléments de formulaire en ajoutant ou supprimant des éléments de liste, en déplaçant des champs, en les retirant ou les renommant, en convertissant des champs à une seule ligne en champs multi‑lignes, et en copiant des champs à l'intérieur ou entre des documents. Ces techniques aident les développeurs à mettre à jour dynamiquement les formulaires PDF et à les adapter aux exigences métier évolutives sans recréer toute la structure du formulaire.
+---
+
+- [Ajouter un élément de liste](/pdf/fr/python-net/add-list-item/)
+- [Supprimer l'élément de la liste](/pdf/fr/python-net/del-list-item/)
+- [Déplacer le champ](/pdf/fr/python-net/move-field/)
+- [Supprimer le champ](/pdf/fr/python-net/remove-field/)
+- [Renommer le champ](/pdf/fr/python-net/rename-field/)
+- [Simple 2 Multiple](/pdf/fr/python-net/single-to-multiple/)
+- [Copier le champ interne](/pdf/fr/python-net/copy-inner-field/)
+- [Copier le champ externe](/pdf/fr/python-net/copy-outer-field/)
+
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/add-list-item/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/add-list-item/_index.md
new file mode 100644
index 0000000000..930b031ffb
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/add-list-item/_index.md
@@ -0,0 +1,45 @@
+---
+title: Ajouter un élément de liste
+type: docs
+weight: 10
+url: /fr/python-net/add-list-item/
+description: Cet exemple démontre comment ajouter des éléments à un champ de zone de liste dans un document PDF en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des éléments aux champs de zone de liste PDF à l'aide de Python
+Abstract: Cet article montre comment ouvrir un document PDF, ajouter des éléments à un champ de zone de liste nommé "Country", et enregistrer le document mis à jour.
+---
+
+Les champs de zone de liste dans les PDF permettent aux utilisateurs de sélectionner une ou plusieurs options parmi un ensemble prédéfini. En utilisant Aspose.PDF for Python, les développeurs peuvent ajouter de nouveaux éléments à ces champs de manière programmatique. Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode ‘add_list_item’ pour ajouter des éléments à un champ de zone de liste existant.
+
+1. Ouvrez un formulaire PDF existant.
+1. Créer un objet FormEditor.
+1. Lier le PDF au FormEditor.
+1. Ajouter des éléments au champ de zone de liste "Country".
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_list_item(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Add list item to list box field
+ form_editor.add_list_item("Country", ["New Zealand", "New Zealand"])
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/copy-inner-field/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/copy-inner-field/_index.md
new file mode 100644
index 0000000000..1c711fb5dd
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/copy-inner-field/_index.md
@@ -0,0 +1,71 @@
+---
+title: Copier le champ interne
+type: docs
+weight: 20
+url: /fr/python-net/copy-inner-field/
+description: Copier les champs de formulaire PDF vers une nouvelle position en utilisant Python avec Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Copier les champs de formulaire PDF vers une nouvelle position en utilisant Python
+Abstract: Cet exemple montre comment copier un champ de formulaire existant vers une nouvelle position dans un document PDF en utilisant Aspose.PDF for Python. Le code ouvre un PDF, duplique un champ à une page et des coordonnées spécifiées, puis enregistre le document mis à jour.
+---
+
+Les formulaires PDF nécessitent souvent de dupliquer des champs tout en conservant le formatage et le comportement d'origine. En utilisant Aspose.PDF for Python, les développeurs peuvent copier un champ existant vers une nouvelle position sur la même page ou une autre page de manière programmatique.
+
+Cet article explique comment copier un champ nommé 'First Name' vers un nouveau champ appelé 'First Name Copy' sur la page 2 à des coordonnées spécifiques (x=200, y=600), en produisant un PDF avec le champ nouvellement positionné.
+
+1. Ouvrez un formulaire PDF existant.
+1. Créer un objet FormEditor.
+1. Liez le document PDF au FormEditor.
+1. Copiez le champ 'First Name' vers un nouveau champ 'First Name Copy' sur la page 2 aux coordonnées (200, 600).
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def copy_inner_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Copies an existing field to a new position specified by both page number and ordinates.
+ # A new document will be produced, which contains everything the source document has except for the newly copied field.
+ form_editor.copy_inner_field("First Name", "First Name Copy", 2, 200, 600)
+ # Save updated document
+ form_editor.save(outfile)
+```
+
+**Veuillez noter :**
+
+La signature de la méthode 'copy_inner_field' ressemble à ceci :
+
+```python
+copy_inner_field(original_field_name, new_field_name, page_number, x, y)
+```
+
+- 'original_field_name' – le champ que vous souhaitez dupliquer.
+- 'new_field_name' – le nom du nouveau champ.
+- 'page_number' – la page sur laquelle le nouveau champ apparaîtra.
+- x, y – coordonnées sur cette page.
+
+Le page_number doit être un entier positif correspondant à une page existante du PDF (indexation à partir de 1).
+
+Si vous passez un paramètre négatif, par ex. :
+
+```python
+form_editor.copy_inner_field("First Name", "First Name Copy", -1, 200, 600)
+```
+
+Le programme réinitialisera alors aux paramètres précédents.
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/copy-outer-field/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/copy-outer-field/_index.md
new file mode 100644
index 0000000000..69c277089b
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/copy-outer-field/_index.md
@@ -0,0 +1,79 @@
+---
+title: Copier le champ externe
+type: docs
+weight: 30
+url: /fr/python-net/copy-outer-field/
+description: Cet exemple montre comment copier un champ de formulaire d’un document PDF à un autre en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Copier les champs de formulaire PDF d’un autre document en utilisant Python
+Abstract: Cet article explique comment créer un nouveau document PDF, copier le champ "First Name" du PDF source vers la page 1 aux coordonnées (200, 600), et enregistrer le document cible mis à jour.
+---
+
+Parfois, les formulaires PDF nécessitent la réutilisation de champs d'un document à un autre. En utilisant Aspose.PDF for Python, les développeurs peuvent copier programmatiquement des champs de formulaire d'un PDF source vers un PDF cible.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode ‘copy_outer_field’, qui copie un champ d'un document source vers un document cible à une page et des coordonnées spécifiées.
+
+Le code crée un nouveau PDF (cible), ajoute une page, puis copie un champ d'un PDF existant (source) vers le document cible aux coordonnées spécifiées.
+
+1. Créer un nouveau document PDF cible.
+1. Ajoutez au moins une page au PDF cible.
+1. Enregistrez le document cible vide.
+1. Créez un objet FormEditor et liez-le au PDF cible.
+1. Copiez le champ 'First Name' du PDF source vers la page 1 à (200, 600).
+1. Enregistrez le PDF cible mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def copy_outer_field(infile, outfile):
+ # Since copy_outer_field() method needs to copy field from source document to target document, we need to create a new document as target document first.
+ doc = ap.Document()
+ doc.pages.add()
+ doc.save(outfile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(outfile)
+ # Copies an existing field to a new position specified by both page number and ordinates.
+ # A new document will be produced, which contains everything the source document has except for the newly copied field.
+ form_editor.copy_outer_field(infile, "First Name", 1, 200, 600)
+ # Save updated document
+ form_editor.save(outfile)
+```
+
+**Veuillez noter :**
+
+La signature de la méthode 'copy_outer_field' ressemble à ceci :
+
+```python
+copy_outer_field(original_field_name, new_field_name, page_number, x, y)
+```
+
+- 'original_field_name' – le champ que vous souhaitez dupliquer.
+- 'new_field_name' – le nom du nouveau champ.
+- 'page_number' – la page sur laquelle le nouveau champ apparaîtra.
+- x, y – coordonnées sur cette page.
+
+Le page_number doit être un entier positif correspondant à une page existante du PDF (indexation à partir de 1).
+
+Si vous passez un paramètre négatif, par ex. :
+
+```python
+form_editor.copy_outer_field("First Name", "First Name Copy", 1, -200, 600)
+```
+
+Le programme réinitialisera alors aux paramètres précédents.
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/del-list-item/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/del-list-item/_index.md
new file mode 100644
index 0000000000..d56e77f659
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/del-list-item/_index.md
@@ -0,0 +1,50 @@
+---
+title: Supprimer l'élément de la liste
+type: docs
+weight: 40
+url: /fr/python-net/del-list-item/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer des éléments des champs de zone de liste PDF avec Python
+Abstract: Cet exemple montre comment supprimer un élément d'un champ de formulaire de zone de liste dans un document PDF à l'aide d'Aspose.PDF for Python. Le code ouvre un PDF existant, supprime un élément spécifique d'un champ de zone de liste et enregistre le document mis à jour.
+---
+
+Les champs de zone de liste dans les PDF permettent aux utilisateurs de sélectionner une ou plusieurs options pré‑définies. Avec Aspose.PDF for Python, les développeurs peuvent supprimer programmatiquement des éléments de ces champs.
+
+Cet article explique comment supprimer l'élément « UK » d'un champ de zone de liste nommé « Country », en veillant à ce que le champ ne contienne que les options souhaitées.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode « del_list_item » pour supprimer un élément spécifique d'un champ de zone de liste.
+
+1. Ouvrez un formulaire PDF existant.
+1. Créer un objet FormEditor.
+1. Liez le document PDF au FormEditor.
+1. Supprimez l'élément "UK" de la zone de liste "Country".
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def del_list_item(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Delete list item from list box field
+ form_editor.del_list_item("Country", "UK")
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/move-field/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/move-field/_index.md
new file mode 100644
index 0000000000..0fa04c635c
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/move-field/_index.md
@@ -0,0 +1,47 @@
+---
+title: Déplacer le champ
+type: docs
+weight: 50
+url: /fr/python-net/move-field/
+description: Déplacer un champ de formulaire existant vers une position différente dans un document PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Déplacer un champ de formulaire PDF vers une nouvelle position à l'aide de Python
+Abstract: Cet exemple montre comment déplacer un champ de formulaire existant vers une position différente dans un document PDF en utilisant Aspose.PDF for Python. Le code ouvre un PDF existant, déplace le champ de formulaire spécifié vers de nouvelles coordonnées et enregistre le document mis à jour.
+---
+
+Les formulaires PDF nécessitent souvent des ajustements de mise en page après leur création. En utilisant Aspose.PDF for Python, les développeurs peuvent déplacer des champs de formulaire existants vers une nouvelle position sans les recréer.
+
+Cet exemple montre comment repositionner le champ \u0022Country\u0022 en spécifiant de nouvelles coordonnées pour son placement dans la page. Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode move_field pour repositionner les champs au sein d'une page PDF.
+
+1. Ouvrez le formulaire PDF existant.
+1. Créer un objet FormEditor.
+1. Liez le document PDF au FormEditor.
+1. Déplacez le champ 'Country' vers une nouvelle position en utilisant des coordonnées.
+1. Enregistrez le document modifié.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def move_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Move field to new page
+ form_editor.move_field("Country", 200, 600, 280, 620)
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/remove-field/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/remove-field/_index.md
new file mode 100644
index 0000000000..fa7ede2070
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/remove-field/_index.md
@@ -0,0 +1,47 @@
+---
+title: Supprimer le champ
+type: docs
+weight: 60
+url: /fr/python-net/remove-field/
+description: Cet exemple montre comment supprimer le champ 'Country' d'un formulaire PDF en utilisant la méthode 'remove_field' de la classe 'FormEditor'.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer un champ de formulaire d'un document PDF en utilisant Python
+Abstract: Cet exemple démontre comment supprimer un champ de formulaire existant d'un document PDF en utilisant Aspose.PDF for Python. Le code charge un fichier PDF, supprime le champ spécifié en utilisant la classe FormEditor, et enregistre le document mis à jour.
+---
+
+Les formulaires PDF peuvent contenir des champs qui ne sont plus nécessaires en raison de modifications de conception ou de mises à jour du flux de travail. Avec Aspose.PDF for Python, les développeurs peuvent facilement supprimer des champs de formulaire spécifiques par programme.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe dans Aspose.PDF fournit la méthode 'remove_field', qui permet aux développeurs de supprimer un champ de formulaire par son nom.
+
+1. Chargez le document PDF.
+1. Créer un objet FormEditor.
+1. Lier le PDF au FormEditor.
+1. Supprimez le champ de formulaire spécifié.
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def remove_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Remove field from document
+ form_editor.remove_field("Country")
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/rename-field/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/rename-field/_index.md
new file mode 100644
index 0000000000..d5293cc65e
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/rename-field/_index.md
@@ -0,0 +1,48 @@
+---
+title: Renommer le champ
+type: docs
+weight: 70
+url: /fr/python-net/rename-field/
+description: Renommer un champ de formulaire existant dans un document PDF à l'aide d'Aspose.PDF pour Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Renommer un champ de formulaire PDF en utilisant Python
+Abstract: Cet exemple montre comment renommer un champ de formulaire existant dans un document PDF à l'aide d'Aspose.PDF pour Python. Le code ouvre un PDF d'entrée, modifie le nom d'un champ de formulaire spécifié en utilisant la classe FormEditor, et enregistre le document mis à jour.
+---
+
+Les formulaires PDF reposent souvent sur les noms de champs pour le scripting, l'automatisation et le traitement des données. En utilisant Aspose.PDF pour Python, les développeurs peuvent renommer des champs existants sans les recréer ni modifier la mise en page du formulaire.
+
+Le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) La classe fournit la méthode ‘rename_field’, qui permet aux développeurs de changer le nom d'un champ existant tout en préservant sa position, sa valeur et son apparence.
+
+1. Chargez le formulaire PDF existant.
+1. Créez une instance de FormEditor.
+1. Liez le document PDF à l'éditeur.
+1. Renommez le champ cible.
+1. Enregistrez le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def rename_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Rename field in document
+ form_editor.rename_field("City", "Town")
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/fr/python-net/working-with-facades/formeditor/modifying-form-fields/single-to-multiple/_index.md b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/single-to-multiple/_index.md
new file mode 100644
index 0000000000..dd9f322c1a
--- /dev/null
+++ b/fr/python-net/working-with-facades/formeditor/modifying-form-fields/single-to-multiple/_index.md
@@ -0,0 +1,48 @@
+---
+title: Champ à ligne unique vers champ à plusieurs lignes
+type: docs
+weight: 80
+url: /fr/python-net/single-to-multiple/
+description: Convertir un champ de texte à ligne simple en champ à plusieurs lignes dans un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Convertir un champ de texte à ligne simple en champ à plusieurs lignes dans un PDF en utilisant Python
+Abstract: Cet exemple montre comment convertir un champ de texte à ligne simple en champ à plusieurs lignes dans un document PDF à l'aide d'Aspose.PDF for Python. Le code charge un formulaire PDF existant, modifie le champ spécifié pour autoriser plusieurs lignes de texte, puis enregistre le document mis à jour.
+---
+
+Les formulaires PDF contiennent parfois des champs de texte conçus pour une entrée à ligne unique, ce qui peut ne pas être suffisant pour certains types de données. Avec Aspose.PDF for Python, les développeurs peuvent facilement convertir ces champs en champs de texte à plusieurs lignes sans les recréer.
+
+En utilisant le [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) class, les développeurs peuvent modifier les champs de texte existants sans affecter leur position ni leurs autres propriétés.
+
+1. Chargez le document PDF existant.
+1. Créez une instance de FormEditor.
+1. Liez le document PDF à l'éditeur.
+1. Convertissez le champ sélectionné en plusieurs lignes.
+1. Enregistrez le document mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def single2multiple(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Change a single-lined text field to a multiple-lined one
+ form_editor.single_2_multiple("City")
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/fr/python-net/working-with-facades/pdfannotationeditor/_index.md b/fr/python-net/working-with-facades/pdfannotationeditor/_index.md
new file mode 100644
index 0000000000..5a76eb4076
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfannotationeditor/_index.md
@@ -0,0 +1,21 @@
+---
+title: Classe PdfAnnotationEditor
+type: docs
+weight: 40
+url: /fr/python-net/pdfannotationeditor-class/
+description: Apprenez comment utiliser la classe PdfAnnotationEditor dans Aspose.PDF for Python via .NET pour travailler avec les annotations PDF, les commentaires et le balisage de façon programmatique.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modifiez les annotations et les commentaires PDF en Python avec PdfAnnotationEditor
+Abstract: Cette section présente la classe PdfAnnotationEditor dans Aspose.PDF for Python via .NET pour les flux de travail PDF liés aux annotations. Utilisez cette façade pour gérer les annotations PDF, les commentaires et le balisage de façon programmatique tout en travaillant avec des documents existants dans des applications Python.
+---
+
+Le `PdfAnnotationEditor` La classe dans Aspose.PDF Facades est destinée à travailler avec les annotations PDF et le balisage basé sur les commentaires sans modifier manuellement la structure de bas niveau d'un document. Elle fournit un moyen simplifié de gérer les flux de travail d'annotation en Python via .NET lorsque vous devez inspecter ou mettre à jour des fichiers PDF existants.
+
+## À quoi sert PdfAnnotationEditor
+
+Utilisez cette façade lorsque votre flux de travail PDF implique des annotations, des commentaires de révision ou d'autres éléments de balisage qui doivent être gérés de manière programmatique. À mesure que cette section s'étend, elle devrait servir de page d'accueil aux tutoriels liés aux annotations construits autour du `PdfAnnotationEditor` classe.
+
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/_index.md
new file mode 100644
index 0000000000..7ff44d6d0b
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/_index.md
@@ -0,0 +1,31 @@
+---
+title: Classe PdfContentEditor
+type: docs
+weight: 30
+url: /fr/python-net/pdfcontenteditor-class/
+description: Apprenez à utiliser la classe PdfContentEditor dans Aspose.PDF for Python via .NET pour modifier le contenu PDF, gérer les annotations et les pièces jointes, travailler avec les liens, les images, le texte, le multimédia, les tampons et les préférences du visualiseur.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modifiez le contenu PDF et les éléments interactifs en Python avec PdfContentEditor
+Abstract: Cette section explique comment utiliser la classe PdfContentEditor dans Aspose.PDF for Python via .NET pour des flux de travail PDF au niveau du contenu. Apprenez à gérer les annotations, les pièces jointes, les actions du document, les annotations de dessin, les images, les liens, le multimédia, les tampons, le remplacement de texte et les préférences du visualiseur de manière programmatique.
+---
+
+Le `PdfContentEditor` La classe dans Aspose.PDF Facades est conçue pour les tâches de modification au niveau du contenu dans des documents PDF existants. Elle fournit une API simplifiée pour mettre à jour les éléments interactifs, remplacer du texte, travailler avec les pièces jointes et les liens, et ajuster le comportement du document dans les applications Python via .NET.
+
+## Ce que vous pouvez faire avec PdfContentEditor
+
+Utilisez cette section pour explorer les principales zones de l'édition de contenu PDF prises en charge par le `PdfContentEditor` façade:
+
+- [Travaillez avec les annotations à l'aide de PdfContentEditor](/pdf/fr/python-net/annotations/)
+- [Gérez les pièces jointes PDF avec PdfContentEditor](/pdf/fr/python-net/attachments/)
+- [Configurez les actions du document avec PdfContentEditor](/pdf/fr/python-net/document-actions/)
+- [Ajoutez des annotations de dessin avec PdfContentEditor](/pdf/fr/python-net/drawing-annotations/)
+- [Effectuez des opérations d'image avec PdfContentEditor](/pdf/fr/python-net/image-operations/)
+- [Gérer les liens et la navigation avec PdfContentEditor](/pdf/fr/python-net/links-and-navigation/)
+- [Ajouter ou gérer le contenu multimédia avec PdfContentEditor](/pdf/fr/python-net/multimedia/)
+- [Gérer les tampons PDF avec PdfContentEditor](/pdf/fr/python-net/stamps-management/)
+- [Remplacer et mettre à jour le texte avec PdfContentEditor](/pdf/fr/python-net/text-operations/)
+- [Modifier les préférences du visualiseur avec PdfContentEditor](/pdf/fr/python-net/viewer-preferences/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
new file mode 100644
index 0000000000..67677f16d1
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
@@ -0,0 +1,17 @@
+---
+title: Annotations
+type: docs
+weight: 10
+url: /fr/python-net/annotations-facades/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter des annotations de texte](/pdf/fr/python-net/add-text-annotation/)
+- [Ajouter des annotations de texte libre](/pdf/fr/python-net/add-free-text-annotation/)
+- [Ajouter des annotations de balisage](/pdf/fr/python-net/add-markup-annotation/)
+- [Ajouter des annotations contextuelles](/pdf/fr/python-net/add-popup-annotation/)
+- [Ajouter une annotation caret](/pdf/fr/python-net/add-caret-annotation/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-caret-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-caret-annotation/_index.md
new file mode 100644
index 0000000000..23519c1530
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-caret-annotation/_index.md
@@ -0,0 +1,58 @@
+---
+title: Ajouter une annotation caret
+type: docs
+weight: 10
+url: /fr/python-net/add-caret-annotation/
+description: Cet exemple charge un PDF existant, ajoute une annotation caret à la première page et enregistre le document modifié. L'annotation comprend un symbole caret rouge et un texte de commentaire descriptif.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation caret à un PDF en utilisant Python
+Abstract: Cet exemple montre comment ajouter une annotation caret à un document PDF en utilisant Aspose.PDF for Python via the Facades API. L'exemple montre comment lier un fichier PDF, définir le placement de l'annotation à l'aide de rectangles, configurer les propriétés du caret et enregistrer le document mis à jour.
+---
+
+Les annotations caret sont couramment utilisées pour indiquer des insertions de texte ou des commentaires éditoriaux dans un document. Avec PdfContentEditor, vous pouvez ajouter des annotations caret de manière programmatique en spécifiant le numéro de page, les limites de l'annotation, la zone d'appel, le symbole, le texte de la note et la couleur.
+
+1. Créer le [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objet.
+1. Lier le PDF d'entrée.
+1. Définir les paramètres de l'annotation Caret :
+ - Numéro de page où l'annotation sera ajoutée
+ - Rectangle Caret (position de l'annotation)
+ - Rectangle d'appel (zone de texte)
+ - Symbole (par exemple "P")
+ - Texte d'annotation
+ - Couleur d'annotation
+1. Ajouter l'annotation Caret.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_caret_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add caret annotation to page 1
+ content_editor.create_caret(
+ 1,
+ apd.Rectangle(350, 400, 10, 10),
+ apd.Rectangle(300, 380, 115, 15),
+ "P",
+ "This is a caret annotation",
+ apd.Color.red,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-free-text-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-free-text-annotation/_index.md
new file mode 100644
index 0000000000..42a8fac0ac
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-free-text-annotation/_index.md
@@ -0,0 +1,47 @@
+---
+title: Ajouter des annotations de texte libre
+type: docs
+weight: 20
+url: /fr/python-net/add-free-text-annotation/
+description: Cet exemple charge un fichier PDF existant, ajoute une annotation de texte libre à la première page à une position définie, puis enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation de texte libre à un PDF avec Python
+Abstract: Cet exemple montre comment insérer une annotation de texte libre dans un document PDF en utilisant Aspose.PDF for Python via the Facades API. Il montre comment lier un PDF, définir le placement de l'annotation, ajouter du texte personnalisé et enregistrer le document mis à jour.
+---
+
+Les annotations de texte libre vous permettent de placer du texte visible directement sur une page PDF sans nécessiter de commentaires contextuels. En utilisant PdfContentEditor, vous pouvez spécifier le rectangle de l'annotation, le texte affiché et la page cible.
+
+1. Créer le [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objet.
+1. Lier le PDF d'entrée.
+1. Définir la position de l'annotation.
+1. Ajoutez l'annotation de texte libre.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_free_text_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add free text annotation to page 1
+ content_editor.create_free_text(
+ apd.Rectangle(200, 480, 150, 25), "This is a free text annotation", 1
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-markup-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-markup-annotation/_index.md
new file mode 100644
index 0000000000..91870e57c3
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-markup-annotation/_index.md
@@ -0,0 +1,72 @@
+---
+title: Ajouter des annotations de balisage
+type: docs
+weight: 30
+url: /fr/python-net/add-markup-annotation/
+description: Cet exemple lie un PDF d'entrée, ajoute quatre annotations de balisage différentes à la première page et enregistre le document mis à jour. Chaque annotation montre un style et une couleur de balisage différents.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des annotations de surlignage, de soulignement, de rayure et d'ondulation dans un PDF avec Python
+Abstract: Cet exemple montre comment ajouter plusieurs annotations de balisage — surlignage, soulignement, rayure et ondulation — à un document PDF à l'aide d'Aspose.PDF for Python via l'API Facades. L'exemple montre comment définir les zones d'annotation, spécifier les types de balisage, appliquer les couleurs et enregistrer le document modifié.
+---
+
+Les annotations de balisage sont utilisées pour mettre en évidence ou réviser du texte dans un PDF. Avec PdfContentEditor, vous pouvez appliquer programmétiquement différents styles de balisage en spécifiant une zone rectangulaire, le texte du commentaire, le type de balisage, le numéro de page et la couleur.
+
+1. Créer le [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objet.
+1. Lier le PDF d'entrée.
+1. Définir les rectangles d'annotation.
+1. Ajouter des annotations de balisage.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_markup_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add markup annotation to page 1
+ content_editor.create_markup(
+ apd.Rectangle(120, 440, 200, 20),
+ "This is a highlight annotation",
+ 0,
+ 1,
+ apd.Color.yellow,
+ )
+ content_editor.create_markup(
+ apd.Rectangle(110, 542, 200, 20),
+ "This is a underline annotation",
+ 1,
+ 1,
+ apd.Color.yellow,
+ )
+ content_editor.create_markup(
+ apd.Rectangle(120, 568, 200, 20),
+ "This is a strikeout annotation",
+ 2,
+ 1,
+ apd.Color.orange_red,
+ )
+ content_editor.create_markup(
+ apd.Rectangle(110, 598, 200, 20),
+ "This is a squiggly annotation",
+ 3,
+ 1,
+ apd.Color.dark_blue,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-popup-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-popup-annotation/_index.md
new file mode 100644
index 0000000000..6ee0fafd76
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-popup-annotation/_index.md
@@ -0,0 +1,50 @@
+---
+title: Ajouter des annotations contextuelles
+type: docs
+weight: 40
+url: /fr/python-net/add-popup-annotation/
+description: Cet exemple charge un PDF, ajoute une annotation contextuelle à la première page et enregistre le document modifié. L'annotation contextuelle est définie comme visible par défaut et affiche le texte de commentaire spécifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des annotations contextuelles à un PDF en utilisant Python
+Abstract: Cet exemple montre comment insérer une annotation contextuelle dans un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il explique comment définir la zone de l'annotation, définir le texte de l'annotation, contrôler la visibilité et enregistrer le document mis à jour.
+---
+
+Les annotations contextuelles sont utiles pour ajouter des commentaires, des explications ou des notes interactives dans les fichiers PDF. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer des annotations contextuelles programmatiquement en spécifiant l'emplacement, le contenu, la visibilité et le numéro de page.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Définir le rectangle de l'annotation Popup.
+1. Ajouter l'annotation Popup.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_popup_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add popup annotation to page 1
+ content_editor.create_popup(
+ apd.Rectangle(220, 520, 180, 80),
+ "This is a popup annotation",
+ True,
+ 1,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-text-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-text-annotation/_index.md
new file mode 100644
index 0000000000..98add87290
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/annotations/add-text-annotation/_index.md
@@ -0,0 +1,61 @@
+---
+title: Ajouter des annotations de texte
+type: docs
+weight: 50
+url: /fr/python-net/add-text-annotation/
+description: Ajoutez des annotations de texte à un document PDF en utilisant la classe PdfContentEditor dans Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des annotations de texte en Python
+Abstract: Apprenez comment ajouter des annotations de texte à un document PDF en utilisant la classe PdfContentEditor dans Aspose.PDF for Python via .NET. Cet exemple montre comment placer une annotation de texte à une position spécifique, définir son titre et son contenu, puis enregistrer le fichier PDF mis à jour.
+---
+
+Cet article montre comment ajouter une annotation de texte à un document PDF en utilisant le [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) classe dans Aspose.PDF.
+
+Les annotations de texte vous permettent d’ajouter des commentaires, des notes ou des informations supplémentaires à des parties spécifiques d’une page PDF. Ces annotations peuvent apparaître sous forme d’icônes et être développées par les utilisateurs lors de la visualisation du document.
+
+Dans cet exemple :
+
+- Un document PDF est chargé dans le PdfContentEditor.
+- Une annotation de texte est ajoutée à une position spécifique sur la page.
+- L'annotation comprend un titre, un contenu, un type d’icône et des paramètres de visibilité.
+- Le document modifié est enregistré dans un nouveau fichier.
+
+1. Créer un objet PdfContentEditor.
+1. Lier le Document PDF d'entrée.
+1. Définir la position de l'annotation.
+1. Ajouter une annotation Text.
+1. Enregistrer le PDF mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_text_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add text annotation to page 1
+ content_editor.create_text(
+ apd.Rectangle(100, 400, 50, 50),
+ "Text Annotation",
+ "This is a text annotation",
+ True,
+ "Insert",
+ 1,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
new file mode 100644
index 0000000000..ed003c35bc
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
@@ -0,0 +1,17 @@
+---
+title: Pièces jointes
+type: docs
+weight: 20
+url: /fr/python-net/attachments-facades/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter une pièce jointe](/pdf/fr/python-net/add-attachment/)
+- [Ajouter une pièce jointe depuis le chemin](/pdf/fr/python-net/add-attachment-from-path/)
+- [Ajouter une annotation de pièce jointe de fichier](/pdf/fr/python-net/add-file-attachment-annotation/)
+- [Ajouter une annotation de pièce jointe à partir d’un flux](/pdf/fr/python-net/add-file-attachment-annotation-from-stream/)
+- [Supprimer les pièces jointes](/pdf/fr/python-net/remove-attachments/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment-from-path/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment-from-path/_index.md
new file mode 100644
index 0000000000..41b919812a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment-from-path/_index.md
@@ -0,0 +1,47 @@
+---
+title: Ajouter une pièce jointe depuis le chemin
+type: docs
+weight: 20
+url: /fr/python-net/add-attachment-from-path/
+description: Cet exemple lie un PDF d'entrée, attache un fichier externe en utilisant son chemin d'accès, et enregistre le PDF modifié avec la pièce jointe intégrée.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Attacher des fichiers à un PDF en utilisant la surcharge du chemin d'accès dans Python
+Abstract: Cet exemple montre comment attacher des fichiers externes à un document PDF en utilisant la surcharge du chemin d'accès de 'add_document_attachment()' dans Aspose.PDF for Python via l'API Facades. Il simplifie l'ajout de pièces jointes sans ouvrir manuellement un flux de fichier.
+---
+
+Le PDF peut inclure des fichiers intégrés tels que des documents, des feuilles de calcul ou des images à des fins de référence ou de distribution. La surcharge du chemin d'accès de 'add_document_attachment()' vous permet d'ajouter des pièces jointes directement à partir d'un chemin de fichier, éliminant ainsi la nécessité d'ouvrir le fichier manuellement.
+
+1. Créer le [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objet.
+1. Lier le PDF d'entrée.
+1. Ajouter la pièce jointe en utilisant le chemin d'accès.
+1. Enregistrer le Document mis à jour.
+
+```python
+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 add_attachment_from_path(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add attachment using file-path overload
+ content_editor.add_document_attachment(
+ attachment_file,
+ "Attachment added using file path overload.",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment/_index.md
new file mode 100644
index 0000000000..3a411ead29
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment/_index.md
@@ -0,0 +1,50 @@
+---
+title: Ajouter une pièce jointe
+type: docs
+weight: 10
+url: /fr/python-net/add-attachment/
+description: Cet exemple lie un PDF d'entrée, attache un fichier externe à la première page et enregistre le PDF modifié avec la pièce jointe intégrée.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des pièces jointes de fichiers à un PDF avec Python
+Abstract: Cet exemple démontre comment attacher des fichiers externes à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment lier un PDF, ajouter des pièces jointes avec des descriptions et enregistrer le document mis à jour.
+---
+
+Les pièces jointes de fichiers dans les PDF vous permettent d'inclure des documents supplémentaires, des images ou d'autres ressources directement dans le PDF. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez attacher des fichiers de manière programmatique à des pages spécifiques, définir le nom de la pièce jointe et fournir une description.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Ouvrez le fichier de pièce jointe.
+1. Ajoutez la pièce jointe au PDF.
+1. Enregistrer le Document mis à jour.
+
+```python
+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 add_attachment(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add attachment to page 1
+ with open(attachment_file, "rb") as attachment_stream:
+ content_editor.add_document_attachment(
+ attachment_stream,
+ path.basename(attachment_file),
+ "This is a sample attachment for demonstration purposes.",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-file-attachment-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-file-attachment-annotation/_index.md
new file mode 100644
index 0000000000..d8795377b5
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add-file-attachment-annotation/_index.md
@@ -0,0 +1,51 @@
+---
+title: Ajouter une annotation de pièce jointe de fichier
+type: docs
+weight: 30
+url: /fr/python-net/add-file-attachment-annotation/
+description: L'exemple lie un PDF d'entrée, ajoute une annotation de pièce jointe de fichier à la première page en utilisant le chemin du fichier, et enregistre le document mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des annotations de pièce jointe de fichier à un PDF en Python
+Abstract: Cet exemple montre comment créer une annotation de pièce jointe de fichier dans un PDF en utilisant un chemin de fichier avec Aspose.PDF for Python via the Facades API. Il montre comment définir le placement de l'annotation, définir le texte de description, choisir un type d'icône, et enregistrer le document modifié.
+---
+
+Les annotations de pièce jointe de fichier vous permettent d'intégrer des fichiers externes sous forme d'icônes interactives sur une page PDF. En utilisant la surcharge de chemin de fichier, vous pouvez attacher des fichiers directement depuis le disque sans ouvrir manuellement les flux. Cette méthode vous permet également de personnaliser l'icône de l'annotation et de fournir une description aux utilisateurs.
+
+1. Créer le [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objet.
+1. Lier le PDF d'entrée.
+1. Définir le rectangle de l'annotation.
+1. Ajouter l'annotation de pièce jointe de fichier.
+1. Enregistrer le Document mis à jour.
+
+```python
+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 add_file_attachment_annotation(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Create file attachment annotation on page 1
+ content_editor.create_file_attachment(
+ apd.Rectangle(100, 520, 20, 20),
+ "Attachment annotation contents",
+ attachment_file,
+ 1,
+ "PushPin",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add_file-attachment-annotation-from-stream/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add_file-attachment-annotation-from-stream/_index.md
new file mode 100644
index 0000000000..475fad0b87
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/add_file-attachment-annotation-from-stream/_index.md
@@ -0,0 +1,57 @@
+---
+title: Ajouter une annotation de pièce jointe à partir d’un flux
+type: docs
+weight: 40
+url: /fr/python-net/add-file-attachment-annotation-from-stream/
+description: L’exemple charge un PDF, lit un fichier externe dans un flux mémoire, ajoute une annotation de pièce jointe à la première page et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des annotations de pièce jointe à un PDF à partir d’un flux en Python
+Abstract: Cet exemple montre comment créer une annotation de pièce jointe dans un PDF en utilisant un flux de fichier avec Aspose.PDF for Python via l’API Facades. Il montre comment spécifier la position de l’annotation, définir une description, inclure une valeur d’opacité et enregistrer le document modifié.
+---
+
+Les annotations de pièce jointe permettent d’intégrer des fichiers sous forme d’icônes interactives au sein d’une page PDF. En utilisant une approche basée sur les flux, vous pouvez attacher des fichiers dynamiquement sans dépendre d’un chemin de fichier physique. Cette méthode prend également en charge la personnalisation de l’apparence de l’annotation, y compris l’opacité.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Lire le fichier joint en tant que flux.
+1. Ajouter l'annotation de pièce jointe de fichier.
+1. Enregistrer le Document mis à jour.
+
+```python
+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 add_file_attachment_annotation_from_stream(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ with open(attachment_file, "rb") as source_stream:
+ attachment_stream = BytesIO(source_stream.read())
+
+ # Create file attachment annotation using stream+opacity overload
+ content_editor.create_file_attachment(
+ apd.Rectangle(130, 520, 20, 20),
+ "Attachment annotation from stream",
+ attachment_stream,
+ path.basename(attachment_file),
+ 1,
+ "Tag",
+ 0.75,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/attachments/remove-attachments/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/remove-attachments/_index.md
new file mode 100644
index 0000000000..4d8d2bea80
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/attachments/remove-attachments/_index.md
@@ -0,0 +1,44 @@
+---
+title: Supprimer les pièces jointes
+type: docs
+weight: 50
+url: /fr/python-net/remove-attachments/
+description: Cet exemple lie un PDF d'entrée, supprime toutes les pièces jointes et enregistre le PDF modifié sans aucun fichier intégré.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer toutes les pièces jointes d'un PDF à l'aide de Python
+Abstract: Cet exemple montre comment supprimer toutes les pièces jointes d'un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment lier un PDF, supprimer les pièces jointes intégrées et enregistrer le document mis à jour.
+---
+
+Les PDF peuvent contenir des pièces jointes telles que des documents, des images ou d'autres fichiers. Il existe des scénarios où vous devez nettoyer un PDF de toutes les pièces jointes pour des raisons de sécurité, de confidentialité ou de distribution. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez supprimer programmétiquement toutes les pièces jointes intégrées dans un document.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Supprimer toutes les pièces jointes.
+1. Enregistrer le Document mis à jour.
+
+```python
+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 remove_attachments(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Remove all attachments from document
+ content_editor.delete_attachments()
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/_index.md
new file mode 100644
index 0000000000..c48e5785ef
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/_index.md
@@ -0,0 +1,15 @@
+---
+title: Actions du Document
+type: docs
+weight: 40
+url: /fr/python-net/document-actions/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter une action de signet](/pdf/fr/python-net/add-bookmark-action/)
+- [Ajouter une action de document](/pdf/fr/python-net/add-document-action/)
+- [Supprimer l'action d'ouverture](/pdf/fr/python-net/remove-open-action/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/add-bookmark-action/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/add-bookmark-action/_index.md
new file mode 100644
index 0000000000..6f7b44c632
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/add-bookmark-action/_index.md
@@ -0,0 +1,52 @@
+---
+title: Ajouter une action de signet
+type: docs
+weight: 10
+url: /fr/python-net/add-bookmark-action/
+description: Cet exemple lie un PDF d'entrée, crée un signet libellé "PdfContentEditor Bookmark" qui navigue vers la page 1, puis enregistre le document mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un signet avec une action de navigation dans un PDF en utilisant Python
+Abstract: Cet exemple montre comment ajouter un signet avec une action de navigation à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment configurer le texte du signet, son apparence et une action qui dirige les utilisateurs vers une page spécifique.
+---
+
+Les signets offrent une navigation rapide au sein des documents PDF. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer programmétiquement des signets et attribuer des actions telles que la navigation vers une page. Vous pouvez également personnaliser l'apparence du signet, y compris les options de couleur et de style comme gras ou italique.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Définir les propriétés du signet.
+1. Attribuer une action au signet.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_bookmark_action(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add a bookmark action to navigate to page 1
+ content_editor.create_bookmarks_action(
+ "PdfContentEditor Bookmark",
+ apd.Color.blue,
+ True,
+ False,
+ "",
+ "GoTo",
+ "1",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/add-document-action/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/add-document-action/_index.md
new file mode 100644
index 0000000000..d4af2c5e44
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/add-document-action/_index.md
@@ -0,0 +1,46 @@
+---
+title: Ajouter une action de document
+type: docs
+weight: 20
+url: /fr/python-net/add-document-action/
+description: Cet exemple ajoute une alerte JavaScript qui apparaît lorsque le PDF est ouvert. Le script est attaché à l'événement d'ouverture du document et s'exécute automatiquement dans les visionneuses PDF prises en charge.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une action JavaScript d'ouverture de document à un PDF avec Python
+Abstract: Cet exemple montre comment ajouter une action JavaScript au niveau du document qui se déclenche lorsqu'un PDF est ouvert. En utilisant Aspose.PDF for Python via the Facades API, l'exemple montre comment lier un document, attribuer une action d'événement d'ouverture, et enregistrer le PDF mis à jour.
+---
+
+Les actions au niveau du document vous permettent de définir des comportements qui s'exécutent automatiquement lorsqu'un certain événement se produit, comme l'ouverture d'un PDF. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez attacher du code JavaScript à ces événements. Cela peut être utilisé pour des notifications, une logique de validation ou des flux de travail interactifs.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Ajouter une action de niveau document.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_document_action(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add JavaScript action for document open event
+ content_editor.add_document_additional_action(
+ content_editor.DOCUMENT_OPEN,
+ "app.alert('Document opened with PdfContentEditor action');",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/remove-open-action/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/remove-open-action/_index.md
new file mode 100644
index 0000000000..ca1c56fc74
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/document-actions/remove-open-action/_index.md
@@ -0,0 +1,45 @@
+---
+title: Supprimer l'action d'ouverture
+type: docs
+weight: 30
+url: /fr/python-net/remove-open-action/
+description: Cet exemple charge un PDF existant, supprime l'action d'ouverture et enregistre le document nettoyé.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer l'action d'ouverture du document d'un PDF à l'aide de Python
+Abstract: Cet exemple montre comment supprimer une action d'ouverture de document d'un PDF en utilisant Aspose.PDF for Python via the Facades API. Il montre comment lier un PDF, effacer l'action d'ouverture et enregistrer le document mis à jour.
+---
+
+Les documents PDF peuvent contenir des actions qui s'exécutent automatiquement lorsque le fichier est ouvert, telles que des alertes JavaScript, des commandes de navigation ou d'autres comportements. Dans certains scénarios, il peut être nécessaire de supprimer ces actions pour des raisons de sécurité, de conformité ou d'expérience utilisateur.
+
+En utilisant PdfContentEditor, vous pouvez facilement supprimer l'action d'ouverture du document et garantir que le PDF s'ouvre sans exécuter aucun comportement automatique.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Supprimer l'action d'ouverture du document.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def remove_open_action(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Remove open action from the document
+ content_editor.remove_document_open_action()
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/_index.md
new file mode 100644
index 0000000000..0e2b01eb58
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/_index.md
@@ -0,0 +1,18 @@
+---
+title: Annotations de dessin
+type: docs
+weight: 50
+url: /fr/python-net/drawing-annotations/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter une annotation de ligne](/pdf/fr/python-net/add-line-annotation/)
+- [Ajouter une annotation carrée](/pdf/fr/python-net/add-square-annotation/)
+- [Ajouter une annotation circulaire](/pdf/fr/python-net/add-circle-annotation/)
+- [Ajouter une annotation de polygone](/pdf/fr/python-net/add-polygon-annotation/)
+- [Ajouter une Annotation de Polyligne](/pdf/fr/python-net/add-polyline-annotation/)
+- [Ajouter une annotation de courbe](/pdf/fr/python-net/add-curve-annotation/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-circle-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-circle-annotation/_index.md
new file mode 100644
index 0000000000..a865724453
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-circle-annotation/_index.md
@@ -0,0 +1,49 @@
+---
+title: Ajouter une annotation circulaire
+type: docs
+weight: 10
+url: /fr/python-net/add-circle-annotation/
+description: Cet exemple lie un PDF d'entrée, crée une annotation circulaire sur la première page et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation circulaire à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation circulaire à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment définir les limites de l'annotation, définir le texte du contenu, configurer la couleur et l'apparence, et enregistrer le document mis à jour.
+---
+
+Les annotations circulaires sont utiles pour mettre en évidence des zones d'intérêt dans un document PDF. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer des formes circulaires en spécifiant le rectangle qui définit les limites du cercle, ainsi que le texte de l'annotation, la couleur, les options de remplissage, le numéro de page et la largeur de la bordure.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Définir les limites du cercle.
+1. Ajouter l'annotation du cercle.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_circle_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ # Create CircleAnnotation object
+ rect = apd.Rectangle(300, 300, 400, 400)
+ contents = "This is circle annotation"
+ content_editor.create_square_circle(rect, contents, apd.Color.blue, False, 1, 3)
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-curve-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-curve-annotation/_index.md
new file mode 100644
index 0000000000..7ca26d25f7
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-curve-annotation/_index.md
@@ -0,0 +1,55 @@
+---
+title: Ajouter une annotation de courbe
+type: docs
+weight: 20
+url: /fr/python-net/add-curve-annotation/
+description: Cet exemple lie un PDF d'entrée, dessine une courbe pointillée sur la première page et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation de courbe à un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation de courbe à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment définir les sommets de la courbe, le style de bordure, les limites de l'annotation, le contenu du texte, et enregistrer le document mis à jour.
+---
+
+Les annotations de courbe sont utilisées pour mettre en évidence des chemins ou des formes irréguliers dans un PDF, offrant un accent visuel ou marquant des zones importantes. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez dessiner des courbes en spécifiant une séquence de sommets, le style de bordure, la visibilité, le rectangle de l'annotation et le texte descriptif.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF onput.
+1. Configurer les propriétés de la courbe.
+1. Dessiner l'annotation de la courbe.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_curve_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ line_info = pdf_facades.LineInfo()
+ line_info.border_style = 1 # 1 - Dashed
+ line_info.vertice_coordinate = [120, 520, 160, 560, 220, 540, 280, 580]
+ line_info.visibility = True
+ content_editor.draw_curve(
+ line_info,
+ 1,
+ apd.Rectangle(110, 510, 220, 100),
+ "This is curve annotation",
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-line-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-line-annotation/_index.md
new file mode 100644
index 0000000000..be8ced967d
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-line-annotation/_index.md
@@ -0,0 +1,62 @@
+---
+title: Ajouter une annotation de ligne
+type: docs
+weight: 30
+url: /fr/python-net/add-line-annotation/
+description: Cet exemple lie un PDF d'entrée, dessine une annotation de ligne rouge avec des terminaisons de ligne carrées, et enregistre le PDF modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation de ligne à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation de ligne à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il explique comment définir les points de départ et d'arrivée de la ligne, les limites du rectangle, les propriétés d'apparence, et enregistrer le document mis à jour.
+---
+
+Les annotations de ligne sont utiles pour souligner du texte, mettre en évidence des relations, ou attirer l'attention sur des zones spécifiques d'un PDF. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer programmétiquement des annotations de ligne en spécifiant les points de départ et d'arrivée, le rectangle de délimitation, la couleur, le style de bordure, et les terminaisons de ligne.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Définir les propriétés de l'annotation de ligne.
+1. Ajouter l'annotation de ligne.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_line_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ # Create LineAnnotation object
+ rect = apd.Rectangle(100, 100, 200, 200)
+ contents = "This is line annotation"
+ content_editor.create_line(
+ rect,
+ contents,
+ 100,
+ 100,
+ 200,
+ 200,
+ 1,
+ 1,
+ apd.Color.red,
+ "Solid",
+ [3, 2],
+ ["Square"],
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polygon-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polygon-annotation/_index.md
new file mode 100644
index 0000000000..f6ff49bf21
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polygon-annotation/_index.md
@@ -0,0 +1,54 @@
+---
+title: Ajouter une annotation de polygone
+type: docs
+weight: 40
+url: /fr/python-net/add-polygon-annotation/
+description: Cet exemple lie un PDF d'entrée, dessine un polygone plein sur la première page et enregistre le document modifié avec une annotation.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation de polygone à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation de polygone à un document PDF en utilisant Aspose.PDF for Python via le Facades API. Il montre comment définir les sommets du polygone, le style de bordure, les limites de l'annotation, le texte descriptif, et enregistrer le document mis à jour.
+---
+
+Les annotations de polygone sont utilisées pour mettre en valeur des zones ou formes irrégulières dans un PDF, offrant une emphase visuelle ou marquant des régions spécifiques. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer des polygones en spécifiant les coordonnées des sommets, le style de bordure, le numéro de page et le rectangle d'annotation.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Configurer les propriétés du Polygon.
+1. Ajouter l'annotation Polygon.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_polygon_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ line_info = pdf_facades.LineInfo()
+ line_info.border_style = 0 # 0 - Solid
+ line_info.vertice_coordinate = [100, 200, 150, 260, 220, 220, 200, 160]
+ content_editor.create_polygon(
+ line_info,
+ 1,
+ apd.Rectangle(90, 150, 150, 120),
+ "This is polygon annotation",
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polyline-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polyline-annotation/_index.md
new file mode 100644
index 0000000000..fc764fa483
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polyline-annotation/_index.md
@@ -0,0 +1,54 @@
+---
+title: Ajouter une Annotation de Polyligne
+type: docs
+weight: 50
+url: /fr/python-net/add-polyline-annotation/
+description: L'exemple lie un PDF d'entrée, crée une polyligne solide sur la première page et enregistre le document modifié avec une annotation.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une Annotation de Polyligne à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation de polyligne à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment définir une séquence de sommets, le style de bordure, le rectangle d'annotation, le texte, et enregistrer le document mis à jour.
+---
+
+Les annotations de polyligne vous permettent de mettre en évidence une série de segments de ligne connectés dans un PDF. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez dessiner une polyligne en spécifiant les coordonnées des sommets, le style de bordure, le numéro de page et les limites de l'annotation. Ceci est utile pour représenter visuellement des chemins, des tendances ou des connexions dans des diagrammes et des documents.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Configurer les propriétés du polyligne.
+1. Ajouter l'annotation du polyligne.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_polyline_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ line_info = pdf_facades.LineInfo()
+ line_info.border_style = 0 # 0 - Solid
+ line_info.vertice_coordinate = [120, 420, 180, 460, 230, 430, 290, 470]
+ content_editor.create_poly_line(
+ line_info,
+ 1,
+ apd.Rectangle(110, 410, 200, 90),
+ "This is polyline annotation",
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-square-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-square-annotation/_index.md
new file mode 100644
index 0000000000..d011f393bc
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-square-annotation/_index.md
@@ -0,0 +1,49 @@
+---
+title: Ajouter une annotation carrée
+type: docs
+weight: 60
+url: /fr/python-net/add-square-annotation/
+description: Cet exemple lie un PDF d'entrée, ajoute une annotation carrée remplie en bleu sur la première page et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation carrée à un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation carrée à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment définir le rectangle de l'annotation, le texte du contenu, la couleur, les options de remplissage et enregistrer le document mis à jour.
+---
+
+Les annotations carrées sont couramment utilisées pour mettre en évidence des zones d'intérêt, marquer des sections importantes ou fournir des repères visuels dans un document PDF. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer des annotations carrées (ou circulaires) en spécifiant le rectangle englobant, le texte du contenu, la couleur de la bordure, l'option de remplissage, le numéro de page et la largeur de la bordure.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Définir l'annotation Square.
+1. Ajouter l'annotation Square.
+1. Enregistrer le Document mis à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_square_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ # Create SquareAnnotation object
+ rect = apd.Rectangle(100, 300, 200, 400)
+ contents = "This is square annotation"
+ content_editor.create_square_circle(rect, contents, apd.Color.blue, True, 1, 3)
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/_index.md
new file mode 100644
index 0000000000..76af638550
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/_index.md
@@ -0,0 +1,15 @@
+---
+title: Opérations d'image
+type: docs
+weight: 60
+url: /fr/python-net/image-operations/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Remplacer des images dans le PDF](/pdf/fr/python-net/replace-image/)
+- [Supprimer les images du PDF](/pdf/fr/python-net/delete-images/)
+- [Supprimer toutes les images du PDF](/pdf/fr/python-net/delete-all-images/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-all-images/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-all-images/_index.md
new file mode 100644
index 0000000000..7d4ec7410e
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-all-images/_index.md
@@ -0,0 +1,44 @@
+---
+title: Supprimer toutes les images du PDF
+type: docs
+weight: 10
+url: /fr/python-net/delete-all-images/
+description: Supprimer toutes les images d'un document PDF en utilisant Aspose.PDF for Python via l'API Facades.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer toutes les images d'un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment supprimer toutes les images d'un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment lier un PDF, supprimer toutes les images intégrées et enregistrer le document mis à jour.
+---
+
+Les documents PDF contiennent souvent des images à des fins d'illustration, d'image de marque ou de décoration. Il peut arriver que vous deviez supprimer toutes les images d'un PDF, par exemple pour réduire la taille du fichier, protéger des visuels sensibles ou préparer une version texte uniquement.
+
+Utilisation [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez supprimer programmatiquement toutes les images d'un PDF, en vous assurant que le document ne contient que du contenu textuel. Cet exemple lie un PDF d'entrée, supprime toutes les images et enregistre le fichier modifié.
+
+1. Créer l'objet PdfContentEditor.
+1. Lier le PDF d'entrée.
+1. Supprimer toutes les images.
+1. Enregistrer le Document mis à jour.
+
+```python
+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 delete_all_image(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Delete all images from the document
+ content_editor.delete_image()
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-images/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-images/_index.md
new file mode 100644
index 0000000000..e04eba1dae
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-images/_index.md
@@ -0,0 +1,44 @@
+---
+title: Supprimer les images du PDF
+type: docs
+weight: 20
+url: /fr/python-net/delete-images/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer des images spécifiques d’une page PDF à l’aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment supprimer des images spécifiques d’un document PDF en utilisant Aspose.PDF for Python via the Facades API. Il montre comment cibler les images sur une page spécifique et enregistrer le document mis à jour.
+---
+
+Parfois, vous pouvez vouloir supprimer uniquement certaines images d’un PDF plutôt que d’effacer tous les éléments visuels. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez supprimer des images sélectionnées en spécifiant le numéro de page et l’indice de l’image.
+
+Ce fragment de code lie un PDF d’entrée, supprime la deuxième image de la page 1 et enregistre le PDF modifié, en laissant les autres images intactes.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Supprimer des images spécifiques d'une page désignée.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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 delete_images(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Delete image on page 1
+ content_editor.delete_image(1, [2])
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/replace-image/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/replace-image/_index.md
new file mode 100644
index 0000000000..91d7733cc6
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/image-operations/replace-image/_index.md
@@ -0,0 +1,42 @@
+---
+title: Remplacer des images dans le PDF
+type: docs
+weight: 30
+url: /fr/python-net/replace-image/
+description: Cet exemple lie un PDF d'entrée, remplace la première image de la page 1 par une nouvelle image et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remplacer une image dans un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment remplacer une image existante dans un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment cibler une image spécifique sur une page et la remplacer par une nouvelle image, puis enregistrer le PDF mis à jour.
+---
+
+Les PDF contiennent souvent des images qui peuvent devoir être mises à jour ou remplacées, telles que des logos, des diagrammes ou des photos. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez remplacer une image spécifique sur une page donnée en fournissant le numéro de page, l'index de l'image et le chemin du nouveau fichier image.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Remplacer une image spécifique sur une page donnée.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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_image(infile, image_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace image on page 1
+ content_editor.replace_image(1, 1, image_file)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
new file mode 100644
index 0000000000..ff348a58ff
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
@@ -0,0 +1,19 @@
+---
+title: Liens et navigation
+type: docs
+weight: 70
+url: /fr/python-net/links-and-navigation-facades/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter un lien Web](/pdf/fr/python-net/add-web-link/)
+- [Ajouter un lien local](/pdf/fr/python-net/add-local-link/)
+- [Ajouter un lien de document PDF](/pdf/fr/python-net/add-pdf-document-link/)
+- [Ajouter un lien JavaScript](/pdf/fr/python-net/add-javascript-link/)
+- [Ajouter un lien d'application](/pdf/fr/python-net/add-application-link/)
+- [Ajouter un lien d'action personnalisé](/pdf/fr/python-net/add-custom-action-link/)
+- [Extraire les liens](/pdf/fr/python-net/extract-links/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-application-link/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-application-link/_index.md
new file mode 100644
index 0000000000..786e373111
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-application-link/_index.md
@@ -0,0 +1,53 @@
+---
+title: Ajouter un lien d'application
+type: docs
+weight: 10
+url: /fr/python-net/add-application-link/
+description: Cet exemple lie un PDF d'entrée, ajoute un lien de lancement d'application sur la première page et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter un lien de lancement d'application à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter un lien de lancement d'application à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment créer une zone cliquable qui ouvre une application spécifiée lorsqu'elle est cliquée, et enregistrer le PDF mis à jour.
+---
+
+PDF peut inclure des éléments interactifs tels que des liens qui lancent des applications externes. Using [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir une région rectangulaire sur une page qui, lorsqu'elle est cliquée, ouvre un fichier exécutable spécifique.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définir une zone rectangulaire pour le lien cliquable.
+1. Spécifiez le chemin de l'application à lancer.
+1. Définir la couleur du lien.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_application_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add application launch link
+ content_editor.create_application_link(
+ apd.Rectangle(180, 530, 260, 20),
+ "notepad.exe",
+ 1,
+ apd.Color.purple,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-custom-action-link/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-custom-action-link/_index.md
new file mode 100644
index 0000000000..0ea6ec5843
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-custom-action-link/_index.md
@@ -0,0 +1,54 @@
+---
+title: Ajouter un lien d'action personnalisé
+type: docs
+weight: 20
+url: /fr/python-net/add-custom-action-link/
+description: Cet exemple lie un PDF d'entrée, ajoute un lien d'action personnalisé sur la première page et enregistre le document modifié. Une liste d'actions vide est utilisée pour simplifier, mais les implémentations réelles peuvent inclure des actions réelles.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter un lien d'action personnalisé à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter un lien d'action personnalisé à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment créer une zone cliquable sur une page, affecter une action personnalisée et enregistrer le document mis à jour.
+---
+
+Les liens d'action personnalisés vous permettent de définir des zones interactives dans un PDF pouvant déclencher des actions spécifiques lorsqu'elles sont cliquées, comme exécuter des scripts, naviguer entre les pages ou exécuter des commandes spécifiques à l'application. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez créer un lien d'action personnalisé en spécifiant la page, le rectangle, la couleur et les actions.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définir un rectangle pour le lien cliquable.
+1. Spécifier le numéro de page et la couleur du lien.
+1. Attribuer des actions personnalisées (vide dans cet exemple).
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_custom_action_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add custom action link. Empty action list keeps the sample runnable
+ # without requiring additional enum lookups.
+ content_editor.create_custom_action_link(
+ apd.Rectangle(200, 500, 260, 20),
+ 1,
+ apd.Color.dark_red,
+ [],
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-javascript-link/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-javascript-link/_index.md
new file mode 100644
index 0000000000..b74659de14
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-javascript-link/_index.md
@@ -0,0 +1,53 @@
+---
+title: Ajouter un lien JavaScript
+type: docs
+weight: 30
+url: /fr/python-net/add-javascript-link/
+description: Cet exemple lie un PDF d'entrée, ajoute un lien JavaScript qui déclenche une alerte au clic, et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter un lien JavaScript à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter un lien JavaScript à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment créer une zone cliquable qui exécute du code JavaScript lorsqu'elle est cliquée, et enregistrer le PDF mis à jour.
+---
+
+Les liens JavaScript dans les PDF offrent des fonctionnalités interactives telles que l'affichage d'alertes, l'exécution de calculs ou la modification dynamique du contenu du document. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir un rectangle cliquable sur une page et l'associer à du code JavaScript personnalisé.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définissez un rectangle pour le lien JavaScript cliquable.
+1. Spécifier le numéro de page et la couleur du lien.
+1. Attribuez le code JavaScript à exécuter lorsqu'il est cliqué.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_javascript_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add JavaScript link action
+ content_editor.create_java_script_link(
+ "app.alert('PdfContentEditor JavaScript link');",
+ apd.Rectangle(160, 560, 260, 20),
+ 1,
+ apd.Color.orange,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-local-link/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-local-link/_index.md
new file mode 100644
index 0000000000..3acabe4749
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-local-link/_index.md
@@ -0,0 +1,53 @@
+---
+title: Ajouter un lien local
+type: docs
+weight: 40
+url: /fr/python-net/add-local-link/
+description: Cet exemple lie un PDF d'entrée, ajoute un lien local de couleur rouge sur la page 1 qui pointe vers la page 1, puis enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter un lien local à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter un lien local à un document PDF en utilisant Aspose.PDF pour Python via l'API Facades. Il montre comment créer une zone cliquable qui mène à une autre page du même PDF et enregistrer le document mis à jour.
+---
+
+Les liens locaux dans les PDF permettent une navigation rapide entre les pages du même document. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir un rectangle cliquable qui relie une page à une autre, améliorant la convivialité et la navigation du document.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définissez un rectangle pour le lien local cliquable.
+1. Spécifiez la page source et la page de destination.
+1. Définir la couleur du lien.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_local_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add a local link on page 1 to destination page 1
+ content_editor.create_local_link(
+ apd.Rectangle(120, 620, 220, 20),
+ 1,
+ 1,
+ apd.Color.red,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-pdf-document-link/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-pdf-document-link/_index.md
new file mode 100644
index 0000000000..e9c3dfd460
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-pdf-document-link/_index.md
@@ -0,0 +1,54 @@
+---
+title: Ajouter un lien de document PDF
+type: docs
+weight: 50
+url: /fr/python-net/add-pdf-document-link/
+description: Cet exemple lie un PDF d'entrée, ajoute un lien de couleur verte vers une page dans un autre PDF, et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter un lien de document PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter un lien vers un autre document PDF en utilisant Aspose.PDF for Python via the Facades API. Il montre comment créer une zone cliquable qui ouvre un PDF différent et enregistrer le document mis à jour.
+---
+
+Les liens de documents PDF permettent aux utilisateurs de naviguer d'un PDF à un autre de manière fluide. Using [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir un rectangle cliquable qui pointe vers une page d'un fichier PDF différent, rendant vos documents interactifs et connectés.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définir un rectangle pour le lien cliquable.
+1. Spécifiez le fichier PDF lié, la page source et la page de destination.
+1. Définir la couleur du lien.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_pdf_document_link(infile, linked_pdf, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add link to another PDF document
+ content_editor.create_pdf_document_link(
+ apd.Rectangle(140, 590, 240, 20),
+ linked_pdf,
+ 1,
+ 1,
+ apd.Color.green,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-web-link/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-web-link/_index.md
new file mode 100644
index 0000000000..196e8ee39f
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-web-link/_index.md
@@ -0,0 +1,52 @@
+---
+title: Ajouter un lien Web
+type: docs
+weight: 60
+url: /fr/python-net/add-web-link/
+description: Cet exemple lie un PDF d’entrée, ajoute une annotation de lien web bleu sur la page 1 pointant vers la page produit Python PDF d’Aspose, et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter un lien Web à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter un lien web à un document PDF en utilisant Aspose.PDF for Python via l’API Facades. Il montre comment créer une zone cliquable sur une page qui ouvre une URL spécifiée dans un navigateur Web et enregistrer le document mis à jour.
+---
+
+Les liens web dans les PDF permettent aux utilisateurs de naviguer directement vers des ressources en ligne, des sites Web ou de la documentation. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir une zone rectangulaire sur une page PDF qui, lorsqu’elle est cliquée, ouvre une URL dans le navigateur Web par défaut.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définissez un rectangle pour le lien web cliquable.
+1. Spécifiez l'URL, le numéro de page et la couleur du lien.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_web_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add a web link annotation to page 1
+ content_editor.create_web_link(
+ apd.Rectangle(100, 650, 200, 20),
+ "https://products.aspose.com/pdf/python-net/",
+ 1,
+ apd.Color.blue,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/extract-links/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/extract-links/_index.md
new file mode 100644
index 0000000000..f4a4da108c
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/extract-links/_index.md
@@ -0,0 +1,60 @@
+---
+title: Extraire les liens
+type: docs
+weight: 70
+url: /fr/python-net/extract-links/
+description: Cet exemple charge un PDF d'entrée, extrait tous les liens et affiche leurs coordonnées ainsi que leurs URI (si disponibles).
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extraire les liens d'un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment extraire tous les liens d'un document PDF en utilisant Aspose.PDF for Python via the Facades API. Il montre comment identifier et récupérer les liens web ou d'autres liens exploitables intégrés dans le PDF.
+---
+
+Les PDF contiennent souvent des éléments interactifs tels que des liens web, des liens de document et des actions personnalisées. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez extraire programmétiquement toutes les annotations de lien d'un PDF. Cela vous permet d'inspecter ou de traiter les liens, par exemple pour valider les URL ou analyser les schémas de navigation dans un document.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Extraire tous les liens en utilisant 'extract_link()'.
+1. Itérer à travers les liens extraits.
+1. Vérifier si un lien est une LinkAnnotation et si son action est une GoToURIAction.
+1. Afficher les coordonnées du rectangle et l'URI.
+1. Afficher un message si aucun lien n'est trouvé.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def extract_links(infile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Extract links from the document
+ links = content_editor.extract_link()
+
+ count = 0
+ for link in links:
+ count += 1
+ print(f"Link {count}: {link.rect}")
+ if is_assignable(link, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, link)
+ if is_assignable(annotation.action, ap.annotations.GoToURIAction):
+ action = cast(ap.annotations.GoToURIAction, annotation.action)
+ print(f" URI: {action.uri}")
+
+ if count == 0:
+ print("No links found")
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/_index.md
new file mode 100644
index 0000000000..9208e5a035
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/_index.md
@@ -0,0 +1,14 @@
+---
+title: Multimédia
+type: docs
+weight: 80
+url: /fr/python-net/multimedia/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter une annotation vidéo](/pdf/fr/python-net/add-movie-annotation/)
+- [Ajouter une annotation sonore](/pdf/fr/python-net/add-sound-annotation/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/add-movie-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/add-movie-annotation/_index.md
new file mode 100644
index 0000000000..59c6809751
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/add-movie-annotation/_index.md
@@ -0,0 +1,45 @@
+---
+title: Ajouter une annotation vidéo
+type: docs
+weight: 10
+url: /fr/python-net/add-movie-annotation/
+description: Cet exemple lie un PDF d'entrée, ajoute une annotation vidéo à la page 1 et enregistre le PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation vidéo à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment incorporer un film (vidéo) dans un document PDF en utilisant Aspose.PDF for Python via the Facades API. Il montre comment ajouter une annotation cliquable qui lit une vidéo directement dans le PDF.
+---
+
+Les annotations vidéo dans les PDF vous permettent d'incorporer du contenu multimédia, tel que des vidéos, dans vos documents. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir un rectangle sur une page où la vidéo apparaîtra. Lorsqu'elle est cliquée, la vidéo peut être lue directement depuis le PDF, rendant vos documents plus interactifs et attrayants.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définir un rectangle pour l'annotation de film.
+1. Spécifiez le fichier vidéo à incorporer.
+1. Attribuer le numéro de page à l'annotation.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_movie_annotation(infile, movie_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add movie annotation to page 1
+ content_editor.create_movie(apd.Rectangle(80, 500, 220, 120), movie_file, 1)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/add-sound-annotation/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/add-sound-annotation/_index.md
new file mode 100644
index 0000000000..5cef2cd57a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/multimedia/add-sound-annotation/_index.md
@@ -0,0 +1,46 @@
+---
+title: Ajouter une annotation sonore
+type: docs
+weight: 20
+url: /fr/python-net/add-sound-annotation/
+description: Cet exemple lie un PDF d'entrée, ajoute une annotation sonore à la page 1 et enregistre le PDF modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation sonore à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment intégrer de l'audio dans un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment ajouter une annotation sonore cliquable qui lit un fichier audio directement dans le PDF.
+---
+
+Les annotations sonores dans les PDF vous permettent d'ajouter du contenu audio tel que des notes vocales, de la musique ou des effets sonores à vos documents. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir un petit rectangle cliquable sur une page qui lit un fichier audio spécifié lorsqu'il est activé.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Définissez un rectangle pour l'annotation sonore.
+1. Spécifiez le fichier audio, le nom de l'annotation, le numéro de page et la fréquence d'échantillonnage.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_sound_annotation(infile, sound_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add sound annotation to page 1
+ content_editor.create_sound(
+ apd.Rectangle(80, 450, 30, 30), sound_file, "Speaker", 1, "8000"
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/_index.md
new file mode 100644
index 0000000000..a98a7ddb5a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/_index.md
@@ -0,0 +1,22 @@
+---
+title: Gestion des tampons
+type: docs
+weight: 90
+url: /fr/python-net/stamps-management/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Ajouter un tampon en caoutchouc](/pdf/fr/python-net/add-rubber-stamp/)
+- [Supprimer le tampon par index](/pdf/fr/python-net/delete-stamp-by-index/)
+- [Gérer le tampon par ID](/pdf/fr/python-net/manage-stamp-by-id/)
+- [Supprimer le tampon par IDs](/pdf/fr/python-net/delete-stamp-by-ids-examples/)
+- [Déplacer le tampon par index](/pdf/fr/python-net/move-stamp-by-index/)
+- [Déplacer le tampon par ID](/pdf/fr/python-net/move-stamp-by-id-example/)
+- [Créer un tampon en caoutchouc avec un fichier d'apparence](/pdf/fr/python-net/create-rubber-stamp-with-appearance-file/)
+- [Créer un tampon en caoutchouc avec un flux d'apparence](/pdf/fr/python-net/create-rubber-stamp-with-appearance-stream/)
+- [Supprimer les tampons globalement](/pdf/fr/python-net/delete-stamps-globally/)
+- [Lister les tampons](/pdf/fr/python-net/list-stamps/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/add-rubber-stamp/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/add-rubber-stamp/_index.md
new file mode 100644
index 0000000000..f75b7cdaba
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/add-rubber-stamp/_index.md
@@ -0,0 +1,52 @@
+---
+title: Ajouter un tampon en caoutchouc
+type: docs
+weight: 10
+url: /fr/python-net/add-rubber-stamp/
+description: Cet exemple lie un PDF d'entrée, ajoute un tampon en caoutchouc vert “Approved” aux quatre premières pages et enregistre le document modifié.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter une annotation de tampon en caoutchouc à un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment ajouter une annotation de tampon en caoutchouc à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Les tampons en caoutchouc vous permettent de marquer visuellement les pages avec des approbations, des révisions ou des libellés personnalisés.
+---
+
+Les annotations de tampon en caoutchouc sont couramment utilisées dans les PDF pour indiquer une approbation, un statut de révision ou d'autres notes. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir un rectangle pour le tampon, définir son texte et ses commentaires, choisir une couleur et l'appliquer à plusieurs pages d'un document.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Parcourir les pages 1–4.
+1. Ajouter une annotation de tampon en caoutchouc avec du texte personnalisé, des commentaires et une couleur.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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 add_rubber_stamp(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ for i in range(1, 5):
+ content_editor.create_rubber_stamp(
+ i,
+ apd.Rectangle(120, 450, 180, 60),
+ "Approved",
+ "Approved by reviewer",
+ apd.Color.green,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-file/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-file/_index.md
new file mode 100644
index 0000000000..7548c71668
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-file/_index.md
@@ -0,0 +1,52 @@
+---
+title: Créer un tampon en caoutchouc avec un fichier d'apparence
+type: docs
+weight: 20
+url: /fr/python-net/create-rubber-stamp-with-appearance-file/
+description: L'exemple lie un PDF d'entrée, crée un tampon en caoutchouc sur la page 1 en utilisant un fichier image comme apparence du tampon, et enregistre le PDF mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un tampon en caoutchouc avec une apparence personnalisée dans un PDF en utilisant PdfContentEditor
+Abstract: Cet exemple montre comment ajouter une annotation de tampon en caoutchouc avec une apparence personnalisée (image) à un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Les tampons personnalisés vous permettent d'inclure des logos, des signatures ou des visuels de marque dans le tampon.
+---
+
+Les annotations de tampon en caoutchouc peuvent être personnalisées non seulement avec du texte mais aussi en utilisant un fichier image comme apparence. Cette approche est utile pour ajouter des logos d'entreprise, des tampons de signature ou tout indicateur visuel à vos pages PDF.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Définissez un rectangle pour le tampon.
+1. Utilisez un fichier image personnalisé pour définir l'apparence du tampon en caoutchouc.
+1. Définissez le texte et la couleur du tampon.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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 create_rubber_stamp_with_appearance_file(infile, image_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Create rubber stamp using appearance_file overload (image path)
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(100, 400, 200, 60),
+ "Stamp with custom appearance",
+ apd.Color.dark_green,
+ image_file,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-stream/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-stream/_index.md
new file mode 100644
index 0000000000..7bac0c1eb9
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-stream/_index.md
@@ -0,0 +1,52 @@
+---
+title: Créer un tampon en caoutchouc avec un flux d’apparence
+type: docs
+weight: 30
+url: /fr/python-net/create-rubber-stamp-with-appearance-stream/
+description: Cet exemple charge un PDF, crée un tampon en caoutchouc sur la page 1 en utilisant un fichier image pour son apparence, et enregistre le document modifié. ✨
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un tampon en caoutchouc avec une apparence d'image personnalisée en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment créer une annotation de tampon en caoutchouc avec une apparence d'image personnalisée dans un PDF en utilisant Aspose.PDF for Python via l'API Facades. Cette approche vous permet d'appliquer des tampons de marque ou visuellement riches tels que des logos, des sceaux ou des signatures.
+---
+
+Les annotations de tampon en caoutchouc peuvent être personnalisées à l'aide d'un fichier image externe. Au lieu de se limiter aux tampons basés sur du texte, vous pouvez définir une apparence visuelle (par exemple, le logo d'une entreprise ou un badge d'approbation) et la placer sur une page.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Définissez un rectangle pour l'emplacement du tampon.
+1. Utilisez un fichier image comme apparence du tampon.
+1. Appliquez les paramètres de texte et de couleur.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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 create_rubber_stamp_with_appearance_file(infile, image_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Create rubber stamp using appearance_file overload (image path)
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(100, 400, 200, 60),
+ "Stamp with custom appearance",
+ apd.Color.dark_green,
+ image_file,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-ids-examples/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-ids-examples/_index.md
new file mode 100644
index 0000000000..7b786b9832
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-ids-examples/_index.md
@@ -0,0 +1,68 @@
+---
+title: Supprimer le tampon par ID
+type: docs
+weight: 85
+url: /fr/python-net/delete-stamp-by-ids-examples/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer les tampons en caoutchouc par un ID unique ou plusieurs ID dans un PDF à l'aide de PdfContentEditor
+Abstract: Cet exemple montre comment supprimer les annotations de tampons en caoutchouc d'un PDF en fonction de leurs ID uniques en utilisant Aspose.PDF for Python via l'API Facades. Il couvre la suppression par ID unique ainsi que la suppression par plusieurs ID.
+---
+
+Lorsqu'on travaille avec des PDF contenant plusieurs tampons, il est souvent nécessaire de supprimer des tampons spécifiques sans affecter les autres. En utilisant la suppression basée sur l'ID, vous pouvez contrôler précisément quels tampons supprimer :
+
+- 'delete_stamp_by_id(stamp_id, page_number)' – supprime un seul tampon par son ID sur une page spécifique
+- 'delete_stamp_by_ids(page_number, stamp_ids)' – supprime plusieurs tampons par leurs ID sur une page donnée
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Ajoutez deux tampons en caoutchouc avec des ID distincts.
+1. Supprimez les tampons en utilisant à la fois les méthodes de suppression par ID unique et par ID multiples.
+1. Enregistrer le PDF mis à jour.
+
+```python
+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_stamp_by_ids_examples(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ # Create two stamps on page 1 so they can be deleted by ID
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(120, 320, 180, 60),
+ "Draft",
+ "Delete by single ID",
+ apd.Color.orange,
+ )
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(120, 250, 180, 60),
+ "Draft",
+ "Delete by multiple IDs",
+ apd.Color.orange,
+ )
+
+ # Delete by single ID overload and by IDs overload
+ content_editor.delete_stamp_by_id(1, 1)
+ content_editor.delete_stamp_by_ids(1, [2])
+
+ # Save updated document
+ content_editor.save(outfile)
+```
+
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
new file mode 100644
index 0000000000..f63703b7cc
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
@@ -0,0 +1,44 @@
+---
+title: Supprimer le tampon par indice
+type: docs
+weight: 50
+url: /fr/python-net/delete-stamp-by-index/
+description: Cet exemple crée deux tampons en caoutchouc sur la page 2. Après cela, un tampon peut être supprimé en spécifiant son indice.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer un tampon en caoutchouc par indice dans un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple démontre comment supprimer une annotation de tampon en caoutchouc dans un PDF en utilisant son indice avec Aspose.PDF for Python via l'API Facades. Il montre comment ajouter plusieurs tampons puis en supprimer un en fonction de leur ordre sur la page.
+---
+
+Lorsque plusieurs tampons en caoutchouc existent sur une page, vous pouvez supprimer un spécifique en utilisant son indice. La méthode delete_stamp() permet de supprimer des annotations selon leur séquence, ce qui est utile lorsque vous ne suivez pas les ID des tampons mais que vous connaissez leur ordre.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Liez le fichier PDF d'entrée à l'instance PdfContentEditor en utilisant bind_pdf(infile).
+1. Appelez 'delete_stamp(1, [2, 3])' pour supprimer le tampon avec l'index 1 des pages 2 et 3.
+1. Enregistrez le document PDF modifié dans le fichier de sortie en utilisant save(outfile).
+
+```python
+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_stamp_by_index(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ content_editor.delete_stamp(1, [2, 3])
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamps-globally/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamps-globally/_index.md
new file mode 100644
index 0000000000..55501672ce
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamps-globally/_index.md
@@ -0,0 +1,59 @@
+---
+title: Supprimer les tampons globalement
+type: docs
+weight: 60
+url: /fr/python-net/delete-stamps-globally/
+description: Cet exemple montre comment supprimer les annotations de tampons en caoutchouc globalement sur toutes les pages d’un PDF en utilisant Aspose.PDF for Python via l’API Facades. Il montre comment supprimer les tampons par ID sans spécifier les pages individuelles.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer les tampons en caoutchouc globalement dans un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment supprimer les annotations de tampons en caoutchouc globalement sur toutes les pages d’un PDF en utilisant Aspose.PDF for Python via l’API Facades. Il montre comment supprimer les tampons par ID sans spécifier les pages individuelles.
+---
+
+Lorsque vous travaillez avec plusieurs pages, vous pouvez avoir besoin de supprimer certains tampons dans l’ensemble du document. Les méthodes 'delete_stamp_by_id()' et 'delete_stamp_by_ids()' vous permettent de supprimer les tampons globalement par leurs identifiants, éliminant ainsi la nécessité d’itérer manuellement chaque page.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Ajouter des tampons en caoutchouc à plusieurs pages.
+1. Supprimer les tampons globalement en utilisant leurs ID.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/list-stamps/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/list-stamps/_index.md
new file mode 100644
index 0000000000..2714c4c6f3
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/list-stamps/_index.md
@@ -0,0 +1,52 @@
+---
+title: Lister les tampons
+type: docs
+weight: 70
+url: /fr/python-net/list-stamps/
+description: Cet exemple charge un PDF, récupère tous les tampons de la page 1, les imprime et affiche un message si aucun tampon n’est trouvé.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Lister les annotations de tampons en caoutchouc dans un PDF à l’aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment récupérer et lister les annotations de tampons en caoutchouc d’un document PDF en utilisant Aspose.PDF for Python via l’API Facades. Il montre comment accéder aux tampons sur une page spécifique et afficher leurs détails.
+---
+
+Lorsque vous travaillez avec des PDF annotés, vous pourriez avoir besoin d’inspecter les tampons en caoutchouc existants avant de les modifier ou de les supprimer. La méthode 'get_stamps()' vous permet de récupérer tous les tampons placés sur une page donnée. Vous pouvez ensuite parcourir les résultats et les traiter par programme.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Récupérer tous les tampons de la page 1.
+1. Parcourir la collection de tampons.
+1. Imprimer chaque tampon.
+1. Afficher un message si aucun tampon n'existe.
+
+```python
+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 list_stamps(infile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # List all stamps on page 1
+ stamps = content_editor.get_stamps(1)
+
+ count = 0
+ for stamp in stamps:
+ count += 1
+ print(f"Stamp {count}: {stamp}")
+
+ if count == 0:
+ print("No stamps found")
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/manage-stamp-by-id/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/manage-stamp-by-id/_index.md
new file mode 100644
index 0000000000..5c4f4152d2
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/manage-stamp-by-id/_index.md
@@ -0,0 +1,70 @@
+---
+title: Gérer le tampon par ID
+type: docs
+weight: 95
+url: /fr/python-net/manage-stamp-by-id/
+description: Comment manipuler les annotations de tampons en caoutchouc dans un PDF par leurs ID uniques en utilisant Aspose.PDF pour Python
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les tampons en caoutchouc par ID dans un PDF en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment manipuler les annotations de tampons en caoutchouc dans un PDF par leurs ID uniques en utilisant Aspose.PDF pour Python via l'API Facades. Vous pouvez masquer ou afficher des tampons spécifiques sur certaines pages sans affecter les autres tampons.
+---
+
+Dans les PDF contenant plusieurs tampons en caoutchouc, il peut être utile de contrôler les tampons individuels en fonction de leur ID. Les méthodes 'hide_stamp_by_id()' et 'show_stamp_by_id()' permettent un contrôle sélectif de la visibilité. Cet exemple montre comment :
+
+- Ajouter plusieurs tampons avec des ID uniques
+- Masquer un tampon sur une page spécifique
+- Afficher un tampon sur une autre page
+
+En utilisant des opérations basées sur l’ID, vous évitez de suivre les tampons par position de page ou d’autres attributs.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Ajouter des tampons en caoutchouc avec des ID spécifiques.
+1. Masquer et afficher les tampons en fonction de leurs ID et des numéros de page.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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 manage_stamp_by_id(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(200, 380, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+
+ content_editor.create_rubber_stamp(
+ 2,
+ apd.Rectangle(200, 480, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+
+ # Apply ID-based stamp operations
+ content_editor.hide_stamp_by_id(1, 1)
+ content_editor.show_stamp_by_id(1, 2)
+
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-id-example/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-id-example/_index.md
new file mode 100644
index 0000000000..5bdd441d6a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-id-example/_index.md
@@ -0,0 +1,55 @@
+---
+title: Déplacer le tampon par ID
+type: docs
+weight: 80
+url: /fr/python-net/move-stamp-by-id-example/
+description: Dans cet exemple, un tampon en caoutchouc est ajouté à la page 1, puis déplacé vers une nouvelle position en utilisant son ID avant d'enregistrer le document mis à jour.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Déplacer un tampon en caoutchouc par ID dans un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment repositionner une annotation de tampon en caoutchouc existante dans un PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment créer un tampon puis le déplacer programmatiquement en utilisant son ID.
+---
+
+Après avoir ajouté une annotation de tampon en caoutchouc à un PDF, vous pouvez avoir besoin d'ajuster sa position. La méthode 'move_stamp_by_id()' vous permet de repositionner un tampon en fonction de son identifiant, sans le recréer. Cela est utile dans les flux de travail automatisés où le placement du tampon doit être ajusté dynamiquement.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Ajouter une annotation de tampon en caoutchouc.
+1. Déplacer le tampon en utilisant son ID.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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 move_stamp_by_id_example(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(300, 420, 180, 60),
+ "Approved",
+ "Move this stamp by ID",
+ apd.Color.green,
+ )
+
+ # Move stamp by ID overload
+ content_editor.move_stamp_by_id(1, 1, 240, 360)
+
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-index/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-index/_index.md
new file mode 100644
index 0000000000..25c9109265
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-index/_index.md
@@ -0,0 +1,70 @@
+---
+title: Déplacer le tampon par index
+type: docs
+weight: 90
+url: /fr/python-net/move-stamp-by-index/
+description: Comment repositionner les annotations de tampon en caoutchouc dans un PDF en utilisant leur index sur une page avec Aspose.PDF for Python
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Déplacer les tampons en caoutchouc dans un PDF en utilisant le positionnement basé sur l'index
+Abstract: Cet exemple montre comment repositionner les annotations de tampon en caoutchouc dans un PDF en utilisant leur index sur une page avec Aspose.PDF for Python via l'API Facades. Il met en évidence la création de plusieurs tampons et leur préparation aux opérations de déplacement.
+---
+
+Lors de l'édition de PDF, il peut être nécessaire d'ajuster la position des tampons en caoutchouc existants. Cet extrait de code montre comment :
+
+- Ajouter plusieurs tampons sur la même page
+- Préparez-les pour le repositionnement en utilisant leur index
+- Déplacez éventuellement un tampon en spécifiant sa page, son index et ses nouvelles coordonnées
+
+La méthode 'move_stamp(page_number, stamp_index, new_x, new_y)' peut repositionner les tampons avec précision.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objet.
+1. Liez le PDF à l'éditeur.
+1. Ajoutez plusieurs tampons en caoutchouc à une page.
+1. Enregistrez le document avant d'effectuer des opérations de déplacement.
+1. Déplacez un tampon spécifique par son indice.
+1. Enregistrez le PDF mis à jour.
+
+```python
+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 move_stamp_by_index(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ content_editor.create_rubber_stamp(
+ 2,
+ apd.Rectangle(200, 380, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+
+ content_editor.create_rubber_stamp(
+ 2,
+ apd.Rectangle(200, 480, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+ content_editor.save(outfile)
+
+ # Move first stamp on page 1 by index
+ # content_editor.move_stamp(1, 1, 10, 10)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/_index.md
new file mode 100644
index 0000000000..75d62e27f4
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/_index.md
@@ -0,0 +1,17 @@
+---
+title: Opérations de texte
+type: docs
+weight: 100
+url: /fr/python-net/text-operations/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Remplacer le texte simple](/pdf/fr/python-net/replace-text-simple/)
+- [Remplacer le texte Regex](/pdf/fr/python-net/replace-text-regex/)
+- [Remplacer le texte sur la page](/pdf/fr/python-net/replace-text-on-page/)
+- [Remplacer le texte avec état](/pdf/fr/python-net/replace-text-with-state/)
+- [Remplacer le texte sur la page avec état](/pdf/fr/python-net/replace-text-on-page-with-state/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page-with-state/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page-with-state/_index.md
new file mode 100644
index 0000000000..bcf30dcfeb
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page-with-state/_index.md
@@ -0,0 +1,53 @@
+---
+title: Remplacer le texte sur la page avec l’état
+type: docs
+weight: 20
+url: /fr/python-net/replace-text-on-page-with-state/
+description: Dans cet exemple, toutes les occurrences du mot "software" sur la page 1 sont remplacées par "SOFTWARE PAGE 1", en utilisant du texte rouge avec une taille de police de 12.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remplacer du texte avec un formatage personnalisé sur une page spécifique en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment remplacer du texte sur une page spécifique dans un PDF tout en appliquant un formatage personnalisé en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment contrôler la taille de police et la couleur lors du remplacement du texte.
+---
+
+Parfois, remplacer du texte dans un PDF nécessite également des changements de formatage tels que la couleur ou la taille de police. En utilisant TextState, vous pouvez définir des propriétés de style et les appliquer lors du remplacement. Cela vous permet de mettre en évidence le texte modifié ou d'imposer un formatage cohérent à travers les documents.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Définissez un TextState avec un formatage personnalisé.
+1. Configurez la stratégie de remplacement.
+1. Remplacez le texte sur une page spécifique.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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_on_page_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.red
+ text_state.font_size = 12
+
+ # Replace text on a specific page with explicit text formatting
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
+ )
+ content_editor.replace_text("software", 1, "SOFTWARE PAGE 1", text_state)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page/_index.md
new file mode 100644
index 0000000000..9c4420c3cb
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page/_index.md
@@ -0,0 +1,47 @@
+---
+title: Remplacer le texte sur la page
+type: docs
+weight: 10
+url: /fr/python-net/replace-text-on-page/
+description: Dans cet exemple, la première occurrence du mot "PDF" est remplacée par "Page 1 Replaced Text" en utilisant une taille de police spécifiée.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remplacer le texte sur une page spécifique en utilisant PdfContentEditor en Python
+Abstract: Cet exemple montre comment remplacer du texte dans un document PDF en utilisant Aspose.PDF for Python via l'API Facades. Il montre comment remplacer la première occurrence de texte sur une page et enregistrer le document mis à jour.
+---
+
+Le remplacement de texte est une exigence courante lors de la mise à jour de documents PDF. En utilisant [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez rechercher un texte spécifique et le remplacer par un nouveau contenu. La propriété ‘replace_text_strategy’ vous permet de contrôler le nombre d'occurrences remplacées.
+
+1. Créer une instance de PdfContentEditor.
+1. Lier le document PDF d'entrée.
+1. Configurer la stratégie de remplacement de texte.
+1. Remplacer le texte cible.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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_on_page(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace text on page 1
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_FIRST
+ )
+ content_editor.replace_text("PDF", "Page 1 Replaced Text", 14)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-regex/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-regex/_index.md
new file mode 100644
index 0000000000..42f986bc23
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-regex/_index.md
@@ -0,0 +1,48 @@
+---
+title: Remplacer le texte Regex
+type: docs
+weight: 30
+url: /fr/python-net/replace-text-regex/
+description: Dans cet exemple, tous les nombres à quatre chiffres du document sont remplacés par le texte de substitution "[NUMBER]". Cela est utile pour masquer des données sensibles, normaliser le contenu ou anonymiser les documents.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remplacer du texte à l'aide d'expressions régulières avec PdfContentEditor en Python
+Abstract: Cet exemple montre comment remplacer du texte dans un PDF en utilisant des expressions régulières avec Aspose.PDF for Python via l'API Facades. Il montre comment rechercher des motifs et remplacer toutes les correspondances dans l'ensemble du document.
+---
+
+Les expressions régulières permettent un remplacement flexible du texte basé sur des motifs plutôt que sur des chaînes fixes. En activant la prise en charge des regex dans 'replace_text_strategy', vous pouvez faire correspondre du contenu dynamique tel que les nombres, les dates ou les chaînes formatées.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Configurer la stratégie de remplacement pour utiliser les regex.
+1. Remplacez les modèles correspondants dans l'ensemble du document.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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_regex(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace text in the whole document
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
+ )
+ content_editor.replace_text_strategy.is_regular_expression_used = True
+ content_editor.replace_text(r"\d{4}", "[NUMBER]")
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-simple/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-simple/_index.md
new file mode 100644
index 0000000000..69ae85b48a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-simple/_index.md
@@ -0,0 +1,47 @@
+---
+title: Remplacer le texte simple
+type: docs
+weight: 40
+url: /fr/python-net/replace-text-simple/
+description: Dans cet exemple, toutes les occurrences de "33" sont remplacées par "XXXIII " dans l'ensemble du document. Cela montre un remplacement simple de chaîne sans mise en forme personnalisée ni expression régulière.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remplacer du texte dans un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment remplacer du texte dans l'ensemble d'un document PDF à l'aide d'Aspose.PDF for Python via l'API Facades. Il remplace toutes les occurrences d'une chaîne spécifiée par un nouveau texte.
+---
+
+Le remplacement simple de texte est utile lors de la mise à jour de valeurs répétées dans un document. Avec [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), vous pouvez définir une portée de remplacement et substituer le texte globalement sur toutes les pages.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Lier le document PDF d'entrée.
+1. Configurez la portée du remplacement pour toutes les occurrences.
+1. Remplacer le texte cible.
+1. Enregistrer le document PDF mis à jour.
+
+```python
+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_simple(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace text in the whole document
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
+ )
+ content_editor.replace_text("33", "XXXIII ")
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-with-state/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-with-state/_index.md
new file mode 100644
index 0000000000..e555cc502d
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-with-state/_index.md
@@ -0,0 +1,53 @@
+---
+title: Remplacer le texte avec état
+type: docs
+weight: 50
+url: /fr/python-net/replace-text-with-state/
+description: Dans cet exemple, toutes les occurrences de "software" sont remplacées par "SOFTWARE" et formatées en bleu avec une taille de police de 14.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remplacer le texte avec un format personnalisé dans un PDF à l'aide de PdfContentEditor en Python
+Abstract: Cet exemple montre comment remplacer du texte dans un document PDF tout en appliquant un format personnalisé à l'aide d'Aspose.PDF for Python via l'API Facades. Il montre comment contrôler la couleur du texte et la taille de la police lors du remplacement.
+---
+
+Lors de la mise à jour du texte dans un PDF, vous pouvez souhaiter que le contenu remplacé se démarque. En utilisant un objet TextState, vous pouvez définir le style tel que la couleur et la taille de la police, puis l'appliquer à tout le texte remplacé.
+
+1. Créer un [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instance.
+1. Liez le document PDF d'entrée.
+1. Définissez un TextState avec un formatage personnalisé.
+1. Configurez la portée du remplacement.
+1. Remplacez le texte dans l'ensemble du document.
+1. Enregistrez le document PDF mis à jour.
+
+```python
+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)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/_index.md
new file mode 100644
index 0000000000..09fc71ef15
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/_index.md
@@ -0,0 +1,15 @@
+---
+title: Préférences du visualiseur
+type: docs
+weight: 110
+url: /fr/python-net/viewer-preferences/
+description:
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+
+- [Modifier les préférences du visualiseur PDF](/pdf/fr/python-net/change-viewer-preferences/)
+- [Obtenir les préférences du visualiseur PDF](/pdf/fr/python-net/get-viewer-preferences/)
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/change-viewer-preferences/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/change-viewer-preferences/_index.md
new file mode 100644
index 0000000000..e2b7db8d67
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/change-viewer-preferences/_index.md
@@ -0,0 +1,75 @@
+---
+title: Modifier les préférences du visualiseur PDF
+type: docs
+weight: 10
+url: /fr/python-net/change-viewer-preferences/
+description: Ce module montre comment ajuster les paramètres du visualiseur d’un document PDF en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Personnaliser l’expérience du visualiseur PDF avec Python
+Abstract: Contrôlez la façon dont votre document PDF apparaît lorsqu’il est ouvert en modifiant les préférences du visualiseur de manière programmatique. Cette fonctionnalité vous permet d’adapter l’interface utilisateur et la mise en page, garantissant une expérience de visualisation cohérente.
+---
+
+Les fichiers PDF possèdent des préférences de visualiseur intégrées qui contrôlent des aspects tels que la mise en page, la visibilité de la barre d’outils et le comportement de la fenêtre. En utilisant ce script, vous pouvez :
+
+- Inspectez les préférences actuelles du visualiseur d’un PDF.
+- Modifier les options de mise en page (par exemple, page unique, une colonne, deux colonnes).
+- Basculer les éléments de l’interface utilisateur tels que la barre d’outils, la barre de menus ou l’affichage du titre.
+- Enregistrez le PDF avec les préférences mises à jour pour une expérience de visualisation contrôlée.
+
+1. Définir les indicateurs ViewerPreference.
+1. Obtenir les Viewer Preferences actuelles.
+1. Modifier les préférences.
+1. Appliquer les préférences mises à jour.
+1. Enregistrer le PDF.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from enum import IntFlag
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Define ViewerPreference flags
+class ViewerPreference(IntFlag):
+ HIDE_TOOLBAR = 1
+ HIDE_MENUBAR = 2
+ HIDE_WINDOW_UI = 4
+ FIT_WINDOW = 8
+ CENTER_WINDOW = 16
+ DISPLAY_DOC_TITLE = 32
+ NON_FULL_SCREEN_PAGE_MODE_USE_NONE = 64
+ NON_FULL_SCREEN_PAGE_MODE_USE_OUTLINES = 128
+ NON_FULL_SCREEN_PAGE_MODE_USE_THUMBS = 256
+ NON_FULL_SCREEN_PAGE_MODE_USE_OC = 512
+ DIRECTION_L2R = 1024
+ DISPLAY_DOC_TITLE_IN_TITLE_BAR = 2048
+ PAGE_LAYOUT_SINGLE_PAGE = 4096
+ PAGE_LAYOUT_ONE_COLUMN = 8192
+ PAGE_LAYOUT_TWO_COLUMN_LEFT = 16384
+ PAGE_LAYOUT_TWO_COLUMN_RIGHT = 32768
+ PAGE_LAYOUT_TWO_PAGE_LEFT = 65536
+ PAGE_LAYOUT_TWO_PAGE_RIGHT = 131072
+
+
+def change_viewer_preferences(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ # Get current viewer preference and toggle single-page layout
+ current_preference = ViewerPreference(content_editor.get_viewer_preference())
+ updated_preference = current_preference | ViewerPreference.PAGE_LAYOUT_SINGLE_PAGE
+ content_editor.change_viewer_preference(int(updated_preference))
+
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/get-viewer-preferences/_index.md b/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/get-viewer-preferences/_index.md
new file mode 100644
index 0000000000..800ea27bf3
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/get-viewer-preferences/_index.md
@@ -0,0 +1,45 @@
+---
+title: Obtenir les préférences du visualiseur PDF
+type: docs
+weight: 20
+url: /fr/python-net/get-viewer-preferences/
+description: Comment lire et modifier les préférences du visualiseur PDF programmétiquement à l'aide d'Aspose.PDF for Python
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les préférences du visualiseur PDF avec Aspose.PDF en Python
+Abstract: Ce guide montre comment lire et modifier les préférences du visualiseur PDF programmétiquement à l'aide d'Aspose.PDF for Python. Les préférences du visualiseur contrôlent la façon dont un PDF est affiché lorsqu'il est ouvert dans un visualiseur PDF, par exemple en s'ouvrant avec le plan, en masquant les barres d'outils ou en utilisant une mise en page mono-page.
+---
+
+Aspose.PDF fournit des outils pour accéder et mettre à jour les préférences du visualiseur PDF. Ces préférences définissent la disposition initiale et le comportement de présentation d'un document PDF dans les lecteurs PDF. Cela comprend des options telles que l'activation de la vue plan, le masquage des barres de menus ou la spécification des modes de mise en page. En utilisant PdfContentEditor, vous pouvez récupérer les préférences existantes, vérifier des indicateurs spécifiques et les mettre à jour si nécessaire.
+
+1. Définir les indicateurs ViewerPreference.
+1. Initialiser [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) et lier le PDF.
+1. Obtenir les préférences actuelles du visualiseur.
+1. Vérifier les indicateurs spécifiques.
+1. Afficher les préférences actuelles.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from enum import IntFlag
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_viewer_preferences(infile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Read current viewer preference flags
+ viewer_preference = ViewerPreference(content_editor.get_viewer_preference())
+ if viewer_preference & ViewerPreference.PAGE_MODE_USE_OUTLINES:
+ print("PageModeUseOutlines is enabled")
+ print(f"Current viewer preference: {viewer_preference}")
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/_index.md b/fr/python-net/working-with-facades/pdffileeditor/_index.md
new file mode 100644
index 0000000000..85ac87a922
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/_index.md
@@ -0,0 +1,30 @@
+---
+title: Classe PdfFileEditor
+type: docs
+weight: 10
+url: /fr/python-net/pdffileeditor-class/
+description: Découvrez comment modifier et manipuler des fichiers PDF en utilisant la classe PdfFileEditor en Python avec Aspose.PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modifiez les pages PDF, fusionnez des fichiers et divisez des documents avec PdfFileEditor en Python.
+Abstract: Apprenez à utiliser la classe PdfFileEditor dans Aspose.PDF for Python via .NET pour manipuler les pages PDF et la structure du document. Cette section couvre les modifications de mise en page, la gestion des pages, la fusion de PDF, la scission de documents, ainsi que les flux de travail d'imposition de type livret ou N‑Up.
+---
+
+Travailler avec des documents PDF comprend diverses fonctions. La gestion des pages d'un fichier PDF est une partie importante de cette tâche. 'aspose.pdf.facades' fournit le `PdfFileEditor` classe à cet effet.
+
+La classe PdfFileEditor contient les méthodes qui permettent de manipuler des pages individuelles ; cette classe ne modifie ni ne manipule le contenu d'une page. Vous pouvez insérer une nouvelle page, supprimer une page existante, scinder les pages, ou spécifier l'imposition des pages à l'aide de PdfFileEditor.
+
+## Ce que vous pouvez faire avec PdfFileEditor
+
+Les fonctionnalités offertes par cette classe peuvent être regroupées en workflows de modification de pages, d’imposition PDF et de division de documents. Ces articles montrent comment réarranger les pages, combiner plusieurs PDF, préparer des fichiers pour l’impression et extraire des sections de documents existants sans modifier manuellement le fichier source.
+
+## Tutoriels PdfFileEditor
+
+- [Mise en page et marges](/pdf/fr/python-net/page-layout-and-margins/)
+- [Gestion des pages](/pdf/fr/python-net/page-management/)
+- [Concaténer ou fusionner des fichiers PDF](/pdf/fr/python-net/page-merging/)
+- [Diviser les documents PDF](/pdf/fr/python-net/splitting-pdf-documents/)
+- [Mise en page livret et N‑Up](/pdf/fr/python-net/booklet-and-nup-layout/)
diff --git a/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/_index.md b/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/_index.md
new file mode 100644
index 0000000000..89bf8f46f8
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/_index.md
@@ -0,0 +1,21 @@
+---
+title: Mise en page livret et N‑Up
+type: docs
+weight: 10
+url: /fr/python-net/booklet-and-nup-layout/
+description: La préparation des PDF pour l'impression nécessite souvent de réorganiser les pages dans des mises en page spécifiques telles que les livrets ou les grilles N‑Up.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer des mises en page livret et N‑Up pour les documents PDF en Python
+Abstract: Apprenez comment transformer les mises en page de pages PDF à l’aide d’Aspose.PDF for Python. Ce guide explique comment générer des documents de type livret et créer des mises en page N‑Up qui placent plusieurs pages sur une seule feuille. Ces techniques aident à optimiser les documents pour l’impression, à réduire la consommation de papier et à créer des sorties PDF compactes.
+---
+
+Les fonctionnalités livret et N‑Up aident à préparer les documents PDF pour l’impression et une présentation compacte des pages. Ces flux de travail réorganisent l’ordre des pages ou placent plusieurs pages sources sur une seule feuille, ce qui est utile pour les supports, les brouillons et la sortie de livrets prêts à imprimer.
+
+## Tutoriels de transformation de mise en page
+
+- [Créer un Document PDF N-Up](/pdf/fr/python-net/create-n-up-pdf-document/)
+- [Créer un livret PDF](/pdf/fr/python-net/create-pdf-booklet/)
diff --git a/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-n-up-pdf-document/_index.md b/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-n-up-pdf-document/_index.md
new file mode 100644
index 0000000000..5dea05cd1a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-n-up-pdf-document/_index.md
@@ -0,0 +1,84 @@
+---
+title: Créer un Document PDF N-Up
+type: docs
+weight: 10
+url: /fr/python-net/create-n-up-pdf-document/
+description: Apprenez comment créer un Document PDF N-Up tout en gérant en toute sécurité les erreurs potentielles à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer une mise en page PDF N-Up en Python
+Abstract: Apprenez comment générer une mise en page PDF N-Up en utilisant Aspose.PDF for Python. Cet exemple montre comment combiner plusieurs pages d'un Document PDF sur une seule page en utilisant la méthode 'make_n_up' ou 'try_make_n_up' de la classe PdfFileEditor.
+---
+
+Une mise en page N-Up place plusieurs pages d'un Document PDF sur une seule page sous forme de grille. Cette mise en page est souvent utilisée pour imprimer des présentations, des notes de service ou des rapports où plusieurs pages peuvent être consultées en même temps.
+
+En utilisant Aspose.PDF for Python, les développeurs peuvent rapidement créer un Document N-Up en spécifiant le nombre de lignes et de colonnes qui déterminent combien de pages originales apparaissent sur chaque page de sortie.
+
+Dans cet extrait de code, la méthode 'make_n_up' de la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe organise les pages du PDF d'entrée dans une grille 2 × 2, ce qui signifie que quatre pages d'origine apparaissent sur une page dans le document de sortie.
+
+Dans l'exemple présenté, la mise en page utilise 2 lignes et 2 colonnes, produisant quatre pages par feuille :
+
+1. Ouvrez le fichier PDF source.
+1. Créez une instance PdfFileEditor.
+1. Spécifiez le nombre de lignes et de colonnes pour la disposition N‑Up.
+1. Générez un nouveau PDF avec les pages combinées.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Create N-Up PDF Document
+def create_nup_pdf_document(infile, outfile):
+ # Create NUpMaker object
+ nup_maker = pdf_facades.PdfFileEditor()
+ # Make N-Up layout from input PDF file and save to output PDF file
+ nup_maker.make_n_up(
+ FileIO(infile), FileIO(outfile, "w"), 2, 2
+ ) # 2 rows and 2 columns for N-Up layout
+```
+
+Aspose.PDF for Python via .NET vous permet de générer des mises en page N-Up avec la classe PdfFileEditor. La méthode 'try_make_n_up' fonctionne de la même manière que make_n_up, mais au lieu de lever une exception lorsqu'une opération échoue, elle renvoie une valeur booléenne indiquant si le processus a réussi.
+
+La disposition N-Up organise plusieurs pages PDF sur une seule page en utilisant une grille définie par des lignes et des colonnes.
+
+La méthode \u0027try_make_n_up\u0027 offre une façon plus sûre d'effectuer cette opération parce que :
+
+- Elle renvoie True si la disposition est créée avec succès
+- Elle renvoie False si l'opération échoue
+- Elle n'interrompt pas l'exécution du programme avec des exceptions
+
+Dans l'exemple ci‑dessous, le document est organisé en utilisant une grille 2 \u00D7 2, qui place quatre pages originales sur chaque page de sortie.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Create N-Up PDF Document
+def try_create_nup_pdf_document(infile, outfile):
+ # Create NUpMaker object
+ nup_maker = pdf_facades.PdfFileEditor()
+ # Make N-Up layout from input PDF file and save to output PDF file
+ if not nup_maker.try_make_n_up(FileIO(infile), FileIO(outfile, "w"), 2, 2):
+ print("Failed to create N-Up PDF document.")
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-pdf-booklet/_index.md b/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-pdf-booklet/_index.md
new file mode 100644
index 0000000000..c1573764ea
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-pdf-booklet/_index.md
@@ -0,0 +1,81 @@
+---
+title: Créer un livret PDF
+type: docs
+weight: 20
+url: /fr/python-net/create-pdf-booklet/
+description: Générer un PDF au format livret à partir d'un document existant en utilisant Aspose.PDF for Python
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Créer un livret PDF à partir d'un PDF existant en utilisant Python
+Abstract: Apprenez comment générer un PDF au format livret à partir d'un document existant en utilisant Aspose.PDF for Python. Cet exemple montre comment utiliser la classe PdfFileEditor pour réorganiser les pages afin qu'elles puissent être imprimées et pliées en livret. La méthode ordonne automatiquement les pages pour produire une mise en page de livret correcte.
+---
+
+Créer des documents au format livret est une exigence courante lors de la préparation de PDF pour l'impression. Dans une mise en page de livret, les pages sont réorganisées de sorte que, une fois imprimées et pliées, elles apparaissent dans le bon ordre.
+
+En utilisant Aspose.PDF for Python, les développeurs peuvent facilement convertir un PDF standard en livret en utilisant le [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe. La méthode ‘make_booklet’ réorganise automatiquement les pages du document d'entrée et génère un nouveau PDF optimisé pour l'impression en livret.
+
+1. Ouvrez un document PDF existant.
+1. Créez une instance PdfFileEditor.
+1. Utilisez la méthode make_booklet pour réorganiser les pages.
+1. Enregistrez la sortie sous forme de fichier PDF prêt pour le livret.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Create PDF Booklet
+def create_pdf_booklet(infile, outfile):
+ # Create BookletMaker object
+ booklet_maker = pdf_facades.PdfFileEditor()
+ # Make booklet from input PDF file and save to output PDF file
+ booklet_maker.make_booklet(FileIO(infile), FileIO(outfile, "w"))
+```
+
+Cet extrait de code montre comment utiliser la méthode 'try_make_booklet' de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe pour réorganiser les pages en vue d'une impression en livret sans déclencher d'exceptions si l'opération échoue.
+
+Une mise en page de livret réorganise les pages de sorte que, lorsqu'elles sont imprimées et pliées, le document se lise dans le bon ordre. L'automatisation de ce processus garantit des résultats cohérents et élimine le besoin de réarranger manuellement les pages.
+
+La méthode 'try_make_booklet' fonctionne de manière similaire à 'make_booklet', mais avec une différence importante :
+
+- 'make_booklet' génère une exception si l'opération échoue.
+- 'try_make_booklet' renvoie True ou False, permettant aux développeurs de gérer les erreurs plus sûrement.
+
+1. Ouvrez un document PDF existant.
+1. Créez une instance PdfFileEditor.
+1. Tentative de création du livret.
+1. Gérer le résultat.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def try_create_pdf_booklet(infile, outfile):
+ # Create BookletMaker object
+ booklet_maker = pdf_facades.PdfFileEditor()
+ # Make booklet from input PDF file and save to output PDF file
+ # The try_make_booklet method is like the make_booklet method,
+ # except the try_make_booklet method does not throw an exception if the operation fails.
+ if not booklet_maker.try_make_booklet(FileIO(infile), FileIO(outfile, "w")):
+ print("Failed to create booklet.")
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/_index.md
new file mode 100644
index 0000000000..2952f8fbf0
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/_index.md
@@ -0,0 +1,18 @@
+---
+title: Mise en page et marges
+type: docs
+weight: 20
+url: /fr/python-net/page-layout-and-margins/
+description: Gérer la mise en page des pages PDF est une partie importante des flux de travail de traitement de documents. Les développeurs doivent souvent ajuster les marges, redimensionner le contenu des pages ou insérer des sauts de page afin de garantir que les documents respectent les exigences de formatage ou les normes d'impression.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modifier la mise en page PDF en Python - Ajouter des marges, redimensionner le contenu et insérer des sauts de page
+Abstract: Apprenez à modifier les mises en page PDF à l'aide d'Aspose.PDF for Python. Ce guide explique comment ajouter des marges à des pages spécifiques, redimensionner le contenu des pages et insérer des sauts de page de manière programmatique. Ces fonctionnalités permettent aux développeurs d'ajuster le formatage des documents, d'améliorer la lisibilité et de préparer les PDF pour l'impression ou des mises en page structurées.
+---
+
+- [Ajouter des marges aux pages PDF](/pdf/fr/python-net/add-margins-to-pdf-pages/)
+- [Redimensionner le contenu des pages PDF](/pdf/fr/python-net/resize-pdf-page-contents/)
+- [Ajouter des sauts de page dans le PDF](/pdf/fr/python-net/add-page-breaks-in-pdf/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-margins-to-pdf-pages/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-margins-to-pdf-pages/_index.md
new file mode 100644
index 0000000000..4efc9bace2
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-margins-to-pdf-pages/_index.md
@@ -0,0 +1,51 @@
+---
+title: Ajouter des marges aux pages PDF
+type: docs
+weight: 10
+url: /fr/python-net/add-margins-to-pdf-pages/
+description: Ajouter des marges personnalisées aux pages sélectionnées d'un PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des marges personnalisées à des pages PDF spécifiques en Python
+Abstract: Apprenez comment ajouter des marges personnalisées aux pages sélectionnées d'un PDF à l'aide d'Aspose.PDF for Python. Cet exemple montre comment étendre les limites des pages en spécifiant les marges supérieure, inférieure, gauche et droite pour chaque page, rendant les PDF plus imprimables ou visuellement cohérents.
+---
+
+L'ajout de marges aux pages PDF peut améliorer la lisibilité, préparer les documents pour l'impression ou allouer de l'espace pour les annotations. En utilisant Aspose.PDF for Python, les développeurs peuvent ajouter programmétiquement des marges à des pages spécifiques d'un PDF sans modifier la disposition du contenu.
+
+Dans cet extrait de code, le [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) class est utilisé pour ajouter des marges de 0,5 pouce aux pages 1 et 3 du document d'entrée. Les marges sont définies en points (1 pouce = 72 points) et appliquées individuellement à la gauche, à la droite, en haut et en bas de chaque page.
+
+1. Ouvrez le document PDF source.
+1. Créez une instance de 'PdfFileEditor'.
+1. Définissez les marges et les pages à modifier.
+1. Appliquez les marges en utilisant la méthode 'add_margins'.
+1. Enregistrez le PDF mis à jour dans le fichier de sortie.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Add Margins to PDF Pages
+def add_margins_to_pdf_pages(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ # Define the margins to be added (in points)
+ left_margin = 36 # 0.5 inch
+ right_margin = 36 # 0.5 inch
+ top_margin = 36 # 0.5 inch
+ bottom_margin = 36 # 0.5 inch
+
+ pdf_editor.add_margins(
+ infile, outfile, [1, 3], left_margin, right_margin, top_margin, bottom_margin
+ )
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-page-breaks-in-pdf/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-page-breaks-in-pdf/_index.md
new file mode 100644
index 0000000000..04d62f9f02
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-page-breaks-in-pdf/_index.md
@@ -0,0 +1,47 @@
+---
+title: Ajouter des sauts de page dans le PDF
+type: docs
+weight: 20
+url: /fr/python-net/add-page-breaks-in-pdf/
+description: Insérer des sauts de page dans un document PDF à l'aide d'Aspose.PDF pour Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des sauts de page aux pages PDF programmatiquement en Python
+Abstract: Apprenez comment insérer des sauts de page dans un document PDF à l'aide d'Aspose.PDF pour Python. Cet exemple montre comment diviser une page à une position verticale spécifiée, permettant aux développeurs de réorganiser le contenu et de créer des pages supplémentaires de manière dynamique.
+---
+
+Les sauts de page sont utiles lorsque vous devez diviser de longues pages PDF en plusieurs pages ou contrôler la façon dont le contenu est distribué dans un document. En utilisant Aspose.PDF pour Python, les développeurs peuvent insérer des sauts de page à des positions spécifiques sans modifier manuellement le PDF.
+
+Cet article montre comment utiliser la méthode 'add_page_break' de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe pour insérer un saut de page à une coordonnée verticale définie sur une page sélectionnée. La méthode crée une nouvelle page et déplace le contenu situé sous le point de rupture vers cette page.
+
+1. Créer un objet PdfFileEditor.
+1. Définir la position du saut de page.
+1. Insérer le saut de page.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Add Page Breaks in PDF
+def add_page_breaks_in_pdf(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.add_page_break(
+ infile,
+ outfile,
+ [
+ pdf_facades.PdfFileEditor.PageBreak(1, 400),
+ ],
+ )
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/resize-pdf-page-contents/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/resize-pdf-page-contents/_index.md
new file mode 100644
index 0000000000..abaca13289
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/resize-pdf-page-contents/_index.md
@@ -0,0 +1,50 @@
+---
+title: Redimensionner le contenu des pages PDF
+type: docs
+weight: 30
+url: /fr/python-net/resize-pdf-page-contents/
+description: Redimensionner le contenu de pages PDF spécifiques à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Redimensionner le contenu des pages PDF de manière programmatique en Python
+Abstract: Apprenez comment redimensionner le contenu de pages PDF spécifiques à l'aide d'Aspose.PDF for Python. Cet exemple démontre comment ajuster la largeur et la hauteur du contenu d'une page tout en préservant la structure du document, facilitant ainsi l'optimisation des mises en page pour l'impression ou la visualisation.
+---
+
+L'ajustement de la taille du contenu des pages PDF est souvent nécessaire lors de la préparation de documents pour l'impression, de l'adaptation du contenu à une mise en page spécifique ou de la normalisation des formats de page dans un document. En utilisant Aspose.PDF for Python, les développeurs peuvent redimensionner le contenu des pages sélectionnées de manière programmatique sans modifier manuellement le document.
+
+Cet article montre comment utiliser la méthode 'resize_contents' de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe permettant de modifier les dimensions du contenu de page pour des pages spécifiques dans un fichier PDF. En spécifiant la largeur et la hauteur cibles, le contenu des pages sélectionnées est redimensionné en conséquence.
+
+1. Créer un objet PdfFileEditor.
+1. Redimensionner le contenu des pages.
+
+Paramètres :
+
+- [1, 3] – liste des numéros de pages dont le contenu sera redimensionné.
+- 400 – la nouvelle largeur du contenu de la page (en points).
+- 750 – la nouvelle hauteur du contenu de la page (en points).
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Resize PDF Page Contents
+def resize_pdf_page_contents(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ if not pdf_editor.resize_contents(
+ FileIO(infile), FileIO(outfile, "w"), [1, 3], 400, 750
+ ):
+ raise Exception("Failed to resize PDF page contents.")
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-managment/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-managment/_index.md
new file mode 100644
index 0000000000..12f849a80d
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-managment/_index.md
@@ -0,0 +1,25 @@
+---
+title: Gestion des pages
+type: docs
+weight: 30
+url: /fr/python-net/page-management/
+description: Gérer les pages PDF de manière programmatique permet aux développeurs de modifier les documents sans édition manuelle.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les pages PDF de manière programmatique en Python - Extraire, supprimer, insérer et ajouter
+Abstract: Apprenez comment effectuer des opérations au niveau des pages sur des documents PDF en utilisant Aspose.PDF for Python. Ce guide montre comment extraire des pages spécifiques, supprimer les pages indésirables, insérer des pages provenant d'un autre PDF et ajouter des pages à un document existé, permettant une gestion efficace et automatisée des pages PDF.
+---
+
+Les tâches de gestion des pages sont centrales dans de nombreux flux de travail PDF. Avec Aspose.PDF for Python, vous pouvez réorganiser la structure du document, supprimer les pages inutiles et combiner le contenu de plusieurs PDF tout en conservant le contenu original des pages.
+
+## Opérations courantes de gestion des pages
+
+Utilisez les tutoriels suivants pour gérer les tâches d'édition au niveau de la page les plus courantes avec `PdfFileEditor`:
+
+- [Extraire des pages du PDF](/pdf/fr/python-net/extract-pages-from-pdf/)
+- [Supprimer des pages du PDF](/pdf/fr/python-net/delete-pages-from-pdf/)
+- [Insérer des pages dans un PDF](/pdf/fr/python-net/insert-pages-into-pdf/)
+- [Ajouter des pages au PDF](/pdf/fr/python-net/append-pages-to-pdf/)
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-managment/append-pages-to-pdf/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-managment/append-pages-to-pdf/_index.md
new file mode 100644
index 0000000000..0c8dd55283
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-managment/append-pages-to-pdf/_index.md
@@ -0,0 +1,42 @@
+---
+title: Ajouter des pages au PDF
+type: docs
+weight: 10
+url: /fr/python-net/append-pages-to-pdf/
+description: Ajouter des pages d'un document PDF à un autre en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajouter des pages d'un PDF à un autre en Python
+Abstract: Apprenez comment ajouter des pages d'un document PDF à un autre en utilisant Aspose.PDF for Python. Cet exemple montre comment utiliser la classe PdfFileEditor pour combiner des pages de plusieurs PDF et créer un document de sortie unique.
+---
+
+Combiner des pages de différents documents PDF est une exigence courante dans les flux de travail de traitement de documents. En utilisant Aspose.PDF for Python, les développeurs peuvent facilement ajouter des pages d'un ou plusieurs fichiers PDF à un document existant.
+
+Cet extrait de code montre comment utiliser la méthode append de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe permettant d'ajouter des pages sélectionnées d'un autre fichier PDF à la fin d'un PDF source. En spécifiant la plage de pages, les développeurs peuvent contrôler exactement quelles pages sont incluses dans le document final.
+
+1. Créer un objet PdfFileEditor.
+1. Ajouter des pages d'un autre PDF.
+
+Les pages spécifiées du document PDF secondaire sont ajoutées à la fin du PDF original, créant un fichier de sortie combiné.
+
+```python
+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
+
+
+# Append Pages to PDF
+def append_pages_to_pdf(infile, sample_file, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ # Append pages from the specified PDF document to the end of the source PDF document
+ pdf_editor.append(infile, [sample_file], 1, 2, outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-managment/delete-pages-from-pdf/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-managment/delete-pages-from-pdf/_index.md
new file mode 100644
index 0000000000..3d0fdff3bd
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-managment/delete-pages-from-pdf/_index.md
@@ -0,0 +1,46 @@
+---
+title: Supprimer des pages du PDF
+type: docs
+weight: 20
+url: /fr/python-net/delete-pages-from-pdf/
+description: Supprimer les pages sélectionnées d'un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer des pages spécifiques d'un document PDF en Python
+Abstract: Apprenez comment supprimer les pages sélectionnées d'un document PDF à l'aide d'Aspose.PDF for Python. Cet exemple montre comment supprimer des pages spécifiques d'un fichier PDF existant de façon programmatique, en créant un nouveau document sans les pages supprimées.
+---
+
+Parfois, les documents PDF contiennent des pages inutiles ou sensibles qui doivent être supprimées. À l'aide d'Aspose.PDF for Python, les développeurs peuvent supprimer de façon programmatique des pages spécifiques d'un PDF sans modifier le fichier manuellement.
+
+Notre exemple montre comment utiliser la méthode delete de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe pour supprimer des pages d'un document PDF. En spécifiant les numéros de pages à supprimer, vous pouvez créer un nouveau PDF qui exclut les pages indésirables. Cette fonctionnalité est utile pour nettoyer des rapports, supprimer des informations confidentielles ou préparer des extraits de documents personnalisés.
+
+1. Créer un objet PdfFileEditor.
+1. Définir les pages à supprimer.
+1. Supprimer les pages.
+
+```python
+
+ 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
+
+
+ # Delete Pages from PDF
+ def delete_pages_from_pdf(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ # Define the page numbers to be deleted (1-based index)
+ pages_to_delete = [2, 4]
+
+ # Delete the specified pages from the PDF document
+ pdf_editor.delete(infile, pages_to_delete, outfile)
+```
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-managment/extract-pages-from-pdf/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-managment/extract-pages-from-pdf/_index.md
new file mode 100644
index 0000000000..b6d84f7300
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-managment/extract-pages-from-pdf/_index.md
@@ -0,0 +1,45 @@
+---
+title: Extraire des pages du PDF
+type: docs
+weight: 30
+url: /fr/python-net/extract-pages-from-pdf/
+description: Extraire les pages sélectionnées d'un document PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extraire des pages spécifiques d'un document PDF en Python
+Abstract: Apprenez comment extraire des pages sélectionnées d'un document PDF à l'aide d'Aspose.PDF for Python. Cet exemple montre comment créer un nouveau PDF contenant uniquement les pages dont vous avez besoin, permettant la création de documents personnalisés et la manipulation au niveau des pages.
+---
+
+Extraire des pages d'un PDF est utile lorsque vous devez créer un sous-ensemble d'un document, partager uniquement un contenu spécifique, ou réorganiser des PDF pour des présentations, des rapports ou l'impression. En utilisant Aspose.PDF for Python, les développeurs peuvent extraire programmatiquement des pages d'un fichier PDF et les enregistrer en tant que nouveau document.
+
+Apprenez comment utiliser la méthode extract de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) class. En spécifiant une liste de pages à extraire, vous pouvez générer un nouveau PDF contenant uniquement les pages sélectionnées tout en préservant le contenu et le formatage d'origine.
+
+1. Créer un objet PdfFileEditor.
+1. Définir les pages à extraire.
+1. Extraire les pages.
+
+```python
+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
+
+
+# Extract Pages from PDF
+def extract_pages_from_pdf(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ # Define the page numbers to be extracted (1-based index)
+ pages_to_extract = [1, 4, 3]
+
+ # Extract the specified pages from the PDF document and save to a new PDF document
+ pdf_editor.extract(infile, pages_to_extract, outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-managment/insert-pages-into-pdf/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-managment/insert-pages-into-pdf/_index.md
new file mode 100644
index 0000000000..e5540e4b37
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-managment/insert-pages-into-pdf/_index.md
@@ -0,0 +1,44 @@
+---
+title: Insérer des pages dans un PDF
+type: docs
+weight: 40
+url: /fr/python-net/insert-pages-into-pdf/
+description: Insérer des pages d'un PDF dans un autre à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Insérer des pages d'un autre PDF dans un PDF existant en Python
+Abstract: Apprenez comment insérer des pages d'un PDF dans un autre à l'aide d'Aspose.PDF for Python. Cet exemple montre comment ajouter des pages sélectionnées d'un PDF secondaire à une position précise du document original, créant ainsi un PDF combiné avec un placement de pages précis.
+---
+
+Insérer des pages dans un PDF existant est une exigence courante lors de la combinaison de documents, de l'ajout de contenu ou de la réorganisation de rapports. En utilisant Aspose.PDF for Python, les développeurs peuvent insérer programmétiquement des pages d'un PDF dans un autre à un emplacement spécifié.
+
+Cet article montre comment utiliser la méthode insert de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) class. En spécifiant les numéros de pages à insérer et l'emplacement cible, vous pouvez fusionner du contenu provenant de différents PDF tout en conservant le formatage et la structure d'origine.
+
+1. Créer un objet PdfFileEditor.
+1. Définir la position d'insertion et les pages.
+1. Insérer des pages.
+
+```python
+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
+
+
+# Insert Pages into PDF
+def insert_pages_into_pdf(infile, sample_file, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ # Define the page number where new pages will be inserted (1-based index)
+ insert_page_number = 2
+
+ pdf_editor.insert(infile, insert_page_number, sample_file, [1, 2], outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/_index.md
new file mode 100644
index 0000000000..5b94590058
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/_index.md
@@ -0,0 +1,22 @@
+---
+title: Fusionner des fichiers PDF
+type: docs
+weight: 40
+url: /fr/python-net/page-merging/
+description: Combiner des documents PDF est une exigence courante dans les flux de travail automatisés, la génération de rapports et la gestion de documents.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Combiner des fichiers PDF en Python – Fusionner deux ou plusieurs PDFs avec Aspose.PDF
+Abstract: Apprenez à concaténer des fichiers PDF programmatiquement en utilisant Aspose.PDF for Python. Ce guide montre les méthodes pour fusionner deux ou plusieurs PDFs, gérer un grand nombre de fichiers, optimiser la sortie, et concaténer des formulaires PDF avec des suffixes uniques afin d'éviter les conflits de noms.
+---
+
+- [Concaténer deux fichiers PDF](/pdf/fr/python-net/concatenate-two-files/)
+- [Concaténer plusieurs fichiers PDF](/pdf/fr/python-net/concatenate-pdf-files/)
+- [Essayer de concaténer deux fichiers PDF](/pdf/fr/python-net/try-concatenate-two-files/)
+- [Essayez de concaténer plusieurs fichiers PDF](/pdf/fr/python-net/try-concatenate-pdf-files/)
+- [Concaténer un grand nombre de fichiers PDF](/pdf/fr/python-net/concatenate-large-number-files/)
+- [Concaténer des fichiers PDF avec optimisation](/pdf/fr/python-net/concatenate-pdf-files-with-optimization/)
+- [Concaténer les formulaires PDF avec un suffixe unique](/pdf/fr/python-net/concatenate-pdf-forms/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-large-number-files/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-large-number-files/_index.md
new file mode 100644
index 0000000000..2f60204fa5
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-large-number-files/_index.md
@@ -0,0 +1,37 @@
+---
+title: Concaténer un grand nombre de fichiers PDF
+type: docs
+weight: 10
+url: /fr/python-net/concatenate-large-number-files/
+description: Fusionnez un grand nombre de fichiers PDF efficacement à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Concaténer de grands fichiers PDF en Python en utilisant la mise en mémoire tampon sur disque
+Abstract: Découvrez comment fusionner un grand nombre de fichiers PDF efficacement à l'aide d'Aspose.PDF for Python. Cet exemple montre comment activer la mise en mémoire tampon sur disque pour gérer de gros PDF sans épuiser la mémoire du système, assurant une concaténation fluide de nombreux fichiers.
+---
+
+Lorsque vous travaillez avec de grandes collections de fichiers PDF, la consommation de mémoire peut devenir un goulot d'étranglement lors de la concaténation. En utilisant Aspose.PDF for Python, vous pouvez activer la mise en mémoire tampon sur disque dans la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe pour fusionner de nombreux PDF efficacement. La méthode concatenate combine les fichiers d'entrée en un seul PDF tandis que le tampon sur disque empêche une forte utilisation de la mémoire. Cette approche est idéale pour le traitement de documents en masse, la génération de rapports automatisés, ou la consolidation de grandes archives PDF.
+
+1. Créer un objet PdfFileEditor.
+1. Fusionner plusieurs fichiers PDF.
+
+```python
+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 concatenate_large_number_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.use_disk_buffer = True # Enable disk buffering for large files
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files-with-optimization/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files-with-optimization/_index.md
new file mode 100644
index 0000000000..fc99869db3
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files-with-optimization/_index.md
@@ -0,0 +1,37 @@
+---
+title: Concaténer des fichiers PDF avec optimisation
+type: docs
+weight: 30
+url: /fr/python-net/concatenate-pdf-files-with-optimization/
+description: Concaténez plusieurs fichiers PDF en un seul PDF optimisé en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fusionner des fichiers PDF avec une sortie optimisée en Python
+Abstract: Apprenez comment concaténer plusieurs fichiers PDF en un seul PDF optimisé en utilisant Aspose.PDF for Python. Cet exemple montre comment activer l'optimisation de taille afin de réduire la taille du fichier de sortie tout en préservant le contenu et la mise en forme.
+---
+
+Lors de la fusion de plusieurs PDF, le fichier résultant peut devenir volumineux, surtout s'il contient des images ou du contenu complexe. En utilisant Aspose.PDF for Python, les développeurs peuvent activer l'optimisation lors de la concaténation pour réduire la taille du fichier sans perdre de qualité. La propriété optimize_size dans le [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe garantit que le PDF fusionné est compact et efficace, ce qui le rend adapté au partage, au stockage ou à l'archivage.
+
+1. Créer un objet PdfFileEditor et activer l'optimisation.
+1. Fusionner des fichiers PDF.
+
+```python
+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 concatenate_pdf_files_with_optimization(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.optimize_size = True # Enable optimization for smaller output file size
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files/_index.md
new file mode 100644
index 0000000000..a1a82f19f2
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files/_index.md
@@ -0,0 +1,36 @@
+---
+title: Concaténer plusieurs fichiers PDF
+type: docs
+weight: 20
+url: /fr/python-net/concatenate-pdf-files/
+description: Combinez plusieurs fichiers PDF en un seul document à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fusionner plusieurs fichiers PDF en un seul PDF en Python
+Abstract: Apprenez comment combiner plusieurs fichiers PDF en un seul document à l'aide d'Aspose.PDF for Python. Cet exemple montre comment utiliser la méthode concatenate pour fusionner plusieurs PDF de manière fluide tout en préservant leur contenu et leur mise en forme.
+---
+
+La fusion de fichiers PDF est une tâche courante dans la gestion de documents, les rapports et les flux de travail automatisés. En utilisant Aspose.PDF for Python, les développeurs peuvent facilement combiner plusieurs fichiers PDF en un seul document consolidé. La méthode concatenate de la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe assure que toutes les pages des fichiers d'entrée sont préservées dans la sortie finale, en maintenant leur mise en page et leur contenu d'origine. Cette approche est utile pour créer des rapports complets, combiner des formulaires ou archiver plusieurs documents efficacement.
+
+1. Créer un objet PdfFileEditor.
+1. Fusionner plusieurs fichiers PDF.
+
+```python
+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 concatenate_pdf_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-forms/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-forms/_index.md
new file mode 100644
index 0000000000..e7fbb3abcd
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-forms/_index.md
@@ -0,0 +1,39 @@
+---
+title: Concaténer les formulaires PDF avec un suffixe unique
+type: docs
+weight: 50
+url: /fr/python-net/concatenate-pdf-forms/
+description: Concaténer plusieurs formulaires PDF à l'aide d'Aspose.PDF for Python tout en garantissant des noms de champs de formulaire uniques.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fusionner des formulaires PDF en Python tout en évitant les conflits de noms de champs
+Abstract: Apprenez comment concaténer plusieurs formulaires PDF à l'aide d'Aspose.PDF for Python tout en garantissant des noms de champs de formulaire uniques. Cet exemple montre comment définir un suffixe personnalisé pour éviter les conflits de noms lors de la fusion de PDF contenant des champs de formulaire interactifs.
+---
+
+La fusion de formulaires PDF peut entraîner des conflits si plusieurs fichiers contiennent des champs portant le même nom. En utilisant Aspose.PDF for Python, les développeurs peuvent attribuer un suffixe unique aux champs de formulaire lors de la concaténation. La propriété unique_suffix dans le [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) class renomme automatiquement les champs en conflit, préservant l'interactivité et garantissant que toutes les données du formulaire restent fonctionnelles. Cette approche est idéale pour combiner des enquêtes, des demandes ou tout document PDF interactif de manière programmatique.
+
+1. Créer un objet PdfFileEditor et définir un suffixe unique.
+1. Fusionner les formulaires PDF.
+
+```python
+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 concatenate_pdf_forms(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.unique_suffix = (
+ "_xy_%NUM%" # Set a unique suffix to avoid form field name conflicts
+ )
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-two-files/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-two-files/_index.md
new file mode 100644
index 0000000000..08e18dd9c7
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-two-files/_index.md
@@ -0,0 +1,36 @@
+---
+title: Concaténer deux fichiers PDF
+type: docs
+weight: 60
+url: /fr/python-net/concatenate-two-files/
+description: Concaténer deux fichiers PDF en un seul document en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fusionner deux fichiers PDF en un seul PDF en Python
+Abstract: Apprenez comment concaténer deux fichiers PDF en un seul document à l'aide d'Aspose.PDF for Python. Cet exemple montre comment fusionner deux PDF de façon transparente tout en préservant leur contenu et leur mise en forme d'origine.
+---
+
+Combiner deux fichiers PDF est une tâche courante lors de la consolidation de rapports, de contrats ou de formulaires. En utilisant Aspose.PDF for Python, vous pouvez fusionner programmétiquement deux PDF en un seul document en utilisant la méthode concatenate de la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe. Cela garantit que toutes les pages des deux fichiers sont incluses dans le PDF de sortie tout en conservant la mise en page, le contenu et la structure d'origine.
+
+1. Créer un objet PdfFileEditor.
+1. Fusionner deux fichiers PDF.
+
+```python
+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 concatenate_two_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.concatenate(files_to_merge[0], files_to_merge[1], output_file)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-pdf-files/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-pdf-files/_index.md
new file mode 100644
index 0000000000..e522fcf606
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-pdf-files/_index.md
@@ -0,0 +1,37 @@
+---
+title: Essayer de concaténer des fichiers PDF
+type: docs
+weight: 70
+url: /fr/python-net/try-concatenate-pdf-files/
+description: Concaténez plusieurs fichiers PDF en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fusionner des fichiers PDF en toute sécurité en Python avec la gestion des erreurs
+Abstract: Apprenez comment concaténer en toute sécurité plusieurs fichiers PDF en utilisant Aspose.PDF for Python. La méthode try_concatenate tente de fusionner les PDF sans lever d'exceptions, permettant aux développeurs de gérer les échecs de manière élégante.
+---
+
+La fusion de fichiers PDF peut parfois échouer en raison de fichiers corrompus, de formats incompatibles ou d'autres problèmes. En utilisant Aspose.PDF for Python, vous pouvez utiliser la méthode try_concatenate de la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe pour tenter en toute sécurité la concaténation. Au lieu de lever une exception, la méthode renvoie False si l'opération échoue, permettant une gestion contrôlée des erreurs dans les flux de travail automatisés.
+
+1. Créer un objet PdfFileEditor.
+1. Tentative de concaténation de fichiers PDF.
+
+```python
+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 try_concatenate_pdf_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ if not pdf_editor.try_concatenate(files_to_merge, output_file):
+ print("Concatenation failed for the provided files.")
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-two-files/_index.md b/fr/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-two-files/_index.md
new file mode 100644
index 0000000000..23198f36e0
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-two-files/_index.md
@@ -0,0 +1,39 @@
+---
+title: Essayer de concaténer deux fichiers PDF
+type: docs
+weight: 90
+url: /fr/python-net/try-concatenate-two-files/
+description: Concaténez deux fichiers PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Fusionner deux fichiers PDF en toute sécurité en Python sans exceptions
+Abstract: Apprenez comment concaténer en toute sécurité deux fichiers PDF à l'aide d'Aspose.PDF for Python. La méthode try_concatenate fusionne les fichiers sans lever d'exceptions, permettant une gestion d'erreurs souple en cas d'échec de l'opération.
+---
+
+Fusionner deux fichiers PDF peut parfois échouer en raison de corruption de fichiers, de formats incompatibles ou d'autres problèmes. En utilisant Aspose.PDF for Python, la méthode try_concatenate de la classe PdfFileEditor vous permet d'essayer de fusionner deux PDF en toute sécurité. Si l'opération échoue, elle renvoie False au lieu de lever une exception, vous donnant un contrôle total sur la gestion des erreurs dans les flux de travail automatisés ou le traitement par lots.
+
+1. Créer un objet PdfFileEditor.
+1. Tenter de fusionner deux fichiers PDF.
+
+```python
+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 try_concatenate_two_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ if not pdf_editor.try_concatenate(
+ files_to_merge[0], files_to_merge[1], output_file
+ ):
+ print("Concatenation failed for the provided files.")
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/_index.md b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/_index.md
new file mode 100644
index 0000000000..50cdd554ca
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/_index.md
@@ -0,0 +1,22 @@
+---
+title: Diviser les documents PDF
+type: docs
+weight: 50
+url: /fr/python-net/splitting-pdf-documents/
+description: La division des PDF est une exigence courante pour la gestion de documents, les rapports et les flux de travail d'automatisation.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Diviser les documents PDF en Python - du début à la fin, ou en fichier unique
+Abstract: Apprenez comment diviser les documents PDF de manière programmatique en utilisant Aspose.PDF for Python. Ce guide démontre les méthodes pour extraire des pages du début ou de la fin, diviser un PDF en plusieurs documents, ou le scinder en PDF d'une seule page pour une gestion flexible des documents.
+---
+
+Diviser les documents PDF est utile lorsque vous devez extraire des sections sélectionnées, distribuer des pages individuelles ou diviser de gros fichiers en unités plus petites pour le stockage et le traitement. Aspose.PDF for Python fournit plusieurs `PdfFileEditor` méthodes pour gérer ces scénarios efficacement.
+
+## Tutoriels de division de PDF
+
+- [Diviser le PDF depuis le début](/pdf/fr/python-net/split-pdf-from-beginning/)
+- [Diviser le PDF jusqu'à la fin](/pdf/fr/python-net/split-pdf-to-end/)
+- [Diviser le PDF en pages uniques](/pdf/fr/python-net/split-pdf-into-single-pages/)
diff --git a/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-from-beginning/_index.md b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-from-beginning/_index.md
new file mode 100644
index 0000000000..38fec6b251
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-from-beginning/_index.md
@@ -0,0 +1,37 @@
+---
+title: Diviser le PDF depuis le début
+type: docs
+weight: 10
+url: /fr/python-net/split-pdf-from-beginning/
+description: Divisez un document PDF depuis le début en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Diviser le PDF depuis le début en Python avec Aspose.PDF
+Abstract: Apprenez comment diviser un document PDF depuis le début en utilisant Aspose.PDF for Python. Cet exemple montre comment extraire un nombre spécifique de pages à partir de la première page pour créer un nouveau document PDF.
+---
+
+Diviser les PDF depuis le début est utile lorsque vous avez besoin des premières pages d'un document en tant que fichier séparé. En utilisant Aspose.PDF for Python, la méthode split_from_first dans le [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe vous permet d'extraire un nombre défini de pages à partir de la page un. Cette fonctionnalité est idéale pour générer des extraits, des aperçus ou des sections plus petites d'un PDF plus volumineux sans modifier manuellement le fichier original.
+
+1. Créer un objet PdfFileEditor.
+1. Diviser le PDF à partir de la première page.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Split PDF from Beginning
+def split_pdf_from_beginning(input_pdf_path, output_pdf_path):
+ pdf_file_editor = pdf_facades.PdfFileEditor()
+ pdf_file_editor.split_from_first(input_pdf_path, 3, output_pdf_path)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-into-single-pages/_index.md b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-into-single-pages/_index.md
new file mode 100644
index 0000000000..0e5d10cb56
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-into-single-pages/_index.md
@@ -0,0 +1,37 @@
+---
+title: Diviser le PDF en pages uniques
+type: docs
+weight: 30
+url: /fr/python-net/split-pdf-into-single-pages/
+description: Divisez le document PDF en PDFs d’une seule page en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Diviser un PDF en pages individuelles en Python
+Abstract: Apprenez comment diviser un document PDF en PDFs d’une seule page en utilisant Aspose.PDF for Python. Cette méthode extrait chaque page du PDF original et l’enregistre comme fichier séparé pour une gestion et un traitement flexibles des documents.
+---
+
+Diviser un PDF en pages uniques est utile pour le traitement au niveau de la page, l’impression ou la distribution de sections d’un document individuellement. En utilisant Aspose.PDF for Python, la méthode \u0027split_to_pages\u0027 de la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) La classe crée des fichiers PDF distincts pour chaque page du document source. Cette approche permet l'extraction automatisée de pages pour l'archivage, la révision ou le partage individuel tout en préservant la mise en page et le contenu d'origine.
+
+1. Créer un objet PdfFileEditor.
+1. Diviser le PDF en pages individuelles.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Split PDF into Single Pages
+def split_pdf_into_single_pages(input_pdf_path, output_pdf_path):
+ pdf_file_editor = pdf_facades.PdfFileEditor()
+ pdf_file_editor.split_to_pages(input_pdf_path, output_pdf_path)
+```
diff --git a/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-to-end/_index.md b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-to-end/_index.md
new file mode 100644
index 0000000000..f27e1e93ac
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-to-end/_index.md
@@ -0,0 +1,37 @@
+---
+title: Diviser le PDF jusqu'à la fin
+type: docs
+weight: 40
+url: /fr/python-net/split-pdf-to-end/
+description: Divisez un document PDF à partir d'une page donnée jusqu'à la dernière page en utilisant Aspose.PDF for Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Divisez un PDF d'une page spécifique jusqu'à la fin en Python
+Abstract: Apprenez comment diviser un document PDF à partir d'une page donnée jusqu'à la dernière page en utilisant Aspose.PDF for Python. Cet exemple montre comment extraire toutes les pages à partir d'une page spécifiée afin de créer un nouveau fichier PDF.
+---
+
+Diviser un PDF d'une page spécifique jusqu'à la fin est utile lorsque vous avez besoin de la partie finale d'un document en tant que fichier séparé. En utilisant Aspose.PDF for Python, la méthode split_to_end de la [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe vous permet d'extraire les pages à partir de n'importe quel numéro de page jusqu'à la dernière page du document. Ceci est idéal pour créer des extraits, extraire des chapitres ou traiter des parties d'un grand PDF sans le modifier manuellement.
+
+1. Créer un objet PdfFileEditor.
+1. Diviser le PDF à partir d'une page spécifique jusqu'à la fin.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Split PDF to End
+def split_pdf_to_end(input_pdf_path, output_pdf_path):
+ pdf_file_editor = pdf_facades.PdfFileEditor()
+ pdf_file_editor.split_to_end(input_pdf_path, 2, output_pdf_path)
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/_index.md b/fr/python-net/working-with-facades/pdffileinfo/_index.md
new file mode 100644
index 0000000000..51cdf0649c
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe PdfFileInfo
+type: docs
+weight: 110
+url: /fr/python-net/pdffileinfo-class/
+description: Apprenez à utiliser la classe PdfFileInfo dans Aspose.PDF for Python via .NET pour inspecter les métadonnées PDF, les propriétés du document, les privilèges, les détails de version et les informations de page.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Inspectez les métadonnées PDF, les propriétés et les informations de page en Python avec PdfFileInfo
+Abstract: Cette section explique comment utiliser la classe PdfFileInfo dans Aspose.PDF for Python via .NET pour inspecter les détails d’un fichier PDF de manière programmatique. Apprenez à travailler avec les métadonnées PDF, les propriétés du document, les privilèges, les informations de version et les données au niveau des pages dans les applications Python.
+---
+
+Le `PdfFileInfo` La classe dans Aspose.PDF Facades offre un accès aux informations PDF au niveau du document et de la page sans nécessiter d'analyse bas niveau. Elle est utile lorsque vous devez inspecter les métadonnées, récupérer les propriétés du document, vérifier les privilèges ou examiner les dimensions et les décalages des pages dans des flux de travail automatisés.
+
+## Ce que vous pouvez faire avec PdfFileInfo
+
+Utilisez les articles de cette section pour explorer les principales capacités d'inspection de fichiers de `PdfFileInfo` façade:
+
+- [Gérer les métadonnées PDF avec PdfFileInfo](/pdf/fr/python-net/pdf-metadata/)
+- [Inspecter les propriétés du document avec PdfFileInfo](/pdf/fr/python-net/document-properties/)
+- [Récupérer les informations de page avec PdfFileInfo](/pdf/fr/python-net/page-information/)
diff --git a/fr/python-net/working-with-facades/pdffileinfo/document-properties/_index.md b/fr/python-net/working-with-facades/pdffileinfo/document-properties/_index.md
new file mode 100644
index 0000000000..15cabfad3f
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/document-properties/_index.md
@@ -0,0 +1,18 @@
+---
+title: Document Propriétés
+type: docs
+weight: 10
+url: /fr/python-net/document-properties/
+description: Apprenez à accéder de manière programmatique aux métadonnées PDF à l'aide d'Aspose.PDF for Python. Ce guide explique comment récupérer la version PDF et vérifier les privilèges du document, y compris les autorisations d'impression, de copie, de modification et de remplissage des formulaires.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obtenez la version PDF et les privilèges du Document en utilisant Aspose.PDF for Python
+Abstract: Comprendre les métadonnées d'un PDF est essentiel pour le traitement, la conformité et l'automatisation des flux de travail. Les numéros de version PDF indiquent les fonctionnalités prises en charge et la compatibilité, tandis que les privilèges du document contrôlent des actions telles que l'impression, la copie de contenu, la modification d'annotations ou le remplissage des champs de formulaire. Ce tutoriel démontre comment utiliser la classe PdfFileInfo dans Aspose.PDF for Python.
+---
+
+- [Obtenir la version PDF](/pdf/fr/python-net/get-pdf-version/)
+- [Obtenir les privilèges du document](/pdf/fr/python-net/get-document-privileges/)
\ No newline at end of file
diff --git a/fr/python-net/working-with-facades/pdffileinfo/document-properties/get-document-privileges/_index.md b/fr/python-net/working-with-facades/pdffileinfo/document-properties/get-document-privileges/_index.md
new file mode 100644
index 0000000000..ba8542d595
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/document-properties/get-document-privileges/_index.md
@@ -0,0 +1,59 @@
+---
+title: Obtenir les privilèges du document
+type: docs
+weight: 10
+url: /fr/python-net/get-document-privileges/
+description: Apprenez comment vérifier programmatiquement les privilèges d’un document PDF à l’aide d’Aspose.PDF pour Python. Ce tutoriel montre comment utiliser la classe PdfFileInfo pour lire les paramètres de sécurité du document, tels que les autorisations d’impression, de copie ou de modification.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Récupérer les privilèges du document PDF à l’aide d’Aspose.PDF pour Python
+Abstract: Les documents PDF peuvent comporter des restrictions de sécurité qui limitent des actions telles que l’impression, la copie, la modification ou le remplissage de formulaires. En accédant à ces privilèges programmatiquement, les développeurs peuvent déterminer quelles opérations sont autorisées sur un PDF. Ce guide montre comment utiliser la classe PdfFileInfo pour récupérer les privilèges du document PDF et les afficher en Python.
+---
+
+Les privilèges PDF contrôlent ce que les utilisateurs peuvent ou ne peuvent pas faire avec un document. Les autorisations courantes incluent :
+
+- Imprimer le document
+- Copie du contenu
+- Modification des annotations ou du contenu
+- Remplissage des champs de formulaire
+- Utilisation des lecteurs d'écran
+- Assemblage ou fusion de documents
+
+Avec Aspose.PDF for Python, vous pouvez inspecter ces paramètres de manière programmatique en utilisant le [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe. Ceci est particulièrement utile lors du travail avec plusieurs PDFs dans des flux de travail automatisés, lors de la vérification de la conformité, ou du contrôle de la gestion des documents dans les applications.
+
+1. Charger un fichier PDF.
+1. Récupérer les privilèges du document.
+1. Afficher les actions autorisées pour le document.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_document_privileges(input_file_name):
+ pdf_metadata = pdf_facades.PdfFileInfo(input_file_name)
+
+ privileges = pdf_metadata.get_document_privilege()
+
+ print("Document Privileges:")
+ print(f" Can Print: {privileges.allow_print}")
+ print(f" Can Degraded Print: {privileges.allow_degraded_printing}")
+ print(f" Can Copy: {privileges.allow_copy}")
+ print(f" Can Modify Contents: {privileges.allow_modify_contents}")
+ print(f" Can Modify Annotations: {privileges.allow_modify_annotations}")
+ print(f" Can Fill In: {privileges.allow_fill_in}")
+ print(f" Can Screen Readers: {privileges.allow_screen_readers}")
+ print(f" Can Assembly: {privileges.allow_assembly}")
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/document-properties/get-pdf-version/_index.md b/fr/python-net/working-with-facades/pdffileinfo/document-properties/get-pdf-version/_index.md
new file mode 100644
index 0000000000..fda5464be1
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/document-properties/get-pdf-version/_index.md
@@ -0,0 +1,43 @@
+---
+title: Obtenir la version PDF
+type: docs
+weight: 20
+url: /fr/python-net/get-pdf-version/
+description: Apprenez comment déterminer programmatique la version d'un document PDF en utilisant Aspose.PDF for Python. Ce tutoriel montre comment utiliser la classe PdfFileInfo pour vérifier la version PDF d'un fichier.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Récupérer la version PDF à l'aide d'Aspose.PDF for Python
+Abstract: Les documents PDF possèdent des numéros de version qui indiquent les fonctionnalités et les spécifications qu'ils prennent en charge (par ex., 1.4, 1.7, 2.0). Connaître la version du PDF est important pour la compatibilité, le support des fonctionnalités et les flux de travail de traitement des documents. Dans ce guide, vous apprendrez comment récupérer la version PDF de manière programmatique en utilisant la classe PdfFileInfo dans Aspose.PDF for Python.
+---
+
+Les versions PDF définissent les fonctionnalités et capacités prises en charge dans un document, y compris les champs de formulaire, le chiffrement, les annotations et la compression. Pour les développeurs travaillant avec plusieurs PDF, vérifier la version assure la compatibilité avec les outils, bibliothèques ou flux de travail qui traitent ces fichiers.
+
+Avec Aspose.PDF for Python, vous pouvez facilement inspecter la version PDF avec le [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe.
+
+1. Chargez un document PDF.
+1. Récupérez sa version PDF.
+1. Affichez la version dans la console.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_pdf_version(input_file_name):
+
+ pdf_metadata = pdf_facades.PdfFileInfo(input_file_name)
+ version = pdf_metadata.get_pdf_version()
+ print(f"\nPDF Version: {version}")
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/page-information/_index.md b/fr/python-net/working-with-facades/pdffileinfo/page-information/_index.md
new file mode 100644
index 0000000000..149dfe6407
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/page-information/_index.md
@@ -0,0 +1,18 @@
+---
+title: Informations de page
+type: docs
+weight: 20
+url: /fr/python-net/page-information/
+description: Cet article explique comment extraire les principaux détails de mise en page et de positionnement des pages PDF à l’aide d’Aspose.PDF pour Python.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Récupérer les informations et les décals des pages PDF
+Abstract: Les pages PDF peuvent différer en taille, rotation et positionnement du contenu interne. Les fonctions Get Page Information et Get Page Offset offrent aux développeurs une vue complète de la mise en page de chaque page. Get Page Information renvoie la largeur, la hauteur et la rotation de la page, tandis que Get Page Offset récupère les décalages X et Y en pouces. Ensemble, ces méthodes permettent un alignement précis du texte, des images, des annotations et d’autres contenus, en supportant les flux de travail automatisés à page unique ou à pages multiples.
+---
+
+- [Obtenir les informations de page](/pdf/fr/python-net/get-page-info/)
+- [Obtenir le décalage de la page](/pdf/fr/python-net/get-page-offset/)
diff --git a/fr/python-net/working-with-facades/pdffileinfo/page-information/get-page-info/_index.md b/fr/python-net/working-with-facades/pdffileinfo/page-information/get-page-info/_index.md
new file mode 100644
index 0000000000..48922ac179
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/page-information/get-page-info/_index.md
@@ -0,0 +1,50 @@
+---
+title: Obtenir les informations de la page
+type: docs
+weight: 10
+url: /fr/python-net/get-page-info/
+description: Apprenez comment accéder programmatique aux informations au niveau de la page dans un PDF en utilisant Aspose.PDF pour Python. Ce guide montre comment récupérer la largeur, la hauteur, la rotation et les décalages d’une page spécifique dans un document PDF.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obtenir les informations de page PDF à l’aide d’Aspose.PDF pour Python
+Abstract: La fonction extrait la largeur, la hauteur, la rotation ainsi que les décalages horizontaux (X) et verticaux (Y) d’une page PDF. Ces propriétés sont renvoyées en points et reflètent la taille physique de la page ainsi que le positionnement du contenu dans le PDF. La fonction affiche les valeurs récupérées, permettant aux développeurs de comprendre la mise en page et l’orientation de la page pour de futures manipulations de PDF.
+---
+
+La fonction utilitaire « get_page_information » aide les développeurs à comprendre la structure et la mise en page des pages PDF. Chaque page PDF peut avoir des dimensions, une rotation et des décalages internes différents, ce qui peut affecter le placement du contenu ou les tâches d’automatisation.
+
+Il permet de récupérer les métadonnées clés et les informations de mise en page pour une page spécifique d’un fichier PDF. L’API Aspose.PDF Facades fournit des détails tels que la largeur, la hauteur, la rotation de la page et les décalages X/Y. Ces informations sont essentielles pour des tâches telles que l’analyse de la mise en page, le placement d’annotations ou le traitement automatisé de PDF.
+
+1. Créer un objet façade PDF.
+1. Récupérer les dimensions et la mise en page de la page.
+1. Afficher ou stocker les valeurs récupérées.
+
+```python
+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 get_page_information(infile):
+
+ # Get and display PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+ page_width = pdf_info.get_page_width(1)
+ page_height = pdf_info.get_page_height(1)
+ page_rotation = pdf_info.get_page_rotation(1)
+ page_x_offset = pdf_info.get_page_x_offset(1)
+ page_y_offset = pdf_info.get_page_y_offset(1)
+
+ print(f"Page Width: {page_width}")
+ print(f"Page Height: {page_height}")
+ print(f"Page Rotation: {page_rotation}")
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/page-information/get-page-offset/_index.md b/fr/python-net/working-with-facades/pdffileinfo/page-information/get-page-offset/_index.md
new file mode 100644
index 0000000000..f681847d49
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/page-information/get-page-offset/_index.md
@@ -0,0 +1,45 @@
+---
+title: Obtenir le décalage de la page
+type: docs
+weight: 20
+url: /fr/python-net/get-page-offset/
+description: Cet exemple montre comment utiliser PdfFileInfo pour obtenir les décalages X et Y d'une page spécifique et les convertir en pouces afin d'effectuer une analyse précise de la mise en page et du positionnement.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obtenir les décalages de pages PDF avec Python
+Abstract: La fonction 'get_page_offsets' extrait les décalages horizontaux (X) et verticaux (Y) de chaque page d'un fichier PDF. Ces décalages représentent la position du contenu de la page par rapport à l'origine du PDF. En convertissant les points en pouces, la fonction fournit des mesures précises et lisibles qui peuvent être utilisées pour placer avec exactitude des annotations, des images ou du texte. Elle prend en charge les PDF multi‑pages et est destinée aux développeurs travaillant sur la mise en page PDF, l'automatisation ou les tâches d'alignement de contenu.
+---
+
+La fonction 'get_page_offsets' fournit aux développeurs les décalages horizontaux (X) et verticaux (Y) exacts des pages d'un fichier PDF. Dans les documents PDF, chaque page peut avoir un point d'origine interne différent du coin supérieur gauche de la page, ce qui peut affecter le positionnement du texte, des images, des annotations ou d'autres contenus.
+
+En utilisant les façades Aspose.PDF, cette fonction extrait ces décalages en points et les convertit en pouces pour une interprétation aisée. Elle prend en charge les PDF multi-pages, ce qui la rend adaptée aux flux de travail automatisés nécessitant un placement précis du contenu.
+
+1. Créez l'objet façade PDF.
+1. Obtenez le nombre de pages dans le PDF.
+1. Parcourez chaque page pour obtenir les décalages.
+1. Imprimez ou stockez les décalages.
+
+```python
+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 get_page_offsets(infile):
+ # Get and display PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+ page_x_offset = pdf_info.get_page_x_offset(1) / 72.0
+ page_y_offset = pdf_info.get_page_y_offset(1) / 72.0
+ print(f"Page X Offset: {page_x_offset} inches")
+ print(f"Page Y Offset: {page_y_offset} inches")
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/_index.md b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/_index.md
new file mode 100644
index 0000000000..72b4de8d6d
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/_index.md
@@ -0,0 +1,20 @@
+---
+title: Métadonnées PDF
+type: docs
+weight: 30
+url: /fr/python-net/pdf-metadata/
+description: Cet article explique comment accéder, modifier et enregistrer les métadonnées dans des documents PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les métadonnées PDF en Python
+Abstract: Les métadonnées PDF contiennent des informations sur un document, telles que le titre, l'auteur, les mots‑clés et la date de création, ce qui facilite le catalogage, la recherche et le maintien de l'intégrité du document. En utilisant Aspose.PDF, les développeurs peuvent, de manière programmatique, Get PDF Metadata, Set PDF Metadata values, Clear PDF Metadata, et enregistrer les modifications soit au format des métadonnées PDF standard, soit au format XMP. Cette approche complète permet un contrôle précis des propriétés du document et assure une gestion cohérente à travers les flux de travail et les applications.
+---
+
+- [Obtenir les métadonnées PDF](/pdf/fr/python-net/get-pdf-metadata/)
+- [Définir les métadonnées PDF](/pdf/fr/python-net/set-pdf-metadata/)
+- [Effacer les métadonnées PDF](/pdf/fr/python-net/clear-pdf-metadata/)
+- [Enregistrer les métadonnées avec XMP](/pdf/fr/python-net/save-metadata-with-xmp/)
diff --git a/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/clear-pdf-metadata/_index.md b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/clear-pdf-metadata/_index.md
new file mode 100644
index 0000000000..f2fe29a951
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/clear-pdf-metadata/_index.md
@@ -0,0 +1,46 @@
+---
+title: Effacer les métadonnées PDF
+type: docs
+weight: 10
+url: /fr/python-net/clear-pdf-metadata/
+description: Supprimez toutes les métadonnées d'un document PDF à l'aide d'Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Effacement des métadonnées PDF avec Aspose.PDF for Python
+Abstract: Ce guide explique comment supprimer toutes les métadonnées d'un document PDF à l'aide d'Aspose.PDF for Python via .NET. Vous apprendrez à effacer les champs de métadonnées standards et personnalisés et à enregistrer le PDF assaini. Cela est utile pour la confidentialité, la sécurité ou la préparation de PDFs pour une diffusion publique.
+---
+
+Les PDF contiennent souvent des métadonnées telles que le titre, l'auteur, les mots‑clés, les dates de création et les champs personnalisés. Dans certains cas, vous pouvez souhaiter supprimer toutes les métadonnées d'un PDF, par exemple avant la distribution ou l'archivage. Aspose.PDF fournit la méthode clear_info() pour supprimer facilement toutes les métadonnées. Après la suppression, vous pouvez enregistrer le PDF à l'aide de la méthode save().
+
+1. Chargez le fichier PDF.
+1. Effacer toutes les métadonnées.
+1. Enregistrer le PDF nettoyé.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def clear_pdf_metadata(infile, outfile):
+
+ # Get PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+
+ # Clear PDF metadata
+ pdf_info.clear_info()
+
+ # Save updated metadata
+ pdf_info.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/get-pdf-metadata/_index.md b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/get-pdf-metadata/_index.md
new file mode 100644
index 0000000000..b21fcc065e
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/get-pdf-metadata/_index.md
@@ -0,0 +1,58 @@
+---
+title: Obtenir les métadonnées PDF
+type: docs
+weight: 20
+url: /fr/python-net/get-pdf-metadata/
+description: Extraire et afficher les métadonnées des documents PDF à l'aide d'Aspose.PDF for Python.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Récupération des métadonnées PDF à l'aide d'Aspose.PDF for Python.
+Abstract: Ce guide montre comment extraire et afficher les métadonnées des documents PDF à l'aide d'Aspose.PDF for Python. Vous apprendrez à accéder aux propriétés PDF standard telles que le titre, l'auteur, les mots‑clés, les dates de création/modification, ainsi qu'aux champs de métadonnées personnalisés. De plus, le guide couvre les vérifications de la validité du PDF, du chiffrement et du statut de portefeuille.
+---
+
+Les documents PDF contiennent souvent des métadonnées précieuses qui décrivent le contenu du document, la paternité et les autorisations. Aspose.PDF fournit une API pratique pour récupérer à la fois les propriétés de métadonnées standard et personnalisées. Cet extrait de code montre comment utiliser le [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe pour inspecter les fichiers PDF de manière programmatique, y compris des exemples détaillés en Python.
+
+1. Chargez le fichier PDF.
+1. Récupérer les métadonnées standard.
+1. Vérifier le statut du PDF et la sécurité.
+1. Récupérer les métadonnées personnalisées.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_pdf_metadata(infile):
+
+ # Get and display PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+ print(f"Subject: {pdf_info.subject}")
+ print(f"Title: {pdf_info.title}")
+ print(f"Keywords: {pdf_info.keywords}")
+ print(f"Creator: {pdf_info.creator}")
+ print(f"Creation Date: {pdf_info.creation_date}")
+ print(f"Modification Date: {pdf_info.mod_date}")
+
+ # Check PDF status
+ print(f"Is Valid PDF: {pdf_info.is_pdf_file}")
+ print(f"Is Encrypted: {pdf_info.is_encrypted}")
+ print(f"Has Open Password: {pdf_info.has_open_password}")
+ print(f"Has Edit Password: {pdf_info.has_edit_password}")
+ print(f"Is Portfolio: {pdf_info.has_collection}")
+
+ # Retrieve and display a specific custom attribute
+ reviewer = pdf_info.get_meta_info("Reviewer")
+ print(f"Reviewer: {reviewer if reviewer else 'No Reviewer metadata found.'}")
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/save-metadata-with-xmp/_index.md b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/save-metadata-with-xmp/_index.md
new file mode 100644
index 0000000000..6c4e0e06bb
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/save-metadata-with-xmp/_index.md
@@ -0,0 +1,49 @@
+---
+title: Enregistrer les métadonnées avec XMP
+type: docs
+weight: 30
+url: /fr/python-net/save-metadata-with-xmp/
+description: Enregistrer les métadonnées PDF en utilisant XMP avec Aspose.PDF for Python via .NET
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Enregistrement des métadonnées PDF avec XMP en utilisant Aspose.PDF for Python
+Abstract: Ce guide montre comment enregistrer les métadonnées PDF en utilisant XMP (Extensible Metadata Platform) avec Aspose.PDF for Python via .NET. XMP garantit que les métadonnées standard et personnalisées sont incorporées dans un format XML standardisé à l'intérieur du PDF, améliorant la compatibilité entre les applications et les flux de travail.
+---
+
+Les métadonnées PDF peuvent être stockées de plusieurs façons, et XMP est la méthode moderne et standardisée pour incorporer des métadonnées à l'intérieur d'un fichier PDF. En utilisant Aspose.PDF, vous pouvez mettre à jour les champs standard tels que Titre, Sujet, Mots‑clés et Créateur, puis les enregistrer au format XMP afin d'assurer une compatibilité plus large et une pérennité. Cette méthode est recommandée par rapport aux méthodes de stockage de métadonnées héritées.
+
+1. Chargez le fichier PDF.
+1. Définir les champs de métadonnées standard.
+1. Enregistrer les métadonnées au format XMP.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def save_info_with_xmp(infile, outfile):
+
+ # Get PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+
+ # Set PDF metadata
+ pdf_info.subject = "Aspose PDF for Python via .NET"
+ pdf_info.title = "Aspose PDF for Python via .NET"
+ pdf_info.keywords = "Aspose, PDF, Python, .NET"
+ pdf_info.creator = "Aspose Team"
+
+ # Save updated metadata
+ pdf_info.save_new_info_with_xmp(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/set-pdf-metadata/_index.md b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/set-pdf-metadata/_index.md
new file mode 100644
index 0000000000..8586a1be0a
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffileinfo/pdf-metadata/set-pdf-metadata/_index.md
@@ -0,0 +1,55 @@
+---
+title: Définir les métadonnées PDF
+type: docs
+weight: 50
+url: /fr/python-net/set-pdf-metadata/
+description: Modifier et enregistrer les métadonnées dans les documents PDF en utilisant Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mise à jour des métadonnées PDF à l'aide d'Aspose.PDF for Python
+Abstract: Ce guide explique comment modifier et enregistrer les métadonnées dans les documents PDF en utilisant Aspose.PDF for Python via .NET. Il démontre comment mettre à jour les propriétés PDF standard telles que le titre, le sujet, les mots‑clés et le créateur, ainsi que les champs de métadonnées personnalisés. À la fin, vous serez capable de mettre à jour les métadonnées PDF de manière programmatique et d’enregistrer les modifications.
+---
+
+Les documents PDF peuvent contenir à la fois des métadonnées standard (Title, Subject, Keywords, Creator, Author) et des métadonnées personnalisées stockées sous forme de propriétés XMP. Aspose.PDF fournit une API simple pour modifier ces propriétés en Python. Ce guide explique comment mettre à jour ces champs et enregistrer le fichier PDF modifié en utilisant le [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe.
+
+1. Chargez le fichier PDF.
+1. Mettre à jour les métadonnées standard.
+1. Ajouter ou mettre à jour les métadonnées personnalisées.
+1. Enregistrer les métadonnées mises à jour.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_pdf_metadata(infile, outfile):
+
+ # Get PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+
+ # Set PDF metadata
+ pdf_info.subject = "Aspose PDF for Python via .NET"
+ pdf_info.title = "Aspose PDF for Python via .NET"
+ pdf_info.keywords = "Aspose, PDF, Python, .NET"
+ pdf_info.creator = "Aspose Team"
+
+ pdf_info.set_meta_info("CustomKey", "CustomValue")
+
+ # pdf_info.save_new_info(outfile)
+ # Is obsolete, use save() method instead
+
+ # Save updated metadata
+ pdf_info.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffilesecurity/_index.md b/fr/python-net/working-with-facades/pdffilesecurity/_index.md
new file mode 100644
index 0000000000..efc80e3bf7
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesecurity/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe PdfFileSecurity
+type: docs
+weight: 125
+url: /fr/python-net/pdffilesecurity-class/
+description: Apprenez à utiliser la classe PdfFileSecurity dans Aspose.PDF for Python via .NET pour chiffrer et déchiffrer des PDF, modifier les mots de passe et contrôler les privilèges du document.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Chiffrer, déchiffrer et contrôler les autorisations PDF en Python avec PdfFileSecurity
+Abstract: Cette section explique comment utiliser la classe PdfFileSecurity dans Aspose.PDF for Python via .NET pour sécuriser les documents PDF de manière programmatique. Apprenez à chiffrer et déchiffrer des fichiers PDF, modifier les mots de passe et configurer les privilèges et les autorisations du document dans des applications Python.
+---
+
+Le `PdfFileSecurity` La classe dans Aspose.PDF Facades est utilisée pour protéger les documents PDF et contrôler la façon dont les utilisateurs peuvent interagir avec eux. Elle prend en charge les flux de travail de sécurité courants tels que le chiffrement basé sur un mot de passe, le déchiffrement, la rotation des mots de passe et la gestion des autorisations pour l'impression, la copie et la modification.
+
+## Ce que vous pouvez faire avec PdfFileSecurity
+
+Utilisez les articles de cette section pour explorer les principales tâches de sécurité PDF prises en charge par le `PdfFileSecurity` façade:
+
+- [Crypter des fichiers PDF avec PdfFileSecurity](/pdf/fr/python-net/encrypt-pdf-file/)
+- [Décrypter des fichiers PDF avec PdfFileSecurity](/pdf/fr/python-net/decrypt-pdf-file/)
+- [Modifier les mots de passe PDF avec PdfFileSecurity](/pdf/fr/python-net/change-password/)
+- [Définir les privilèges PDF avec PdfFileSecurity](/pdf/fr/python-net/set-privileges/)
diff --git a/fr/python-net/working-with-facades/pdffilesecurity/change-password/_index.md b/fr/python-net/working-with-facades/pdffilesecurity/change-password/_index.md
new file mode 100644
index 0000000000..2ae4569924
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesecurity/change-password/_index.md
@@ -0,0 +1,154 @@
+---
+title: Modifier le mot de passe du fichier PDF
+type: docs
+weight: 10
+url: /fr/python-net/change-password/
+description: Modifier les mots de passe utilisateur et propriétaire d'un document PDF sécurisé à l'aide d'Aspose.PDF for Python via .NET.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mettre à jour les mots de passe du PDF
+Abstract: Apprenez comment modifier à la fois les mots de passe utilisateur et propriétaire dans un fichier PDF sécurisé à l'aide d'Aspose.PDF for Python via .NET. Cet exemple montre comment mettre à jour en toute sécurité les informations d'accès tout en conservant le chiffrement et les autorisations existants.
+---
+
+## Modifier le mot de passe utilisateur et propriétaire
+
+Dans de nombreux cas, vous pourriez avoir besoin de mettre à jour les mots de passe d'un PDF protégé sans modifier sa configuration de sécurité existante. Cela peut être utile lors de la rotation des informations d'identification, du transfert de propriété ou du renforcement de la sécurité du document.
+
+La méthode 'change_password' du [PdfFileSecurity](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesecurity/) la classe vous permet :
+
+- Mettre à jour le mot de passe utilisateur (nécessaire pour ouvrir le document)
+- Mettre à jour le mot de passe propriétaire (utilisé pour contrôler les autorisations)
+- Conserver les paramètres de chiffrement et d'autorisation actuels
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Lier le PDF d'entrée.
+1. Modifier les mots de passe avec la méthode 'change_password()'.
+1. Enregistrer le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Change User and Owner Password
+def change_user_and_owner_password(infile, outfile):
+ """Change user and owner passwords while keeping existing security settings."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Change passwords
+ file_security.change_password(
+ "owner_password", "new_user_password", "new_owner_password"
+ )
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Modifier le mot de passe et réinitialiser la sécurité
+
+Lorsque vous travaillez avec des documents PDF sécurisés, changer simplement les mots de passe peut ne pas suffire. Vous devrez peut-être également ajuster les autorisations, telles que l'impression, la copie ou les droits de modification.
+
+Découvrez comment mettre à jour les mots de passe utilisateur et propriétaire tout en réinitialisant les paramètres de sécurité PDF avec Aspose.PDF for Python via .NET. Cet exemple montre comment redéfinir les autorisations du document et la force de chiffrement ainsi que les nouvelles informations d'accès.
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Lier le PDF d'entrée.
+1. Créez un objet 'DocumentPrivilege' et configurez les actions autorisées.
+1. Modifiez les mots de passe et réinitialisez la sécurité.
+1. Enregistrer le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Change Password and Reset Security
+def change_password_and_reset_security(infile, outfile):
+ """Change passwords and reset document security settings."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define new privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Change passwords and reset security
+ file_security.change_password(
+ "owner_password",
+ "new_user_password",
+ "new_owner_password",
+ privilege,
+ pdf_facades.KeySize.X128,
+ )
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Essayer de changer le mot de passe sans exception
+
+Dans certains flux de travail, en particulier dans le traitement par lots ou les systèmes automatisés, il est important d'éviter les exceptions qui peuvent interrompre l'exécution. Au lieu de lever des erreurs, vous pouvez préférer une opération sécurisée qui rapporte le succès ou l'échec.
+
+La méthode 'try_change_password' de [PdfFileSecurity](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesecurity/) classe fournit cette fonctionnalité par:
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Chargez le document PDF en utilisant la méthode 'bind_pdf()'.
+1. Tentative de changer les mots de passe.
+1. Vérifiez le résultat.
+1. Enregistrer le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Try Change Password Without Exception
+def try_change_password_without_exception(infile, outfile):
+ """Attempt to change passwords without throwing an exception on failure."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Attempt to change passwords
+ result = file_security.try_change_password(
+ "owner_password", "new_user_password", "new_owner_password"
+ )
+
+ # Save only if operation succeeded
+ if result:
+ file_security.save(outfile)
+ else:
+ print("Password change failed. Check owner password or document security.")
+```
diff --git a/fr/python-net/working-with-facades/pdffilesecurity/decrypt-pdf-file/_index.md b/fr/python-net/working-with-facades/pdffilesecurity/decrypt-pdf-file/_index.md
new file mode 100644
index 0000000000..c7494b302c
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesecurity/decrypt-pdf-file/_index.md
@@ -0,0 +1,91 @@
+---
+title: Décrypter le fichier PDF
+type: docs
+weight: 20
+url: /fr/python-net/decrypt-pdf-file/
+description: Ce guide explique comment supprimer les restrictions telles que l'impression, la copie et la modification afin d'obtenir un accès complet à votre document PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer la protection par mot de passe d'un PDF
+Abstract: Cet article montre comment décrypter un fichier PDF à l'aide d'un mot de passe propriétaire. Il couvre le processus de suppression des restrictions de sécurité qui limitent des actions telles que l'impression, la modification ou la copie de contenu. En appliquant le mot de passe propriétaire correct, les utilisateurs peuvent déverrouiller le document et retrouver le plein contrôle de ses fonctionnalités.
+---
+
+## Décrypter le PDF avec le mot de passe propriétaire
+
+Décrypter un document PDF protégé par mot de passe en utilisant le mot de passe propriétaire avec Aspose.PDF for Python via .NET. Cette opération supprime le chiffrement et permet un accès illimité au document.
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Chargez le PDF chiffré en utilisant la méthode 'bind_pdf()'.
+1. Déchiffrez le Document.
+1. Enregistrez le PDF déchiffré.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Decrypt PDF with Owner Password
+def decrypt_pdf_with_owner_password(infile, outfile):
+ """Decrypt a PDF document using the owner password."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Decrypt the PDF
+ file_security.decrypt_file("owner_password")
+
+ # Save decrypted PDF
+ file_security.save(outfile)
+```
+
+## Essayer de déchiffrer le PDF sans exception
+
+Les documents PDF sont souvent protégés par des mots de passe afin de restreindre l'accès et l'utilisation. Pour accéder pleinement ou modifier de tels documents, il peut être nécessaire de retirer le chiffrement. Déchiffrez un document PDF sécurisé en utilisant le mot de passe propriétaire pour supprimer le chiffrement et les restrictions d'accès avec Aspose.PDF for Python via .NET.
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Lier le PDF d'entrée.
+1. Déchiffrer le PDF.
+1. Enregistrer le PDF de sortie.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Try Decrypt PDF Without Exception
+def try_decrypt_pdf_without_exception(infile, outfile):
+ """Attempt to decrypt a PDF without throwing an exception on failure."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Attempt to decrypt the PDF
+ result = file_security.try_decrypt_file("owner_password")
+
+ # Save only if decryption was successful
+ if result:
+ file_security.save(outfile)
+ else:
+ print("Decryption failed. Check password or document security.")
+```
diff --git a/fr/python-net/working-with-facades/pdffilesecurity/encrypt-pdf-file/_index.md b/fr/python-net/working-with-facades/pdffilesecurity/encrypt-pdf-file/_index.md
new file mode 100644
index 0000000000..634b1f07c0
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesecurity/encrypt-pdf-file/_index.md
@@ -0,0 +1,151 @@
+---
+title: Chiffrer le fichier PDF
+type: docs
+weight: 30
+url: /fr/python-net/encrypt-pdf-file/
+description: Chiffrer un document PDF et configurer les autorisations pour contrôler ce que les utilisateurs peuvent faire avec le fichier.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Chiffrer le PDF et contrôler les actions des utilisateurs
+Abstract: Apprenez à chiffrer un PDF tout en définissant des autorisations d'utilisateur spécifiques à l'aide d'Aspose.PDF for Python via .NET. Ce guide montre comment autoriser ou restreindre des actions telles que l'impression et la copie tout en maintenant le document sécurisé.
+---
+
+## Crypter le PDF avec un mot de passe utilisateur et propriétaire
+
+Sécuriser les documents PDF est essentiel lors du partage de contenus sensibles ou restreints. Le chiffrement vous permet de protéger un document avec des mots de passe et de définir quelles actions les utilisateurs sont autorisés à effectuer. Cet extrait de code montre comment appliquer des mots de passe utilisateur et propriétaire ainsi que des autorisations d'accès pour sécuriser un fichier PDF.
+
+1. Créer un objet PdfFileSecurity.
+1. Lier le PDF d'entrée.
+1. Définir les privilèges du document.
+1. Chiffrer le PDF.
+1. Enregistrer le PDF chiffré.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Encrypt PDF with User and Owner Password
+def encrypt_pdf_with_user_owner_password(infile, outfile):
+ """Encrypt a PDF document using user and owner passwords."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define document privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Encrypt the PDF
+ file_security.encrypt_file(
+ "user_password", "owner_password", privilege, pdf_facades.KeySize.X128
+ )
+
+ # Save encrypted PDF
+ file_security.save(outfile)
+```
+
+## Chiffrer le PDF avec des autorisations
+
+Le fragment de code suivant explique comment autoriser certaines actions comme l'impression et la copie tout en en restreignant d'autres.
+
+1. Initialiser le [PdfFileSecurity](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesecurity/) classe.
+1. Lier le PDF d'entrée.
+1. Configurer les privilèges du Document.
+1. Appeler la méthode 'encrypt_file()'.
+1. Enregistrer le PDF chiffré.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Encrypt PDF with Permissions
+def encrypt_pdf_with_permissions(infile, outfile):
+ """Encrypt a PDF document and configure specific permissions."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Configure privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+ privilege.allow_copy = True
+
+ # Encrypt the PDF
+ file_security.encrypt_file(
+ "user_password", "owner_password", privilege, pdf_facades.KeySize.X128
+ )
+
+ # Save encrypted PDF
+ file_security.save(outfile)
+```
+
+## Crypter le PDF avec un algorithme de chiffrement
+
+Le chiffrement PDF ne protège pas seulement les documents avec des mots de passe, mais il permet également de choisir l'algorithme de chiffrement et la force. Sélectionner l'algorithme approprié assure une sécurité plus forte pour les documents sensibles.
+
+1. Créer un objet PdfFileSecurity.
+1. Lier le PDF d'entrée.
+1. Définir les privilèges du document.
+1. Crypter le PDF avec l'algorithme.
+1. Enregistrer le PDF chiffré.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Encrypt PDF with Encryption Algorithm
+def encrypt_pdf_with_encryption_algorithm(infile, outfile):
+ """Encrypt a PDF document using a specific encryption algorithm."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Encrypt the PDF using AES algorithm
+ file_security.encrypt_file(
+ "user_password",
+ "owner_password",
+ privilege,
+ pdf_facades.KeySize.X256,
+ pdf_facades.Algorithm.AES,
+ )
+
+ # Save encrypted PDF
+ file_security.save(outfile)
+```
diff --git a/fr/python-net/working-with-facades/pdffilesecurity/set-privileges/_index.md b/fr/python-net/working-with-facades/pdffilesecurity/set-privileges/_index.md
new file mode 100644
index 0000000000..7097d2cd37
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesecurity/set-privileges/_index.md
@@ -0,0 +1,147 @@
+---
+title: Définir les privilèges sur un fichier PDF existant
+type: docs
+weight: 40
+url: /fr/python-net/set-privileges/
+description: Définir et gérer les privilèges du document PDF pour contrôler les actions des utilisateurs telles que l'impression, la copie et la modification.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gérer les autorisations PDF et les contrôles d'accès
+Abstract: Découvrez comment contrôler ce que les utilisateurs peuvent faire avec un PDF en définissant les privilèges du document à l'aide d'Aspose.PDF for Python via .NET. Ce guide couvre l'application des autorisations avec ou sans mots de passe pour restreindre des actions telles que l'impression, la copie ou la modification.
+---
+
+## Définir les privilèges PDF sans mots de passe
+
+Vérifiez comment appliquer les privilèges du document à un PDF sans spécifier les mots de passe utilisateur ou propriétaire en utilisant Aspose.PDF for Python via .NET. Cet extrait de code montre comment contrôler les actions autorisées tout en gardant le document accessible.
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Lier le PDF d'entrée.
+1. Définir les privilèges du Document.
+1. Appelez la méthode 'set_privilege()' sans fournir de mots de passe.
+1. Enregistrer le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Set PDF Privileges Without Passwords
+def set_pdf_privileges_without_passwords(infile, outfile):
+ """Set PDF privileges without specifying user and owner passwords."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Apply privileges (owner password will be generated automatically)
+ file_security.set_privilege(privilege)
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Définir les privilèges PDF avec les mots de passe utilisateur et propriétaire
+
+Pour sécuriser complètement un document PDF, vous avez souvent besoin à la fois du contrôle d'accès (mots de passe) et des restrictions d'utilisation (permissions). En combinant ces deux éléments, vous pouvez vous assurer que seuls les utilisateurs autorisés peuvent ouvrir le document et réaliser des actions spécifiques.
+
+En utilisant la méthode set_privilege avec des paramètres de mot de passe, vous pouvez :
+
+- Protégez le document avec un mot de passe utilisateur
+- Définissez un mot de passe propriétaire pour un contrôle complet
+- Configurez les actions autorisées et restreintes
+- Appliquez les politiques de sécurité au niveau du document
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Set PDF Privileges with User and Owner Passwords
+def set_pdf_privileges_with_passwords(infile, outfile):
+ """Set PDF privileges using user and owner passwords."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+ privilege.allow_copy = False
+
+ # Apply privileges with passwords
+ file_security.set_privilege("user_password", "owner_password", privilege)
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Essayer de définir les privilèges du PDF sans exception
+
+Cet extrait de code explique comment contrôler l'accès et restreindre des actions telles que la copie tout en permettant d'autres comme l'impression.
+
+1. Créer un objet 'PdfFileSecurity'.
+1. Chargez le PDF source en utilisant la méthode 'bind_pdf()'.
+1. Définir les privilèges du Document.
+1. Appliquer les privilèges avec des mots de passe.
+1. Enregistrer le PDF mis à jour.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Try Set PDF Privileges Without Exception
+def try_set_pdf_privileges_without_exception(infile, outfile):
+ """Attempt to set PDF privileges without throwing an exception on failure."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Attempt to apply privileges
+ result = file_security.try_set_privilege(
+ "user_password", "owner_password", privilege
+ )
+
+ # Save only if operation succeeded
+ if result:
+ file_security.save(outfile)
+ else:
+ print("Setting privileges failed. Check passwords or document state.")
+```
diff --git a/fr/python-net/working-with-facades/pdffilesignature/_index.md b/fr/python-net/working-with-facades/pdffilesignature/_index.md
new file mode 100644
index 0000000000..9922a6f7d2
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/_index.md
@@ -0,0 +1,82 @@
+---
+title: Classe PdfFileSignature
+type: docs
+weight: 60
+url: /fr/python-net/pdffilesignature-class/
+description: Découvrez comment ajouter, vérifier et supprimer des signatures numériques des documents PDF en Python en utilisant la classe PDFFileSignature avec Aspose.PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Signature PDF](/pdf/fr/python-net/pdf-signing/)
+- [Certification PDF](/pdf/fr/python-net/pdf-certification/)
+- [Gestion des signatures](/pdf/fr/python-net/signature-management/)
+- [Vérification de la signature](/pdf/fr/python-net/signature-verification/)
+- [Informations sur la signature](/pdf/fr/python-net/signature-information/)
+- [Vérifications d'intégrité de la signature](/pdf/fr/python-net/signature-integrity-checks/)
+- [Révision & Permissions](/pdf/fr/python-net/revision-permissions/)
+- [Extraction de signature](/pdf/fr/python-net/signature-extraction/)
+- [Gestion des droits d\'utilisation](/pdf/fr/python-net/usage-rights-management/)
+
+## Préparer les assistants de signature numérique PDF
+
+Avant d’appliquer une signature numérique à un PDF, il est recommandé de mettre en place un groupe de fonctions d’assistance réutilisables. Ces fonctions encapsulent les tâches courantes — comme l’initialisation du gestionnaire de signature, la définition du placement visuel de la signature et la configuration de la signature basée sur un certificat — afin que la logique principale de signature reste claire, cohérente et facile à maintenir.
+
+### Ce que cette configuration réalise
+
+Cette couche d'assistance prépare tout ce qui est nécessaire pour un flux de travail de signature fluide :
+
+- Initialise un objet PdfFileSignature et le lie à un document
+- Définit où la signature apparaîtra sur la page
+- Charge et applique un certificat de signature
+- Crée un objet de signature PKCS#7 réutilisable avec des métadonnées
+- Personnalise l'apparence visuelle de la signature
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+
+
+DEFAULT_CERTIFICATE_PASSWORD = "Aspose2021"
+DEFAULT_SIGNATURE_NAME = "Signature1"
+
+
+def create_pdf_file_signature(infile):
+ pdf_signature = pdf_facades.PdfFileSignature()
+ pdf_signature.bind_pdf(infile)
+ return pdf_signature
+
+
+def create_signature_rectangle():
+ return apd.Rectangle(10, 10, 200, 60)
+
+
+def configure_signature_certificate(
+ pdf_signature, certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ pdf_signature.set_certificate(certificate_path, certificate_password)
+
+
+def create_pkcs7_signature(
+ certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ signature = ap.forms.PKCS7(certificate_path, certificate_password)
+ signature.reason = "Document approval"
+ signature.contact_info = "qa@example.com"
+ signature.location = "New York, USA"
+ signature.authority = "Aspose.PDF Example"
+ return signature
+
+
+def create_custom_signature_appearance():
+ appearance = ap.forms.SignatureCustomAppearance()
+ appearance.font_family_name = "Arial"
+ appearance.font_size = 10
+ appearance.show_contact_info = True
+ appearance.show_location = True
+ appearance.show_reason = True
+ return appearance
+```
diff --git a/fr/python-net/working-with-facades/pdffilesignature/pdf-certification/_index.md b/fr/python-net/working-with-facades/pdffilesignature/pdf-certification/_index.md
new file mode 100644
index 0000000000..b9625f9650
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/pdf-certification/_index.md
@@ -0,0 +1,85 @@
+---
+title: Certification PDF
+type: docs
+weight: 30
+url: /fr/python-net/pdf-certification/
+description: Apprenez à certifier des documents PDF en Python à l'aide de PdfFileSignature et DocMDPSignature avec différentes autorisations de modification du document.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Certifier des documents PDF avec les autorisations DocMDP en Python
+Abstract: Cet article explique comment certifier des documents PDF avec Aspose.PDF for Python via .NET en utilisant la façade PdfFileSignature. Il montre comment créer une DocMDPSignature, appliquer une certification avec des autorisations de remplissage de formulaire, et verrouiller un document avec un niveau de certification sans modifications.
+---
+
+Aspose.PDF for Python via .NET vous permet de certifier des documents PDF en appliquant une signature au niveau du document avec [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/). La certification est différente d'une signature d'approbation standard car elle définit les modifications, le cas échéant, autorisées après que le document a été certifié.
+
+Cet article présente deux flux de travail de certification courants :
+
+1. Certifier un PDF et autoriser le remplissage de formulaire après la certification.
+1. Certifier un PDF et empêcher toute modification ultérieure.
+
+## Certifier un PDF pour le remplissage de formulaire
+
+Utilisez cette approche lorsque le document doit rester certifié mais que les utilisateurs doivent toujours remplir des formulaires interactifs ou continuer à signer le fichier. Le `FILLING_IN_FORMS` Le niveau d\u0027autorisation permet ces modifications contrôlées tout en maintenant la certification valide.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def certify_pdf_with_mdp_signature(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ doc_mdp_signature = create_doc_mdp_signature(
+ certificate_path,
+ ap.forms.DocMDPAccessPermissions.FILLING_IN_FORMS,
+ reason="Certified for form filling and signing",
+ )
+ pdf_signature.certify(
+ 1,
+ "Certified for form filling and signing",
+ "security@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ doc_mdp_signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Appliquer une certification au niveau du document sans autoriser de modifications
+
+Utilisez ce mode lorsque le document certifié doit rester inchangé après la certification. Le `NO_CHANGES` Le niveau d'autorisation convient aux PDF finalisés où toute modification ultérieure doit invalider l'état de certification.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def apply_document_level_certification(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ doc_mdp_signature = create_doc_mdp_signature(
+ certificate_path,
+ ap.forms.DocMDPAccessPermissions.NO_CHANGES,
+ reason="Certified with no further changes allowed",
+ )
+ pdf_signature.certify(
+ 1,
+ "Certified with no further changes allowed",
+ "security@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ doc_mdp_signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilesignature/pdf-signing/_index.md b/fr/python-net/working-with-facades/pdffilesignature/pdf-signing/_index.md
new file mode 100644
index 0000000000..8944c1fadb
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/pdf-signing/_index.md
@@ -0,0 +1,182 @@
+---
+title: Signer des documents PDF
+type: docs
+weight: 10
+url: /fr/python-net/pdf-signing/
+description: Apprenez comment signer des documents PDF en Python en utilisant PdfFileSignature avec des signatures numériques basées sur certificat, nommées et visibles.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Signer des documents PDF avec des signatures numériques en Python
+Abstract: Cet article montre comment signer des documents PDF avec Aspose.PDF for Python via .NET en utilisant la façade PdfFileSignature. Il couvre la configuration du certificat, la signature avec des paramètres de base, la signature avec un objet PKCS7, l'attribution d'un nom de signature et l'application d'une apparence de signature visible.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade pour appliquer des signatures numériques à des documents PDF existants. En utilisant un fichier de certificat, vous pouvez signer un document par programmation, placer la signature sur une page, attribuer des métadonnées de signature et personnaliser la façon dont la signature est affichée.
+
+Cet article présente plusieurs flux de travail de signature courants :
+
+1. Créer et lier un `PdfFileSignature` objet au PDF d'entrée.
+1. Configurez le certificat de signature.
+1. Appliquez une signature numérique à la page cible.
+1. Attribuez éventuellement un nom de signature et une apparence visible.
+1. Enregistrez le PDF signé.
+
+## Préparer des aides de signature réutilisables
+
+Avant d'appliquer une signature numérique à un PDF, il est utile de mettre en place un petit groupe de fonctions d'aide réutilisables. Ces aides initialisent le gestionnaire de signature, définissent la zone de signature visible, configurent le certificat et créent des objets de signature PKCS#7 réutilisables afin que les exemples de signature ci-dessous restent autonomes et plus faciles à suivre.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+
+
+DEFAULT_CERTIFICATE_PASSWORD = "Aspose2021"
+DEFAULT_SIGNATURE_NAME = "Signature1"
+
+
+def create_pdf_file_signature(infile):
+ pdf_signature = pdf_facades.PdfFileSignature()
+ pdf_signature.bind_pdf(infile)
+ return pdf_signature
+
+
+def create_signature_rectangle():
+ return apd.Rectangle(10, 10, 200, 60)
+
+
+def configure_signature_certificate(
+ pdf_signature, certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ pdf_signature.set_certificate(certificate_path, certificate_password)
+
+
+def create_pkcs7_signature(
+ certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ signature = ap.forms.PKCS7(certificate_path, certificate_password)
+ signature.reason = "Document approval"
+ signature.contact_info = "qa@example.com"
+ signature.location = "New York, USA"
+ signature.authority = "Aspose.PDF Example"
+ return signature
+
+
+def create_custom_signature_appearance():
+ appearance = ap.forms.SignatureCustomAppearance()
+ appearance.font_family_name = "Arial"
+ appearance.font_size = 10
+ appearance.show_contact_info = True
+ appearance.show_location = True
+ appearance.show_reason = True
+ return appearance
+```
+
+## Signer un PDF avec des paramètres de certificat de base
+
+Cette approche configure le certificat directement sur le `PdfFileSignature` objet. Il est utile lorsque vous souhaitez un flux de signature simple avec des métadonnées de signature standard et aucune gestion séparée des objets de signature.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def sign_pdf_with_basic_parameters(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ configure_signature_certificate(pdf_signature, certificate_path)
+ pdf_signature.sign(
+ 1,
+ "Document approval",
+ "qa@example.com",
+ "New York, USA",
+ False,
+ create_signature_rectangle(),
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Signer un PDF avec un objet PKCS7
+
+Utilisez un `PKCS7` objet lorsque vous devez préparer la signature d'abord, puis la transmettre à l'appel de signature. Ce modèle vous donne plus de contrôle sur les paramètres de signature et constitue une bonne base pour des flux de travail plus avancés.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def sign_pdf_with_certificate_object(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature = create_pkcs7_signature(certificate_path)
+ pdf_signature.sign(1, False, create_signature_rectangle(), signature)
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Signer un PDF avec une signature nommée
+
+Si votre flux de travail de document dépend d'un nom de champ de signature prédéfini, transmettez ce nom à `sign()`. Cela facilite la référence à la signature ultérieurement pour la validation, le traitement ou l'intégration à un flux de travail d'approbation.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def sign_pdf_with_named_signature(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature = create_pkcs7_signature(certificate_path)
+ signature.reason = "Approved by signing workflow"
+ pdf_signature.sign(
+ 1,
+ DEFAULT_SIGNATURE_NAME,
+ "Approved by signing workflow",
+ "qa@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Appliquer une signature visible
+
+Vous pouvez rendre la signature visible sur la page PDF en assignant une apparence personnalisée à la `PKCS7` objet. Ceci est utile lorsque le document de sortie doit afficher les détails d'approbation tels que la raison, le lieu et les coordonnées aux utilisateurs finaux.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def apply_visible_signature(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature = create_pkcs7_signature(certificate_path)
+ signature.reason = "Visible approval signature"
+ signature.custom_appearance = create_custom_signature_appearance()
+ pdf_signature.sign(
+ 1,
+ "Visible approval signature",
+ "qa@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilesignature/revision-permissions/_index.md b/fr/python-net/working-with-facades/pdffilesignature/revision-permissions/_index.md
new file mode 100644
index 0000000000..a367692eb7
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/revision-permissions/_index.md
@@ -0,0 +1,81 @@
+---
+title: Révision et autorisations
+type: docs
+weight: 40
+url: /fr/python-net/revision-permissions/
+description: Apprenez à inspecter les révisions de signature, les révisions de document et les autorisations de certification dans les fichiers PDF en utilisant PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Lire les données de révision de signature PDF et les autorisations d'accès en Python
+Abstract: Cet article explique comment inspecter les informations de révision et d'autorisation dans les fichiers PDF signés ou certifiés avec Aspose.PDF for Python via .NET. Il montre comment obtenir le numéro de révision d'une signature, compter le nombre total de révisions du document et lire les autorisations d'accès d'un PDF certifié.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade pour travailler avec des documents PDF signés et certifiés. En plus d’ajouter des signatures, vous pouvez également inspecter les métadonnées de signature afin de comprendre combien de révisions un document contient et quels changements sont autorisés après la certification.
+
+Cet exemple démontre trois tâches d’inspection courantes :
+
+1. Obtenez le numéro de révision d’une signature existante.
+1. Obtenez le nombre total de révisions dans un document signé.
+1. Lire les autorisations d'accès d'un PDF certifié.
+
+## Obtenir le numéro de révision d'une signature
+
+Utilisez cette approche lorsqu'un PDF contient déjà une ou plusieurs signatures et que vous devez identifier la révision associée à une signature spécifique. L'exemple résout le premier nom de signature disponible, puis appelle `get_revision()`.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_revision(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_revision = pdf_signature.get_revision(sign_name)
+ print(f"Signature Revision for '{sign_name}': {signature_revision}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenir le nombre total de révisions du document
+
+Utiliser `get_total_revision()` lorsque vous avez besoin de savoir combien de révisions sont stockées dans le PDF signé. Cela est utile pour vérifier si le document a subi plusieurs mises à jour après l'application de la signature d'origine.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_total_document_revisions(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ total_revisions = pdf_signature.get_total_revision()
+ print(f"Total Document Revisions: {total_revisions}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenir les autorisations d'accès d'un PDF certifié
+
+Les documents certifiés peuvent définir quels changements sont autorisés après la certification. Utilisez `get_access_permissions()` pour inspecter ce niveau d'autorisation et déterminer si le document autorise aucune modification, le remplissage de formulaires ou d'autres modifications contrôlées.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_access_permissions(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ access_permissions = pdf_signature.get_access_permissions()
+ print(f"Access Permissions: {access_permissions}")
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/fr/python-net/working-with-facades/pdffilesignature/signature-extraction/_index.md b/fr/python-net/working-with-facades/pdffilesignature/signature-extraction/_index.md
new file mode 100644
index 0000000000..f99a6c543f
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/signature-extraction/_index.md
@@ -0,0 +1,62 @@
+---
+title: Extraction de signature
+type: docs
+weight: 50
+url: /fr/python-net/signature-extraction/
+description: Apprenez comment extraire une image de signature et le certificat de signature d'un PDF signé à l'aide de PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extraire l'image de signature et le certificat d'un PDF en Python
+Abstract: Cet article explique comment extraire les données liées à la signature des documents PDF signés avec Aspose.PDF for Python via .NET. Il montre comment lire la première signature disponible, exporter son image et enregistrer le flux du certificat associé dans un fichier de sortie.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade pour inspecter et extraire des données à partir de documents PDF signés. Après qu'un PDF a été signé, vous pouvez l'utiliser pour exporter les ressources de signature telles que l'image visuelle de la signature et le certificat associé à la signature.
+
+Cet exemple illustre deux tâches d'extraction courantes:
+
+1. Extraire l'image visuelle associée à une signature.
+1. Extraire le certificat de signature d'un PDF signé.
+
+## Extraire une image de signature
+
+Utilisez cette méthode lorsque le PDF contient une signature visible et que vous souhaitez exporter ses données d'image. L'exemple ouvre le document signé, récupère le premier nom de signature disponible, extrait le flux d'image et l'écrit dans un fichier.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def extract_signature_image(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_image = pdf_signature.extract_image(sign_name)
+ write_stream_data(signature_image, outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Extraire un certificat de signature
+
+Utiliser `extract_certificate()` lorsque vous avez besoin des données du certificat jointes à une signature. Ceci est utile pour l'inspection, les flux de travail de validation ou le stockage du certificat du signataire séparément du document PDF.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def extract_signature_certificate(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_certificate = pdf_signature.extract_certificate(sign_name)
+ write_stream_data(signature_certificate, outfile)
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/fr/python-net/working-with-facades/pdffilesignature/signature-information/_index.md b/fr/python-net/working-with-facades/pdffilesignature/signature-information/_index.md
new file mode 100644
index 0000000000..7195b22b10
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/signature-information/_index.md
@@ -0,0 +1,111 @@
+---
+title: Informations sur la signature
+type: docs
+weight: 60
+url: /fr/python-net/signature-information/
+description: Apprenez comment lire les noms de signature, les détails du signataire, les horodatages et les métadonnées de signature à partir de fichiers PDF signés en utilisant PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Lire les détails de la signature des documents PDF en Python
+Abstract: Cet article explique comment inspecter les métadonnées de signature dans les documents PDF signés avec Aspose.PDF for Python via .NET. Il montre comment lister les noms de signature, lire les détails du signataire, obtenir la date et l'heure de la signature, et extraire la raison et le lieu de la signature.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade d'inspection des signatures numériques dans les documents PDF. Après qu'un document a été signé, vous pouvez l'utiliser pour lire les noms des signatures et récupérer les métadonnées telles que le nom du signataire, les coordonnées, l'heure de signature, le motif et le lieu.
+
+Cet exemple montre quatre tâches courantes liées aux informations de signature :
+
+1. Lister tous les noms de signature dans un PDF signé.
+1. Lire les détails du signataire pour une signature sélectionnée.
+1. Obtenez la date et l'heure de la signature.
+1. Lisez le motif et le lieu de la signature.
+
+## Obtenez les noms des signatures
+
+Utilisez cette méthode lorsqu'un PDF peut contenir une ou plusieurs signatures et que vous souhaitez inspecter les entrées de signature disponibles. L'exemple ouvre le document et imprime la liste renvoyée par `get_sign_names()`.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_names(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature_names = list_signature_names(pdf_signature)
+ print(f"Signature Names: {signature_names}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenir les détails du signataire
+
+Une fois que vous connaissez le nom de la signature, vous pouvez récupérer les métadonnées spécifiques au signataire. Cet exemple lit le nom du signataire et les informations de contact pour la première signature disponible dans le document.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signer_details(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signer_name = pdf_signature.get_signer_name(sign_name)
+ contact_info = pdf_signature.get_contact_info(sign_name)
+ print(
+ f"Signer Details for '{sign_name}': "
+ f"signer_name={signer_name}, contact_info={contact_info}"
+ )
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenir la date et l'heure de la signature
+
+Utiliser `get_date_time()` pour déterminer quand une signature spécifique a été appliquée. Ceci est utile pour l'audit et pour afficher l'historique des signatures dans les flux de travail des documents.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_date_and_time(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_date = pdf_signature.get_date_time(sign_name)
+ print(f"Signature Date and Time for '{sign_name}': {signature_date}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenir la raison et l'emplacement de la signature
+
+Les signatures numériques peuvent également stocker des métadonnées descriptives telles que la raison et l'emplacement de la signature. Cet exemple récupère les deux valeurs pour la signature sélectionnée et les imprime ensemble.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_reason_and_location(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_reason = pdf_signature.get_reason(sign_name)
+ signature_location = pdf_signature.get_location(sign_name)
+ print(
+ f"Signature Reason and Location for '{sign_name}': "
+ f"reason={signature_reason}, location={signature_location}"
+ )
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/fr/python-net/working-with-facades/pdffilesignature/signature-integrity-checks/_index.md b/fr/python-net/working-with-facades/pdffilesignature/signature-integrity-checks/_index.md
new file mode 100644
index 0000000000..12e4963c3e
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/signature-integrity-checks/_index.md
@@ -0,0 +1,62 @@
+---
+title: Vérifications d'intégrité de la signature
+type: docs
+weight: 70
+url: /fr/python-net/signature-integrity-checks/
+description: Apprenez comment vérifier si une signature PDF couvre l'intégralité du document et valider l'intégrité du document signé en utilisant PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Valider la couverture et l'intégrité de la signature PDF en Python
+Abstract: Cet article explique comment inspecter l'intégrité des signatures numériques dans les documents PDF signés avec Aspose.PDF for Python via .NET. Il montre comment vérifier si une signature couvre l'intégralité du document et comment valider l'intégrité du contenu signé.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade de validation des documents PDF signés. Après qu'un fichier a été signé, vous pouvez l'utiliser pour vérifier si la signature s'applique au document complet et si le contenu signé est toujours valide.
+
+Cet exemple montre deux vérifications d'intégrité courantes :
+
+1. Vérifiez si une signature couvre l'ensemble du document.
+1. Validez l'intégrité du contenu PDF signé.
+
+## Vérifiez si une signature couvre l'ensemble du document
+
+Utiliser `covers_whole_document()` lorsque vous devez vérifier que la signature s'applique à l'intégralité du PDF et non seulement à une partie de son contenu. L'exemple lit le premier nom de signature disponible et vérifie sa portée.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def check_signature_coverage(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ covers_document = pdf_signature.covers_whole_document(sign_name)
+ print(f"Signature '{sign_name}' covers the whole document: {covers_document}")
+ finally:
+ pdf_signature.close()
+```
+
+## Valider l'intégrité du document
+
+Utiliser `verify_signed()` pour confirmer que le contenu du document signé n'a pas été altéré après l'application de la signature. Cette méthode aide à vérifier si le document reste valable pour la signature sélectionnée.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def validate_document_integrity(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ is_valid = pdf_signature.verify_signed(sign_name)
+ print(f"Document integrity for '{sign_name}' is valid: {is_valid}")
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/fr/python-net/working-with-facades/pdffilesignature/signature-management/_index.md b/fr/python-net/working-with-facades/pdffilesignature/signature-management/_index.md
new file mode 100644
index 0000000000..f9be28189e
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/signature-management/_index.md
@@ -0,0 +1,61 @@
+---
+title: Gestion des signatures
+type: docs
+weight: 80
+url: /fr/python-net/signature-management/
+description: Apprenez à supprimer les signatures numériques des documents PDF et, si vous le souhaitez, à nettoyer les champs de signature à l’aide de PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer les signatures PDF et nettoyer les champs de signature en Python
+Abstract: Cet article explique comment gérer les signatures numériques existantes dans les documents PDF avec Aspose.PDF for Python via .NET. Il montre comment supprimer une signature d’un PDF et comment supprimer une signature ainsi que son champ de signature associé.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) facade pour travailler avec les signatures numériques existantes dans les documents PDF. En plus de lire et de valider les signatures, vous pouvez également les supprimer lorsqu’un flux de travail nécessite la mise à jour du contenu signé ou l’effacement du champ de signature.
+
+Cet exemple illustre deux tâches courantes de gestion des signatures :
+
+1. Supprimer une signature d'un document PDF.
+1. Supprimer une signature et nettoyer le champ de signature associé.
+
+## Supprimer une signature d'un PDF
+
+Utiliser `remove_signature()` Lorsque vous souhaitez supprimer la signature sélectionnée du document tout en conservant la structure du champ de signature sous-jacente. L'exemple ouvre le PDF signé, résout le nom de la signature, la supprime et enregistre le fichier de sortie mis à jour.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def remove_signature_from_pdf(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ pdf_signature.remove_signature(sign_name)
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Supprimer une signature et nettoyer le champ
+
+Utilisez la surcharge avec le supplémentaire `True` indiquez lorsque vous souhaitez supprimer la signature et également nettoyer le champ de signature associé. Cela est utile lorsque le champ ne doit pas rester dans le document après la suppression de la signature.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def remove_signature_with_field_cleanup(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ pdf_signature.remove_signature(sign_name, True)
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilesignature/signature-verification/_index.md b/fr/python-net/working-with-facades/pdffilesignature/signature-verification/_index.md
new file mode 100644
index 0000000000..ec1db9a60b
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/signature-verification/_index.md
@@ -0,0 +1,60 @@
+---
+title: Vérification de la signature
+type: docs
+weight: 90
+url: /fr/python-net/signature-verification/
+description: Apprenez comment vérifier les signatures numériques et vérifier si un PDF contient des signatures en utilisant PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Vérifier les signatures PDF en Python
+Abstract: Cet article explique comment vérifier les signatures numériques dans les documents PDF avec Aspose.PDF for Python via .NET. Il montre comment valider une signature existante et comment vérifier si un PDF contient des signatures.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade pour la validation de documents PDF signés. Après qu’un PDF a été signé, vous pouvez l’utiliser pour confirmer qu’une signature est valide et détecter si le document contient des entrées de signature.
+
+Cet exemple démontre deux tâches de vérification courantes :
+
+1. Vérifiez qu’une signature PDF existante est valide.
+1. Vérifiez si un PDF contient des signatures.
+
+## Vérifier une signature PDF
+
+Utiliser `verify_signature()` lorsque vous devez valider une signature spécifique dans le document. L'exemple résout le premier nom de signature disponible et vérifie si cette signature est valide.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def verify_pdf_signature(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ is_valid = pdf_signature.verify_signature(sign_name)
+ print(f"Signature '{sign_name}' is valid: {is_valid}")
+ finally:
+ pdf_signature.close()
+```
+
+## Vérifier si un PDF contient des signatures
+
+Utiliser `contains_signature()` Lorsque vous avez simplement besoin de savoir si le PDF contient des signatures du tout. Ceci est utile comme vérification rapide avant d'exécuter une logique de vérification ou d'extraction plus détaillée.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def check_if_pdf_contains_signatures(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ contains_signatures = pdf_signature.contains_signature()
+ print(f"PDF contains signatures: {contains_signatures}")
+ finally:
+ pdf_signature.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilesignature/usage-rights-management/_index.md b/fr/python-net/working-with-facades/pdffilesignature/usage-rights-management/_index.md
new file mode 100644
index 0000000000..0b380ed795
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilesignature/usage-rights-management/_index.md
@@ -0,0 +1,62 @@
+---
+title: Gestion des droits d\'utilisation
+type: docs
+weight: 100
+url: /fr/python-net/usage-rights-management/
+description: Apprenez comment détecter et supprimer les droits d\'utilisation des documents PDF à l\'aide de PdfFileSignature en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Supprimer les droits d\'utilisation PDF en Python
+Abstract: Cet article explique comment inspecter et supprimer les droits d\'utilisation des documents PDF avec Aspose.PDF for Python via .NET. Il montre comment vérifier si un PDF contient des droits d\'utilisation et comment enregistrer une nouvelle version du document après la suppression de ces droits.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) façade pour travailler avec des PDF signés et les paramètres de droits d\'utilisation associés. Dans certains flux de travail, il peut être nécessaire d\'inspecter si un document contient des droits d\'utilisation et de les supprimer avant d\'enregistrer une version mise à jour du fichier.
+
+Cet exemple illustre une tâche courante de gestion des droits d\'utilisation :
+
+1. Vérifiez si un PDF contient des droits d'utilisation.
+1. Supprimez les droits d'utilisation du document.
+1. Enregistrez le fichier PDF mis à jour.
+
+## Vérifiez si le PDF contient des droits d'utilisation
+
+Avant de supprimer les droits d'utilisation, l'exemple vérifie l'état actuel du document en appelant `contains_usage_rights()`. Cela vous permet de confirmer si les droits d'utilisation sont présents avant d'apporter des modifications.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def check_usage_rights(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ had_usage_rights = pdf_signature.contains_usage_rights()
+ print(f"PDF contains usage rights: {had_usage_rights}")
+ finally:
+ pdf_signature.close()
+```
+
+## Supprimer les droits d'utilisation du PDF
+
+Utiliser `remove_usage_rights()` lorsque le document ne doit plus conserver ses paramètres de droits d’utilisation existants. L’exemple vérifie l’état initial, supprime les droits et enregistre le PDF mis à jour dans un nouveau fichier.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def remove_usage_rights(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ had_usage_rights = pdf_signature.contains_usage_rights()
+ print(f"PDF contains usage rights before removal: {had_usage_rights}")
+ pdf_signature.remove_usage_rights()
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilestamp/_index.md b/fr/python-net/working-with-facades/pdffilestamp/_index.md
new file mode 100644
index 0000000000..d1bc10afd8
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilestamp/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe PdfFileStamp
+type: docs
+weight: 155
+url: /fr/python-net/pdffilestamp-class/
+description: Apprenez comment utiliser la classe PdfFileStamp dans Aspose.PDF for Python via .NET pour ajouter des en-têtes, des pieds de page, des numéros de page et des tampons aux documents PDF.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ajoutez des en-têtes, des pieds de page, des numéros de page et des tampons à un PDF en Python avec PdfFileStamp
+Abstract: Cette section explique comment utiliser la façade PdfFileStamp dans Aspose.PDF for Python via .NET pour ajouter du contenu répété aux documents PDF. Apprenez comment placer des en-têtes, des pieds de page, des numéros de page et des tampons sur les pages PDF de façon programmée dans des applications Python.
+---
+
+Le `PdfFileStamp` La classe dans Aspose.PDF Facades est conçue pour ajouter du contenu visuel répété aux pages PDF. Elle est utile lorsque vous devez appliquer des en-têtes, pieds de page, numéros de page ou tampons sur l’ensemble d’un document sans éditer manuellement chaque page.
+
+## Ce que vous pouvez faire avec PdfFileStamp
+
+Utilisez les articles de cette section pour explorer les principales tâches d'estampillage prises en charge par le `PdfFileStamp` façade:
+
+- [Ajoutez des pieds de page aux pages PDF avec PdfFileStamp](/pdf/fr/python-net/add-footer/)
+- [Ajoutez des en-têtes aux pages PDF avec PdfFileStamp](/pdf/fr/python-net/add-header/)
+- [Ajoutez des numéros de page aux documents PDF avec PdfFileStamp](/pdf/fr/python-net/page-number/)
+- [Ajoutez des tampons aux pages PDF avec PdfFileStamp](/pdf/fr/python-net/add-stamp/)
diff --git a/fr/python-net/working-with-facades/pdffilestamp/add-footer/_index.md b/fr/python-net/working-with-facades/pdffilestamp/add-footer/_index.md
new file mode 100644
index 0000000000..cd6a592080
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilestamp/add-footer/_index.md
@@ -0,0 +1,84 @@
+---
+title: Ajouter un pied de page au PDF
+type: docs
+weight: 10
+url: /fr/python-net/add-footer/
+description: Apprenez comment ajouter des pieds de page texte et image aux pages PDF en utilisant PdfFileStamp en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Ajouter des pieds de page texte et image au PDF en Python
+Abstract: Cet article explique comment ajouter du contenu de pied de page aux documents PDF avec Aspose.PDF for Python via .NET en utilisant la façade PdfFileStamp. Il montre comment ajouter un pied de page texte, placer un pied de page image et appliquer des marges de pied de page personnalisées avant d'enregistrer le PDF mis à jour.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) façade pour ajouter du contenu répété aux pages PDF. Vous pouvez l'utiliser pour placer du texte de pied de page ou des images au bas de chaque page et ajuster les marges du pied de page pour contrôler le positionnement.
+
+## Ajouter un texte de pied de page
+
+Utiliser `add_footer()` avec un `FormattedText` objet lorsque vous voulez placer le même texte de pied de page sur chaque page du PDF. Le deuxième argument définit la marge inférieure utilisée pour le placement du pied de page.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_text_footer(infile: str, outfile: str) -> None:
+ """Add a text footer with a bottom margin."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ text = pdf_facades.FormattedText("Sample Footer")
+ pdf_stamper.add_footer(text, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter un pied de page d'image
+
+Utiliser `add_footer()` avec un flux d'image lorsque le pied de page doit afficher un logo ou une autre image au lieu du texte. L'exemple ouvre le fichier image en tant que flux binaire et le place en bas de chaque page.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_image_footer(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image footer with a bottom margin."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_footer(image_file, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter un pied de page avec des marges personnalisées
+
+Utilisez la surcharge avec trois valeurs de marge lorsque vous avez besoin de plus de contrôle sur le positionnement du pied de page. Dans cet exemple, le pied de page est ajouté avec des marges personnalisées en bas, à gauche et à droite.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_footer_with_margins(infile: str, outfile: str) -> None:
+ """Add a text footer with bottom, left, and right margins."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ text = pdf_facades.FormattedText("This footer has margins on all sides.")
+ pdf_stamper.add_footer(text, 20, 20, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilestamp/add-header/_index.md b/fr/python-net/working-with-facades/pdffilestamp/add-header/_index.md
new file mode 100644
index 0000000000..13fcabf4d8
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilestamp/add-header/_index.md
@@ -0,0 +1,97 @@
+---
+title: Ajouter un en-tête au PDF
+type: docs
+weight: 20
+url: /fr/python-net/add-header/
+description: Découvrez comment ajouter des en-têtes texte et image aux pages PDF en utilisant PdfFileStamp en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Ajouter des en-têtes texte et image au PDF en Python
+Abstract: Cet article explique comment ajouter du contenu d'en-tête aux documents PDF avec Aspose.PDF for Python via .NET en utilisant la façade PdfFileStamp. Il montre comment ajouter un en-tête texte, placer un en-tête image et appliquer des marges d'en-tête personnalisées avant d'enregistrer le PDF mis à jour.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) façade pour ajouter du contenu répété aux pages PDF. Vous pouvez l'utiliser pour placer du texte d'en‑tête ou des images en haut de chaque page et ajuster les marges d'en‑tête pour contrôler le placement.
+
+## Ajouter un en‑tête texte
+
+Utiliser `add_header()` avec un `FormattedText` objet lorsque vous souhaitez placer le même texte d'en-tête sur chaque page du PDF. Le deuxième argument définit la marge supérieure de l'en-tête.
+
+```python
+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()
+```
+
+## Ajouter un en‑tête d'image
+
+Utiliser `add_header()` avec un fichier d'image ou un flux d'image lorsque l'en-tête doit afficher un logo ou un autre graphique. Cela est utile pour les mises en page de documents de marque.
+
+```python
+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()
+```
+
+## Ajouter un en-tête avec des marges personnalisées
+
+Utilisez la surcharge avec trois valeurs de marge lorsque vous avez besoin de plus de contrôle sur le placement de l'en-tête. Dans cet exemple, l'en-tête est ajouté avec les marges supérieures, gauche et droite personnalisées.
+
+```python
+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()
+```
diff --git a/fr/python-net/working-with-facades/pdffilestamp/add-page-number/_index.md b/fr/python-net/working-with-facades/pdffilestamp/add-page-number/_index.md
new file mode 100644
index 0000000000..52a0cacd7d
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilestamp/add-page-number/_index.md
@@ -0,0 +1,122 @@
+---
+title: Ajouter le numéro de page au PDF
+type: docs
+weight: 30
+url: /fr/python-net/page-number/
+description: Apprenez comment ajouter des numéros de page aux documents PDF en utilisant PdfFileStamp en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Ajouter des numéros de page au PDF en Python
+Abstract: Cet article explique comment ajouter des numéros de page aux documents PDF avec Aspose.PDF for Python via .NET en utilisant la façade PdfFileStamp. Il montre comment ajouter des numéros de page avec le placement par défaut, les positionner à des coordonnées personnalisées et contrôler l’alignement et les marges.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) façade pour ajouter du contenu répété aux pages PDF. Vous pouvez l'utiliser pour insérer des numéros de page avec un placement par défaut, les positionner à des coordonnées spécifiques, ou contrôler leur alignement et leurs marges.
+
+## Ajouter des numéros de page avec le placement par défaut
+
+Utiliser `add_page_number()` sans arguments de position supplémentaires lorsque vous souhaitez que les numéros de page soient ajoutés à l'emplacement par défaut. C'est la façon la plus simple de numéroter chaque page du document.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_default(infile: str, outfile: str) -> None:
+ """Add centered page numbers to the bottom of each page."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_page_number("Page #")
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter des numéros de page à des coordonnées personnalisées
+
+Utilisez la surcharge basée sur les coordonnées lorsque vous avez besoin que les numéros de page apparaissent à une position X et Y spécifiques sur chaque page. Cette approche est utile lorsque la mise en page du document nécessite un placement personnalisé.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_at_coordinates(infile: str, outfile: str) -> None:
+ """Add page numbers at explicit X/Y coordinates."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_page_number("Page #", 300, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter des numéros de page avec alignement et marges
+
+Utilisez la surcharge avec les arguments de position et de marge lorsque vous avez besoin de plus de contrôle sur l'emplacement des numéros de page. Dans cet exemple, les numéros sont alignés dans la zone supérieure droite de la page avec des marges explicites.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_with_position_and_margins(infile: str, outfile: str) -> None:
+ """Add page numbers using a predefined position and page margins."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_page_number(
+ "Page #",
+ pdf_facades.PdfFileStamp.POS_BOTTOM_RIGHT,
+ 10,
+ 10,
+ 10,
+ 10,
+ )
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter des numéros de page au style romain
+
+La fonction 'add_page_numbers_with_roman_style' montre comment améliorer un document PDF en ajoutant des numéros de page utilisant des chiffres romains majuscules. Elle exploite la classe PdfFileStamp d'Aspose.PDF pour appliquer une numérotation cohérente sur toutes les pages.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_with_roman_style(infile: str, outfile: str) -> None:
+ """Add page numbers with a custom start value and Roman numbering."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.numbering_style = ap.NumberingStyle.NUMERALS_ROMAN_UPPERCASE
+ pdf_stamper.starting_number = 42
+ pdf_stamper.add_page_number("Page #", pdf_facades.PdfFileStamp.POS_UPPER_RIGHT)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
diff --git a/fr/python-net/working-with-facades/pdffilestamp/add-stamp/_index.md b/fr/python-net/working-with-facades/pdffilestamp/add-stamp/_index.md
new file mode 100644
index 0000000000..024b884811
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdffilestamp/add-stamp/_index.md
@@ -0,0 +1,46 @@
+---
+title: Ajouter un tampon au PDF
+type: docs
+weight: 40
+url: /fr/python-net/add-stamp/
+description: Apprenez comment ajouter un tampon aux pages PDF en utilisant PdfFileStamp en Python.
+lastmod: "2026-05-22"
+TechArticle: true
+AlternativeHeadline: Ajouter des tampons texte au PDF en Python
+Abstract: Cet article explique comment ajouter du contenu de tampon aux documents PDF avec Aspose.PDF for Python via .NET en utilisant la façade PdfFileStamp. Il montre comment créer un tampon, le positionner sur la page, contrôler la rotation et l'opacité, et enregistrer le PDF mis à jour.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) façade pour ajouter du contenu récurrent aux pages PDF. En plus des en-têtes, pieds de page et numéros de page, vous pouvez l'utiliser pour placer des tampons basés sur du texte sur chaque document.
+
+## Ajouter le tampon à un PDF
+
+Après la configuration du tampon, liez le PDF d'entrée à `PdfFileStamp`, ajouter le tampon, et enregistrer le fichier de sortie. Cela applique le tampon configuré sur l'ensemble du document.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf.facades as pdf_facades
+
+CURRENT_DIR = path.dirname(__file__)
+EXAMPLES_DIR = path.abspath(path.join(CURRENT_DIR, "..", ".."))
+if EXAMPLES_DIR not in sys.path:
+ sys.path.insert(0, EXAMPLES_DIR)
+
+from config import initialize_data_dir, set_license
+
+
+def add_stamp_to_pdf(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image stamp to a PDF file."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
diff --git a/fr/python-net/working-with-facades/pdfviewer/_index.md b/fr/python-net/working-with-facades/pdfviewer/_index.md
new file mode 100644
index 0000000000..581ea495d3
--- /dev/null
+++ b/fr/python-net/working-with-facades/pdfviewer/_index.md
@@ -0,0 +1,115 @@
+---
+title: Classe PdfViewer
+type: docs
+weight: 135
+url: /fr/python-net/pdfviewer-class/
+description: Apprenez à utiliser la classe PdfViewer dans Aspose.PDF for Python via .NET pour décoder toutes les pages PDF, décoder une page spécifique et inspecter les métadonnées PDF liées au visualiseur.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Décoder les pages PDF et inspecter les données du visualiseur en Python avec PdfViewer
+Abstract: Cet article explique comment utiliser la façade PdfViewer dans Aspose.PDF for Python via .NET pour le décodage de pages et les tâches d'inspection liées au visualiseur. Apprenez à décoder toutes les pages PDF, à rendre une page spécifique et à inspecter des propriétés telles que le nombre de pages, le type de coordonnées et la résolution.
+---
+
+Aspose.PDF for Python via .NET fournit le [PdfViewer](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfviewer/) façade pour travailler avec la visualisation de PDF et les scénarios de décodage de pages. Un cas d'utilisation courant consiste à convertir des pages PDF en objets image qui peuvent ensuite être enregistrés sur le disque.
+
+## Créer un assistant PdfViewer réutilisable
+
+Avant de décoder les pages ou de lire les propriétés liées au visualiseur, créez un petit assistant qui initialise et renvoie un `PdfViewer` instance. Cela rend les exemples ci-dessous autonomes et clarifie comment l'objet viewer est créé avant d'être lié à un document PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+
+def _create_viewer() -> pdf_facades.PdfViewer:
+ """Create a PdfViewer configured for decoding examples."""
+ viewer = pdf_facades.PdfViewer()
+ viewer.coordinate_type = ap.PageCoordinateType.MEDIA_BOX
+ viewer.resolution = 150
+ viewer.scale_factor = 1.0
+ viewer.show_hidden_areas = False
+ return viewer
+```
+
+## Décoder toutes les pages du PDF
+
+Utiliser `decode_all_pages()` lorsque vous souhaitez convertir chaque page du PDF en une image distincte. Les images de page renvoyées peuvent ensuite être enregistrées une par une dans un répertoire de sortie.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def decode_all_pages(infile: str, output_dir: str) -> None:
+ """Decode all pages of a PDF document into image files."""
+ viewer = _create_viewer()
+ try:
+ viewer.open_pdf_file(infile)
+ decoded_pages = viewer.decode_all_pages()
+
+ for index, page_image in enumerate(decoded_pages, start=1):
+ image_path = path.join(output_dir, f"decode_all_pages_{index}.png")
+ page_image.save(image_path)
+ finally:
+ viewer.close_pdf_file()
+```
+
+## Décoder une page PDF spécifique
+
+Utiliser `decode_page()` Lorsque vous avez besoin d'une seule page du document. Cela est utile lors de la génération d'aperçus, de miniatures ou d'exportations spécifiques à une page.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def decode_specific_page(infile: str, outfile: str, page_number: int = 1) -> None:
+ """Decode a specific PDF page into an image file."""
+ viewer = _create_viewer()
+ try:
+ viewer.bind_pdf(infile)
+ page_image = viewer.decode_page(page_number)
+ page_image.save(outfile)
+
+ finally:
+ viewer.close()
+```
+
+## Inspecter les métadonnées PDF
+
+Le `inspect_pdf_metadata` La fonction montre comment ouvrir un document PDF et récupérer les métadonnées de base liées au visualiseur en utilisant Aspose.PDF. Elle se concentre sur l'extraction d'informations qui décrivent comment le document est interprété et affiché plutôt que son contenu.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def inspect_pdf_metadata(infile: str) -> None:
+ """Open a PDF and print page-count related viewer metadata."""
+ viewer = _create_viewer()
+ try:
+ viewer.open_pdf_file(infile)
+ print(f"Page count: {viewer.page_count}")
+ print(f"Coordinate type: {viewer.coordinate_type}")
+ print(f"Resolution: {viewer.resolution}")
+ finally:
+ viewer.close_pdf_file()
+```
diff --git a/fr/python-net/working-with-facades/stamp/_index.md b/fr/python-net/working-with-facades/stamp/_index.md
new file mode 100644
index 0000000000..dcae7f9ed6
--- /dev/null
+++ b/fr/python-net/working-with-facades/stamp/_index.md
@@ -0,0 +1,228 @@
+---
+title: Classe Stamp
+type: docs
+weight: 150
+url: /fr/python-net/stamp-class/
+description: Apprenez comment travailler avec la classe Stamp pour ajouter des tampons image, PDF et basés sur du texte aux documents PDF en Python.
+lastmod: "2026-05-22"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+Aspose.PDF pour Python via .NET fournit le [Stamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/stamp/) classe pour placer du contenu visuel réutilisable sur les pages PDF. Un tampon peut être basé sur du texte, une image, ou même une page d'un autre PDF, et il peut être positionné, pivoté, stylisé et limité à des pages spécifiques.
+
+Cet article montre plusieurs flux de travail d’estampillage courants :
+
+1. Créer des ressources texte réutilisables pour les tampons basés sur du texte.
+1. Ajouter des tampons d'image et de page PDF.
+1. Ajouter des tampons de texte stylisés.
+1. Limiter un tampon aux pages sélectionnées.
+1. Configurer un tampon d'image d'arrière-plan.
+
+L'exemple utilise deux fonctions d'assistance : l'une crée du texte formaté pour les tampons basés sur du texte, et l'autre crée un `TextState` objet utilisé pour mettre en forme les tampons de texte.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def _create_text_logo(text: str) -> pdf_facades.FormattedText:
+ """Create formatted text for text stamp examples."""
+ return pdf_facades.FormattedText(
+ text,
+ drawing.Color.blue,
+ drawing.Color.light_gray,
+ pdf_facades.FontStyle.HELVETICA_BOLD,
+ pdf_facades.EncodingType.WINANSI,
+ True,
+ 14,
+ )
+
+
+def _create_text_state() -> ap.text.TextState:
+ """Create a text state used to style text stamps."""
+ text_state = ap.text.TextState()
+ text_state.foreground_color = ap.Color.dark_blue
+ text_state.font_size = 16
+ text_state.font_style = ap.text.FontStyles.BOLD
+ return text_state
+```
+
+## Ajouter un tampon d'image
+
+Utiliser `bind_image()` lorsque le tampon doit afficher une image telle qu'un logo, un badge ou une icône. Après avoir lié l'image, vous pouvez définir l'ID du tampon et l'origine avant de l'ajouter au document.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_image_stamp(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image stamp to the PDF."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+ stamp.stamp_id = 1
+ stamp.set_origin(36, 520)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter une page PDF en tant que tampon
+
+Utiliser `bind_pdf()` lorsque vous souhaitez utiliser une page d'un autre fichier PDF comme contenu du tampon. Ceci est utile pour les superpositions telles que les approbations, les modèles ou les éléments visuels préconstruits stockés dans un document séparé.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_pdf_page_as_stamp(infile: str, stamp_pdf: str, outfile: str) -> None:
+ """Add the first page of another PDF as a stamp."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_pdf(stamp_pdf, 1)
+ stamp.page_number = 1
+ stamp.set_origin(36, 250)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter un tampon de texte avec un état de texte
+
+Utiliser `bind_logo()` avec `bind_text_state()` lorsque vous souhaitez créer un tampon texte avec une mise en forme de police personnalisée. Cette approche est utile pour les marques d'approbation, les étiquettes et les annotations spécifiques aux flux de travail.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_text_stamp_with_text_state(infile: str, outfile: str) -> None:
+ """Add a text stamp and style it with a TextState object."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_logo(_create_text_logo("Approved by signing workflow"))
+ stamp.bind_text_state(_create_text_state())
+ stamp.set_origin(36, 700)
+ stamp.rotation = 15.0
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter un tampon aux pages spécifiques
+
+Si le tampon ne doit pas apparaître sur chaque page, attribuez les numéros de pages cibles à `pages` propriété. Cet exemple ajoute un ImageStamp uniquement à la première page.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_stamp_to_specific_pages(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image stamp only to the selected pages."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+ stamp.pages = [1]
+ stamp.set_origin(400, 40)
+ stamp.set_image_size(120, 60)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Ajouter un tampon d'image d'arrière-plan
+
+Utilisez un tampon d'arrière-plan lorsque l'image doit apparaître derrière le contenu de la page. Vous pouvez également contrôler l'opacité du tampon, la rotation, la qualité, la taille et la position pour créer des effets de type filigrane.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_background_image_stamp(infile: str, image_file: str, outfile: str) -> None:
+ """Add a rotated background image stamp with opacity and quality settings."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+ stamp.is_background = True
+ stamp.opacity = 0.35
+ stamp.quality = 90
+ stamp.rotation = 45.0
+ stamp.set_image_size(160, 80)
+ stamp.set_origin(200, 300)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Sujets liés aux façades
+
+- [Travailler avec les façades PDF en Python](/pdf/fr/python-net/working-with-facades/)
+- [Ajoutez des en-têtes, des pieds de page et des tampons avec PdfFileStamp](/pdf/fr/python-net/pdffilestamp-class/)
+- [Ajouter un tampon de page aux fichiers PDF en Python](/pdf/fr/python-net/add-stamp/)
diff --git a/pt/python-net/_index.md b/pt/python-net/_index.md
index 87286c2e09..45484d35a7 100644
--- a/pt/python-net/_index.md
+++ b/pt/python-net/_index.md
@@ -1,49 +1,51 @@
---
title: Documentação
-linktitle: Aspose.PDF para Python via .NET
-second_title: Aspose.PDF para Python via .NET
+linktitle: Aspose.PDF for Python via .NET
+second_title: Aspose.PDF for Python via .NET
type: docs
weight: 40
url: /pt/python-net/
is_root: true
-lastmod: "2022-10-24"
-description: Aprenda a usar o Aspose.PDF Python via .NET para criar aplicações para processamento de documentos PDF em qualquer plataforma usando Python. Navegue por tutoriais, códigos de exemplo e mais.
+lastmod: "2026-05-18"
+description: Aprenda a usar Aspose.PDF Python via .NET para criar aplicações para processamento de documentos PDF em qualquer plataforma usando Python. Navegue por tutoriais, códigos de exemplo e muito mais.
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Guia de Documentação do Aspose.PDF for Python via .NET
+Abstract: O Aspose.PDF for Python via .NET é um componente versátil projetado para desenvolvedores criarem e manipularem programaticamente documentos PDF usando Python em conjunto com .NET. Esta ferramenta suporta uma ampla variedade de funcionalidades, incluindo a inserção de tabelas, gráficos, imagens, hyperlinks e fontes personalizadas, além da compressão de PDF. Também oferece recursos robustos de segurança para garantir a proteção dos documentos. Notavelmente, os desenvolvedores podem gerar documentos PDF por meio de uma API ou a partir de modelos XML. A documentação está organizada em vários capítulos que cobrem novos recursos, uma visão geral, guias de início rápido, operações básicas e avançadas, conversão de documentos e técnicas de análise. Recursos adicionais incluem destaques de recursos, notas de versão, páginas de produto, links de download, instruções de instalação, um guia de referência da API e acesso a fóruns de suporte e helpdesks.
---
-
+
-
Bem-vindo ao Aspose.PDF para Python via .NET
+## Bem-vindo ao Aspose.PDF for Python via .NET
{{% alert color="primary" %}}
-Aspose.PDF é um componente .NET construído para permitir que os desenvolvedores criem documentos PDF, sejam simples ou complexos, de forma programática e dinâmica.
- Aspose.PDF for Python via .NET permite aos desenvolvedores inserir tabelas, gráficos, imagens, hyperlinks, fontes personalizadas - e mais - em documentos PDF. Além disso, também é possível compactar documentos PDF. Aspose.PDF for Python via .NET fornece excelentes recursos de segurança para desenvolver documentos PDF seguros. E a característica mais distinta do Aspose.PDF for Python via .NET é que ele suporta a criação de documentos PDF tanto através de uma API quanto a partir de modelos XML.
+Aspose.PDF for Python via .NET permite que desenvolvedores criem documentos PDF, sejam eles simples ou complexos, de forma programática e instantânea. Aspose.PDF for Python via .NET permite que desenvolvedores insiram tabelas, gráficos, imagens, hiperlinks, fontes personalizadas - e mais - em documentos PDF. Além disso, também é possível compactar documentos PDF. Aspose.PDF for Python via .NET fornece excelentes recursos de segurança para desenvolver documentos PDF seguros. E o recurso mais distinto do Aspose.PDF for Python via .NET é que ele suporta a criação de documentos PDF tanto por meio de uma API quanto a partir de modelos XML.
{{% /alert %}}
-
Capítulos
+## Capítulos
-- [O que há de novo](/pdf/pt/python-net/whatsnew/)
+- [Novidades](/pdf/pt/python-net/whatsnew/)
- [Visão geral](/pdf/pt/python-net/overview/)
-- [Introdução](/pdf/pt/python-net/get-started/)
+- [Começar](/pdf/pt/python-net/get-started/)
- [Operações básicas](/pdf/pt/python-net/basic-operations/)
- [Convertendo documentos](/pdf/pt/python-net/converting/)
-- [Análise de documentos PDF](/pdf/pt/python-net/parsing/)
+- [Analisando documentos PDF](/pdf/pt/python-net/parsing/)
- [Operações avançadas](/pdf/pt/python-net/advanced-operations/)
-- [Vitrines](/pdf/pt/python-net/showcases/)
-- [Notas de lançamento](https://releases.aspose.com/pdf/pythonnet/release-notes/)
-
-
Recursos do Aspose.PDF para Python via .NET
-
-Os links a seguir são para alguns recursos úteis que você pode precisar para realizar suas tarefas.
-- [Aspose.PDF para Python via .NET Funcionalidades](/pdf/pt/python-net/key-features/)
-- [Notas de Lançamento do Aspose.PDF para Python via .NET](https://releases.aspose.com/pdf/pythonnet/release-notes/)
-- [Página do Produto Aspose.PDF para Python via .NET](https://products.aspose.com/pdf/python-net/)
-- [Baixar Aspose.PDF para Python via .NET](https://releases.aspose.com/pdf/pythonnet/)
-- [Instalar o Pacote NuGet do Aspose.PDF para Python via .NET](https://www.nuget.org/packages/Aspose.PDF/)
-- [Guia de Referência da API Aspose.PDF para Python via .NET](https://reference.aspose.com/pdf/net)!
-- [Fórum de Suporte Gratuito do Aspose.PDF para Python via .NET](https://forum.aspose.com/c/pdf/10)
-- [Helpdesk de Suporte Pago do Aspose.PDF para Python via .NET](https://helpdesk.aspose.com/)
\ No newline at end of file
+- [Notas de Lançamento](https://releases.aspose.com/pdf/pythonnet/release-notes/)
+
+
Recursos do Aspose.PDF for Python via .NET
+
+A seguir estão os links para alguns recursos úteis que você pode precisar para concluir suas tarefas.
+
+- [Aspose.PDF for Python via .NET Recursos](/pdf/pt/python-net/key-features/)
+- [Aspose.PDF for Python via .NET Notas de Lançamento](https://releases.aspose.com/pdf/pythonnet/release-notes/)
+- [Aspose.PDF for Python via .NET Página do Produto](https://products.aspose.com/pdf/python-net/)
+- [Baixar Aspose.PDF for Python via .NET](https://releases.aspose.com/pdf/pythonnet/)
+- [Instalar o Pacote NuGet Aspose.PDF for Python via .NET](https://www.nuget.org/packages/Aspose.PDF/)
+- [Guia de Referência da API Aspose.PDF for Python via .NET](https://reference.aspose.com/pdf/net)!
+- [Fórum de Suporte Gratuito Aspose.PDF for Python via .NET](https://forum.aspose.com/c/pdf/10)
+- [Helpdesk de Suporte Pago Aspose.PDF for Python via .NET](https://helpdesk.aspose.com/)
diff --git a/pt/python-net/advanced-operations/_index.md b/pt/python-net/advanced-operations/_index.md
index e7c6f3e081..b14bee4361 100644
--- a/pt/python-net/advanced-operations/_index.md
+++ b/pt/python-net/advanced-operations/_index.md
@@ -1,93 +1,35 @@
---
-title: Advanced operations
-linktitle: Advanced operations
+title: Operações avançadas
+linktitle: Operações avançadas
type: docs
weight: 90
url: /pt/python-net/advanced-operations/
-description: Aspose.PDF para Python via .NET pode realizar tarefas simples e fáceis e lidar com objetivos mais complexos. Verifique a próxima seção para usuários avançados e desenvolvedores.
-lastmod: "2023-04-17"
+description: Aspose.PDF for Python via .NET pode realizar tarefas simples e fáceis e lidar com objetivos mais complexos. Consulte a próxima seção para usuários avançados e desenvolvedores.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: A seção Operações Avançadas com Python
+Abstract: A seção Operações Avançadas fornece orientação abrangente sobre como manipular programaticamente arquivos PDF existentes, independentemente de sua origem, usando várias ferramentas e técnicas. Esta seção amplia as habilidades fundamentais discutidas em Operações Básicas ao explorar funcionalidades avançadas.
---
-
-
-**Advanced Operations** é uma seção sobre como lidar com arquivos PDF existentes programaticamente, sejam eles documentos criados com Aspose.PDF, conforme discutido em [Operações Básicas](/pdf/pt/python-net/basic-operations/), ou PDFs criados com Adobe Acrobat, Google Docs, Microsoft Office, Open Office ou qualquer outro produtor de PDF.
+**Operações Avançadas** é uma seção sobre como lidar com arquivos PDF existentes programaticamente, sejam eles documentos criados com Aspose.PDF conforme discutido em [Operações Básicas](/pdf/pt/python-net/basic-operations/), ou PDFs criados com Adobe Acrobat, Google Docs, Microsoft Office, Open Office ou qualquer outro produtor de PDF.
Você aprenderá diferentes maneiras de:
- [Trabalhando com Documentos](/pdf/pt/python-net/working-with-documents/) - comprimir, dividir e mesclar documentos e fazer outras operações com o documento inteiro.
-- [Trabalhando com Páginas](/pdf/pt/python-net/working-with-pages/) - adicionar, mover ou remover, cortar páginas, adicionar marcas d'água, carimbos, etc.
-- [Trabalhando com Imagens](/pdf/pt/python-net/working-with-images/) - adicionar, extrair ou remover imagens de documentos PDF.
-- [Anexos](/pdf/pt/python-net/attachments/) - você aprenderá como adicionar e excluir anexos de PDFs programaticamente com Python.
-- [Navegação e Interação](/pdf/pt/python-net/navigation-and-interaction/) - lidar com ações, marcadores, navegar entre páginas.
-- [Anotações](/pdf/pt/python-net/annotations/) - as anotações permitem que os usuários adicionem conteúdo personalizado nas páginas do PDF.
- Você pode adicionar, excluir e modificar a anotação nos documentos PDF.
+- [Trabalhando com Páginas](/pdf/pt/python-net/working-with-pages/) - adicionar, mover ou remover, recortar páginas, adicionar marcas d'água, carimbos, etc.
+- [Trabalhando com Imagens](/pdf/pt/python-net/working-with-images/) - adicione, extraia ou remova imagens de documentos PDF.
+- [Anexos](/pdf/pt/python-net/attachments/) - você aprenderá como adicionar e excluir o anexo de um PDF programaticamente com Python.
+- [Navegação e Interação](/pdf/pt/python-net/navigation-and-interaction/) - lidere com ações, marcadores, navegue pelas páginas.
+- [Anotações](/pdf/pt/python-net/annotations/) - as anotações permitem que os usuários adicionem conteúdo personalizado nas páginas de PDF. Você pode adicionar, excluir e modificar a anotação dos documentos PDF.
- [Trabalhando com Tabelas](/pdf/pt/python-net/working-with-tables/) - inserir, decorar tabela em PDF, extrair dados tabulares.
- [Trabalhando com Formulários](/pdf/pt/python-net/working-with-forms/) - lidar com documentos PDF interativos, adicionar campos de formulário, extrair dados.
-- [Trabalhando com Texto](/pdf/pt/python-net/working-with-text/) - adicionar, formatar, pesquisar e substituir texto em PDF.
\ No newline at end of file
+- [Trabalhando com Texto](/pdf/pt/python-net/working-with-text/) - adicionar, formatar, buscar e substituir texto em PDF.
+- [Comparar documentos PDF](/pdf/pt/python-net/compare-pdf-documents/) - possível comparar o conteúdo de documentos PDF.
+- [Metadados em PDFs](/pdf/pt/python-net/pdf-file-metadata/) - obter ou definir metadados em documentos, lidando com dados XMP.
+- [Trabalhando com Gráficos](/pdf/pt/python-net/working-with-graphs/) - manipular formas na página.
+- [Trabalhando com Operadores](/pdf/pt/python-net/working-with-operators/) - fazer operações de baixo nível em PDF.
+- [Artefatos](/pdf/pt/python-net/artifacts/) - lidar com marcas d'água e outros objetos especiais em PDF.
+- [Trabalhando com camadas de PDF](/python-net/work-with-pdf-layers/) - bloquear camadas, extrair elementos, achatar e mesclar camadas PDF.
diff --git a/pt/python-net/advanced-operations/accessibility-tagged-pdf/_index.md b/pt/python-net/advanced-operations/accessibility-tagged-pdf/_index.md
new file mode 100644
index 0000000000..26fb4a0427
--- /dev/null
+++ b/pt/python-net/advanced-operations/accessibility-tagged-pdf/_index.md
@@ -0,0 +1,27 @@
+---
+title: Acessibilidade e PDFs marcados em Python
+linktitle: Acessibilidade. PDF Marcado
+type: docs
+weight: 180
+url: /pt/python-net/accessibility-tagged-pdf/
+description: Aprenda como criar PDFs marcados acessíveis em Python com Aspose.PDF for Python via .NET, incluindo a estrutura PDF/UA, extração de conteúdo marcado, propriedades de estrutura e tabelas.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Um documento PDF marcado pode ser acessado de forma mais eficaz por pessoas com deficiência. Adicionar tags de acessibilidade a arquivos PDF ajuda leitores de tela e outras tecnologias assistivas a interpretar cabeçalhos, tabelas, hiperlinks, marcadores, texto alternativo e a ordem de leitura corretamente.
+
+## O que você pode fazer com PDFs marcados
+
+Use esta seção quando precisar criar ou inspecionar documentos PDF acessíveis que estejam em conformidade com os requisitos PDF/UA. Estes artigos cobrem os fluxos de trabalho principais de PDFs marcados para criar estrutura, ler conteúdo semântico, atualizar propriedades de estrutura e trabalhar com tabelas acessíveis.
+
+## Tópicos de Tagged PDF
+
+- [Criar Tagged PDF](/pdf/pt/python-net/create-tagged-pdf/)
+- [Extrair Conteúdo Marcado de Tagged PDFs](/pdf/pt/python-net/extract-tagged-content-from-tagged-pdfs/)
+- [Definindo Propriedades dos Structure Elements](/pdf/pt/python-net/setting-structure-elements-properties/)
+- [Trabalhando com Tabela em PDFs Marcados](/pdf/pt/python-net/working-with-table-in-tagged-pdfs/)
+
+Tagged PDFs são especialmente úteis quando você precisa de documentos comerciais acessíveis, relatórios em conformidade ou conteúdo estruturado semanticamente para reutilização a longo prazo. Se você está começando do zero, comece criando um tagged PDF, depois passe para inspeção de estrutura e atualizações de propriedades à medida que seu fluxo de trabalho se tornar mais avançado.
diff --git a/pt/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/_index.md b/pt/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/_index.md
new file mode 100644
index 0000000000..4249bd3627
--- /dev/null
+++ b/pt/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/_index.md
@@ -0,0 +1,519 @@
+---
+title: Criar Tagged PDF em Python
+linktitle: Criar Tagged PDF
+type: docs
+weight: 10
+url: /pt/python-net/create-tagged-pdf/
+description: Aprenda a criar documentos PDF marcados em Python com Aspose.PDF for Python via .NET, incluindo PDF/UA Structure Elements, Form acessíveis, páginas TOC e marcação automática.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Criar um Tagged PDF significa adicionar (ou criar) certos elementos ao documento que permitirão que o documento seja validado de acordo com os requisitos do PDF/UA. Esses elementos são frequentemente chamados de Structure Elements.
+
+## Criando Tagged PDF (Cenário Simples)
+
+Para criar elementos de estrutura em um Tagged PDF Document, Aspose.PDF oferece métodos para criar elementos de estrutura usando o [ITaggedContent](https://reference.aspose.com/pdf/python-net/aspose.pdf.tagged/itaggedcontent/) interface. Este exemplo cria um Tagged PDF — um PDF com estrutura semântica, tornando-o mais acessível e compatível com padrões como PDF/UA.
+O trecho de código a seguir mostra como criar um Tagged PDF que contém 2 elementos: cabeçalho e parágrafo.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_tagged_pdf_document_simple(outfile):
+
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for working with TaggedPdf
+ tagged_content = document.tagged_content
+ root_element = tagged_content.root_element
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+ main_header = tagged_content.create_header_element()
+ main_header.set_text("Main Header")
+ paragraph_element = tagged_content.create_paragraph_element()
+ paragraph_element.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
+ + "Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. "
+ + "Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet "
+ + "nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. "
+ + "Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat "
+ + "sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper "
+ + "pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus "
+ + "ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus, "
+ + "ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus."
+ )
+ root_element.append_child(main_header, True)
+ root_element.append_child(paragraph_element, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Criando Tagged PDF (Avançado)
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_tagged_pdf_document_adv(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for working with TaggedPdf
+ tagged_content = document.tagged_content
+ root_element = tagged_content.root_element
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create Header Level 1
+ header1 = tagged_content.create_header_element(1)
+ header1.set_text("Header Level 1")
+
+ # Create Paragraph with Quotes
+ paragraph_with_quotes = tagged_content.create_paragraph_element()
+ paragraph_with_quotes.structure_text_state.font = (
+ ap.text.FontRepository.find_font("Arial")
+ )
+ position_settings = ap.tagged.PositionSettings()
+ position_settings.margin = ap.MarginInfo(10, 5, 10, 5)
+ paragraph_with_quotes.adjust_position(position_settings)
+
+ # Create Span Element
+ span_element1 = tagged_content.create_span_element()
+ span_element1.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. "
+ "Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, "
+ "luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada "
+ "fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus "
+ "condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae "
+ "lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non "
+ "lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit."
+ )
+
+ # Create Quote Element
+ quote_element = tagged_content.create_quote_element()
+ quote_element.set_text(
+ "Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa."
+ )
+ quote_element.structure_text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
+
+ # Create Another Span Element
+ span_element2 = tagged_content.create_span_element()
+ span_element2.set_text(" Sed non consectetur elit.")
+
+ # Append Children to Paragraph
+ paragraph_with_quotes.append_child(span_element1, True)
+ paragraph_with_quotes.append_child(quote_element, True)
+ paragraph_with_quotes.append_child(span_element2, True)
+
+ # Append Header and Paragraph to Root Element
+ root_element.append_child(header1, True)
+ root_element.append_child(paragraph_with_quotes, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+Obteremos o seguinte documento após a criação:
+
+
+
+## Estilizando a Estrutura de Texto
+
+PDFs marcados são documentos estruturados que fornecem recursos de acessibilidade e significado semântico ao conteúdo.
+
+O exemplo cria um documento PDF com recursos de acessibilidade usando uma estrutura de conteúdo marcado. Ele demonstra como criar um elemento de parágrafo com estilo personalizado e metadados de documento adequados.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_style(outfile):
+
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ paragraph_element = tagged_content.create_paragraph_element()
+ tagged_content.root_element.append_child(paragraph_element, True)
+
+ paragraph_element.structure_text_state.font_size = 18.0
+ paragraph_element.structure_text_state.foreground_color = ap.Color.red
+ paragraph_element.structure_text_state.font_style = ap.text.FontStyles.ITALIC
+
+ paragraph_element.set_text("Red italic text.")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Ilustrando Structure Elements
+
+Os Tagged PDFs são essenciais para a conformidade de acessibilidade e fornecem conteúdo estruturado que pode ser interpretado adequadamente por leitores de tela e outras tecnologias assistivas. O trecho de código a seguir mostra como criar um documento Tagged PDF com uma imagem incorporada:
+
+1. Criar PDF marcado com imagem.
+1. Configurar documento.
+1. Criar e configurar figura.
+1. Definir posicionamento.
+1. Salvar documento.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def illustrate_structure_elements(imagefile, outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+ figure1 = tagged_content.create_figure_element()
+ tagged_content.root_element.append_child(figure1, True)
+ figure1.alternative_text = "Figure One"
+ figure1.title = "Image 1"
+ figure1.set_tag("Fig1")
+ figure1.set_image(imagefile, 300)
+ # Adjust position
+ position_settings = ap.tagged.PositionSettings()
+ margin_info = ap.MarginInfo()
+ margin_info.left = 50
+ margin_info.top = 20
+ position_settings.margin = margin_info
+ figure1.adjust_position(position_settings)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Validar Tagged PDF
+
+O Aspose.PDF for Python via .NET fornece a capacidade de validar um Documento Tagged PDF PDF/UA. O método 'validate_tagged_pdf' valida documentos PDF de acordo com o padrão PDF/UA-1, que faz parte da especificação ISO 14289 para documentos PDF acessíveis. Isso garante que os PDFs sejam acessíveis a usuários com deficiências e tecnologias assistivas.
+
+- Document Estrutura. Marcação semântica adequada e estrutura lógica.
+- Texto Alternativo. Texto alternativo para imagens e elementos não textuais.
+- Ordem de Leitura. Sequência lógica para leitores de tela.
+- Cor e Contraste. Razões de contraste suficientes.
+- Formulários. Campos de formulário e rótulos acessíveis.
+- Navegação. Marcadores adequados e estrutura de navegação.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def validate_tagged_pdf(infile, logfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ is_valid = document.validate(logfile, ap.PdfFormat.PDF_UA_1)
+ print(f"Is Valid: {is_valid}")
+```
+
+## Ajustar posição da Estrutura de Texto
+
+O trecho de código a seguir mostra como ajustar a posição da Estrutura de Texto no documento Tagged PDF:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def adjust_position(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create paragraph
+ paragraph = tagged_content.create_paragraph_element()
+ tagged_content.root_element.append_child(paragraph, True)
+ paragraph.set_text("Text.")
+
+ # Adjust position
+ position_settings = ap.tagged.PositionSettings()
+ margin_info = ap.MarginInfo()
+ margin_info.left = 300
+ margin_info.top = 20
+ margin_info.right = 0
+ margin_info.bottom = 0
+ position_settings.margin = margin_info
+ position_settings.horizontal_alignment = ap.HorizontalAlignment.NONE
+ position_settings.vertical_alignment = ap.VerticalAlignment.NONE
+ position_settings.is_first_paragraph_in_column = False
+ position_settings.is_kept_with_next = False
+ position_settings.is_in_new_page = False
+ position_settings.is_in_line_paragraph = False
+ paragraph.adjust_position(position_settings)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Converter PDF para PDF/UA-1 com Marcação Automática
+
+Este trecho de código explica como converter um PDF padrão em um arquivo compatível com PDF/UA-1 (Acessibilidade Universal) usando Aspose.PDF for Python via .NET.
+
+PDF/UA garante que os documentos sejam acessíveis a usuários com deficiências e compatíveis com tecnologias assistivas, como leitores de tela. Durante a conversão, a biblioteca pode gerar automaticamente a árvore de estrutura lógica e aplicar tags semânticas usando a auto‑tagging incorporada e o reconhecimento de cabeçalhos.
+
+Ao configurar PdfFormatConversionOptions e habilitar AutoTaggingSettings, você pode transformar eficientemente PDFs existentes em documentos acessíveis sem editar manualmente a estrutura.
+
+1. Carregue o documento de origem.
+1. Criar opções de conversão PDF/UA.
+1. Ativar marcação automática.
+1. Configurar reconhecimento de títulos.
+1. Anexe a configuração de marcação às opções de conversão.
+1. Execute o processo de conversão.
+1. Salve o PDF acessível.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def convert_to_pdf_ua_with_automatic_tagging(infile, outfile, logfile):
+ # Create PDF Document
+ with ap.Document(infile) as document:
+ # Create conversion options
+ options = ap.PdfFormatConversionOptions(
+ logfile, ap.PdfFormat.PDF_UA_1, ap.ConvertErrorAction.DELETE
+ )
+ # Create auto-tagging settings
+ # aspose.pdf.AutoTaggingSettings.default may be used to set the same settings as given below
+ auto_tagging_settings = ap.AutoTaggingSettings()
+ # Enable auto-tagging during the conversion process
+ auto_tagging_settings.enable_auto_tagging = True
+ # Use the heading recognition strategy that's optimal for the given document structure
+ auto_tagging_settings.heading_recognition_strategy = (
+ ap.HeadingRecognitionStrategy.AUTO
+ )
+ # Assign auto-tagging settings to be used during the conversion process
+ options.auto_tagging_settings = auto_tagging_settings
+ # During the conversion, the document logical structure will be automatically created
+ document.convert(options)
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Criar um Tagged PDF com um FormField de Assinatura Acessível
+
+1. Crie um novo documento PDF.
+1. Acesse o conteúdo marcado.
+1. Criar um campo de Form de assinatura.
+1. Adicione o campo ao AcroForm.
+1. Crie um elemento Form na estrutura de tags.
+1. Vincule o elemento Structure ao campo Form.
+1. Anexe o elemento Form à árvore de estrutura lógica.
+1. Salve o documento.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_pdf_with_tagged_form_field(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ document.pages.add()
+ # Get Content for work with TaggedPdf
+ tagged_content = document.tagged_content
+ root_element = tagged_content.root_element
+ # Create a visible signature form field (AcroForm)
+ signature_field = ap.forms.SignatureField(
+ document.pages[1], ap.Rectangle(50, 50, 100, 100, True)
+ )
+ signature_field.partial_name = "Signature1"
+ signature_field.alternate_name = "signature 1"
+
+ # Add the signature field to the document's AcroForm
+ document.form.add(signature_field)
+
+ # Create a /Form structure element in the tag tree
+ form = tagged_content.create_form_element()
+ form.alternative_text = "form 1"
+
+ # Link the /Form tag to the signature field via an /OBJR reference
+ form.tag(signature_field)
+
+ # Add the /Form structure element to the document’s logical structure tree
+ root_element.append_child(form, True)
+
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Criar um PDF Tagged com uma página de Sumário (TOC)
+
+Este exemplo demonstra como criar um documento Tagged PDF com uma página de Sumário (TOC) estruturada usando Aspose.PDF for Python via .NET.
+
+1. Crie um novo documento PDF.
+1. Crie uma página de índice dedicada.
+1. Crie e registre o elemento TOC na árvore de estrutura lógica.
+1. Adicionar uma página de conteúdo.
+1. Criar um elemento de cabeçalho.
+1. Crie um elemento /TOCI.
+1. Vincule o cabeçalho ao TOC.
+1. Salve o documento.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_pdf_with_toc_page(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get tagged content for the PDF structure
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ # Add the table of contents (TOC) page
+ toc_page = document.pages.add()
+ toc_page.toc_info = ap.TocInfo()
+ # Create a TOC structure element
+ toc_element = content.create_toc_element()
+ # Add the TOC element to the document structure tree
+ root_element.append_child(toc_element, True)
+ # Add a content page
+ document.pages.add()
+ # Create a header element and set its text
+ header = content.create_header_element(1)
+ header.set_text("1. Header")
+ # Add the header to the document structure
+ root_element.append_child(header, True)
+ # Create a TOC item (TOCI) element
+ toci = content.create_toci_element()
+ # Add the TOCI element to the TOC element
+ toc_element.append_child(toci, True)
+ # Add an entry to the TOC page and link it to the TOCI element
+ header.add_entry_to_toc_page(toc_page, toci)
+ # Add a logical reference to the header within the TOCI element
+ toci.add_ref(header)
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Criar um PDF Tagged avançado com Sumário hierárquico (TOC)
+
+Usando Aspose.PDF for Python via .NET, você pode criar um documento PDF avançado e totalmente marcado com um Sumário estruturado e hierárquico (TOC).
+
+1. Crie o documento e habilite o conteúdo marcado.
+1. Adicionar e configurar a página TOC.
+1. Crie o elemento de estrutura /TOC.
+1. Vincule o título da página do TOC a um elemento de cabeçalho.
+1. Adicionar página de conteúdo principal e primeiro cabeçalho.
+1. Crie uma entrada de TOC para o cabeçalho.
+1. Criar subseções aninhadas com estrutura de lista.
+1. Adicione uma segunda seção de nível superior.
+1. Salve o documento.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_pdf_with_toc_page_advanced(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get tagged content for the PDF structure
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ # Add the table of contents (TOC) page
+ toc_page = document.pages.add()
+ toc_page.toc_info = ap.TocInfo()
+ toc_page.toc_info.title = ap.text.TextFragment("Table of Contents")
+ # Create a TOC structure element
+ toc_element = content.create_toc_element()
+ # Create a header element for the TOC page title
+ header_for_toc_page_title = content.create_header_element(1)
+ toc_element.link_toc_page_title_to_header_element(
+ toc_page, header_for_toc_page_title
+ )
+ # Add the TOC page title header and TOC element to the document structure tree
+ root_element.append_child(header_for_toc_page_title, True)
+ root_element.append_child(toc_element, True)
+ # Add a content page
+ document.pages.add()
+ # Create a header element and set its text
+ header = content.create_header_element(1)
+ header.set_text("1. Header")
+ # Add the header to the document structure
+ root_element.append_child(header, True)
+ # Create a TOC item (TOCI) element
+ toci = content.create_toci_element()
+ # Add the TOCI element to the TOC element
+ toc_element.append_child(toci, True)
+ # Add an entry to the TOC page and link it to the TOCI element
+ header.add_entry_to_toc_page(toc_page, toci)
+ # Add a logical reference to the header within the TOCI element
+ toci.add_ref(header)
+ # Create a list element for TOCI subitems
+ list_element = content.create_list_element()
+ for i in range(1, 4):
+ # Create a list item (LI) element
+ li = content.create_list_li_element()
+ # Add the list item to the list element
+ list_element.append_child(li, True)
+ # Create a sub-header element and set its properties
+ sub_header = content.create_header_element(2)
+ sub_header.structure_text_state.font_size = 14
+ sub_header.language = "en-US"
+ sub_header.set_text(f"1.{i} subheader ")
+ # Add an entry to the TOC page and link it to the LI element
+ sub_header.add_entry_to_toc_page(toc_page, li)
+ # Add a logical reference to the subheader element
+ li.add_ref(sub_header)
+ # Create a paragraph element and set its text and language
+ p = content.create_paragraph_element()
+ p.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
+ )
+ p.language = "en-US"
+ # Add the sub-header and paragraph to the document structure
+ root_element.append_child(sub_header, True)
+ root_element.append_child(p, True)
+ # Add the list element as a child to the TOCI element
+ toci.append_child(list_element, True)
+ # --- Additional TOC header example ---
+ # Create a second header element (see comments above for header 1)
+ header2 = content.create_header_element(1)
+ header2.set_text("2. Header")
+ root_element.append_child(header2, True)
+
+ toci2 = content.create_toci_element()
+ toc_element.append_child(toci2, True)
+
+ header2.add_entry_to_toc_page(toc_page, toci2)
+ toci2.add_ref(header2)
+ # Save the PDF document
+ document.save(outfile)
+```
+
+## Tópicos Relacionados ao PDF Marcado
+
+- [Extrair Conteúdo Marcado de Tagged PDFs](/pdf/pt/python-net/extract-tagged-content-from-tagged-pdfs/) para inspecionar a árvore de estrutura lógica após a criação.
+- [Definindo Propriedades dos Structure Elements](/pdf/pt/python-net/setting-structure-elements-properties/) para refinar títulos, idioma, texto alternativo e texto de expansão.
+- [Trabalhando com Tabela em PDFs Marcados](/pdf/pt/python-net/working-with-table-in-tagged-pdfs/) quando seu documento acessível inclui tabelas estruturadas.
diff --git a/pt/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/taggedpdf-01.png b/pt/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/taggedpdf-01.png
new file mode 100644
index 0000000000..6bb7280be1
Binary files /dev/null and b/pt/python-net/advanced-operations/accessibility-tagged-pdf/create-tagged-pdf-documents/taggedpdf-01.png differ
diff --git a/pt/python-net/advanced-operations/accessibility-tagged-pdf/extract-tagged-content-from-tagged-pdfs/_index.md b/pt/python-net/advanced-operations/accessibility-tagged-pdf/extract-tagged-content-from-tagged-pdfs/_index.md
new file mode 100644
index 0000000000..21d817c974
--- /dev/null
+++ b/pt/python-net/advanced-operations/accessibility-tagged-pdf/extract-tagged-content-from-tagged-pdfs/_index.md
@@ -0,0 +1,152 @@
+---
+title: Extrair Conteúdo Marcado de PDFs em Python
+linktitle: Extrair Conteúdo Marcado
+type: docs
+weight: 20
+url: /pt/python-net/extract-tagged-content-from-tagged-pdfs/
+description: Saiba como extrair conteúdo marcado de PDF em Python com Aspose.PDF for Python via .NET, incluindo acesso ao conteúdo marcado, à estrutura raiz e aos elementos de estrutura filho.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Neste artigo, você aprenderá como extrair conteúdo marcado de documentos PDF usando Python.
+
+Use esses exemplos quando precisar inspecionar um Tagged PDF, ler a árvore de estrutura lógica ou validar se os Structure Elements foram criados corretamente para fluxos de trabalho de acessibilidade.
+
+## Obtendo Conteúdo de Tagged PDF
+
+Para obter o conteúdo de um PDF Document com Tagged Text, Aspose.PDF oferece [tagged_content](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) propriedade de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+
+Crie um PDF avançado, totalmente marcado, com um índice estruturado e hierárquico Table of Contents (TOC):
+
+1. Crie um novo objeto Document.
+1. Acesse a propriedade tagged_content.
+1. Defina o título do documento usando 'set_title()'.
+1. Defina o idioma do documento usando 'set_language()'.
+1. Salve o documento.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast
+import sys
+from os import path
+
+# region Extract Tagged Content from PDF
+def get_tagged_content(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Work with Tagged PDF content
+ # Set Title and Language for Document
+ tagged_content.set_title("Simple Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Obtendo a Estrutura Raiz
+
+Os PDFs Tagged contêm uma árvore de estrutura lógica que define a estrutura semântica do documento. O StructTreeRoot representa a raiz dessa árvore lógica, enquanto o RootElement fornece uma interface para interagir com o elemento de estrutura de nível superior do documento.
+
+O trecho de código a seguir mostra como obter a estrutura raiz de um Tagged PDF Document:
+
+1. Crie um novo documento PDF marcado.
+1. Acesse o conteúdo marcado e defina os metadados.
+1. Acesse StructTreeRoot e RootElement.
+1. Salve o PDF marcado.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast
+import sys
+from os import path
+
+def get_root_structure(outfile):
+
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Properties StructTreeRootElement and RootElement are used for access to
+ # StructTreeRoot object of pdf document and to root structure element (Document structure element).
+ struct_tree_root_element = tagged_content.struct_tree_root_element
+ root_element = tagged_content.root_element
+
+ print(f"StructTreeRootElement: {struct_tree_root_element}")
+ print(f"RootElement: {root_element}")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Acessando Elementos Filhos
+
+Os PDFs Marcados contêm uma árvore de estrutura lógica que define a hierarquia semântica do documento (títulos, parágrafos, formulários, listas, etc.). Acessar e modificar esses elementos de estrutura permite que você:
+
+- Inspecionar metadados como título, idioma, actual_text e propriedades relacionadas à acessibilidade
+- Atualizar propriedades para melhorar a acessibilidade ou a localização
+- Ajustar programaticamente a estrutura lógica do documento para conformidade PDF/UA
+
+ O trecho de código a seguir mostra como acessar os elementos filhos de um Documento Tagged PDF:
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast
+import sys
+from os import path
+
+def access_child_elements(infile, outfile):
+
+ # Open PDF Document
+ with ap.Document(infile) as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Access to root element(s)
+ element_list = tagged_content.struct_tree_root_element.child_elements
+
+ for element in element_list:
+ if isinstance(element, ap.logicalstructure.StructureElement):
+ structure_element = cast(ap.logicalstructure.StructureElement, element)
+ # Get properties
+ print(
+ "StructureElement properties - "
+ f"title: {structure_element.title}, "
+ f"language: {structure_element.language}, "
+ f"actual_text: {structure_element.actual_text}, "
+ f"expansion_text: {structure_element.expansion_text}, "
+ f"alternative_text: {structure_element.alternative_text}"
+ )
+
+ # Access to child elements of first element in root element
+ element_list = tagged_content.root_element.child_elements[1].child_elements
+ for element in element_list:
+ if isinstance(element, ap.logicalstructure.StructureElement):
+ structure_element = element
+
+ # Set properties
+ structure_element.title = "title"
+ structure_element.language = "fr-FR"
+ structure_element.actual_text = "actual text"
+ structure_element.expansion_text = "exp"
+ structure_element.alternative_text = "alt"
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Tópicos Relacionados ao PDF Marcado
+
+- [Criar Tagged PDF](/pdf/pt/python-net/create-tagged-pdf/) para construir documentos marcados acessíveis antes de inspecionar sua estrutura.
+- [Definindo Propriedades dos Structure Elements](/pdf/pt/python-net/setting-structure-elements-properties/) para atualizar propriedades semânticas após extrair elementos de estrutura.
+- [Trabalhando com Tabela em PDFs Marcados](/pdf/pt/python-net/working-with-table-in-tagged-pdfs/) para fluxos de trabalho de acessibilidade de tabelas marcadas.
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/accessibility-tagged-pdf/setting-structure-elements-properties/_index.md b/pt/python-net/advanced-operations/accessibility-tagged-pdf/setting-structure-elements-properties/_index.md
new file mode 100644
index 0000000000..289211adb7
--- /dev/null
+++ b/pt/python-net/advanced-operations/accessibility-tagged-pdf/setting-structure-elements-properties/_index.md
@@ -0,0 +1,644 @@
+---
+title: Definir propriedades de elementos de estrutura Tagged PDF em Python
+linktitle: Definindo Propriedades dos Structure Elements
+type: docs
+weight: 30
+url: /pt/python-net/setting-structure-elements-properties/
+description: Aprenda como definir propriedades de elementos de estrutura Tagged PDF em Python com Aspose.PDF for Python via .NET, incluindo título, idioma, texto real, texto alternativo e texto de expansão.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+Os Structure elements definem a hierarquia semântica de um documento PDF, como seções, cabeçalhos, parágrafos ou tabelas. Ao definir propriedades como title, language, alternative_text, actual_text e expansion_text, você melhora a acessibilidade e o significado semântico do PDF para tecnologias assistivas, como leitores de tela.
+
+O trecho de código a seguir mostra como definir as propriedades dos elementos de estrutura de um Document Tagged PDF:
+
+1. Crie um novo documento PDF marcado.
+1. Definir metadados do documento.
+1. Criar elementos de estrutura.
+1. Definir propriedades de acessibilidade.
+1. Salve o PDF marcado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_properties(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create Structure Elements
+ root_element = tagged_content.root_element
+
+ section_element = tagged_content.create_sect_element()
+ root_element.append_child(section_element, True)
+
+ header_element = tagged_content.create_header_element(1)
+ section_element.append_child(header_element, True)
+ header_element.set_text("The Header")
+
+ header_element.title = "Title"
+ header_element.language = "en-US"
+ header_element.alternative_text = "Alternative Text"
+ header_element.expansion_text = "Expansion Text"
+ header_element.actual_text = "Actual Text"
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Definindo Elementos de Estrutura de Texto
+
+Para definir elementos de estrutura de texto de um Tagged PDF Document, o Aspose.PDF oferece [Elemento de Parágrafo](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/paragraphelement/) classe. O trecho de código a seguir mostra como definir elementos de estrutura de texto de um Documento PDF Marcado:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_text_elements(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Get Root Structure Elements
+ root_element = tagged_content.root_element
+
+ paragraph_element = tagged_content.create_paragraph_element()
+
+ # Set Text to Text Structure Element
+ paragraph_element.set_text("Paragraph.")
+ root_element.append_child(paragraph_element, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+
+```
+
+## Configuração de Elementos de Estrutura de Bloco de Texto
+
+Este exemplo em Python usa Aspose.PDF para criar um Tagged PDF que inclui uma hierarquia estruturada de cabeçalhos e um parágrafo, aprimorando os recursos semânticos e de acessibilidade do documento.
+
+1. Crie um novo documento PDF marcado.
+1. Definir metadados do documento.
+1. Acesse o elemento de estrutura raiz.
+1. Criar cabeçalhos de vários níveis.
+1. Anexar cabeçalhos à estrutura raiz.
+1. Crie um elemento de parágrafo.
+1. Anexar parágrafo à estrutura raiz.
+1. Salve o PDF marcado.
+
+O trecho de código a seguir mostra como definir elementos de estrutura de bloco de texto de um Tagged PDF Document:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_text_block_elements(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+ # Get Root Structure Element
+ root_element = tagged_content.root_element
+ h1 = tagged_content.create_header_element(1)
+ h2 = tagged_content.create_header_element(2)
+ h3 = tagged_content.create_header_element(3)
+ h4 = tagged_content.create_header_element(4)
+ h5 = tagged_content.create_header_element(5)
+ h6 = tagged_content.create_header_element(6)
+ h1.set_text("H1. Header of Level 1")
+ h2.set_text("H2. Header of Level 2")
+ h3.set_text("H3. Header of Level 3")
+ h4.set_text("H4. Header of Level 4")
+ h5.set_text("H5. Header of Level 5")
+ h6.set_text("H6. Header of Level 6")
+ root_element.append_child(h1, True)
+ root_element.append_child(h2, True)
+ root_element.append_child(h3, True)
+ root_element.append_child(h4, True)
+ root_element.append_child(h5, True)
+ root_element.append_child(h6, True)
+ p = tagged_content.create_paragraph_element()
+ p.set_text(
+ "P. Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
+ "Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit."
+ " Cras pellentesque libero semper, gravida magna sed, luctus leo. "
+ "Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. "
+ "Interdum et malesuada fames ac ante ipsum primis in faucibus. "
+ "Aliquam lacinia sit amet elit ac consectetur. "
+ "Donec cursus condimentum ligula, vitae volutpat sem tristique eget. "
+ "Nulla in consectetur massa. Vestibulum vitae lobortis ante. "
+ "Nulla ullamcorper pellentesque justo rhoncus accumsan. "
+ "Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. "
+ "Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, "
+ "vitae posuere risus odio id massa. Cras sed venenatis lacus."
+ )
+ root_element.append_child(p, True)
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Definindo Elementos de Estrutura Inline
+
+Criar elementos de texto inline (/Span) dentro de cabeçalhos e parágrafos em um PDF marcado usando Aspose.PDF for Python via .NET.
+
+O trecho de código a seguir mostra como definir elementos de estrutura inline de um Tagged PDF Document:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_inline_elements(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Get Root Structure Element
+ root_element = tagged_content.root_element
+
+ header_element_h1 = tagged_content.create_header_element(1)
+ header_element_h2 = tagged_content.create_header_element(2)
+ header_element_h3 = tagged_content.create_header_element(3)
+ header_element_h4 = tagged_content.create_header_element(4)
+ header_element_h5 = tagged_content.create_header_element(5)
+ header_element_h6 = tagged_content.create_header_element(6)
+ root_element.append_child(header_element_h1, True)
+ root_element.append_child(header_element_h2, True)
+ root_element.append_child(header_element_h3, True)
+ root_element.append_child(header_element_h4, True)
+ root_element.append_child(header_element_h5, True)
+ root_element.append_child(header_element_h6, True)
+
+ span_element_h11 = tagged_content.create_span_element()
+ span_element_h11.set_text("H1. ")
+ header_element_h1.append_child(span_element_h11, True)
+ span_element_h12 = tagged_content.create_span_element()
+ span_element_h12.set_text("Level 1 Header")
+ header_element_h1.append_child(span_element_h12, True)
+
+ span_element_h21 = tagged_content.create_span_element()
+ span_element_h21.set_text("H2. ")
+ header_element_h2.append_child(span_element_h21, True)
+ span_element_h22 = tagged_content.create_span_element()
+ span_element_h22.set_text("Level 2 Header")
+ header_element_h2.append_child(span_element_h22, True)
+
+ span_element_h31 = tagged_content.create_span_element()
+ span_element_h31.set_text("H3. ")
+ header_element_h3.append_child(span_element_h31, True)
+ span_element_h32 = tagged_content.create_span_element()
+ span_element_h32.set_text("Level 3 Header")
+ header_element_h3.append_child(span_element_h32, True)
+
+ span_element_h41 = tagged_content.create_span_element()
+ span_element_h41.set_text("H4. ")
+ header_element_h4.append_child(span_element_h41, True)
+ span_element_h42 = tagged_content.create_span_element()
+ span_element_h42.set_text("Level 4 Header")
+ header_element_h4.append_child(span_element_h42, True)
+
+ span_element_h51 = tagged_content.create_span_element()
+ span_element_h51.set_text("H5. ")
+ header_element_h5.append_child(span_element_h51, True)
+ span_element_h52 = tagged_content.create_span_element()
+ span_element_h52.set_text("Level 5 Header")
+ header_element_h5.append_child(span_element_h52, True)
+
+ span_element_h61 = tagged_content.create_span_element()
+ span_element_h61.set_text("H6. ")
+ header_element_h6.append_child(span_element_h61, True)
+ span_element_h62 = tagged_content.create_span_element()
+ span_element_h62.set_text("Level 6 Header")
+ header_element_h6.append_child(span_element_h62, True)
+
+ paragraph_element = tagged_content.create_paragraph_element()
+ paragraph_element.set_text("P. ")
+ root_element.append_child(paragraph_element, True)
+ span_element_1 = tagged_content.create_span_element()
+ span_element_1.set_text(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
+ )
+ paragraph_element.append_child(span_element_1, True)
+ span_element_2 = tagged_content.create_span_element()
+ span_element_2.set_text("Aenean nec lectus ac sem faucibus imperdiet. ")
+ paragraph_element.append_child(span_element_2, True)
+ span_element_3 = tagged_content.create_span_element()
+ span_element_3.set_text("Sed ut erat ac magna ullamcorper hendrerit. ")
+ paragraph_element.append_child(span_element_3, True)
+ span_element_4 = tagged_content.create_span_element()
+ span_element_4.set_text(
+ "Cras pellentesque libero semper, gravida magna sed, luctus leo. "
+ )
+ paragraph_element.append_child(span_element_4, True)
+ span_element_5 = tagged_content.create_span_element()
+ span_element_5.set_text(
+ "Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. "
+ )
+ paragraph_element.append_child(span_element_5, True)
+ span_element_6 = tagged_content.create_span_element()
+ span_element_6.set_text(
+ "Interdum et malesuada fames ac ante ipsum primis in faucibus. "
+ )
+ paragraph_element.append_child(span_element_6, True)
+ span_element_7 = tagged_content.create_span_element()
+ span_element_7.set_text(
+ "Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. "
+ )
+ paragraph_element.append_child(span_element_7, True)
+ span_element_8 = tagged_content.create_span_element()
+ span_element_8.set_text(
+ "Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. "
+ )
+ paragraph_element.append_child(span_element_8, True)
+ span_element_9 = tagged_content.create_span_element()
+ span_element_9.set_text(
+ "Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. "
+ )
+ paragraph_element.append_child(span_element_9, True)
+ span_element_10 = tagged_content.create_span_element()
+ span_element_10.set_text(
+ "Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus."
+ )
+ paragraph_element.append_child(span_element_10, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Definindo Nome de Tag Personalizado
+
+Definir nomes de tags personalizados para elementos de estrutura e inline em um Tagged PDF usando Aspose.PDF for Python.
+
+O trecho de código a seguir mostra como definir um nome de tag personalizado:
+
+1. Crie um novo documento PDF marcado.
+1. Definir metadados do documento.
+1. Crie um elemento de seção.
+1. Criar elementos de parágrafo com tags personalizadas.
+1. Crie elementos span inline com tags personalizadas.
+1. Salve o PDF marcado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_tag_name(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get Content for work with Tagged PDF
+ tagged_content = document.tagged_content
+
+ # Set Title and Language for Document
+ tagged_content.set_title("Tagged Pdf Document")
+ tagged_content.set_language("en-US")
+
+ # Create Logical Structure Elements
+ section_element = tagged_content.create_sect_element()
+ tagged_content.root_element.append_child(section_element, True)
+
+ paragraph_element1 = tagged_content.create_paragraph_element()
+ paragraph_element2 = tagged_content.create_paragraph_element()
+ paragraph_element3 = tagged_content.create_paragraph_element()
+ paragraph_element4 = tagged_content.create_paragraph_element()
+
+ paragraph_element1.set_text("P1. ")
+ paragraph_element2.set_text("P2. ")
+ paragraph_element3.set_text("P3. ")
+ paragraph_element4.set_text("P4. ")
+
+ paragraph_element1.set_tag("P1")
+ paragraph_element2.set_tag("Para")
+ paragraph_element3.set_tag("Para")
+ paragraph_element4.set_tag("Paragraph")
+
+ section_element.append_child(paragraph_element1, True)
+ section_element.append_child(paragraph_element2, True)
+ section_element.append_child(paragraph_element3, True)
+ section_element.append_child(paragraph_element4, True)
+
+ span_element1 = tagged_content.create_span_element()
+ span_element2 = tagged_content.create_span_element()
+ span_element3 = tagged_content.create_span_element()
+ span_element4 = tagged_content.create_span_element()
+
+ span_element1.set_text("Span 1.")
+ span_element2.set_text("Span 2.")
+ span_element3.set_text("Span 3.")
+ span_element4.set_text("Span 4.")
+
+ span_element1.set_tag("SPAN")
+ span_element2.set_tag("Sp")
+ span_element3.set_tag("Sp")
+ span_element4.set_tag("TheSpan")
+
+ paragraph_element1.append_child(span_element1, True)
+ paragraph_element2.append_child(span_element2, True)
+ paragraph_element3.append_child(span_element3, True)
+ paragraph_element4.append_child(span_element4, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Adicionando Elemento de Estrutura nos Elementos
+
+**Este recurso é suportado a partir da versão 19.4 ou superior.**
+
+Crie links e elementos de imagem em um PDF marcado usando Aspose.PDF for Python via .NET.
+
+O trecho de código a seguir mostra como definir Structure Elements em um parágrafo com o texto de um Tagged PDF Document:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_elements(imagefile, outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ # Setting Title and Nature Language for document
+ tagged_content.set_title("Link Elements Example")
+ tagged_content.set_language("en-US")
+
+ # Getting Root structure element (Document structure element)
+ root_element = tagged_content.root_element
+
+ paragraph_element_1 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_1, True)
+ link_element_1 = tagged_content.create_link_element()
+ paragraph_element_1.append_child(link_element_1, True)
+ link_element_1.hyperlink = ap.WebHyperlink("http://google.com")
+ link_element_1.set_text("Google")
+ link_element_1.alternate_descriptions = "Link to Google"
+
+ paragraph_element_2 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_2, True)
+ link_element_2 = tagged_content.create_link_element()
+ paragraph_element_2.append_child(link_element_2, True)
+ link_element_2.hyperlink = ap.WebHyperlink("http://google.com")
+ span_element_2 = tagged_content.create_span_element()
+ span_element_2.set_text("Google")
+ link_element_2.append_child(span_element_2, True)
+ link_element_2.alternate_descriptions = "Link to Google"
+
+ paragraph_element_3 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_3, True)
+ link_element_3 = tagged_content.create_link_element()
+ paragraph_element_3.append_child(link_element_3, True)
+ link_element_3.hyperlink = ap.WebHyperlink("http://google.com")
+ span_element_31 = tagged_content.create_span_element()
+ span_element_31.set_text("G")
+ span_element_32 = tagged_content.create_span_element()
+ span_element_32.set_text("Google")
+ link_element_3.append_child(span_element_31, True)
+ link_element_3.set_text("-")
+ link_element_3.append_child(span_element_32, True)
+ link_element_3.alternate_descriptions = "Link to Google"
+
+ paragraph_element_4 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_4, True)
+ link_element_4 = tagged_content.create_link_element()
+ paragraph_element_4.append_child(link_element_4, True)
+ link_element_4.hyperlink = ap.WebHyperlink("http://google.com")
+ link_element_4.set_text(
+ "The multiline link: Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google Google"
+ )
+ link_element_4.alternate_descriptions = "Link to Google (multiline)"
+
+ paragraph_element_5 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_5, True)
+ link_element_5 = tagged_content.create_link_element()
+ paragraph_element_5.append_child(link_element_5, True)
+ link_element_5.hyperlink = ap.WebHyperlink("http://google.com")
+ figure_element_5 = tagged_content.create_figure_element()
+ figure_element_5.set_image(imagefile, 1200)
+ figure_element_5.alternative_text = "Google icon"
+ link_layout_attributes = link_element_5.attributes.get_attributes(
+ ap.logicalstructure.AttributeOwnerStandard.LAYOUT
+ )
+ placement_attribute = ap.logicalstructure.StructureAttribute(
+ ap.logicalstructure.AttributeKey.PLACEMENT
+ )
+ placement_attribute.set_name_value(
+ ap.logicalstructure.AttributeName.PLACEMENT_BLOCK
+ )
+ link_layout_attributes.set_attribute(placement_attribute)
+ link_element_5.append_child(figure_element_5, True)
+ link_element_5.alternate_descriptions = "Link to Google"
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Configurar Elemento de Estrutura de Link
+
+Aspose.PDF for Python via .NET API também permite que você adicione elementos de estrutura de link.
+
+O trecho de código a seguir mostra como adicionar um elemento de estrutura de link em um Tagged PDF Document:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_link_element(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ # Setting Title and Nature Language for document
+ tagged_content.set_title("Text Elements Example")
+ tagged_content.set_language("en-US")
+
+ # Getting Root structure element (Document structure element)
+ root_element = tagged_content.root_element
+
+ paragraph_element_1 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_1, True)
+ span_element_11 = tagged_content.create_span_element()
+ span_element_11.set_text("Span_11")
+ span_element_12 = tagged_content.create_span_element()
+ span_element_12.set_text(" and Span_12.")
+ paragraph_element_1.set_text("Paragraph with ")
+ paragraph_element_1.append_child(span_element_11, True)
+ paragraph_element_1.append_child(span_element_12, True)
+
+ paragraph_element_2 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_2, True)
+ span_element_21 = tagged_content.create_span_element()
+ span_element_21.set_text("Span_21")
+ span_element_22 = tagged_content.create_span_element()
+ span_element_22.set_text("Span_22.")
+ paragraph_element_2.append_child(span_element_21, True)
+ paragraph_element_2.set_text(" and ")
+ paragraph_element_2.append_child(span_element_22, True)
+
+ paragraph_element_3 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_3, True)
+ span_element_31 = tagged_content.create_span_element()
+ span_element_31.set_text("Span_31")
+ span_element_32 = tagged_content.create_span_element()
+ span_element_32.set_text(" and Span_32")
+ paragraph_element_3.append_child(span_element_31, True)
+ paragraph_element_3.append_child(span_element_32, True)
+ paragraph_element_3.set_text(".")
+
+ paragraph_element_4 = tagged_content.create_paragraph_element()
+ root_element.append_child(paragraph_element_4, True)
+ span_element_41 = tagged_content.create_span_element()
+ span_element_411 = tagged_content.create_span_element()
+ span_element_411.set_text("Span_411, ")
+ span_element_41.set_text("Span_41, ")
+ span_element_41.append_child(span_element_411, True)
+ span_element_42 = tagged_content.create_span_element()
+ span_element_421 = tagged_content.create_span_element()
+ span_element_421.set_text("Span 421 and ")
+ span_element_42.append_child(span_element_421, True)
+ span_element_42.set_text("Span_42")
+ paragraph_element_4.append_child(span_element_41, True)
+ paragraph_element_4.append_child(span_element_42, True)
+ paragraph_element_4.set_text(".")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Configuração do Elemento de Estrutura de Nota
+
+Aspose.PDF for Python via .NET API também permite que você adicione [Elemento de Nota](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/noteelement/) em um Tagged PDF document. O trecho de código a seguir mostra como adicionar um elemento de nota em um Tagged PDF Document:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_note_element(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Sample of Note Elements")
+ tagged_content.set_language("en-US")
+
+ # Add Paragraph Element
+ paragraph_element = tagged_content.create_paragraph_element()
+ tagged_content.root_element.append_child(paragraph_element, True)
+
+ # Add NoteElement
+ note_element_1 = tagged_content.create_note_element()
+ paragraph_element.append_child(note_element_1, True)
+ note_element_1.set_text("Note with auto generate ID. ")
+
+ # Add NoteElement
+ note_element_2 = tagged_content.create_note_element()
+ paragraph_element.append_child(note_element_2, True)
+ note_element_2.set_text("Note with ID = 'note_002'. ")
+ note_element_2.set_id("note_002")
+
+ # Add NoteElement
+ note_element_3 = tagged_content.create_note_element()
+ paragraph_element.append_child(note_element_3, True)
+ note_element_3.set_text("Note with ID = 'note_003'. ")
+ note_element_3.set_id("note_003")
+
+ # Must throw exception - Aspose.Pdf.Tagged.TaggedException : Structure element with ID='note_002' already exists
+ # note_element_3.set_id("note_002")
+
+ # Resultant document does not compliance to PDF/UA If ClearId() used for Note Structure Element
+ # note_element_3.clear_id()
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Como definir Idioma e Título
+
+Aspose.PDF for Python via .NET API também permite definir idioma e título para um Document de acordo com a especificação PDF/UA. O idioma pode ser definido tanto para o documento inteiro quanto para seus elementos estruturais separados. O trecho de código a seguir mostra como definir idioma e título em um Tagged PDF Document:
+
+1. Crie um novo documento PDF marcado.
+1. Defina o título e o idioma do documento.
+1. Criar um elemento de cabeçalho.
+1. Adicionar parágrafos com idiomas específicos.
+1. Salve o PDF marcado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def set_language_and_title(outfile):
+ # Create PDF Document
+ with ap.Document() as document:
+ # Get TaggedContent
+ tagged_content = document.tagged_content
+
+ # Set Title and Language
+ tagged_content.set_title("Example Tagged Document")
+ tagged_content.set_language("en-US")
+
+ # Header (en-US, inherited from document)
+ header_element = tagged_content.create_header_element(1)
+ header_element.set_text("Phrase on different languages")
+ tagged_content.root_element.append_child(header_element, True)
+
+ # Paragraph (English)
+ paragraph_element_en = tagged_content.create_paragraph_element()
+ paragraph_element_en.set_text("Hello, World!")
+ paragraph_element_en.language = "en-US"
+ tagged_content.root_element.append_child(paragraph_element_en, True)
+
+ # Paragraph (German)
+ paragraph_element_de = tagged_content.create_paragraph_element()
+ paragraph_element_de.set_text("Hallo Welt!")
+ paragraph_element_de.language = "de-DE"
+ tagged_content.root_element.append_child(paragraph_element_de, True)
+
+ # Paragraph (French)
+ paragraph_element_fr = tagged_content.create_paragraph_element()
+ paragraph_element_fr.set_text("Bonjour le monde!")
+ paragraph_element_fr.language = "fr-FR"
+ tagged_content.root_element.append_child(paragraph_element_fr, True)
+
+ # Paragraph (Spanish)
+ paragraph_element_sp = tagged_content.create_paragraph_element()
+ paragraph_element_sp.set_text("¡Hola Mundo!")
+ paragraph_element_sp.language = "es-ES"
+ tagged_content.root_element.append_child(paragraph_element_sp, True)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Tópicos Relacionados ao PDF Marcado
+
+- [Criar Tagged PDF](/pdf/pt/python-net/create-tagged-pdf/) para gerar os elementos de estrutura antes de atualizar suas propriedades.
+- [Extrair Conteúdo Marcado de Tagged PDFs](/pdf/pt/python-net/extract-tagged-content-from-tagged-pdfs/) para inspecionar nós de estrutura existentes e metadados.
+- [Trabalhando com Tabela em PDFs Marcados](/pdf/pt/python-net/working-with-table-in-tagged-pdfs/) se precisar aplicar propriedades acessíveis a estruturas de tabela.
diff --git a/pt/python-net/advanced-operations/accessibility-tagged-pdf/working-with-table-in-tagged-pdfs/_index.md b/pt/python-net/advanced-operations/accessibility-tagged-pdf/working-with-table-in-tagged-pdfs/_index.md
new file mode 100644
index 0000000000..14063bb5fd
--- /dev/null
+++ b/pt/python-net/advanced-operations/accessibility-tagged-pdf/working-with-table-in-tagged-pdfs/_index.md
@@ -0,0 +1,531 @@
+---
+title: Trabalhar com Tabelas em Tagged PDFs em Python
+linktitle: Trabalhando com Tabela em PDFs Marcados
+type: docs
+weight: 40
+url: /pt/python-net/working-with-table-in-tagged-pdfs/
+description: Aprenda como trabalhar com tabelas acessíveis em Tagged PDFs em Python com Aspose.PDF for Python via .NET, incluindo estrutura, intervalos, alinhamento e marcação de tabelas compatível com PDF/UA.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Criar Tabela em Tagged PDF
+
+Seguindo as etapas acima, você pode gerar uma tabela semanticamente rica e acessível em um documento PDF usando Aspose.PDF for Python. O arquivo resultante atende aos padrões de conformidade PDF/UA-1, garantindo compatibilidade com leitores de tela e tecnologias assistivas. Isso é ideal para casos de uso que envolvem conformidade regulatória, auditoria de acessibilidade e publicação de conteúdo inclusivo.
+
+O trecho de código a seguir mostra como criar uma tabela no documento Tagged PDF:
+
+1. Crie um novo documento PDF marcado.
+1. Definir metadados do documento.
+1. Crie a estrutura da tabela.
+1. Criar linha de cabeçalho da tabela.
+1. Criar linhas de corpo de tabela com células.
+1. Criar linha de rodapé da tabela.
+1. Definir o atributo summary da tabela.
+1. Salve o Tagged PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_table(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ table_element.border = ap.BorderInfo(ap.BorderSide.ALL, 1.2, ap.Color.dark_blue)
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 50
+ col_count = 4
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+ head_tr_element.background_color = ap.Color.light_gray
+
+ for column_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {column_index}")
+
+ th_element.background_color = ap.Color.green_yellow
+ th_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ th_element.is_no_border = True
+ th_element.margin = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+
+ th_element.alignment = ap.HorizontalAlignment.RIGHT
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+
+ for column_index in range(col_count):
+ col_span = 1
+ row_span = 1
+
+ if column_index == 1 and row_index == 1:
+ col_span = 2
+ row_span = 2
+ elif (row_index == 1 and column_index == 2) or (
+ row_index == 2 and column_index in (1, 2)
+ ):
+ continue
+
+ td_element = tr_element.create_td()
+ td_element.set_text(f"Cell [{row_index}, {column_index}]")
+
+ td_element.background_color = ap.Color.yellow
+ td_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ td_element.is_no_border = False
+ td_element.margin = ap.MarginInfo(8.0, 2.0, 8.0, 2.0)
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.dark_blue
+ cell_text_state.font_size = 7.5
+ cell_text_state.font_style = ap.text.FontStyles.BOLD
+ cell_text_state.font = ap.text.FontRepository.find_font("Arial")
+ td_element.default_cell_text_state = cell_text_state
+
+ td_element.is_word_wrapped = True
+ td_element.vertical_alignment = ap.VerticalAlignment.CENTER
+
+ td_element.col_span = col_span
+ td_element.row_span = row_span
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+ foot_tr_element.background_color = ap.Color.light_sea_green
+
+ for column_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text(f"Foot {column_index}")
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+ td_element.structure_text_state.font_size = 7
+ td_element.structure_text_state.font_style = ap.text.FontStyles.BOLD
+
+ table_attributes = table_element.attributes.get_attributes(
+ ap.logicalstructure.AttributeOwnerStandard.TABLE
+ )
+ summary_attribute = ap.logicalstructure.StructureAttribute(
+ ap.logicalstructure.AttributeKey.SUMMARY
+ )
+ summary_attribute.set_string_value("The summary text for table")
+ table_attributes.set_attribute(summary_attribute)
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Elemento de Tabela de Estilo
+
+1. Crie um novo documento PDF marcado.
+1. Defina o título e o idioma do documento.
+1. Criar elemento de estrutura de tabela.
+1. Configurar linhas e colunas repetidas.
+1. Adicionar cabeçalho, corpo e rodapé.
+1. Salve o documento Tagged PDF.
+
+O seguinte trecho de código mostra como estilizar uma tabela em um documento Tagged PDF:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def style_table(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table style")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ table_element.background_color = ap.Color.beige
+ table_element.border = ap.BorderInfo(ap.BorderSide.ALL, 0.80, ap.Color.gray)
+ table_element.alignment = ap.HorizontalAlignment.CENTER
+ table_element.broken = ap.TableBroken.VERTICAL
+ table_element.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_WINDOW
+ table_element.column_widths = "80 80 80 80 80"
+ table_element.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.50, ap.Color.dark_blue
+ )
+ table_element.default_cell_padding = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+ table_element.default_cell_text_state.foreground_color = ap.Color.dark_cyan
+ table_element.default_cell_text_state.font_size = 8.0
+ table_element.default_column_width = "70"
+
+ table_element.is_broken = False
+ table_element.is_borders_included = True
+
+ table_element.left = 0.0
+ table_element.top = 40.0
+
+ table_element.repeating_columns_count = 2
+ table_element.repeating_rows_count = 3
+ row_style = ap.text.TextState()
+ row_style.background_color = ap.Color.light_coral
+ table_element.repeating_rows_style = row_style
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 10
+ col_count = 5
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {col_index}")
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+
+ for col_index in range(col_count):
+ td_element = tr_element.create_td()
+ td_element.set_text(f"Cell [{row_index}, {col_index}]")
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text(f"Foot {col_index}")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Estilo da Linha da Tabela
+
+Aspose.PDF for Python via .NET permite estilizar uma linha de tabela em documento Tagged PDF. Para estilizar uma linha de tabela, você pode usar as propriedades de [ElementoTableTR](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/) classe. A seguir está a lista de propriedades que você pode usar para estilizar uma linha de tabela:
+
+- [cor_de_fundo](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [borda](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [borda_celula_padrao](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [min_row_height](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [altura_linha_fixa](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [esta_na_nova_pagina](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [é_linha_quebrada](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [estado_texto_celula_padrao](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [preenchimento_padrao_celula](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+- [alinhamento_vertical](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tabletrelement/#properties).
+
+O trecho de código a seguir mostra como estilizar uma linha de tabela no documento Tagged PDF:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def style_table_row(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table style")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 7
+ col_count = 3
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {col_index}")
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+ tr_element.background_color = ap.Color.light_goldenrod_yellow
+ tr_element.border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.75, ap.Color.dark_gray
+ )
+ tr_element.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.50, ap.Color.blue
+ )
+ tr_element.min_row_height = 100.0
+ tr_element.fixed_row_height = 120.0
+ tr_element.is_in_new_page = row_index % 3 == 1
+ tr_element.is_row_broken = True
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.red
+ tr_element.default_cell_text_state = cell_text_state
+ tr_element.default_cell_padding = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+ tr_element.vertical_alignment = ap.VerticalAlignment.BOTTOM
+ for col_index in range(col_count):
+ td_element = tr_element.create_td()
+ td_element.set_text("Cell [{0}, {1}]".format(row_index, col_index))
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text("Foot {}".format(col_index))
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Estilo da Célula da Tabela
+
+Aspose.PDF for Python via .NET permite estilizar uma célula de tabela em documento Tagged PDF. Para estilizar uma célula de tabela, você pode usar as propriedades de [ElementoDeCélulaDeTabela](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/) classe. A seguir está a lista de propriedades que você pode usar para estilizar uma célula de tabela:
+
+- [cor_de_fundo](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [borda](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [é_sem_borda](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [margem](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [alinhamento](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [estado_texto_celula_padrao](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [está_palavra_quebrada](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [alinhamento_vertical](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [col_span](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+- [span_de_linha](https://reference.aspose.com/pdf/python-net/aspose.pdf.logicalstructure/tablecellelement/#properties).
+
+O trecho de código a seguir mostra como estilizar uma célula de tabela no documento Tagged PDF:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def style_table_cell(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ tagged_content = document.tagged_content
+
+ tagged_content.set_title("Example table cell style")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 4
+ col_count = 4
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text("Head {}".format(col_index))
+
+ th_element.background_color = ap.Color.green_yellow
+ th_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ th_element.is_no_border = True
+ th_element.margin = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+
+ th_element.alignment = ap.HorizontalAlignment.RIGHT
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = "Row {}".format(row_index)
+
+ for col_index in range(col_count):
+ col_span = 1
+ row_span = 1
+
+ if col_index == 1 and row_index == 1:
+ col_span = 2
+ row_span = 2
+ elif (row_index == 1 and col_index == 2) or (
+ row_index == 2 and col_index in (1, 2)
+ ):
+ continue
+
+ td_element = tr_element.create_td()
+ td_element.set_text("Cell [{}, {}]".format(row_index, col_index))
+
+ td_element.background_color = ap.Color.yellow
+ td_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ td_element.is_no_border = False
+ td_element.margin = ap.MarginInfo(8.0, 2.0, 8.0, 2.0)
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.dark_blue
+ cell_text_state.font_size = 7.5
+ cell_text_state.font_style = ap.text.FontStyles.BOLD
+ cell_text_state.font = ap.text.FontRepository.find_font("Arial")
+ td_element.default_cell_text_state = cell_text_state
+
+ td_element.is_word_wrapped = True
+ td_element.vertical_alignment = ap.VerticalAlignment.CENTER
+
+ td_element.col_span = col_span
+ td_element.row_span = row_span
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text("Foot {}".format(col_index))
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Ajustar posição da tabela
+
+Ajuste a posição de uma tabela em um Tagged PDF mantendo os recursos de acessibilidade usando Aspose.PDF for Python via .NET.
+
+O trecho de código a seguir mostra como ajustar a posição da tabela no documento Tagged PDF:
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def adjust_table_position(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Create tagged content
+ tagged_content = document.tagged_content
+ tagged_content.set_title("Example table position")
+ tagged_content.set_language("en-US")
+
+ # Get root structure element
+ root_element = tagged_content.root_element
+
+ # Create table structure element
+ table_element = tagged_content.create_table_element()
+ root_element.append_child(table_element, True)
+
+ # Create position settings
+ position_settings = ap.tagged.PositionSettings()
+ position_settings.horizontal_alignment = ap.HorizontalAlignment.NONE
+ position_settings.margin = ap.MarginInfo(left=20, right=0, top=0, bottom=0)
+ position_settings.vertical_alignment = ap.VerticalAlignment.NONE
+ position_settings.is_first_paragraph_in_column = False
+ position_settings.is_kept_with_next = False
+ position_settings.is_in_new_page = False
+ position_settings.is_in_line_paragraph = False
+
+ # Adjust table position
+ table_element.adjust_position(position_settings)
+
+ table_t_head_element = table_element.create_t_head()
+ table_t_body_element = table_element.create_t_body()
+ table_t_foot_element = table_element.create_t_foot()
+ row_count = 4
+ col_count = 4
+
+ head_tr_element = table_t_head_element.create_tr()
+ head_tr_element.alternative_text = "Head Row"
+
+ for col_index in range(col_count):
+ th_element = head_tr_element.create_th()
+ th_element.set_text(f"Head {col_index}")
+
+ th_element.background_color = ap.Color.green_yellow
+ th_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ th_element.is_no_border = True
+ th_element.margin = ap.MarginInfo(16.0, 2.0, 8.0, 2.0)
+
+ th_element.alignment = ap.HorizontalAlignment.RIGHT
+
+ for row_index in range(row_count):
+ tr_element = table_t_body_element.create_tr()
+ tr_element.alternative_text = f"Row {row_index}"
+
+ for col_index in range(col_count):
+ col_span = 1
+ row_span = 1
+
+ if col_index == 1 and row_index == 1:
+ col_span = 2
+ row_span = 2
+ elif (row_index == 1 and col_index == 2) or (
+ row_index == 2 and col_index in (1, 2)
+ ):
+ continue
+
+ td_element = tr_element.create_td()
+ td_element.set_text(f"Cell [{row_index}, {col_index}]")
+
+ td_element.background_color = ap.Color.yellow
+ td_element.border = ap.BorderInfo(ap.BorderSide.ALL, 4.0, ap.Color.gray)
+
+ td_element.is_no_border = False
+ td_element.margin = ap.MarginInfo(8.0, 2.0, 8.0, 2.0)
+
+ td_element.alignment = ap.HorizontalAlignment.CENTER
+
+ cell_text_state = ap.text.TextState()
+ cell_text_state.foreground_color = ap.Color.dark_blue
+ cell_text_state.font_size = 7.5
+ cell_text_state.font_style = ap.text.FontStyles.BOLD
+ cell_text_state.font = ap.text.FontRepository.find_font("Arial")
+ td_element.default_cell_text_state = cell_text_state
+
+ td_element.is_word_wrapped = True
+ td_element.vertical_alignment = ap.VerticalAlignment.CENTER
+
+ td_element.col_span = col_span
+ td_element.row_span = row_span
+
+ foot_tr_element = table_t_foot_element.create_tr()
+ foot_tr_element.alternative_text = "Foot Row"
+
+ for col_index in range(col_count):
+ td_element = foot_tr_element.create_td()
+ td_element.set_text(f"Foot {col_index}")
+
+ # Save Tagged PDF Document
+ document.save(outfile)
+```
+
+## Tópicos Relacionados ao PDF Marcado
+
+- [Criar Tagged PDF](/pdf/pt/python-net/create-tagged-pdf/) para construir a estrutura geral de documento acessível ao redor do conteúdo da sua tabela.
+- [Extrair Conteúdo Marcado de Tagged PDFs](/pdf/pt/python-net/extract-tagged-content-from-tagged-pdfs/) para inspecionar elementos de estrutura relacionados a tabelas após a geração.
+- [Definindo Propriedades dos Structure Elements](/pdf/pt/python-net/setting-structure-elements-properties/) refinar metadados acessíveis nas células da tabela e em outros Structure Elements.
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/_index.md b/pt/python-net/advanced-operations/annotations/_index.md
index 6a6ae42489..62bc751aa9 100644
--- a/pt/python-net/advanced-operations/annotations/_index.md
+++ b/pt/python-net/advanced-operations/annotations/_index.md
@@ -1,152 +1,43 @@
---
-title: Anotações em PDF
-linktitle: Anotações em PDF
+title: Anotações PDF em Python
+linktitle: Anotações PDF
type: docs
weight: 100
url: /pt/python-net/annotations/
-description: Esta seção mostra como usar todos os tipos de anotações em seu arquivo PDF com a biblioteca Aspose.PDF.
-lastmod: "2023-02-17"
+description: Aprenda como adicionar, modificar, extrair e gerenciar anotações PDF em Python com Aspose.PDF for Python via .NET, incluindo texto, realces, links, figuras e muito mais.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar Anotações a PDF usando Python
+Abstract: O artigo discute o uso de anotações em PDFs como elementos interativos que aumentam a interatividade do documento e o engajamento do usuário. Destaca as capacidades da Aspose.PDF for Python Library no suporte a vários tipos de anotações, incluindo texto, realces, figuras e anotações multimídia. As anotações servem a múltiplos propósitos, como comentar, revisar, marcar documentos e fornecer feedback, o que facilita a colaboração, a comunicação e uma compreensão mais profunda do conteúdo do documento. O artigo também menciona uma seção que detalha como adicionar, excluir e recuperar anotações, oferecendo orientações sobre como gerenciar esses elementos de forma eficaz dentro de documentos PDF.
---
-
+As anotações em PDFs são elementos interativos que permitem adicionar notas, realçar texto, desenhar formas, anexar arquivos e acionar ações diretamente em uma página. Elas são úteis para fluxos de revisão, colaboração, navegação e marcação de documentos.
-Anotações em PDFs são elementos interativos que permitem adicionar notas, destacar texto, desenhar formas, anexar arquivos e realizar outras ações que melhoram a navegação, interatividade e interação.
+Aspose.PDF for Python via .NET suporta uma ampla variedade de cenários de anotação, incluindo anotações de nota e pop-up, marcação de texto, links e botões, formas, marcas d'água, anotações multimídia e fluxos de trabalho de importação ou exportação de anotações.
-A biblioteca Aspose.PDF para Python suporta vários tipos de anotações, incluindo anotações de texto (como texto e anotação pop-up), anotações de destaque (como marcação de texto), anotações de figuras (como círculo, polilinha, polígono, linha e tinta), anotações multimídia (existem tela, som, widget e 3D) e mais.
+Use esta seção para escolher o fluxo de trabalho de anotação que corresponde à sua tarefa, seja para criar novas anotações, inspecionar as existentes, removê-las ou transferi-las entre documentos PDF.
-As anotações podem ser usadas para comentar, revisar, marcar documentos, fornecer feedback ou adicionar informações adicionais. As anotações permitem estabelecer cooperação, facilitar a comunicação e melhorar a compreensão do conteúdo dos documentos. Elas melhoram a colaboração, aprimoram a comunicação e tornam os documentos PDF mais dinâmicos e envolventes para os usuários.
+## Tópicos de Anotação
-Você é capaz de fazer o seguinte:
+Use esta seção quando precisar adicionar, recuperar, atualizar, remover ou transferir anotações em arquivos PDF com Python. As páginas vinculadas abaixo cobrem tanto os fluxos de trabalho de anotação de nível superior quanto as famílias de anotações agrupadas usadas ao longo da documentação.
-- [Adicionar, Excluir e Obter Anotação](/pdf/pt/python-net/add-delete-and-get-annotation/) - esta seção explica como trabalhar com todos os tipos de anotações permitidas.
+Você pode usar os seguintes tópicos:
-
\ No newline at end of file
+- [Adicionar, Excluir e Obter Anotação](/pdf/pt/python-net/add-delete-and-get-annotation/) - comece aqui para as principais categorias de anotação agrupadas e os fluxos de trabalho principais de criar, inspecionar e remover.
+- [Importar e Exportar Anotações](/pdf/pt/python-net/import-export-annotations/) - copie anotações de um documento PDF para outro arquivo PDF.
+
+### Grupos de Anotações
+
+O guia de anotações agrupadas inclui estes subtópicos:
+
+- [Anotações de Texto](/pdf/pt/python-net/text-based-Annotations/) - trabalhar com anotações de texto livre, realce, sublinhado, ondulado e tachado.
+- [Anotações de Marcação](/pdf/pt/python-net/markup-annotations/) - adicionar ou inspecionar anotações de nota, caret e substituição usadas em cenários de revisão.
+- [Anotações Interativas](/pdf/pt/python-net/interactive-annotations/) - criar anotações de link, botões de navegação e botões de impressão.
+- [Anotações de Forma](/pdf/pt/python-net/shape-annotations/) - usar anotações de linha, quadrado, círculo, polígono e polilinha.
+- [Anotações de mídia](/pdf/pt/python-net/media-annotations/) - adicionar anotações de som, tela, mídia rica e 3D.
+- [Anotações de segurança](/pdf/pt/python-net/security-annotations/) - trabalhar com anotações de anexo de arquivo, redação e anotações relacionadas à proteção.
+- [Anotações de marca d'água](/pdf/pt/python-net/watermark-annotations/) - adicionar e gerenciar elementos de marca d'água baseados em anotações.
+Anotações são especialmente úteis para revisão de documentos, colaboração, marcação de conteúdo e navegação interativa. Comece com a visão geral agrupada quando quiser explorar os tipos de anotação suportados, ou vá diretamente a um tópico específico quando já souber o fluxo de trabalho que precisa.
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md
index 89a914f4c5..0296d45d54 100644
--- a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/_index.md
@@ -1,154 +1,34 @@
---
-title: Adicionar, Excluir e Obter Anotação usando Python
+title: Adicionar, Excluir e Obter Anotações PDF em Python
linktitle: Adicionar, Excluir e Obter Anotação
type: docs
weight: 20
url: /pt/python-net/add-delete-and-get-annotation/
-description: Com o Aspose.PDF para Python, você pode adicionar, excluir e obter anotações do seu arquivo PDF. Verifique todas as listas de anotações para resolver sua tarefa.
-lastmod: "2023-02-17"
+description: Com Aspose.PDF for Python você pode adicionar, excluir e obter anotação do seu arquivo PDF. Consulte todas as listas de anotações para resolver sua tarefa.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como manipular anotações em PDF com Python
+Abstract: As anotações em documentos PDF aprimoram a interação do usuário ao permitir a adição de vários elementos, como notas, realces de texto, formas e anexos de arquivos. Esses recursos melhoram a experiência de visualização e a interatividade do documento. A biblioteca Aspose.PDF for Python categoriza as anotações em vários grupos — Anotações de Texto, Anotações de Realce, Anotações de Figuras, Anotações Autoadesivas e Anotações Extras, cada uma servindo a diferentes funções para enriquecer o engajamento e a usabilidade do documento.
---
-
+As anotações em documentos PDF são elementos que permitem aos usuários alocar conteúdo de determinada forma no documento. As anotações podem ser usadas para adicionar diferentes tipos de notas, realçar texto, desenhar formas, anexar arquivos e executar outras ações que melhoram a visualização, a interatividade e a interação dentro de um documento.
-**O que são anotações em documentos PDF?**
+Esta página agrupa os principais tipos de anotação suportados nesta parte da documentação para que você possa rapidamente ir ao fluxo de trabalho que precisa.
-Anotações em documentos PDF são elementos que permitem aos usuários alocar conteúdo de uma determinada maneira no documento. As anotações podem ser usadas para adicionar diferentes tipos de notas, destacar texto, desenhar formas, anexar arquivos e realizar outras ações que melhoram a visualização, interatividade e interação dentro de um documento.
+Combinamos os diferentes tipos de anotação disponíveis para a biblioteca Aspose.PDF for Python em grupos:
-Combinamos os diferentes tipos de anotação disponíveis para a biblioteca Aspose.PDF para Python em grupos:
+- [Anotações Interativas](/pdf/pt/python-net/interactive-annotations/)
+- [Anotações de Marcação](/pdf/pt/python-net/markup-annotations/)
+- [Anotações de Mídia](/pdf/pt/python-net/media-annotations/)
+- [Anotações de Segurança](/pdf/pt/python-net/security-annotations/)
+- [Anotações de Formas](/pdf/pt/python-net/shape-annotations/)
+- [Anotações de Texto](/pdf/pt/python-net/text-based-Annotations/)
+- [Anotações de Marca d'água](/pdf/pt/python-net/watermark-annotations/)
-- [Anotação de Texto em PDF](/pdf/pt/python-net/text-annotation/)
-- [Anotação de Destaque em PDF](/pdf/pt/python-net/highlights-annotation/)
-- [Anotação de Figuras em PDF](/pdf/pt/python-net/figures-annotation/)
-- [Anotações Adesivas em PDF](/pdf/pt/python-net/sticky-annotations/)
-- [Anotações Extras](/pdf/pt/python-net/extra-annotations/)
+## Tópicos Relacionados a Anotações
-
\ No newline at end of file
+- [Visão geral das anotações PDF](/pdf/pt/python-net/annotations/) para a seção principal e conceitos de anotação.
+- [Importar e Exportar Anotações](/pdf/pt/python-net/import-export-annotations/)
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/extra-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/extra-annotations/_index.md
deleted file mode 100644
index b45d90e3e6..0000000000
--- a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/extra-annotations/_index.md
+++ /dev/null
@@ -1,344 +0,0 @@
----
-title: Anotações Extras usando Python
-linktitle: Anotações Extras
-type: docs
-weight: 60
-url: /pt/python-net/extra-annotations/
-description: Esta seção descreve como adicionar, obter e deletar tipos extras de anotações do seu documento PDF.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Como adicionar Anotação de Plica em um arquivo PDF existente via Python
-
-A Anotação de Plica é um símbolo que indica a edição de texto. A Anotação de Plica também é uma anotação de marcação, então a classe Caret deriva da classe Markup e também fornece funções para obter ou definir propriedades da Anotação de Plica e redefinir o fluxo da aparência da Anotação de Plica. As anotações de plica são frequentemente usadas para sugerir alterações, adições ou modificações no texto.
-
-Passos com os quais criamos anotação de plica:
-
-1. Carregar o arquivo PDF - novo [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Criar nova [CaretAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/caretannotation/) e definir parâmetros de Plica (novo Retângulo, título, assunto, bandeiras, cor). Esta anotação é usada para indicar a inserção de texto.
-3. Uma vez que somos capazes de anexar anotações à página.
-
-O trecho de código a seguir mostra como adicionar Anotação de Plica a um arquivo PDF:
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_file)
-
- caretAnnotation1 = ap.annotations.CaretAnnotation(
- document.pages[1], ap.Rectangle(200, 700.664, 308.708, 740.769, True)
- )
- caretAnnotation1.title = "Usuário Aspose"
- caretAnnotation1.subject = "Texto inserido 1"
- caretAnnotation1.flags = ap.annotations.AnnotationFlags.PRINT
- caretAnnotation1.color = ap.Color.blue
-
- document.pages[1].annotations.append(caretAnnotation1)
- document.save(output_file)
-```
-
-
-### Obter Anotação de Posição
-
-Por favor, tente usar o seguinte trecho de código para Obter Anotação de Posição em um documento PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- caretAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CARET)
- ]
-
- for ca in caretAnnotations:
- print(ca.rect)
-```
-
-### Excluir Anotação de Posição
-
-O trecho de código a seguir mostra como Excluir Anotação de Posição de um arquivo PDF usando Python.
-
-```python
-
- import aspose.pdf as ap
-
- # Carregar o arquivo PDF
- document = ap.Document(input_file)
- caretAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CARET)
- ]
-
- for ca in caretAnnotations:
- document.pages[1].annotations.delete(ca)
-
- document.save(output_file)
-```
-
-## Adicionar Anotação de Link
-
-[Links](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/linkannotation/) são anotações que abrem URLs ou se movem para certas posições dentro do mesmo ou de um documento externo quando você clica.
-
-Uma Anotação de Link é uma área retangular que pode ser colocada em qualquer lugar da página. Cada link tem uma ação PDF correspondente associada a ele. Esta ação é executada quando o usuário clica na área deste link.
-
-O trecho de código a seguir mostra como adicionar uma Anotação de Link a um arquivo PDF usando um exemplo de número de telefone:
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- # Criar objeto TextFragmentAbsorber para encontrar um número de telefone
- textFragmentAbsorber = ap.text.TextFragmentAbsorber("file")
-
- # Aceitar o absorvedor apenas para a 1ª página
- document.pages[1].accept(textFragmentAbsorber)
-
- phoneNumberFragment = textFragmentAbsorber.text_fragments[1]
-
- # Criar Anotação de Link e definir a ação para chamar um número de telefone
- linkAnnotation = ap.annotations.LinkAnnotation(document.pages[1], phoneNumberFragment.rectangle)
- linkAnnotation.action = ap.annotations.GoToURIAction("www.aspose.com")
-
- # Adicionar anotação à página
- document.pages[1].annotations.append(linkAnnotation)
- document.save(output_file)
-```
-
-
-### Obter Anotação de Link
-
-Por favor, tente usar o seguinte trecho de código para Obter [LinkAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/linkannotation/) do documento PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- linkAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.LINK)
- ]
-
- for la in linkAnnotations:
- print(la.rect)
-```
-
-### Excluir Anotação de Link
-
-O seguinte trecho de código mostra como Excluir Anotação de Link do arquivo PDF. Para isso, precisamos encontrar e remover todas as anotações de link na 1ª página. Após isso, salvaremos o documento com a anotação removida.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- highlightAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.LINK)
- ]
-
- for hs in highlightAnnotations:
- document.pages[1].annotations.delete(hs)
-
- document.save(output_file)
-```
-
-
-## Redigir certa região da página com Anotação de Redação usando Aspose.PDF para Python
-
-Aspose.PDF para Python via .NET suporta o recurso de adicionar e manipular Anotações em um arquivo PDF existente. Anotações de Redação em documentos PDF servem para o propósito de remover ou ocultar permanentemente informações confidenciais do documento. O processo de edição das informações envolve cobrir ou sombrear conteúdo específico, como texto, imagens ou gráficos, de maneira que restrinja sua visibilidade e acessibilidade para outras pessoas. Isso garante que as informações sensíveis permaneçam ocultas e protegidas dentro do documento. Para atender a este requisito, é fornecida uma classe chamada [RedactionAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/redactionannotation/), que pode ser usada para redigir certas regiões da página ou pode ser usada para manipular RedactionAnnotations existentes e redigi-las (ou seja, achatar a anotação e remover o texto sob ela).
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- page = document.pages[1]
- redactionAnnotation = ap.annotations.RedactionAnnotation(page, ap.Rectangle(270, 190, 371, 250, True))
- redactionAnnotation.title = "John Smith"
- redactionAnnotation.fill_color = ap.Color.light_gray
- redactionAnnotation.color = ap.Color.red
- redactionAnnotation.redact()
-
- page.annotations.append(redactionAnnotation)
- document.save(output_file)
-```
-
-
-### Obter Anotação de Redação
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- redactionAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.REDACTION)
- ]
-
- for pa in redactionAnnotations:
- print(pa.rect)
-```
-
-### Excluir Anotação de Redação
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- redactionAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.REDACTION)
- ]
-
- for pa in redactionAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/figures/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/figures/_index.md
deleted file mode 100644
index 632aec4da3..0000000000
--- a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/figures/_index.md
+++ /dev/null
@@ -1,438 +0,0 @@
----
-title: Adicionar Anotações de Figuras usando Python
-linktitle: Anotações de Figuras
-type: docs
-weight: 30
-url: /pt/python-net/figures-annotation/
-description: Este artigo descreve como adicionar, obter e excluir anotações de figuras do seu documento PDF com Aspose.PDF para Python via .NET
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Adicionar Anotações de Quadrado e Círculo
-
-Em documentos PDF, uma anotação de quadrado refere-se a um tipo específico de anotação que é representada por uma forma quadrada. As anotações de quadrado são usadas para destacar ou chamar a atenção para uma área ou seção específica dentro do documento.
-
-As anotações [Quadrado](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squareannotation/) e [Círculo](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/circleannotation/) devem exibir, respectivamente, um retângulo ou uma elipse na página.
-
-Passos para criar Anotações de Quadrado ou Círculo:
-
-1. Carregar o arquivo PDF - novo [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Criar nova [SquareAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squareannotation) e definir parâmetros (novo Retângulo, título, cor, cor_interior, opacidade).
-3. Depois precisamos Adicionar a Anotação de Quadrado à página.
-
-O trecho de código a seguir mostra como adicionar Anotações de Quadrado em uma página PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- squareAnnotation = ap.annotations.SquareAnnotation(document.pages[1], ap.Rectangle(60, 600, 250, 450, True))
- squareAnnotation.title = "John Smith"
- squareAnnotation.color = ap.Color.blue
- squareAnnotation.interior_color = ap.Color.blue_violet
- squareAnnotation.opacity = 0.25
-
- document.pages[1].annotations.append(squareAnnotation)
-
- document.save(output_file)
-```
-
-O seguinte trecho de código mostra como adicionar Anotações de Círculo em uma página PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_file)
-
- circleAnnotation = ap.annotations.CircleAnnotation(
- document.pages[1], ap.Rectangle(270, 160, 483, 383, True)
- )
- circleAnnotation.title = "John Smith"
- circleAnnotation.color = ap.Color.red
- circleAnnotation.interior_color = ap.Color.misty_rose
- circleAnnotation.opacity = 0.5
- circleAnnotation.popup = ap.annotations.PopupAnnotation(
- document.pages[1], ap.Rectangle(842, 316, 1021, 459, True)
- )
-
- document.pages[1].annotations.append(circleAnnotation)
- document.save(output_file)
-```
-
-
-Como exemplo, veremos o seguinte resultado de adicionar anotações de Quadrado e Círculo a um documento PDF:
-
-
-
-### Obter Anotação de Círculo
-
-Por favor, tente usar o seguinte trecho de código para Obter Anotação de Círculo do documento PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- circleAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CIRCLE)
- ]
-
- for ca in circleAnnotations:
- print(ca.rect)
-```
-
-### Obter Anotação de Quadrado
-
-Por favor, tente usar o seguinte trecho de código para Obter Anotação de Quadrado do documento PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squareAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUARE)
- ]
-
- for pa in squareAnnotations:
- print(pa.rect)
-```
-
-
-
-### Excluir Anotação de Círculo
-
-O trecho de código a seguir mostra como excluir a anotação de círculo de um arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- circleAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.CIRCLE)
- ]
-
- for ca in circleAnnotations:
- document.pages[1].annotations.delete(ca)
-
- document.save(output_file)
-```
-
-### Excluir Anotação de Quadrado
-
-O trecho de código a seguir mostra como excluir a anotação de quadrado de um arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squareAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUARE)
- ]
-
- for pa in squareAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-## Adicionar Anotações de Polígono e Polilinha
-
-A ferramenta Polilinha permite criar formas e contornos com um número arbitrário de lados no documento.
-
-[Anotações de Polígono](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polygonannotation/) representam polígonos em uma página. Eles podem ter qualquer número de vértices conectados por linhas retas.
-
-[Anotações de Polilinha](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polylineannotation/) também são semelhantes a polígonos, a única diferença é que o primeiro e o último vértices não são implicitamente conectados.
-
-Passos com os quais criamos anotações de Polígono:
-
-1. Carregar o arquivo PDF - novo [Documento](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Criar nova [Anotação de Polígono](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polygonannotation) e definir parâmetros do Polígono (novo Retângulo, novos Pontos, título, cor, cor_interior e opacidade).
-1. Depois podemos adicionar anotações à página.
-
-O trecho de código a seguir mostra como adicionar Anotações de Polígono a um arquivo PDF:
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- polygonAnnotation = ap.annotations.PolygonAnnotation(
- document.pages[1],
- ap.Rectangle(200, 300, 400, 400, True),
- [
- ap.Point(200, 300),
- ap.Point(220, 300),
- ap.Point(250, 330),
- ap.Point(300, 304),
- ap.Point(300, 400),
- ],
- )
- polygonAnnotation.title = "John Smith"
- polygonAnnotation.color = ap.Color.blue
- polygonAnnotation.interior_color = ap.Color.blue_violet
- polygonAnnotation.opacity = 0.25
-
- document.pages[1].annotations.append(polygonAnnotation)
- document.save(output_file)
-```
-
-
-O trecho de código a seguir mostra como adicionar Anotações de Polilinha a um arquivo PDF:
-
-1. Carregar o arquivo PDF - novo [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Criar novas [Polyline Annotations](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/polylineannotation/) e definir parâmetros do Polígono (novo Retângulo, novos Pontos, título, cor, cor_interior e opacidade).
-1. Depois podemos Adicionar anotações à página.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- polylineAnnotation = ap.annotations.PolylineAnnotation(
- document.pages[1],
- ap.Rectangle(270, 193, 571, 383, True),
- [
- ap.Point(545, 150),
- ap.Point(545, 190),
- ap.Point(667, 190),
- ap.Point(667, 110),
- ap.Point(626, 111),
- ],
- )
- polylineAnnotation.title = "John Smith"
- polylineAnnotation.color = ap.Color.red
- polylineAnnotation.popup = ap.annotations.PopupAnnotation(
- document.pages[1], ap.Rectangle(842, 196, 1021, 338, True)
- )
-
- document.pages[1].annotations.append(polylineAnnotation)
- document.save(output_file)
-```
-
-
-### Obter Anotações de Polígono e Polilinha
-
-Por favor, tente usar o seguinte trecho de código para Obter Anotações de Polígono em documento PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polygonAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLYGON)
- ]
-
- for pa in polygonAnnotations:
- print(pa.rect)
-```
-
-Por favor, tente usar o seguinte trecho de código para Obter Anotações de Polilinha em documento PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polylineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLY_LINE)
- ]
-
- for pa in polylineAnnotations:
- print(pa.rect)
-```
-
-### Excluir Anotações de Polígono e Polilinha
-
-O seguinte trecho de código mostra como Excluir Anotações de Polígono de um arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polygonAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLYGON)
- ]
-
- for pa in polygonAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
-O seguinte trecho de código mostra como excluir anotações de polilinha de um arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- polylineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.POLY_LINE)
- ]
-
- for pa in polylineAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/hightlights/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/hightlights/_index.md
deleted file mode 100644
index 11178e9ac7..0000000000
--- a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/hightlights/_index.md
+++ /dev/null
@@ -1,396 +0,0 @@
----
-title: Anotação de Destaques em PDF usando Python
-linktitle: Anotação de Destaques
-type: docs
-weight: 20
-url: /pt/python-net/highlights-annotation/
-description: As anotações de marcação são apresentadas no texto como destaques, sublinhados, tachados ou sublinhados irregulares no texto de um documento.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-Anotações de Marcação de Texto em PDF são usadas para destacar, sublinhar, riscar ou adicionar notas ao texto no documento. Essas anotações têm a intenção de destacar ou chamar a atenção para partes específicas do texto. Tais anotações permitem que os usuários marquem visualmente ou modifiquem o conteúdo de um arquivo PDF.
-
-Anotação de destaque é usada para marcar o texto com um fundo colorido, geralmente amarelo, para indicar sua importância ou relevância.
-
-Anotação de sublinhado é uma linha colocada abaixo do texto selecionado para indicar significância, ênfase, ou indicar edições sugeridas.
-
-Anotação de tachado inclui um risco ou tachado de um texto específico para mostrar que foi deletado, substituído, ou não é mais válido.
-
-Linha ondulada é usada para sublinhar o texto para indicar um tipo diferente de acento, como erros ortográficos, problemas potenciais, ou mudanças propostas.
-
-## Adicionar Anotação de Marcação de Texto
-
-Para adicionar uma Anotação de Marcação de Texto ao documento PDF, precisamos realizar as seguintes ações:
-
-1. Carregar o arquivo PDF - novo objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Criar anotações:
- - [HighlightAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/highlightannotation/) e definir parâmetros (título, cor).
- - [StrikeOutAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/strikeoutannotation/) e definir parâmetros (título, cor).
- - [SquigglyAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squigglyannotation/) e definir parâmetros (título, cor).
- - [UnderlineAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/underlineannotation/) e definir parâmetros (título, cor).
-1. Depois devemos adicionar todas as anotações à página.
-
-### Adicionar Anotação de Realce
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_file)
-
- # Criar Anotação de Círculo
- highlightAnnotation = ap.annotations.HighlightAnnotation(
- document.pages[1], ap.Rectangle(300, 750, 320, 770, True)
- )
- document.pages[1].annotations.append(highlightAnnotation)
- document.save(output_file)
-```
-
-
-### Adicionar Anotação de Tachado
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- strikeoutAnnotation = ap.annotations.StrikeOutAnnotation(
- document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
- )
- strikeoutAnnotation.title = "Usuário Aspose"
- strikeoutAnnotation.subject = "Texto inserido 1"
- strikeoutAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- strikeoutAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(strikeoutAnnotation)
- document.save(output_file)
-```
-
-### Adicionar Anotação de Ondulação
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- page = document.pages[1]
- squigglyAnnotation = ap.annotations.SquigglyAnnotation(page, ap.Rectangle(67, 317, 261, 459, True))
- squigglyAnnotation.title = "John Smith"
- squigglyAnnotation.color = ap.Color.blue
-
- page.annotations.append(squigglyAnnotation)
-
- document.save(output_file)
-```
-
-### Adicionar Anotação de Sublinhado
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- underlineAnnotation = ap.annotations.UnderlineAnnotation(
- document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
- )
- underlineAnnotation.title = "Usuário Aspose"
- underlineAnnotation.subject = "Sublinhado Inserido 1"
- underlineAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- underlineAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(underlineAnnotation)
- document.save(output_file)
-```
-
-
-## Obter Anotação de Marcação de Texto
-
-Por favor, tente usar o seguinte trecho de código para Obter Anotação de Marcação de Texto do documento PDF.
-
-### Obter Anotação de Realce
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- highlightAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT)
- ]
-
- for ha in highlightAnnotations:
- print(ha.rect)
-```
-
-### Obter Anotação de Tachado
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- print(pa.rect)
-```
-
-### Obter Anotação de Ondulado
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squigglyAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUIGGLY)
- ]
-
- for pa in squigglyAnnotations:
- print(pa.rect)
-```
-
-
-### Obter Anotação de Sublinhado
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- UnderlineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.UNDERLINE)
- ]
-
- for ta in UnderlineAnnotations:
- print(ta.rect)
-```
-
-## Excluir Anotação de Marcação de Texto
-
-O seguinte trecho de código mostra como excluir a anotação de marcação de texto de um arquivo PDF.
-
-### Excluir Anotação de Destaque
-
-```python
-
- import aspose.pdf as ap
-
- # Carregar o arquivo PDF
- document = ap.Document(input_file)
- highlightAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT)
- ]
-
- for hs in highlightAnnotations:
- document.pages[1].annotations.delete(hs)
-
- document.save(output_file)
-```
-
-### Excluir Anotação de Riscar
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
-### Excluir Anotação Ondulada
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- squigglyAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.SQUIGGLY)
- ]
-
- for pa in squigglyAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-### Excluir Anotação Sublinhada
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- underlineAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.UNDERLINE)
- ]
-
- for ta in underlineAnnotations:
- document.pages[1].annotations.delete(ta)
-
- document.save(output_file)
-```
-
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
new file mode 100644
index 0000000000..9c73143f30
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
@@ -0,0 +1,330 @@
+---
+title: Anotações Interativas usando Python
+linktitle: Anotações Interativas
+type: docs
+weight: 60
+url: /pt/python-net/interactive-annotations/
+description: Aprenda a adicionar, ler e excluir anotações de link, e como criar botões de navegação e impressão em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Trabalhe com anotações e botões interativos de PDF em Python.
+Abstract: Este artigo explica como trabalhar com anotações interativas em arquivos PDF usando Aspose.PDF for Python via .NET. Ele aborda a adição de anotações de link, a leitura de áreas de link existentes, a exclusão de anotações de link, a criação de botões de navegação de página e a adição de um botão de impressão a um documento PDF.
+---
+
+Este artigo mostra como trabalhar com anotações interativas em documentos PDF usando Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra vários fluxos de trabalho comuns:
+
+- adicionar uma anotação de link ao texto existente
+- obter retângulos de anotação de link de uma página
+- excluir anotações de link
+- criar botões de navegação
+- criar um botão de impressão
+
+## Anotação de link
+
+### Adicionar Anotação de Link
+
+Este exemplo procura o fragmento de texto na primeira página `"file"` e coloca uma anotação de link clicável sobre a área de texto correspondente. Quando o usuário clica na anotação, o PDF abre o endereço web especificado.
+
+#### Carregue o documento e encontre o texto-alvo
+
+Criar um `Document` objeto e usar `TextFragmentAbsorber` para procurar o texto que se tornará interativo.
+
+```python
+document = ap.Document(infile)
+text_fragment_absorber = ap.text.TextFragmentAbsorber("file")
+
+document.pages[1].accept(text_fragment_absorber)
+phone_number_fragment = text_fragment_absorber.text_fragments[1]
+```
+
+#### Criar a anotação de link
+
+Construir um `LinkAnnotation` usando o retângulo do fragmento de texto correspondido e atribuindo uma ação URI a ele.
+
+```python
+link_annotation = ap.annotations.LinkAnnotation(
+ document.pages[1], phone_number_fragment.rectangle
+)
+link_annotation.action = ap.annotations.GoToURIAction("https://www.aspose.com")
+```
+
+#### Adicione a anotação e salve o PDF
+
+Anexe a anotação à página e salve o arquivo atualizado.
+
+```python
+document.pages[1].annotations.append(link_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def link_add(infile, outfile):
+ document = ap.Document(infile)
+ text_fragment_absorber = ap.text.TextFragmentAbsorber("file")
+
+ document.pages[1].accept(text_fragment_absorber)
+ phone_number_fragment = text_fragment_absorber.text_fragments[1]
+
+ link_annotation = ap.annotations.LinkAnnotation(
+ document.pages[1], phone_number_fragment.rectangle
+ )
+ link_annotation.action = ap.annotations.GoToURIAction("https://www.aspose.com")
+
+ document.pages[1].annotations.append(link_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotação de Link
+
+Para inspecionar os links interativos existentes, filtre a coleção de anotações na primeira página e mantenha apenas os itens cujo tipo é `LINK`. O exemplo então imprime o retângulo para cada anotação correspondente.
+
+#### Carregue o PDF e colete anotações de link
+
+```python
+document = ap.Document(infile)
+link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+]
+```
+
+#### Ler os retângulos de anotação
+
+Percorra as anotações filtradas e imprima as coordenadas de cada área de link.
+
+```python
+for link_annotation in link_annotations:
+ print(link_annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def link_get(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for link_annotation in link_annotations:
+ print(link_annotation.rect)
+```
+
+### Excluir Anotação de Link
+
+Este fluxo de trabalho remove todas as anotações de link da primeira página e salva o PDF limpo como um novo arquivo.
+
+#### Encontre as anotações de link para remover
+
+```python
+document = ap.Document(infile)
+link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+]
+```
+
+#### Exclua cada anotação de link
+
+```python
+for link_annotation in link_annotations:
+ document.pages[1].annotations.delete(link_annotation)
+```
+
+#### Salvar o documento atualizado
+
+```python
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def link_delete(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for link_annotation in link_annotations:
+ document.pages[1].annotations.delete(link_annotation)
+
+ document.save(outfile)
+```
+
+## Anotação de Widget
+
+### Adicionar Botão de Navegação
+
+Botões de navegação são úteis em PDFs de várias páginas quando você quer que os leitores se movimentem entre as páginas sem usar a interface do visualizador. Este exemplo adiciona `Previous Page` e `Next Page` botões para cada página.
+
+#### Definir configurações do botão
+
+Armazene as legendas dos botões, posições e ações predefinidas em uma lista de configuração simples.
+
+```python
+button_config = [
+ ("Previous Page", 120.0, ap.annotations.PredefinedAction.PREV_PAGE),
+ ("Next Page", 230.0, ap.annotations.PredefinedAction.NEXT_PAGE),
+]
+```
+
+#### Carregue o PDF e verifique se há várias páginas
+
+O exemplo abre o documento de origem e adiciona mais uma página, de modo que as ações de navegação tenham pelo menos duas páginas para trabalhar.
+
+```python
+document = ap.Document(infile)
+document.pages.add()
+```
+
+#### Crie os botões em cada página
+
+Para cada página, crie um `ButtonField`, defina seu texto e cores, atribua uma ação de navegação predefinida e adicione-o ao formulário.
+
+```python
+for page in document.pages:
+ for name, x_pos, action in button_config:
+ rect = ap.Rectangle(x_pos, 10.0, x_pos + 100, 40.0, True)
+ button = ap.forms.ButtonField(page, rect)
+ button.partial_name = name
+ button.value = name
+ button.characteristics.border = ap.Color.red.to_rgb()
+ button.characteristics.background = ap.Color.orange.to_rgb()
+ button.actions.on_release_mouse_btn = ap.annotations.NamedAction(action)
+ document.form.add(button)
+```
+
+#### Salvar o resultado
+
+```python
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def navigation_buttons_add(infile, outfile):
+ button_config = [
+ ("Previous Page", 120.0, ap.annotations.PredefinedAction.PREV_PAGE),
+ ("Next Page", 230.0, ap.annotations.PredefinedAction.NEXT_PAGE),
+ ]
+
+ document = ap.Document(infile)
+ document.pages.add()
+
+ for page in document.pages:
+ for name, x_pos, action in button_config:
+ rect = ap.Rectangle(x_pos, 10.0, x_pos + 100, 40.0, True)
+ button = ap.forms.ButtonField(page, rect)
+ button.partial_name = name
+ button.value = name
+ button.characteristics.border = ap.Color.red.to_rgb()
+ button.characteristics.background = ap.Color.orange.to_rgb()
+ button.actions.on_release_mouse_btn = ap.annotations.NamedAction(action)
+ document.form.add(button)
+
+ document.save(outfile)
+```
+
+### Adicionar Botão de Impressão
+
+Este exemplo cria um novo PDF de uma página e coloca um botão de impressão próximo ao topo da página. Clicar no botão aciona a ação de impressão predefinida em um visualizador de PDF compatível.
+
+#### Crie um novo PDF e adicione uma página
+
+```python
+document = ap.Document()
+page = document.pages.add()
+```
+
+#### Criar e configurar o botão
+
+Defina o retângulo do botão, crie o `ButtonField`, defina sua legenda e anexe a ação de impressão.
+
+```python
+rect = ap.Rectangle(72, 748, 164, 768, True)
+
+print_button = ap.forms.ButtonField(page, rect)
+print_button.alternate_name = "Print current document"
+print_button.color = ap.Color.black
+print_button.partial_name = "printBtn1"
+print_button.value = "Print Document"
+print_button.actions.on_release_mouse_btn = ap.annotations.NamedAction(
+ ap.annotations.PredefinedAction.FILE_PRINT
+)
+```
+
+#### Definir estilos de borda e plano de fundo
+
+O exemplo define uma borda sólida e aplica cores personalizadas para tornar o botão visível no documento.
+
+```python
+border = ap.annotations.Border(print_button)
+border.style = ap.annotations.BorderStyle.SOLID
+border.width = 2
+print_button.border = border
+
+print_button.characteristics.border = ap.Color.blue.to_rgb()
+print_button.characteristics.background = ap.Color.light_blue.to_rgb()
+```
+
+#### Adicione o botão e salve o PDF
+
+```python
+document.form.add(print_button)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def print_button_add(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ rect = ap.Rectangle(72, 748, 164, 768, True)
+
+ print_button = ap.forms.ButtonField(page, rect)
+ print_button.alternate_name = "Print current document"
+ print_button.color = ap.Color.black
+ print_button.partial_name = "printBtn1"
+ print_button.value = "Print Document"
+ print_button.actions.on_release_mouse_btn = ap.annotations.NamedAction(
+ ap.annotations.PredefinedAction.FILE_PRINT
+ )
+
+ border = ap.annotations.Border(print_button)
+ border.style = ap.annotations.BorderStyle.SOLID
+ border.width = 2
+ print_button.border = border
+
+ print_button.characteristics.border = ap.Color.blue.to_rgb()
+ print_button.characteristics.background = ap.Color.light_blue.to_rgb()
+
+ document.form.add(print_button)
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Mídia](/python-net/media-annotations/)
+- [Anotações de Segurança](/python-net/security-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
new file mode 100644
index 0000000000..1257c210b3
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
@@ -0,0 +1,499 @@
+---
+title: Anotações de marcação usando Python
+linktitle: Anotações de marcação
+type: docs
+weight: 30
+url: /pt/python-net/markup-annotations/
+description: Aprenda como adicionar, ler e excluir anotações de texto, cursor e substituição em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Trabalhe com anotações de marcação em arquivos PDF usando Python.
+Abstract: Este artigo explica como criar, inspecionar e remover anotações de marcação em documentos PDF usando Aspose.PDF for Python via .NET. Ele cobre anotações de texto, anotações de cursor e anotações de substituição, com cada fluxo de trabalho dividido em pequenas etapas e exemplos de código.
+---
+
+Este artigo mostra como trabalhar com anotações de marcação em documentos PDF usando Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra três fluxos de trabalho comuns de anotação:
+
+- anotações de texto para comentários em estilo de nota
+- anotações de caret para marcadores de inserção
+- substituir anotações por marcação de substituição de texto
+
+## Anotações de texto
+
+### Adicionar Anotações de Texto
+
+Este exemplo cria uma anotação de texto na primeira página e a vincula a uma janela pop-up. Anotações de texto são úteis para comentários estilo post-it em fluxos de revisão.
+
+#### Abra o PDF de origem
+
+```python
+document = ap.Document(infile)
+```
+
+#### Criar e configurar a anotação de texto
+
+Defina o retângulo da anotação e defina seu título, assunto, conteúdo, sinalizadores de exibição, cor e ícone.
+
+```python
+text_annotation = ap.annotations.TextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 613.664, 428.708, 680.769, True),
+)
+text_annotation.title = "Aspose User"
+text_annotation.subject = "Sticky Note"
+text_annotation.contents = (
+ "This is a text annotation added by Aspose.PDF for Python via .NET"
+)
+text_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+text_annotation.color = ap.Color.blue
+text_annotation.icon = ap.annotations.TextIcon.HELP
+```
+
+#### Criar a anotação pop-up
+
+Crie uma janela pop-up e conecte-a à anotação de texto.
+
+```python
+popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(428.708, 613.664, 528.708, 713.664, True),
+)
+popup.open = True
+
+text_annotation.popup = popup
+```
+
+#### Adicione a anotação e salve o PDF
+
+```python
+document.pages[1].annotations.add(text_annotation, consider_rotation=False)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def text_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ text_annotation = ap.annotations.TextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 613.664, 428.708, 680.769, True),
+ )
+ text_annotation.title = "Aspose User"
+ text_annotation.subject = "Sticky Note"
+ text_annotation.contents = (
+ "This is a text annotation added by Aspose.PDF for Python via .NET"
+ )
+ text_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ text_annotation.color = ap.Color.blue
+ text_annotation.icon = ap.annotations.TextIcon.HELP
+
+ popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(428.708, 613.664, 528.708, 713.664, True),
+ )
+ popup.open = True
+
+ text_annotation.popup = popup
+
+ document.pages[1].annotations.add(text_annotation, consider_rotation=False)
+ document.save(outfile)
+```
+
+### Obter Anotações de Texto
+
+Para inspecionar anotações de texto existentes, filtre a coleção de anotações na primeira página e mantenha apenas os itens cujo tipo é `TEXT`.
+
+#### Carregue o documento e colete anotações de texto
+
+```python
+document = ap.Document(infile)
+text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+]
+```
+
+#### Imprima os retângulos de anotação
+
+```python
+for annotation in text_annotations:
+ print(annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def text_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+ ]
+
+ for annotation in text_annotations:
+ print(annotation.rect)
+```
+
+### Excluir anotações de texto
+
+Este fluxo de trabalho remove todas as anotações de texto da primeira página e salva o PDF modificado.
+
+#### Encontrar anotações de texto para remover
+
+```python
+document = ap.Document(infile)
+text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+]
+```
+
+#### Exclua as anotações e salve o arquivo
+
+```python
+for annotation in text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def text_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.TEXT
+ ]
+
+ for annotation in text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Anotações de cursor
+
+### Adicionar Anotações de Cursor
+
+Anotações de cursor são usadas para marcar pontos de inserção em cenários de revisão. Este exemplo adiciona uma anotação de cursor com uma nota popup anexada.
+
+#### Abra o Document e obtenha a página de destino
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Criar e configurar a anotação caret
+
+```python
+caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+)
+caret_annotation.title = "Aspose User"
+caret_annotation.subject = "Inserted text 1"
+caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+caret_annotation.color = ap.Color.blue
+```
+
+#### Anexe o popup e salve o documento
+
+```python
+caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+)
+page.annotations.append(caret_annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def caret_annotations_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+ )
+ caret_annotation.title = "Aspose User"
+ caret_annotation.subject = "Inserted text 1"
+ caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ caret_annotation.color = ap.Color.blue
+ caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+ )
+ page.annotations.append(caret_annotation)
+
+ document.save(outfile)
+```
+
+### Obter Anotações de Cursor
+
+Para inspecionar anotações caret, itere pelas anotações da página e filtre por `CARET` tipo de anotação.
+
+#### Carregue o documento e a página
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Imprimir retângulos de anotação de cursor
+
+```python
+for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET:
+ print(annot.rect)
+```
+
+#### Exemplo completo
+
+```python
+def caret_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET:
+ print(annot.rect)
+```
+
+### Excluir anotações de caret
+
+Este fluxo de trabalho coleta anotações de cursor primeiro, exclui‑as uma por uma e, em seguida, salva o arquivo atualizado.
+
+#### Carregue o documento e colete anotações de cursor
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+caret_annotations = [
+ annot
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET
+]
+```
+
+#### Exclua as anotações e salve o documento
+
+```python
+for annot in caret_annotations:
+ page.annotations.delete(annot)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def caret_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ caret_annotations = [
+ annot
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.CARET
+ ]
+
+ for annot in caret_annotations:
+ page.annotations.delete(annot)
+
+ document.save(outfile)
+```
+
+## Substituir Anotações
+
+### Adicionar Substituir Anotações
+
+Anotações de substituição combinam uma anotação de caret e uma anotação de tachado agrupada. Esse padrão marca o texto que deve ser substituído e vincula a nota de substituição ao conteúdo riscado.
+
+#### Abra o documento e obtenha a página
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Criar a anotação caret para texto de substituição
+
+```python
+caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(361.246, 727.908, 370.081, 735.107, True)
+)
+caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+caret_annotation.subject = "Inserted text 2"
+caret_annotation.title = "Aspose User"
+caret_annotation.color = ap.Color.blue
+caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+)
+```
+
+#### Criar a anotação de tachado agrupada
+
+Defina a área de tachado, atribua pontos quad e vincule-a à anotação de cursor através de `in_reply_to` e `reply_type`.
+
+```python
+strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ page, ap.Rectangle(318.407, 727.826, 368.916, 740.098, True)
+)
+strikeout_annotation.color = ap.Color.blue
+strikeout_annotation.quad_points = [
+ ap.Point(321.66, 739.416),
+ ap.Point(365.664, 739.416),
+ ap.Point(321.66, 728.508),
+ ap.Point(365.664, 728.508),
+]
+strikeout_annotation.subject = "Cross-out"
+strikeout_annotation.in_reply_to = caret_annotation
+strikeout_annotation.reply_type = ap.annotations.ReplyType.GROUP
+```
+
+#### Adicione ambas as anotações e salve o PDF
+
+```python
+page.annotations.append(caret_annotation)
+page.annotations.append(strikeout_annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def replace_annotations_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ caret_annotation = ap.annotations.CaretAnnotation(
+ page, ap.Rectangle(361.246, 727.908, 370.081, 735.107, True)
+ )
+ caret_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ caret_annotation.subject = "Inserted text 2"
+ caret_annotation.title = "Aspose User"
+ caret_annotation.color = ap.Color.blue
+ caret_annotation.popup = ap.annotations.PopupAnnotation(
+ page, ap.Rectangle(310, 713, 410, 730, True)
+ )
+
+ strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ page, ap.Rectangle(318.407, 727.826, 368.916, 740.098, True)
+ )
+ strikeout_annotation.color = ap.Color.blue
+ strikeout_annotation.quad_points = [
+ ap.Point(321.66, 739.416),
+ ap.Point(365.664, 739.416),
+ ap.Point(321.66, 728.508),
+ ap.Point(365.664, 728.508),
+ ]
+ strikeout_annotation.subject = "Cross-out"
+ strikeout_annotation.in_reply_to = caret_annotation
+ strikeout_annotation.reply_type = ap.annotations.ReplyType.GROUP
+
+ page.annotations.append(caret_annotation)
+ page.annotations.append(strikeout_annotation)
+
+ document.save(outfile)
+```
+
+### Obter Substituir Anotações
+
+Para identificar anotações de substituição, encontre anotações de tachado que estejam agrupadas como respostas a outra anotação. O exemplo converte cada anotação de tachado antes de verificar seus campos de relacionamento.
+
+#### Carregue o documento e itere pelas anotações
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+#### Filtrar anotações de tachado agrupadas
+
+```python
+for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT:
+ sa = cast(ap.annotations.StrikeOutAnnotation, annot)
+ if (
+ sa.in_reply_to is not None
+ and sa.reply_type == ap.annotations.ReplyType.GROUP
+ ):
+ print(f"Replace annotation rect: {sa.rect}")
+```
+
+#### Exemplo completo
+
+```python
+def replace_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ for annot in page.annotations:
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT:
+ sa = cast(ap.annotations.StrikeOutAnnotation, annot)
+ if (
+ sa.in_reply_to is not None
+ and sa.reply_type == ap.annotations.ReplyType.GROUP
+ ):
+ print(f"Replace annotation rect: {sa.rect}")
+```
+
+### Excluir Substituir Anotações
+
+Este fluxo de trabalho coleta anotações de tachado usadas para substituir marcações, remove-as da página e salva o PDF de saída.
+
+#### Carregue o documento e colete anotações de substituição
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+replace_annotations = [
+ cast(ap.annotations.StrikeOutAnnotation, annot)
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+]
+```
+
+#### Exclua as anotações e salve o documento
+
+```python
+for annot in replace_annotations:
+ page.annotations.delete(annot)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def replace_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ replace_annotations = [
+ cast(ap.annotations.StrikeOutAnnotation, annot)
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+ ]
+
+ for annot in replace_annotations:
+ page.annotations.delete(annot)
+
+ document.save(outfile)
+```
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
new file mode 100644
index 0000000000..f0783a780e
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
@@ -0,0 +1,508 @@
+---
+title: Anotações de mídia em PDF
+linktitle: Anotações de Mídia
+type: docs
+weight: 40
+url: /pt/python-net/media-annotations/
+description: Aprenda como adicionar anotações de som, 3D, tela e mídia rica a documentos PDF, e como inspecionar ou excluir anotações multimídia usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Trabalhe com anotações PDF de multimídia e mídia rica em Python.
+Abstract: Este artigo explica como criar e gerenciar anotações de mídia em documentos PDF usando Aspose.PDF for Python via .NET. Ele aborda anotações de som, anotações 3D, anotações de tela, anotações de mídia rica e técnicas para listar ou excluir anotações multimídia de uma página PDF.
+---
+
+Este artigo mostra como trabalhar com anotações de mídia em documentos PDF usando Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra vários fluxos de trabalho multimídia:
+
+- adicionar uma anotação de som
+- criar uma anotação 3D a partir de um modelo U3D
+- adicionar uma anotação de tela a partir de um arquivo de mídia
+- adicionar e excluir anotações de mídia rica
+- inspecionar anotações multimídia existentes
+
+## Adicionar Anotações de Som
+
+Este exemplo adiciona uma anotação de som na primeira página de um PDF existente e a vincula a um arquivo de mídia WAV armazenado no diretório de entrada.
+
+### Abra o PDF e defina o arquivo de mídia
+
+```python
+media_dir = path.dirname(infile)
+
+document = ap.Document(infile)
+page = document.pages[1]
+
+media_file = path.join(media_dir, "file_example_WAV_1MG.wav")
+```
+
+### Criar e configurar a anotação de som
+
+Defina o retângulo da anotação, a cor, o título e o assunto. Em seguida, adicione uma anotação popup para fornecer detalhes extras quando a anotação for selecionada.
+
+```python
+sound_annotation = ann.SoundAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+ media_file,
+)
+
+sound_annotation.color = ap.Color.blue
+sound_annotation.title = "John Smith"
+sound_annotation.subject = "Sound Annotation demo"
+
+sound_annotation.popup = ann.PopupAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+)
+```
+
+### Adicione a anotação e salve o PDF
+
+```python
+page.annotations.append(sound_annotation)
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def sound_annotation_add(infile, outfile):
+ media_dir = path.dirname(infile)
+
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ media_file = path.join(media_dir, "file_example_WAV_1MG.wav")
+
+ sound_annotation = ann.SoundAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+ media_file,
+ )
+
+ sound_annotation.color = ap.Color.blue
+ sound_annotation.title = "John Smith"
+ sound_annotation.subject = "Sound Annotation demo"
+
+ sound_annotation.popup = ann.PopupAnnotation(
+ page,
+ ap.Rectangle(20, 700, 60, 740, True),
+ )
+
+ page.annotations.append(sound_annotation)
+ document.save(outfile)
+```
+
+## Adicionar Anotações 3D
+
+Este fluxo de trabalho cria um novo PDF e incorpora um modelo 3D a partir de um arquivo U3D. Ele também define visualizações predefinidas e configurações de renderização para o conteúdo 3D.
+
+### Crie o documento PDF e o conteúdo 3D
+
+```python
+model_file = infile
+
+document = ap.Document()
+
+pdf3d_content = ann.PDF3DContent(model_file)
+pdf3d_artwork = ann.PDF3DArtwork(document, pdf3d_content)
+pdf3d_artwork.lighting_scheme = ann.PDF3DLightingScheme(type_name="CAD")
+pdf3d_artwork.render_mode = ann.PDF3DRenderMode(type_name="Solid")
+```
+
+### Defina as matrizes de visualização 3D
+
+Essas matrizes descrevem como o modelo 3D é exibido a partir de diferentes pontos de vista.
+
+```python
+top_matrix = ap.Matrix3D(
+ 1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0.10271,
+ 0.08184,
+ 0.273836,
+)
+
+front_matrix = ap.Matrix3D(
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ 1,
+ -1,
+ 0,
+ 0,
+ 0.332652,
+ 0.08184,
+ 0.085273,
+)
+```
+
+### Adicionar vistas nomeadas à obra de arte
+
+```python
+pdf3d_artwork.view_array.add(ann.PDF3DView(document, top_matrix, 0.188563, "Top"))
+pdf3d_artwork.view_array.add(ann.PDF3DView(document, front_matrix, 0.188563, "Left"))
+```
+
+### Crie a anotação e salve o documento
+
+```python
+page = document.pages.add()
+
+pdf3d_annotation = ann.PDF3DAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 700, True),
+ pdf3d_artwork,
+)
+
+pdf3d_annotation.border = ann.Border(pdf3d_annotation)
+pdf3d_annotation.set_default_view_index(1)
+pdf3d_annotation.flags = ann.AnnotationFlags.NO_ZOOM
+pdf3d_annotation.name = path.basename(model_file)
+
+page.annotations.append(pdf3d_annotation)
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def annotation_3d_add(infile, outfile):
+ model_file = infile
+
+ document = ap.Document()
+
+ pdf3d_content = ann.PDF3DContent(model_file)
+ pdf3d_artwork = ann.PDF3DArtwork(document, pdf3d_content)
+ pdf3d_artwork.lighting_scheme = ann.PDF3DLightingScheme(type_name="CAD")
+ pdf3d_artwork.render_mode = ann.PDF3DRenderMode(type_name="Solid")
+
+ top_matrix = ap.Matrix3D(
+ 1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ -1,
+ 0.10271,
+ 0.08184,
+ 0.273836,
+ )
+
+ front_matrix = ap.Matrix3D(
+ 0,
+ -1,
+ 0,
+ 0,
+ 0,
+ 1,
+ -1,
+ 0,
+ 0,
+ 0.332652,
+ 0.08184,
+ 0.085273,
+ )
+
+ pdf3d_artwork.view_array.add(ann.PDF3DView(document, top_matrix, 0.188563, "Top"))
+ pdf3d_artwork.view_array.add(
+ ann.PDF3DView(document, front_matrix, 0.188563, "Left")
+ )
+
+ page = document.pages.add()
+
+ pdf3d_annotation = ann.PDF3DAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 700, True),
+ pdf3d_artwork,
+ )
+
+ pdf3d_annotation.border = ann.Border(pdf3d_annotation)
+ pdf3d_annotation.set_default_view_index(1)
+ pdf3d_annotation.flags = ann.AnnotationFlags.NO_ZOOM
+ pdf3d_annotation.name = path.basename(model_file)
+
+ page.annotations.append(pdf3d_annotation)
+ document.save(outfile)
+```
+
+## Adicionar Anotações de Tela
+
+Anotações de tela permitem que você anexe mídia reproduzível a uma página PDF. Este exemplo cria um novo PDF e adiciona uma anotação de tela baseada em um arquivo SWF.
+
+### Criar o PDF e a página
+
+```python
+media_file = infile
+
+document = ap.Document()
+page = document.pages.add()
+```
+
+### Criar a anotação de tela
+
+```python
+screen_annotation = ann.ScreenAnnotation(
+ page,
+ ap.Rectangle(170, 190, 470, 380, True),
+ media_file,
+)
+```
+
+### Adicione a anotação e salve o PDF
+
+```python
+page.annotations.append(screen_annotation)
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def screen_annotation_with_media_add(infile, outfile):
+ media_file = infile
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ screen_annotation = ann.ScreenAnnotation(
+ page,
+ ap.Rectangle(170, 190, 470, 380, True),
+ media_file,
+ )
+
+ page.annotations.append(screen_annotation)
+ document.save(outfile)
+```
+
+## Anotações de Mídia Enriquecida
+
+### Adicionar Anotações de Mídia Rica
+
+Anotações de mídia rica podem incorporar conteúdo interativo avançado, como reprodutores de vídeo com pôsteres, skins e configurações de reprodução personalizadas.
+
+### Prepare os recursos de mídia e do player
+
+O exemplo carrega o vídeo, a imagem de pôster e os arquivos de skin do player a partir de localizações predefinidas.
+
+```python
+media_dir = path.dirname(infile)
+path_to_adobe_app = (
+ r"C:\\Program Files (x86)\\Adobe\\Acrobat 2017\\Acrobat\\Multimedia Skins"
+)
+
+document = ap.Document()
+page = document.pages.add()
+
+video_name = "file_example_MP4_480_1_5MG.mp4"
+poster_name = "file_example_MP4_480_1_5MG_poster.jpg"
+skin_name = "SkinOverAllNoFullNoCaption.swf"
+```
+
+### Criar a anotação de mídia rica
+
+```python
+rich_media_annotation = ann.RichMediaAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 600, True),
+)
+```
+
+### Anexe o player personalizado, a skin, o poster e o vídeo
+
+```python
+player_path = os.path.join(path_to_adobe_app, "Players", "Videoplayer.swf")
+rich_media_annotation.custom_player = open(player_path, "rb")
+rich_media_annotation.custom_flash_variables = f"source={video_name}&skin={skin_name}"
+
+skin_path = os.path.join(path_to_adobe_app, skin_name)
+rich_media_annotation.add_custom_data(skin_name, open(skin_path, "rb"))
+
+poster_path = os.path.join(media_dir, poster_name)
+rich_media_annotation.set_poster(open(poster_path, "rb"))
+
+video_path = os.path.join(media_dir, video_name)
+with open(video_path, "rb") as video_file:
+ rich_media_annotation.set_content(video_name, video_file)
+```
+
+### Definir comportamento de reprodução e salvar o PDF
+
+A anotação está configurada como conteúdo de vídeo e é ativada quando o usuário clica nela.
+
+```python
+rich_media_annotation.type = ann.RichMediaAnnotation.ContentType.VIDEO
+rich_media_annotation.activate_on = ann.RichMediaAnnotation.ActivationEvent.CLICK
+
+rich_media_annotation.update()
+
+page.annotations.append(rich_media_annotation)
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def rich_media_annotations_add(infile, outfile):
+ media_dir = path.dirname(infile)
+ path_to_adobe_app = (
+ r"C:\\Program Files (x86)\\Adobe\\Acrobat 2017\\Acrobat\\Multimedia Skins"
+ )
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ video_name = "file_example_MP4_480_1_5MG.mp4"
+ poster_name = "file_example_MP4_480_1_5MG_poster.jpg"
+ skin_name = "SkinOverAllNoFullNoCaption.swf"
+
+ rich_media_annotation = ann.RichMediaAnnotation(
+ page,
+ ap.Rectangle(100, 500, 300, 600, True),
+ )
+
+ player_path = os.path.join(path_to_adobe_app, "Players", "Videoplayer.swf")
+ rich_media_annotation.custom_player = open(player_path, "rb")
+ rich_media_annotation.custom_flash_variables = (
+ f"source={video_name}&skin={skin_name}"
+ )
+
+ skin_path = os.path.join(path_to_adobe_app, skin_name)
+ rich_media_annotation.add_custom_data(skin_name, open(skin_path, "rb"))
+
+ poster_path = os.path.join(media_dir, poster_name)
+ rich_media_annotation.set_poster(open(poster_path, "rb"))
+
+ video_path = os.path.join(media_dir, video_name)
+ with open(video_path, "rb") as video_file:
+ rich_media_annotation.set_content(video_name, video_file)
+
+ rich_media_annotation.type = ann.RichMediaAnnotation.ContentType.VIDEO
+ rich_media_annotation.activate_on = ann.RichMediaAnnotation.ActivationEvent.CLICK
+
+ rich_media_annotation.update()
+
+ page.annotations.append(rich_media_annotation)
+ document.save(outfile)
+```
+
+### Excluir Anotações de Mídia Rica
+
+Este fluxo de trabalho remove todas as anotações de mídia rica da primeira página de um PDF existente.
+
+### Abra o PDF e colete anotações de mídia rica
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+to_delete = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ann.AnnotationType.RICH_MEDIA
+]
+```
+
+### Exclua as anotações e salve o documento
+
+```python
+for annotation in to_delete:
+ page.annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def rich_media_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ to_delete = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ann.AnnotationType.RICH_MEDIA
+ ]
+
+ for annotation in to_delete:
+ page.annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Obter Multimedia_annotations
+
+Para inspecionar conteúdo multimídia já armazenado em um PDF, filtre a coleção de anotações para os tipos de anotação de tela, som e mídia rica.
+
+### Abra o documento e defina os tipos de anotação de destino
+
+```python
+document = ap.Document(infile)
+
+target_types = {
+ ann.AnnotationType.SCREEN,
+ ann.AnnotationType.SOUND,
+ ann.AnnotationType.RICH_MEDIA,
+}
+```
+
+### Imprimir retângulos de anotação multimídia
+
+```python
+for annotation in document.pages[1].annotations:
+ if annotation.annotation_type in target_types:
+ print(f"{annotation.annotation_type} [{annotation.rect}]")
+```
+
+### Exemplo completo
+
+```python
+def multimedia_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+
+ target_types = {
+ ann.AnnotationType.SCREEN,
+ ann.AnnotationType.SOUND,
+ ann.AnnotationType.RICH_MEDIA,
+ }
+
+ for annotation in document.pages[1].annotations:
+ if annotation.annotation_type in target_types:
+ print(f"{annotation.annotation_type} [{annotation.rect}]")
+```
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Segurança](/python-net/security-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
new file mode 100644
index 0000000000..83714cbd96
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
@@ -0,0 +1,214 @@
+---
+title: Anotações de Segurança usando Python
+linktitle: Anotações de Segurança
+type: docs
+weight: 75
+url: /pt/python-net/security-annotations/
+description: Aprenda como marcar texto para remoção, aplicar anotações de remoção e remover áreas de imagens em arquivos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Redigir conteúdo sensível de PDF em Python com anotações de segurança.
+Abstract: Este artigo explica como trabalhar com anotações de segurança em documentos PDF usando Aspose.PDF for Python via .NET. Ele abrange a marcação de texto correspondente com anotações de redação, a aplicação permanente das redações e a redação de áreas de imagem selecionadas com base nos retângulos de posicionamento de imagem detectados.
+---
+
+Este artigo mostra como usar anotações de segurança em documentos PDF com Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra três fluxos de trabalho comuns de redação:
+
+- marcar fragmentos de texto com anotações de redação
+- aplicar permanentemente anotações de redação existentes
+- censurar uma área de imagem detectada em uma página
+
+## Marcar Redação de Texto
+
+Este fluxo de trabalho procura por texto correspondente no documento e coloca anotações de redação sobre cada correspondência. Ele ainda não remove o conteúdo; apenas marca o texto para posterior redação.
+
+### Abra o PDF e procure o texto alvo
+
+Criar um `TextFragmentAbsorber` para o termo de pesquisa e habilite as opções de pesquisa de texto padrão antes de analisar todas as páginas.
+
+```python
+document = ap.Document(infile)
+text_fragment_absorber = ap.text.TextFragmentAbsorber(search_term)
+
+text_search_options = ap.text.TextSearchOptions(True)
+text_fragment_absorber.text_search_options = text_search_options
+document.pages.accept(text_fragment_absorber)
+```
+
+### Criar anotações de redação para cada correspondência
+
+Para cada fragmento de texto correspondido, crie um `RedactionAnnotation` usando o retângulo de fragmento e configure sua aparência visual.
+
+```python
+for text_fragment in text_fragment_absorber.text_fragments:
+ page = text_fragment.page
+ annotation_rectangle = text_fragment.rectangle
+ redaction_annotation = ap.annotations.RedactionAnnotation(
+ page, annotation_rectangle
+ )
+ redaction_annotation.fill_color = ap.Color.gray
+ redaction_annotation.border_color = ap.Color.red
+ redaction_annotation.color = ap.Color.white
+ redaction_annotation.overlay_text = "REDACTED"
+ redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+ redaction_annotation.repeat = True
+ page.annotations.add(redaction_annotation, True)
+```
+
+### Salvar o PDF marcado
+
+```python
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def mark_text_redaction(infile, outfile, search_term):
+ document = ap.Document(infile)
+ text_fragment_absorber = ap.text.TextFragmentAbsorber(search_term)
+
+ text_search_options = ap.text.TextSearchOptions(True)
+ text_fragment_absorber.text_search_options = text_search_options
+ document.pages.accept(text_fragment_absorber)
+
+ for text_fragment in text_fragment_absorber.text_fragments:
+ page = text_fragment.page
+ annotation_rectangle = text_fragment.rectangle
+ redaction_annotation = ap.annotations.RedactionAnnotation(
+ page, annotation_rectangle
+ )
+ redaction_annotation.fill_color = ap.Color.gray
+ redaction_annotation.border_color = ap.Color.red
+ redaction_annotation.color = ap.Color.white
+ redaction_annotation.overlay_text = "REDACTED"
+ redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+ redaction_annotation.repeat = True
+ page.annotations.add(redaction_annotation, True)
+
+ document.save(outfile)
+```
+
+## Aplicar Redação
+
+Depois que as anotações de redação foram adicionadas, este fluxo de trabalho as aplica permanentemente na primeira página. Uma vez aplicadas, o conteúdo original é removido da saída do documento.
+
+### Carregue o PDF e colete anotações de redação
+
+```python
+document = ap.Document(infile)
+redaction_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.REDACTION
+]
+```
+
+### Aplique cada anotação de redação
+
+O exemplo verifica que cada anotação pode ser tratada como um `RedactionAnnotation` antes de chamar `redact()`.
+
+```python
+for redaction_annotation in redaction_annotations:
+ if is_assignable(redaction_annotation, ap.annotations.RedactionAnnotation):
+ cast(ap.annotations.RedactionAnnotation, redaction_annotation).redact()
+```
+
+### Salvar o PDF redigido
+
+```python
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def apply_redaction(infile, outfile):
+ document = ap.Document(infile)
+ redaction_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.REDACTION
+ ]
+
+ for redaction_annotation in redaction_annotations:
+ if is_assignable(redaction_annotation, ap.annotations.RedactionAnnotation):
+ cast(ap.annotations.RedactionAnnotation, redaction_annotation).redact()
+
+ document.save(outfile)
+```
+
+## Área de Redação
+
+Este exemplo censura uma área de imagem detectada em vez de texto. Ele varre a página em busca de posicionamentos de imagens, seleciona um retângulo de posicionamento e adiciona uma anotação de censura sobre essa área.
+
+### Abra o PDF e detecte a colocação de imagens
+
+Usar `ImagePlacementAbsorber` para encontrar as posições das imagens na primeira página.
+
+```python
+document = ap.Document(infile)
+
+image_placement_absorber = ap.ImagePlacementAbsorber()
+page = document.pages[1]
+page.accept(image_placement_absorber)
+```
+
+### Criar uma anotação de redação para a área de imagem selecionada
+
+O exemplo usa a terceira colocação de imagem detectada e aplica a mesma estilização de redação usada no exemplo de marcação de texto.
+
+```python
+target_rect = image_placement_absorber.image_placements[2].rectangle
+redaction_annotation = ap.annotations.RedactionAnnotation(page, target_rect)
+redaction_annotation.fill_color = ap.Color.gray
+redaction_annotation.border_color = ap.Color.red
+redaction_annotation.color = ap.Color.white
+redaction_annotation.overlay_text = "REDACTED"
+redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+redaction_annotation.repeat = True
+```
+
+### Adicione a anotação e salve o PDF
+
+```python
+page.annotations.add(redaction_annotation, True)
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def redact_area(infile, outfile):
+ document = ap.Document(infile)
+
+ image_placement_absorber = ap.ImagePlacementAbsorber()
+ page = document.pages[1]
+ page.accept(image_placement_absorber)
+
+ target_rect = image_placement_absorber.image_placements[2].rectangle
+ redaction_annotation = ap.annotations.RedactionAnnotation(page, target_rect)
+ redaction_annotation.fill_color = ap.Color.gray
+ redaction_annotation.border_color = ap.Color.red
+ redaction_annotation.color = ap.Color.white
+ redaction_annotation.overlay_text = "REDACTED"
+ redaction_annotation.text_alignment = ap.HorizontalAlignment.CENTER
+ redaction_annotation.repeat = True
+
+ page.annotations.add(redaction_annotation, True)
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Mídia](/python-net/media-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
new file mode 100644
index 0000000000..ee6cc5a058
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
@@ -0,0 +1,720 @@
+---
+title: Anotações de Forma via Python
+linktitle: Anotações de Forma
+type: docs
+weight: 20
+url: /pt/python-net/shape-annotations/
+description: Aprenda como adicionar, inspecionar e excluir anotações de linha, quadrado, círculo, polígono e polilinha em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Trabalhe com anotações geométricas de PDF em Python.
+Abstract: Este artigo explica como criar, ler e remover anotações de forma em documentos PDF usando Aspose.PDF for Python via .NET. Ele cobre anotações de linha, quadrado, círculo, polígono e polilinha, com cada fluxo de trabalho dividido em pequenas etapas e exemplos de código completos.
+---
+
+Este artigo mostra como trabalhar com anotações de forma em documentos PDF usando Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra vários fluxos de trabalho de anotação baseados em geometria:
+
+- anotações de linha
+- anotações quadradas
+- anotações de círculo
+- anotações de polígono
+- anotações de polilinha
+
+## Anotação de Linha
+
+### Adicionar Anotação de Linha
+
+Este exemplo adiciona uma anotação de linha à primeira página e configura estilos de seta, largura da linha e uma janela popup.
+
+#### Abra o PDF de origem
+
+```python
+document = ap.Document(infile)
+```
+
+#### Criar e configurar a anotação de linha
+
+```python
+line_annotation = ap.annotations.LineAnnotation(
+ document.pages[1],
+ ap.Rectangle(550, 93, 562, 439, True),
+ ap.Point(556, 99),
+ ap.Point(556, 443),
+)
+
+line_annotation.title = "John Smith"
+line_annotation.color = ap.Color.red
+line_annotation.width = 3
+line_annotation.starting_style = ap.annotations.LineEnding.OPEN_ARROW
+line_annotation.ending_style = ap.annotations.LineEnding.OPEN_ARROW
+```
+
+#### Anexe o popup e salve o PDF
+
+```python
+popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 124, 1021, 266, True),
+)
+line_annotation.popup = popup
+
+document.pages[1].annotations.append(line_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def line_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ line_annotation = ap.annotations.LineAnnotation(
+ document.pages[1],
+ ap.Rectangle(550, 93, 562, 439, True),
+ ap.Point(556, 99),
+ ap.Point(556, 443),
+ )
+
+ line_annotation.title = "John Smith"
+ line_annotation.color = ap.Color.red
+ line_annotation.width = 3
+ line_annotation.starting_style = ap.annotations.LineEnding.OPEN_ARROW
+ line_annotation.ending_style = ap.annotations.LineEnding.OPEN_ARROW
+
+ popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 124, 1021, 266, True),
+ )
+ line_annotation.popup = popup
+
+ document.pages[1].annotations.append(line_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotação de Linha
+
+Para inspecionar anotações de linha, filtre a coleção de anotações na primeira página e converta cada resultado para `LineAnnotation` para que você possa ler seus pontos de início e fim.
+
+#### Carregue o PDF e colete anotações de linha
+
+```python
+document = ap.Document(infile)
+
+line_annotation = [
+ cast(ap.annotations.LineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+]
+```
+
+#### Imprima as coordenadas da linha
+
+```python
+for annotation in line_annotation:
+ print(
+ f"[{annotation.starting.x},{annotation.starting.y}]"
+ f"-[{annotation.ending.x},{annotation.ending.y}]"
+ )
+```
+
+#### Exemplo completo
+
+```python
+def line_annotations_get(infile, outfile):
+ document = ap.Document(infile)
+
+ line_annotation = [
+ cast(ap.annotations.LineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+ ]
+
+ for annotation in line_annotation:
+ print(
+ f"[{annotation.starting.x},{annotation.starting.y}]"
+ f"-[{annotation.ending.x},{annotation.ending.y}]"
+ )
+```
+
+### Excluir anotação de linha
+
+Este fluxo de trabalho remove todas as anotações de linha da primeira página e salva o PDF atualizado.
+
+#### Encontrar anotações de linha para remover
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+line_annotations = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+]
+```
+
+#### Exclua as anotações e salve o PDF
+
+```python
+for annotation in line_annotations:
+ page.annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def line_annotations_delete(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ line_annotations = [
+ annotation
+ for annotation in page.annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.LINE
+ ]
+
+ for annotation in line_annotations:
+ page.annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+## Anotações de Quadrado e Círculo
+
+### Adicionar Anotação Quadrada
+
+Anotações de quadrado são úteis para marcar áreas retangulares em um documento. Este exemplo cria uma anotação de quadrado com configurações de borda, preenchimento e transparência.
+
+#### Abra o PDF e crie a anotação quadrada
+
+```python
+document = ap.Document(infile)
+
+square_annotation = ap.annotations.SquareAnnotation(
+ document.pages[1],
+ ap.Rectangle(60, 600, 250, 450, True),
+)
+square_annotation.title = "John Smith"
+square_annotation.color = ap.Color.blue
+square_annotation.interior_color = ap.Color.blue_violet
+square_annotation.opacity = 0.25
+```
+
+#### Adicione a anotação e salve o PDF
+
+```python
+document.pages[1].annotations.append(square_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def square_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ square_annotation = ap.annotations.SquareAnnotation(
+ document.pages[1],
+ ap.Rectangle(60, 600, 250, 450, True),
+ )
+ square_annotation.title = "John Smith"
+ square_annotation.color = ap.Color.blue
+ square_annotation.interior_color = ap.Color.blue_violet
+ square_annotation.opacity = 0.25
+
+ document.pages[1].annotations.append(square_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotação Quadrada
+
+Para inspecionar anotações quadradas, filtre as anotações da primeira página pelo `SQUARE` digite e imprima cada retângulo.
+
+#### Carregue o documento e colete anotações quadradas
+
+```python
+document = ap.Document(infile)
+square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+]
+```
+
+#### Imprima os retângulos de anotação
+
+```python
+for annotation in square_annotations:
+ print(annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def square_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+ ]
+
+ for annotation in square_annotations:
+ print(annotation.rect)
+```
+
+### Excluir Anotação Quadrada
+
+Este fluxo de trabalho remove todas as anotações quadradas da primeira página e salva o documento.
+
+#### Encontrar e excluir anotações quadradas
+
+```python
+document = ap.Document(infile)
+square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+]
+
+for annotation in square_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def square_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ square_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUARE
+ ]
+
+ for annotation in square_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+### Adicionar Anotação de Círculo
+
+Anotações de círculo marcam áreas arredondadas em um PDF. Este exemplo adiciona uma anotação de círculo com cor de preenchimento, opacidade e uma anotação pop‑up.
+
+#### Abra o PDF e crie a anotação de círculo
+
+```python
+document = ap.Document(infile)
+
+circle_annotation = ap.annotations.CircleAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 160, 483, 383, True),
+)
+circle_annotation.title = "John Smith"
+circle_annotation.color = ap.Color.red
+circle_annotation.interior_color = ap.Color.misty_rose
+circle_annotation.opacity = 0.5
+```
+
+#### Anexe o popup e salve o PDF
+
+```python
+circle_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 316, 1021, 459, True),
+)
+
+document.pages[1].annotations.append(circle_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def circle_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ circle_annotation = ap.annotations.CircleAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 160, 483, 383, True),
+ )
+ circle_annotation.title = "John Smith"
+ circle_annotation.color = ap.Color.red
+ circle_annotation.interior_color = ap.Color.misty_rose
+ circle_annotation.opacity = 0.5
+ circle_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 316, 1021, 459, True),
+ )
+
+ document.pages[1].annotations.append(circle_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotação de Círculo
+
+Para inspecionar anotações de círculo, filtre as anotações da página por `CIRCLE` digite e imprima seus retângulos.
+
+#### Carregue o documento e colete anotações de círculo
+
+```python
+document = ap.Document(infile)
+circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+]
+```
+
+#### Imprima os retângulos de anotação
+
+```python
+for annotation in circle_annotations:
+ print(annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def circle_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+ ]
+
+ for annotation in circle_annotations:
+ print(annotation.rect)
+```
+
+### Excluir anotação de círculo
+
+Este fluxo de trabalho remove todas as anotações de círculo da primeira página e salva o PDF de saída.
+
+#### Localizar e excluir anotações de círculo
+
+```python
+document = ap.Document(infile)
+circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+]
+
+for annotation in circle_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def circle_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ circle_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.CIRCLE
+ ]
+
+ for annotation in circle_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+## Anotações de Polígono e Polilinha
+
+### Adicionar anotação de polígono
+
+Anotações de polígono definem uma forma fechada de múltiplos pontos. Este exemplo cria uma anotação de polígono a partir de um retângulo e de uma lista de pontos.
+
+#### Abra o PDF e crie a anotação de polígono
+
+```python
+document = ap.Document(infile)
+
+polygon_annotation = ap.annotations.PolygonAnnotation(
+ document.pages[1],
+ ap.Rectangle(200, 300, 400, 400, True),
+ [
+ ap.Point(200, 300),
+ ap.Point(220, 300),
+ ap.Point(250, 330),
+ ap.Point(300, 304),
+ ap.Point(300, 400),
+ ],
+)
+polygon_annotation.title = "John Smith"
+polygon_annotation.color = ap.Color.blue
+polygon_annotation.interior_color = ap.Color.blue_violet
+polygon_annotation.opacity = 0.25
+```
+
+#### Adicione a anotação e salve o PDF
+
+```python
+document.pages[1].annotations.append(polygon_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def polygon_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ polygon_annotation = ap.annotations.PolygonAnnotation(
+ document.pages[1],
+ ap.Rectangle(200, 300, 400, 400, True),
+ [
+ ap.Point(200, 300),
+ ap.Point(220, 300),
+ ap.Point(250, 330),
+ ap.Point(300, 304),
+ ap.Point(300, 400),
+ ],
+ )
+ polygon_annotation.title = "John Smith"
+ polygon_annotation.color = ap.Color.blue
+ polygon_annotation.interior_color = ap.Color.blue_violet
+ polygon_annotation.opacity = 0.25
+
+ document.pages[1].annotations.append(polygon_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotação de Polígono
+
+Para inspecionar anotações de polígono, filtre as anotações da primeira página pelo `POLYGON` digite e imprima cada retângulo de anotação.
+
+#### Carregue o documento e colete anotações de polígonos
+
+```python
+document = ap.Document(infile)
+polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+]
+```
+
+#### Imprima os retângulos de anotação
+
+```python
+for annotation in polygon_annotations:
+ print(annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def polygon_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+ ]
+
+ for annotation in polygon_annotations:
+ print(annotation.rect)
+```
+
+### Excluir Anotação de Polígono
+
+Este fluxo de trabalho remove todas as anotações de polígonos da primeira página e salva o PDF atualizado.
+
+#### Encontrar e excluir anotações de polígono
+
+```python
+document = ap.Document(infile)
+polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+]
+
+for annotation in polygon_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def polygon_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ polygon_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLYGON
+ ]
+
+ for annotation in polygon_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+### Adicionar Anotação de Polilinha
+
+Anotações de polilinha definem um caminho aberto através de múltiplos pontos. Este exemplo cria uma anotação de polilinha com uma nota pop-up.
+
+#### Abra o PDF e crie a anotação de polilinha
+
+```python
+document = ap.Document(infile)
+
+polyline_annotation = ap.annotations.PolylineAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 193, 571, 383, True),
+ [
+ ap.Point(545, 150),
+ ap.Point(545, 190),
+ ap.Point(667, 190),
+ ap.Point(667, 110),
+ ap.Point(626, 111),
+ ],
+)
+polyline_annotation.title = "John Smith"
+polyline_annotation.color = ap.Color.red
+```
+
+#### Anexe o popup e salve o PDF
+
+```python
+polyline_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 196, 1021, 338, True),
+)
+
+document.pages[1].annotations.append(polyline_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def polyline_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ polyline_annotation = ap.annotations.PolylineAnnotation(
+ document.pages[1],
+ ap.Rectangle(270, 193, 571, 383, True),
+ [
+ ap.Point(545, 150),
+ ap.Point(545, 190),
+ ap.Point(667, 190),
+ ap.Point(667, 110),
+ ap.Point(626, 111),
+ ],
+ )
+ polyline_annotation.title = "John Smith"
+ polyline_annotation.color = ap.Color.red
+ polyline_annotation.popup = ap.annotations.PopupAnnotation(
+ document.pages[1],
+ ap.Rectangle(842, 196, 1021, 338, True),
+ )
+
+ document.pages[1].annotations.append(polyline_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotação de Polilinha
+
+Para inspecionar anotações de polilinha, filtre as anotações da página por `POLY_LINE` digite e imprima seus retângulos.
+
+#### Carregue o documento e colete anotações de polilinha
+
+```python
+document = ap.Document(infile)
+polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+]
+```
+
+#### Imprima os retângulos de anotação
+
+```python
+for annotation in polyline_annotations:
+ print(annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def polyline_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+ ]
+
+ for annotation in polyline_annotations:
+ print(annotation.rect)
+```
+
+### Excluir Anotação PolyLine
+
+Este fluxo de trabalho remove todas as anotações de polilinha da primeira página e salva o PDF de saída.
+
+#### Encontrar e excluir anotações de polilinha
+
+```python
+document = ap.Document(infile)
+polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+]
+
+for annotation in polyline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def polyline_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ polyline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.POLY_LINE
+ ]
+
+ for annotation in polyline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Mídia](/python-net/media-annotations/)
+- [Anotações de Segurança](/python-net/security-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/sticks/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/sticks/_index.md
deleted file mode 100644
index 7c0ef6abc5..0000000000
--- a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/sticks/_index.md
+++ /dev/null
@@ -1,219 +0,0 @@
----
-title: Anotações adesivas em PDF usando Python
-linktitle: Anotação adesiva
-type: docs
-weight: 50
-url: /pt/python-net/sticky-annotations/
-description: Este tópico sobre anotações adesivas, como exemplo mostramos a Anotação de Marca d'água no texto.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Adicionar Anotação de Marca d'Água
-
-A anotação de marca d'água é a mais visível e fácil de visualizar e transmitir. Esta é a melhor maneira de colocar em seu documento PDF um logotipo ou qualquer outro sinal que confirme sua originalidade.
-
-Uma anotação de marca d'água deve ser usada para representar gráficos que devem ser impressos em um tamanho e posição fixos em uma página, independentemente das dimensões da página impressa.
-
-Você pode adicionar Texto de Marca d'Água usando [WatermarkAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/watermarkannotation/) em uma posição específica da página PDF. A opacidade da Marca d'Água também pode ser controlada usando a propriedade [opacity](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/watermarkannotation/#properties).
-
-Por favor, verifique o trecho de código a seguir para adicionar WatermarkAnnotation.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- # Criar Anotação
- # Carregar objeto Página para adicionar Anotação
- page = document.pages[1]
-
- # Criar Anotação
- wa = ap.annotations.WatermarkAnnotation(page, ap.Rectangle(100, 0, 400, 100, True))
-
- # Adicionar anotação na coleção de Anotação da Página
- page.annotations.append(wa)
-
- # Criar TextState para configurações de Fonte
- ts = ap.text.TextState()
- ts.foreground_color = ap.Color.blue
- ts.font_size = 25
- ts.font = ap.text.FontRepository.find_font("Arial");
-
- # Definir nível de opacidade do Texto da Anotação
- wa.opacity = 0.5
-
- # Adicionar Texto na Anotação
- wa.set_text_and_state([ "HELLO", "Line 1", "Line 2" ], ts)
-
- document.save(output_file)
-```
-
-
-## Obter Anotação de Marca d'água
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- watermarkAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.WATERMARK)
- ]
-
- for ta in watermarkAnnotations:
- print(ta.rect)
-```
-
-## Excluir Anotação de Marca d'água
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- watermarkAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.WATERMARK)
- ]
-
- for ta in watermarkAnnotations:
- document.pages[1].annotations.delete(ta)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
new file mode 100644
index 0000000000..951353af99
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
@@ -0,0 +1,749 @@
+---
+title: Anotações Baseadas em Texto usando Python
+linktitle: Anotações de texto
+type: docs
+weight: 10
+url: /pt/python-net/text-based-annotations/
+description: Saiba como adicionar, inspecionar e excluir anotações de texto livre, highlight, underline, squiggly e strikeout em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Trabalhe com anotações PDF de texto e marcação de texto em Python.
+Abstract: Este artigo explica como criar, ler e remover anotações baseadas em texto em documentos PDF usando Aspose.PDF for Python via .NET. Ele abrange anotações de texto livre e anotações de marcação de texto, como realce, sublinhado, ondulado e tachado, incluindo fluxos de trabalho avançados de sublinhado como achatamento, pontos de quadrilátero e extração de texto marcado.
+---
+
+Este artigo mostra como trabalhar com anotações baseadas em texto em documentos PDF usando Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra vários fluxos de trabalho de anotação de texto:
+
+- anotações de texto livre
+- anotações de destaque
+- anotações sublinhadas
+- anotações onduladas
+- anotações de tachado
+
+## Anotações de Texto Livre
+
+### Adicionar Anotações de Texto Livre
+
+Anotações de texto livre permitem que você coloque comentários de texto visíveis diretamente em uma página PDF. Este exemplo adiciona uma anotação de texto livre simples à primeira página.
+
+#### Abra o PDF de origem
+
+```python
+document = ap.Document(infile)
+```
+
+#### Criar e configurar a anotação de texto livre
+
+```python
+free_text_annotation = ap.annotations.FreeTextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299, 713, 308, 720, True),
+ ap.annotations.DefaultAppearance(),
+)
+free_text_annotation.title = "Aspose User"
+free_text_annotation.color = ap.Color.light_green
+```
+
+#### Adicione a anotação e salve o PDF
+
+```python
+document.pages[1].annotations.append(free_text_annotation)
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def free_text_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ free_text_annotation = ap.annotations.FreeTextAnnotation(
+ document.pages[1],
+ ap.Rectangle(299, 713, 308, 720, True),
+ ap.annotations.DefaultAppearance(),
+ )
+ free_text_annotation.title = "Aspose User"
+ free_text_annotation.color = ap.Color.light_green
+
+ document.pages[1].annotations.append(free_text_annotation)
+ document.save(outfile)
+```
+
+### Obter Anotações de Texto Livre
+
+Para inspecionar anotações de texto livre, filtre as anotações da primeira página por `FREE_TEXT` digite e imprima cada retângulo de anotação.
+
+#### Carregue o documento e colete anotações de texto livre
+
+```python
+document = ap.Document(infile)
+free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+]
+```
+
+#### Imprima os retângulos de anotação
+
+```python
+for annotation in free_text_annotations:
+ print(annotation.rect)
+```
+
+#### Exemplo completo
+
+```python
+def free_text_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+ ]
+
+ for annotation in free_text_annotations:
+ print(annotation.rect)
+```
+
+### Excluir Anotações FreeText
+
+Este fluxo de trabalho remove todas as anotações de texto livre da primeira página e salva o PDF atualizado.
+
+#### Localizar e excluir anotações de texto livre
+
+```python
+document = ap.Document(infile)
+free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+]
+
+for annotation in free_text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+#### Exemplo completo
+
+```python
+def free_text_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ free_text_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.FREE_TEXT
+ ]
+
+ for annotation in free_text_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+## Anotações de Marcação de Texto
+
+### Anotações de Destaque
+
+#### Adicionar realce de texto
+
+As anotações de realce enfatizam partes do documento sem alterar o conteúdo subjacente. Este exemplo adiciona uma anotação de realce à primeira página.
+
+```python
+document = ap.Document(infile)
+
+highlight_annotation = ap.annotations.HighlightAnnotation(
+ document.pages[1],
+ ap.Rectangle(300, 750, 320, 770, True),
+)
+
+document.pages[1].annotations.append(highlight_annotation)
+document.save(outfile)
+```
+
+```python
+def text_highlight_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ highlight_annotation = ap.annotations.HighlightAnnotation(
+ document.pages[1],
+ ap.Rectangle(300, 750, 320, 770, True),
+ )
+
+ document.pages[1].annotations.append(highlight_annotation)
+ document.save(outfile)
+```
+
+#### Obter destaque de texto
+
+Para inspecionar anotações de destaque, filtre as anotações da página por `HIGHLIGHT` digite e imprima seus retângulos.
+
+```python
+document = ap.Document(infile)
+highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+]
+
+for annotation in highlight_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_highlight_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+ ]
+
+ for annotation in highlight_annotations:
+ print(annotation.rect)
+```
+
+#### Excluir destaque de texto
+
+Este fluxo de trabalho remove todas as anotações de destaque da primeira página e salva o PDF de saída.
+
+```python
+document = ap.Document(infile)
+highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+]
+
+for annotation in highlight_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_highlight_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ highlight_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.HIGHLIGHT
+ ]
+
+ for annotation in highlight_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+### Anotações de sublinhado
+
+#### Adicionar Anotações de Sublinhado de Texto
+
+Anotações de sublinhado marcam o texto com um sublinhado visível. Este exemplo adiciona uma anotação de sublinhado básica e define seus metadados e cor.
+
+```python
+document = ap.Document(infile)
+
+underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+)
+underline_annotation.title = "Aspose User"
+underline_annotation.subject = "Inserted Underline 1"
+underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+underline_annotation.color = ap.Color.blue
+
+document.pages[1].annotations.append(underline_annotation)
+document.save(outfile)
+```
+
+```python
+def text_underline_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+ )
+ underline_annotation.title = "Aspose User"
+ underline_annotation.subject = "Inserted Underline 1"
+ underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ underline_annotation.color = ap.Color.blue
+
+ document.pages[1].annotations.append(underline_annotation)
+ document.save(outfile)
+```
+
+#### Adicionar Anotações de Sublinhado de Texto Aplanar
+
+Se você quiser que o sublinhado se torne parte do conteúdo da página em vez de permanecer como uma anotação interativa, pode achatá‑lo depois de adicioná‑lo.
+
+```python
+document = ap.Document(infile)
+
+underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+)
+underline_annotation.title = "Aspose User"
+underline_annotation.subject = "Inserted Underline to Flatten"
+underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+underline_annotation.color = ap.Color.blue
+
+document.pages[1].annotations.append(underline_annotation)
+underline_annotation.flatten()
+
+document.save(outfile)
+```
+
+```python
+def text_underline_flatten_add(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotation = ap.annotations.UnderlineAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+ )
+ underline_annotation.title = "Aspose User"
+ underline_annotation.subject = "Inserted Underline to Flatten"
+ underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ underline_annotation.color = ap.Color.blue
+
+ document.pages[1].annotations.append(underline_annotation)
+ underline_annotation.flatten()
+
+ document.save(outfile)
+```
+
+#### Adicionar Anotações de Sublinhado de Texto com Quad Points
+
+Os pontos quad permitem que você defina a área exata marcada para a anotação de sublinhado. Isso é útil quando você precisa de mais controle do que um simples retângulo.
+
+```python
+document = ap.Document(infile)
+rect = ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+
+underline_annotation = ap.annotations.UnderlineAnnotation(document.pages[1], rect)
+underline_annotation.title = "Aspose User"
+underline_annotation.subject = "Inserted Underline with Quad Points"
+underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+underline_annotation.color = ap.Color.blue
+underline_annotation.quad_points = [
+ ap.Point(rect.llx, rect.lly),
+ ap.Point(rect.urx, rect.lly),
+ ap.Point(rect.urx, rect.ury),
+ ap.Point(rect.llx, rect.ury),
+]
+
+document.pages[1].annotations.append(underline_annotation)
+document.save(outfile)
+```
+
+```python
+def text_underline_with_quad_points_add(infile, outfile):
+ document = ap.Document(infile)
+ rect = ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
+
+ underline_annotation = ap.annotations.UnderlineAnnotation(document.pages[1], rect)
+ underline_annotation.title = "Aspose User"
+ underline_annotation.subject = "Inserted Underline with Quad Points"
+ underline_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ underline_annotation.color = ap.Color.blue
+ underline_annotation.quad_points = [
+ ap.Point(rect.llx, rect.lly),
+ ap.Point(rect.urx, rect.lly),
+ ap.Point(rect.urx, rect.ury),
+ ap.Point(rect.llx, rect.ury),
+ ]
+
+ document.pages[1].annotations.append(underline_annotation)
+ document.save(outfile)
+```
+
+#### Excluir Anotações de Sublinhado de Texto
+
+Este fluxo de trabalho remove todas as anotações de sublinhado da primeira página e salva o documento atualizado.
+
+```python
+document = ap.Document(infile)
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_underline_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+#### Excluir anotações de sublinhado de texto por título
+
+Este fluxo de trabalho mostra como excluir seletivamente anotações de sublinhado após verificar seu título.
+
+```python
+document = ap.Document(infile)
+
+underline_annotations = [
+ cast(ap.annotations.UnderlineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ if annotation.title.startswith("a"):
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_underline_by_title_delete(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotations = [
+ cast(ap.annotations.UnderlineAnnotation, annotation)
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ if annotation.title.startswith("a"):
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+#### Obter Anotações de Sublinhado de Texto
+
+Para inspecionar anotações de sublinhado, filtre as anotações da primeira página por `UNDERLINE` digite e imprima cada retângulo.
+
+```python
+document = ap.Document(infile)
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_underline_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ print(annotation.rect)
+```
+
+#### Obter Texto Sublinhado Anotações Texto Marcado
+
+Este fluxo de trabalho converte cada anotação de sublinhado em um `UnderlineAnnotation` objeto e extrai o texto marcado.
+
+```python
+document = ap.Document(infile)
+
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ print(f"Marked text: {ua.get_marked_text()}")
+```
+
+```python
+def text_underline_marked_text_get(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ print(f"Marked text: {ua.get_marked_text()}")
+```
+
+#### Obter fragmentos marcados de anotações de sublinhado de texto
+
+Se precisar de cada fragmento marcado separadamente, pode iterar através da coleção retornada por `get_marked_text_fragments()`.
+
+```python
+document = ap.Document(infile)
+
+underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+]
+
+for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ for fragment in ua.get_marked_text_fragments():
+ print(f"Fragment text: {fragment.text}")
+```
+
+```python
+def text_underline_marked_fragments_get(infile, outfile):
+ document = ap.Document(infile)
+
+ underline_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.UNDERLINE
+ ]
+
+ for annotation in underline_annotations:
+ ua = cast(ap.annotations.UnderlineAnnotation, annotation)
+ for fragment in ua.get_marked_text_fragments():
+ print(f"Fragment text: {fragment.text}")
+```
+
+
+### Anotações onduladas
+
+#### Adicionar Anotações Onduladas
+
+Anotações onduladas são frequentemente usadas para marcar áreas de ortografia, gramática ou atenção no texto. Este exemplo adiciona uma anotação ondulada à primeira página.
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+
+squiggly_annotation = ap.annotations.SquigglyAnnotation(
+ page,
+ ap.Rectangle(67, 317, 261, 459, True),
+)
+squiggly_annotation.title = "John Smith"
+squiggly_annotation.color = ap.Color.blue
+
+page.annotations.append(squiggly_annotation)
+document.save(outfile)
+```
+
+```python
+def text_squiggly_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ squiggly_annotation = ap.annotations.SquigglyAnnotation(
+ page,
+ ap.Rectangle(67, 317, 261, 459, True),
+ )
+ squiggly_annotation.title = "John Smith"
+ squiggly_annotation.color = ap.Color.blue
+
+ page.annotations.append(squiggly_annotation)
+ document.save(outfile)
+```
+
+#### Obter Anotações Squiggly
+
+Para inspecionar anotações onduladas, filtre as anotações da página por `SQUIGGLY` digite e imprima seus retângulos.
+
+```python
+document = ap.Document(infile)
+squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+]
+
+for annotation in squiggly_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_squiggly_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+ ]
+
+ for annotation in squiggly_annotations:
+ print(annotation.rect)
+```
+
+#### Excluir anotações onduladas
+
+Este fluxo de trabalho remove todas as anotações onduladas da primeira página e salva o resultado.
+
+```python
+document = ap.Document(infile)
+squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+]
+
+for annotation in squiggly_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_squiggly_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ squiggly_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.SQUIGGLY
+ ]
+
+ for annotation in squiggly_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+
+### Anotações de Tachado
+
+#### Adicionar Anotações de Texto Tachado
+
+Anotações de tachado marcam texto que deve ser tratado como removido ou riscado. Este exemplo adiciona uma anotação de tachado e define seus metadados e cor.
+
+```python
+document = ap.Document(infile)
+
+strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+)
+strikeout_annotation.title = "Aspose User"
+strikeout_annotation.subject = "Inserted text 1"
+strikeout_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+strikeout_annotation.color = ap.Color.blue
+
+document.pages[1].annotations.append(strikeout_annotation)
+document.save(outfile)
+```
+
+```python
+def text_strikeout_annotation_add(infile, outfile):
+ document = ap.Document(infile)
+
+ strikeout_annotation = ap.annotations.StrikeOutAnnotation(
+ document.pages[1],
+ ap.Rectangle(299.988, 713.664, 308.708, 720.769, True),
+ )
+ strikeout_annotation.title = "Aspose User"
+ strikeout_annotation.subject = "Inserted text 1"
+ strikeout_annotation.flags = ap.annotations.AnnotationFlags.PRINT
+ strikeout_annotation.color = ap.Color.blue
+
+ document.pages[1].annotations.append(strikeout_annotation)
+ document.save(outfile)
+```
+
+#### Obter Anotações de Texto Tachado
+
+Para inspecionar anotações de tachado, filtre as anotações da página pelo `STRIKE_OUT` digite e imprima seus retângulos.
+
+```python
+document = ap.Document(infile)
+strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+]
+
+for annotation in strikeout_annotations:
+ print(annotation.rect)
+```
+
+```python
+def text_strikeout_annotation_get(infile, outfile):
+ document = ap.Document(infile)
+ strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+ ]
+
+ for annotation in strikeout_annotations:
+ print(annotation.rect)
+```
+
+#### Excluir anotações de tachado de texto
+
+Este fluxo de trabalho remove todas as anotações de tachado da primeira página e salva o documento atualizado.
+
+```python
+document = ap.Document(infile)
+strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+]
+
+for annotation in strikeout_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+document.save(outfile)
+```
+
+```python
+def text_strikeout_annotation_delete(infile, outfile):
+ document = ap.Document(infile)
+ strikeout_annotations = [
+ annotation
+ for annotation in document.pages[1].annotations
+ if annotation.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT
+ ]
+
+ for annotation in strikeout_annotations:
+ document.pages[1].annotations.delete(annotation)
+
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Mídia](/python-net/media-annotations/)
+- [Anotações de Segurança](/python-net/security-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text/_index.md
deleted file mode 100644
index 702a5e227c..0000000000
--- a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text/_index.md
+++ /dev/null
@@ -1,333 +0,0 @@
----
-title: Usando Anotação de Texto para PDF via Python
-linktitle: Anotação de Texto
-type: docs
-weight: 10
-url: /pt/python-net/text-annotation/
-description: Aspose.PDF para Python permite que você Adicione, Obtenha e Exclua Anotações de Texto do seu documento PDF.
-lastmod: "2023-02-17"
-sitemap:
- changefreq: "monthly"
- priority: 0.5
----
-
-
-
-## Como adicionar Anotação de Texto em um arquivo PDF existente
-
-Uma Anotação de Texto é uma anotação anexada a um local específico em um documento PDF. Quando fechada, a anotação é exibida como um ícone; quando aberta, ela deve exibir uma janela pop-up contendo o texto da nota na fonte e tamanho escolhidos pelo leitor.
-
-As anotações são contidas pela coleção [Annotations](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/annotationcollection/) de uma página específica. Esta coleção contém as anotações apenas para aquela página individual; cada página tem sua própria coleção de Anotações.
-
-Para adicionar uma anotação a uma página específica, adicione-a à coleção de Anotações dessa página com o método [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/annotationcollection/#methods).
-
-1. Primeiro, crie uma anotação que você deseja adicionar ao PDF.
-1. Em seguida, abra o PDF de entrada.
-
-1. Adicione a anotação à coleção [Annotations](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/annotationcollection/) do objeto 'page'.
-
-O snippet de código a seguir mostra como adicionar uma anotação em uma página PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- textAnnotation = ap.annotations.TextAnnotation(
- document.pages[1], ap.Rectangle(300, 700.664, 320, 720.769, True)
- )
- textAnnotation.title = "Usuário Aspose"
- textAnnotation.subject = "Texto inserido 1"
- textAnnotation.contents = "qwerty"
- textAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- textAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(textAnnotation)
- document.save(output_file)
-```
-
-## Obter Anotação de Texto do arquivo PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- textAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.TEXT)
- ]
-
- for ta in textAnnotations:
- print(ta.rect)
-```
-
-
-## Excluir Anotação de Texto do arquivo PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- textAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.TEXT)
- ]
-
- for ta in textAnnotations:
- document.pages[1].annotations.delete(ta)
-
- document.save(output_file)
-```
-
-## Como adicionar (ou Criar) nova Anotação de Texto Livre
-
-Uma anotação de texto livre exibe texto diretamente na página. A classe [FreeTextAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/freetextannotation/) permite criar este tipo de anotação. No trecho a seguir, adicionamos uma anotação de texto livre acima da primeira ocorrência da string.
-
-```python
-
- import aspose.pdf as ap
-
- # Carregar o arquivo PDF
- document = ap.Document(input_file)
-
- freeTextAnnotation = ap.annotations.FreeTextAnnotation(
- document.pages[1], ap.Rectangle(299, 713, 308, 720, True), ap.annotations.DefaultAppearance()
- )
- freeTextAnnotation.title = "Aspose User"
- freeTextAnnotation.color = ap.Color.light_green
-
- document.pages[1].annotations.append(freeTextAnnotation)
- document.save(output_file)
-```
-
-
-## Obter Anotação de Texto Livre de Arquivo PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- freeTextAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.FREE_TEXT)
- ]
-
- for fa in freeTextAnnotations:
- print(fa.rect)
-```
-
-## Excluir Anotação de Texto Livre de Arquivo PDF
-
-```python
-
- import aspose.pdf as ap
-
- # Carregar o arquivo PDF
- document = ap.Document(input_file)
- freeTextAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.FREE_TEXT)
- ]
-
- for fa in freeTextAnnotations:
- document.pages[1].annotations.delete(fa)
-
- document.save(output_file)
-```
-
-### Riscar Palavras usando StrikeOutAnnotation
-
-Aspose.PDF para Python permite adicionar, excluir e atualizar anotações em documentos PDF.
- Uma das classes permite que você risque anotações também. Quando uma StrikeOutAnnotation é aplicada a um PDF, uma linha é desenhada através do texto especificado, indicando que ele deve ser removido ou ignorado.
-
-O trecho de código a seguir mostra como adicionar uma [StrikeOutAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/strikeoutannotation/) a um PDF.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
-
- strikeoutAnnotation = ap.annotations.StrikeOutAnnotation(
- document.pages[1], ap.Rectangle(299.988, 713.664, 308.708, 720.769, True)
- )
- strikeoutAnnotation.title = "Usuário do Aspose"
- strikeoutAnnotation.subject = "Texto inserido 1"
- strikeoutAnnotation.flags = ap.annotations.AnnotationFlags.PRINT
- strikeoutAnnotation.color = ap.Color.blue
-
- document.pages[1].annotations.append(strikeoutAnnotation)
- document.save(output_file)
-```
-
-## Obter StrikeOutAnnotation do PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- print(pa.rect)
-```
-
-## Excluir StrikeOutAnnotation de PDF
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document(input_file)
- StrikeoutAnnotations = [
- a
- for a in document.pages[1].annotations
- if (a.annotation_type == ap.annotations.AnnotationType.STRIKE_OUT)
- ]
-
- for pa in StrikeoutAnnotations:
- document.pages[1].annotations.delete(pa)
-
- document.save(output_file)
-```
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
new file mode 100644
index 0000000000..ac6503535a
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
@@ -0,0 +1,186 @@
+---
+title: Anotações de Marca d'água usando Python
+linktitle: Anotações de Marca d'Água
+type: docs
+weight: 70
+url: /pt/python-net/watermark-annotations/
+description: Aprenda como adicionar, inspecionar e excluir anotações de marca d'água em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Trabalhe com anotações de marca d'água em arquivos PDF usando Python.
+Abstract: Este artigo explica como criar, ler e remover anotações de marca d'água em documentos PDF usando Aspose.PDF for Python via .NET. Ele abrange a adição de uma anotação de marca d'água de texto com estado de texto personalizado e opacidade, a inspeção de anotações de marca d'água existentes e a exclusão de anotações de marca d'água de uma página PDF.
+---
+
+Este artigo mostra como trabalhar com anotações de marca d'água em documentos PDF usando Aspose.PDF for Python via .NET.
+
+O script de exemplo demonstra três fluxos de trabalho comuns:
+
+- adicionar uma anotação de marca d'água
+- obter retângulos de anotação de marca d'água
+- excluir anotações de marca d'água
+
+## Adicionar Anotação de Marca d'água
+
+Este exemplo adiciona uma anotação de marca d'água à primeira página de um documento PDF. A marca d'água usa um estado de texto para controlar as configurações de fonte e aplica opacidade personalizada para uma aparência semitransparente.
+
+### Abra o PDF e obtenha a página de destino
+
+```python
+document = ap.Document(infile)
+page = document.pages[1]
+```
+
+### Criar a anotação de marca d'água
+
+Defina o retângulo da anotação e adicione-o à coleção de anotações da página.
+
+```python
+watermark_annotation = ap.annotations.WatermarkAnnotation(
+ page,
+ ap.Rectangle(100, 100, 400, 200, True),
+)
+
+page.annotations.append(watermark_annotation)
+```
+
+### Configure a aparência do texto
+
+Criar um `TextState` objeto para controlar a cor do texto, o tamanho da fonte e a família da fonte.
+
+```python
+text_state = ap.text.TextState()
+text_state.foreground_color = ap.Color.blue
+text_state.font_size = 25
+text_state.font = ap.text.FontRepository.find_font("Arial")
+```
+
+### Definir opacidade e texto da marca d'água
+
+O exemplo usa opacidade de 50% e escreve três linhas de texto na anotação de marca d'água.
+
+```python
+watermark_annotation.opacity = 0.5
+watermark_annotation.set_text_and_state(["HELLO", "Line 1", "Line 2"], text_state)
+```
+
+### Salvar o PDF
+
+```python
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def watermark_add(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ watermark_annotation = ap.annotations.WatermarkAnnotation(
+ page,
+ ap.Rectangle(100, 100, 400, 200, True),
+ )
+
+ page.annotations.append(watermark_annotation)
+
+ text_state = ap.text.TextState()
+ text_state.foreground_color = ap.Color.blue
+ text_state.font_size = 25
+ text_state.font = ap.text.FontRepository.find_font("Arial")
+
+ watermark_annotation.opacity = 0.5
+ watermark_annotation.set_text_and_state(["HELLO", "Line 1", "Line 2"], text_state)
+
+ document.save(outfile)
+```
+
+## Obter Anotação de Marca d'água
+
+Para inspecionar anotações de marca d'água existentes, filtre as anotações da primeira página pelo `WATERMARK` digite e imprima seus retângulos.
+
+### Carregue o documento e colete as anotações de marca d'água
+
+```python
+document = ap.Document(infile)
+watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+]
+```
+
+### Imprima os retângulos de anotação
+
+```python
+for watermark_annotation in watermark_annotations:
+ print(watermark_annotation.rect)
+```
+
+### Exemplo completo
+
+```python
+def watermark_get(infile, outfile):
+ document = ap.Document(infile)
+ watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+ ]
+
+ for watermark_annotation in watermark_annotations:
+ print(watermark_annotation.rect)
+```
+
+## Excluir anotação de marca d'água
+
+Este fluxo de trabalho remove todas as anotações de marca d'água da primeira página e salva o PDF atualizado.
+
+### Encontrar anotações de marca d'água para remover
+
+```python
+document = ap.Document(infile)
+watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+]
+```
+
+### Exclua as anotações e salve o PDF
+
+```python
+for watermark_annotation in watermark_annotations:
+ document.pages[1].annotations.delete(watermark_annotation)
+
+document.save(outfile)
+```
+
+### Exemplo completo
+
+```python
+def watermark_delete(infile, outfile):
+ document = ap.Document(infile)
+ watermark_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if a.annotation_type == ap.annotations.AnnotationType.WATERMARK
+ ]
+
+ for watermark_annotation in watermark_annotations:
+ document.pages[1].annotations.delete(watermark_annotation)
+
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Importar e Exportar Anotações](/python-net/import-export-annotations/)
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Mídia](/python-net/media-annotations/)
+- [Anotações de Segurança](/python-net/security-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
diff --git a/pt/python-net/advanced-operations/annotations/import-export-annotations/_index.md b/pt/python-net/advanced-operations/annotations/import-export-annotations/_index.md
new file mode 100644
index 0000000000..b343782cf8
--- /dev/null
+++ b/pt/python-net/advanced-operations/annotations/import-export-annotations/_index.md
@@ -0,0 +1,102 @@
+---
+title: Importar e Exportar Anotações usando Python
+linktitle: Importar e Exportar Anotações
+type: docs
+weight: 80
+url: /pt/python-net/import-export-annotations/
+description: Aprenda como importar anotações de um PDF e exportá-las para um novo documento PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Transferir anotações PDF entre documentos em Python.
+Abstract: Este artigo explica como copiar anotações de um PDF de origem e exportá‑las para um novo documento PDF usando Aspose.PDF for Python via .NET. A demonstração divide o processo em etapas pequenas, incluindo o carregamento do arquivo de origem, a criação do documento de destino, a adição de uma página, a cópia de anotações da primeira página e a gravação do resultado.
+---
+
+Este artigo mostra como importar anotações de um PDF existente e exportá‑las para um novo documento PDF usando Aspose.PDF for Python via .NET.
+
+O exemplo lê anotações da primeira página de um arquivo de origem, cria um novo PDF, adiciona uma página em branco e copia cada anotação para essa nova página. Essa abordagem é útil quando você precisa mover comentários, marcações ou notas de revisão para um documento de saída separado.
+
+## Carregue o PDF de origem
+
+Criar um `Document` objeto para o arquivo de entrada que já contém anotações. Este objeto fornece acesso à coleção de páginas e às anotações armazenadas em cada página.
+
+```python
+source_document = ap.Document(infile)
+```
+
+## Criar o PDF de destino
+
+Em seguida, crie um documento PDF vazio que receberá as anotações importadas. Nesta fase, o documento de destino não contém nenhuma página.
+
+```python
+destination_document = ap.Document()
+```
+
+## Adicionar uma página para anotações exportadas
+
+Como as anotações devem pertencer a uma página, adicione uma nova página ao documento de destino antes de copiar qualquer coisa.
+
+```python
+page = destination_document.pages.add()
+```
+
+## Copiar anotações da página de origem
+
+Itere através da coleção de anotações na primeira página do PDF de origem e adicione cada anotação à nova página no documento de destino.
+
+O segundo argumento em `page.annotations.add(annot, True)` diz ao Aspose.PDF para copiar a anotação na página de destino em vez de apenas reutilizar a referência ao objeto existente.
+
+```python
+for annot in source_document.pages[1].annotations:
+ page.annotations.add(annot, True)
+```
+
+## Salvar o documento de saída
+
+Depois que todas as anotações foram copiadas, salve o documento de destino para criar o arquivo PDF final.
+
+```python
+destination_document.save(outfile)
+```
+
+## Exemplo completo
+
+O código a seguir combina todas as etapas em uma função reutilizável:
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def import_export(infile, outfile):
+ """
+ Import annotations from one PDF document and export them to a new PDF document.
+ """
+ source_document = ap.Document(infile)
+ destination_document = ap.Document()
+
+ page = destination_document.pages.add()
+
+ for annot in source_document.pages[1].annotations:
+ page.annotations.add(annot, True)
+
+ destination_document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Anotações Interativas](/python-net/interactive-annotations/)
+- [Anotações de marcação](/python-net/markup-annotations/)
+- [Anotações de Mídia](/python-net/media-annotations/)
+- [Anotações de Segurança](/python-net/security-annotations/)
+- [Anotações de Forma](/python-net/shape-annotations/)
+- [Anotações Baseadas em Texto](/python-net/text-based-annotations/)
+- [Anotações de Marca d'Água](/python-net/watermark-annotations/)
diff --git a/pt/python-net/advanced-operations/artifacts/_index.md b/pt/python-net/advanced-operations/artifacts/_index.md
new file mode 100644
index 0000000000..2fd77bece7
--- /dev/null
+++ b/pt/python-net/advanced-operations/artifacts/_index.md
@@ -0,0 +1,67 @@
+---
+title: Trabalhar com Artefatos PDF em Python
+linktitle: Trabalhando com Artefatos
+type: docs
+weight: 170
+url: /pt/python-net/artifacts/
+description: Aprenda como trabalhar com artefatos PDF em Python para adicionar fundos, marcas d'água e numeração Bates e contar tipos de artefatos com Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar artefatos de fundos, marcas d'água e numeração Bates em Python
+Abstract: Este artigo explica como trabalhar com artefatos PDF no Aspose.PDF for Python via .NET. Aprenda o que são os artefatos, por que são importantes para acessibilidade e layout de documentos, e como adicionar imagens de fundo, aplicar marcas d'água, adicionar numeração Bates e inspecionar tipos de artefatos em arquivos PDF com Python.
+---
+
+Os artefatos em PDF são objetos gráficos ou outros elementos que não fazem parte do conteúdo real do documento. Eles geralmente são usados para decoração, layout ou fins de fundo. Exemplos de artefatos incluem cabeçalhos de página, rodapés, separadores ou imagens que não transmitem nenhum significado.
+
+O objetivo dos artefatos em PDF é permitir a distinção entre elementos de conteúdo e não‑conteúdo. Isso é importante para acessibilidade, pois leitores de tela e outras tecnologias assistivas podem ignorar os artefatos e focar no conteúdo relevante. Os artefatos também podem melhorar o desempenho e a qualidade dos documentos PDF, pois podem ser omitidos da impressão, pesquisa ou cópia.
+
+Use esta seção quando precisar criar ou inspecionar elementos PDF não‑conteúdo em Python, como fundos de documento, marcas d'água de página e marcas de numeração Bates. Os guias a seguir mostram os principais fluxos de trabalho de artefatos suportados pelo Aspose.PDF for Python via .NET.
+
+Para criar um elemento como artefato em PDF, você precisa usar o [Artefato](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) classe.
+Ele contém as seguintes propriedades úteis:
+
+- **custom_type** - Obtém o nome do tipo de artefato. Pode ser usado se o tipo de artefato for não padrão.
+- **custom_subtype** - Obtém o nome do subtipo do artefato. Pode ser usado se o subtipo do artefato não for um subtipo padrão.
+- **type** - Obtém o tipo do artefato.
+- **subtype** - Obtém o subtipo do artefato. Se o artefato tem um subtipo não padrão, o nome do subtipo pode ser lido via CustomSubtype.
+- **contents** - Obtém a coleção de operadores internos do artefato.
+- **form** - Obtém o XForm do artefato (se XForm for usado).
+- **rectangle** - Obtém o retângulo do artefato.
+- **position** - Obtém ou define a posição do artefato. Se esta propriedade for especificada, as margens e alinhamentos são ignorados.
+- **right_margin** - Margem direita do artefato.Se a posição for especificada explicitamente (na propriedade Position) este valor é ignorado.
+- **left_margin** - Margem esquerda do artefato.Se a posição for especificada explicitamente (na propriedade Position) este valor é ignorado.
+- **top_margin** - Margem superior do artefato. Se a posição for especificada explicitamente (na propriedade Position) este valor é ignorado.
+- **bottom_margin** - Margem inferior do artefato.Se a posição for especificada explicitamente (na propriedade Position) este valor é ignorado.
+- **artifact_horizontal_alignment** - Alinhamento horizontal do artefato. Se a posição for especificada explicitamente (na propriedade Position) este valor é ignorado.
+- **artifact_vertical_alignment** - Alinhamento vertical do artefato. Se a posição for especificada explicitamente (na propriedade Position) este valor será ignorado.
+- **rotation** - Obtém ou define o ângulo de rotação do artefato.
+- **text** - Obtém o texto do artefato.
+- **image** - Obtém a imagem do artefato (se presente).
+- **opacity** - Obtém ou define a opacidade do artefato. Valores possíveis estão no intervalo 0..1.
+- **lines** - Linhas do artefato de texto multilinha.
+- **text_state** - Estado de texto para texto de artefato.
+- **is_background** - Se verdadeiro, o Artefato é colocado atrás do conteúdo da página.
+
+As seguintes classes também podem ser úteis para trabalhar com artefatos:
+
+- [ArtifactCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifactcollection/)
+- [BackgroundArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/backgroundartifact/)
+- [HeaderArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerartifact/)
+- [FooterArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/footerartifact/)
+- [WatermarkArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/watermarkartifact/)
+- [BatesNArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/batesnartifact/)
+
+## Fluxos de Trabalho de Artefato Cobertos Nesta Seção
+
+Por favor, revise as seguintes seções do artigo:
+
+- [Adicionando fundos](/pdf/pt/python-net/add-backgrounds/) - adicione uma imagem de fundo ao seu arquivo PDF com Python.
+- [Adicionando numeração Bates](/pdf/pt/python-net/add-bates-numbering/) - adicione numeração Bates ao PDF.
+- [Adicionando marca d'água](/pdf/pt/python-net/add-watermarks/) - como adicionar marca d'água a um PDF com Python.
+- [Contando Artefatos](/pdf/pt/python-net/counting-artifacts/) - contando Artefatos em PDF usando Python.
+- [Gerenciar cabeçalhos e rodapés de PDF](/pdf/pt/python-net/artifacts-header-footer/) - gerenciar cabeçalhos e rodapés em documentos PDF.
+
+Esses tutoriais são úteis quando você precisa gerenciar elementos decorativos ou estruturais de PDF sem alterar o fluxo de conteúdo principal do documento.
diff --git a/pt/python-net/advanced-operations/artifacts/add-backgrounds/_index.md b/pt/python-net/advanced-operations/artifacts/add-backgrounds/_index.md
new file mode 100644
index 0000000000..9cb4849296
--- /dev/null
+++ b/pt/python-net/advanced-operations/artifacts/add-backgrounds/_index.md
@@ -0,0 +1,148 @@
+---
+title: Adicionar fundos de PDF em Python
+linktitle: Adicionando fundos
+type: docs
+weight: 20
+url: /pt/python-net/add-backgrounds/
+description: Aprenda como adicionar uma imagem de fundo às páginas PDF em Python usando a classe BackgroundArtifact no Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar fundo a PDF com Python
+Abstract: Este artigo discute o uso de imagens de fundo em documentos PDF usando Aspose.PDF for Python via .NET. Ele destaca a capacidade de adicionar marcas d'água ou designs sutis aos documentos ao utilizar a classe `BackgroundArtifact`, que permite a incorporação de imagens de fundo em objetos de página individuais. O artigo fornece um exemplo de código prático que demonstra como implementar esse recurso. O processo envolve criar um novo documento PDF, adicionar uma página, criar um objeto `BackgroundArtifact`, definir uma imagem de fundo e anexar o artefato de fundo à coleção de artefatos da página. Finalmente, o documento modificado é salvo como um arquivo PDF. Essa técnica permite uma apresentação visual aprimorada dos documentos PDF.
+---
+
+## Adicionar uma Imagem de Fundo a um PDF
+
+Imagens de plano de fundo podem ser usadas para adicionar uma marca d'água ou outro design sutil a documentos. No Aspose.PDF for Python via .NET, cada documento PDF é uma coleção de páginas e cada página contém uma coleção de artefatos. O [BackgroundArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/backgroundartifact/) classe pode ser usada para adicionar uma imagem de fundo a um objeto de página.
+
+Essa abordagem é útil quando você precisa colocar uma imagem decorativa atrás do conteúdo principal do PDF sem transformá-la em texto pesquisável no documento.
+
+O seguinte trecho de código mostra como adicionar uma imagem de fundo às páginas PDF usando o objeto BackgroundArtifact com Python.
+
+1. Carregue o documento PDF.
+1. Crie um BackgroundArtifact.
+1. Carregue o arquivo de imagem.
+1. Anexe o artefato a uma página.
+1. Salve o documento atualizado.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def add_background_image_to_pdf(infile, imagefile, outfile):
+ """Add a background image to a PDF document as an artifact."""
+ with ap.Document(infile) as document:
+ artifact = ap.BackgroundArtifact()
+ artifact.background_image = FileIO(imagefile, "rb")
+ document.pages[1].artifacts.append(artifact)
+ document.save(outfile)
+```
+
+## Adicionar uma Imagem de Fundo com Opacidade a um PDF
+
+Adicionar uma imagem de fundo semitransparente a uma página PDF usando Aspose.PDF for Python.
+
+Ao aplicar opacidade, a imagem de fundo torna‑se parcialmente transparente, permitindo que o conteúdo original da página (texto, imagens, etc.) permaneça claramente visível. Isso é especialmente útil para:
+
+- Marcas d'água
+- Sobreposições de branding
+- Aprimoramentos sutis de design
+
+O plano de fundo é adicionado como um artefato, garantindo que permaneça atrás de todo o conteúdo da página.
+
+1. Carregue o documento PDF.
+1. Crie um BackgroundArtifact.
+1. Carregue o arquivo de imagem.
+1. Defina o nível de opacidade.
+1. Anexe o artefato a uma página.
+1. Salve o documento atualizado.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def add_background_image_with_opacity_to_pdf(infile, imagefile, outfile):
+ """Add a background image with opacity to a PDF document as an artifact."""
+ with ap.Document(infile) as document:
+ artifact = ap.BackgroundArtifact()
+ artifact.background_image = FileIO(imagefile, "rb")
+ artifact.opacity = 0.5
+ document.pages[1].artifacts.append(artifact)
+ document.save(outfile)
+```
+
+## Adicionar uma Cor de Fundo a um PDF
+
+Aplicar uma cor de fundo sólida a uma página PDF usando Aspose.PDF for Python.
+
+1. Carregue o documento PDF.
+1. Crie um BackgroundArtifact.
+1. Definir a cor de fundo.
+1. Anexe o artefato a uma página.
+1. Salve o documento atualizado.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def add_background_color_to_pdf(infile, outfile):
+ """Add a solid color background to a PDF document as an artifact."""
+ with ap.Document(infile) as document:
+ artifact = ap.BackgroundArtifact()
+ artifact.background_color = ap.Color.dark_khaki
+ document.pages[1].artifacts.append(artifact)
+ document.save(outfile)
+```
+
+## Remover plano de fundo de um PDF
+
+Remover artefatos de plano de fundo de uma página PDF usando Aspose.PDF for Python.
+Os planos de fundo em PDFs costumam ser armazenados como artefatos, e este método identifica seletivamente e remove apenas aqueles artefatos que são classificados como elementos de plano de fundo.
+
+1. Carregue o documento PDF.
+1. Acessar artefatos de página.
+1. Filtrar artefatos de plano de fundo.
+1. Coletar elementos de plano de fundo.
+1. Excluir artefatos de plano de fundo.
+1. Salve o documento atualizado.
+
+```python
+
+from os import path
+from io import FileIO
+import aspose.pdf as ap
+import sys
+
+def remove_background(infile, outfile):
+ with ap.Document(infile) as document:
+ backgrounds = [
+ artifact
+ for artifact in document.pages[1].artifacts
+ if artifact.type == ap.Artifact.ArtifactType.PAGINATION
+ and artifact.subtype == ap.Artifact.ArtifactSubtype.BACKGROUND
+ ]
+
+ for background in backgrounds:
+ document.pages[1].artifacts.delete(background)
+
+ document.save(outfile)
+```
+
+## Tópicos de Artefatos Relacionados
+
+- [Trabalhar com artefatos PDF em Python](/pdf/pt/python-net/artifacts/)
+- [Adicionar marcas d'água ao PDF em Python](/pdf/pt/python-net/add-watermarks/)
+- [Adicionar numeração Bates ao PDF em Python](/pdf/pt/python-net/add-bates-numbering/)
+- [Contar tipos de artefato em arquivos PDF](/pdf/pt/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/artifacts/add-bates-numbering/_index.md b/pt/python-net/advanced-operations/artifacts/add-bates-numbering/_index.md
new file mode 100644
index 0000000000..662e42bcc3
--- /dev/null
+++ b/pt/python-net/advanced-operations/artifacts/add-bates-numbering/_index.md
@@ -0,0 +1,120 @@
+---
+title: Adicionar numeração Bates ao PDF em Python
+linktitle: Adicionando numeração Bates
+type: docs
+weight: 10
+url: /pt/python-net/add-bates-numbering/
+description: Aprenda como adicionar e remover numeração Bates em documentos PDF usando Python com Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar numeração Bates via Python
+Abstract: Bates numbering é um recurso crítico em fluxos de trabalho de documentos jurídicos, médicos e empresariais, garantindo que cada página de um conjunto receba um identificador único e sequencial para referência confiável. Este artigo demonstra como o Aspose.PDF for Python via .NET simplifica a automação da numeração Bates por meio de sua API flexível. Usando a classe BatesNArtifact, os desenvolvedores podem configurar o comportamento da numeração — incluindo contagem de dígitos, prefixos, sufixos, alinhamento e margens — e aplicá‑la programaticamente em documentos inteiros. São apresentadas várias abordagens, desde a aplicação direta do artefato até a configuração baseada em delegados, oferecendo controle estático e dinâmico. Além disso, a API suporta a remoção completa dos números Bates com uma única chamada de método, permitindo o gerenciamento total do ciclo de vida dos artefatos de paginação. Exemplos de código claros e passo a passo ilustram como adicionar, personalizar e excluir a numeração Bates, tornando este guia um recurso prático para desenvolvedores que buscam otimizar fluxos de trabalho de processamento de documentos.
+---
+
+A numeração Bates é amplamente utilizada em fluxos de trabalho jurídicos, médicos e empresariais para atribuir identificadores únicos e sequenciais às páginas de um conjunto de documentos. Aspose.PDF for Python via .NET oferece uma API simples e flexível para automatizar esse processo, permitindo que você aplique números Bates padronizados programaticamente em qualquer PDF.
+
+Usando o [`BatesNArtifact`](https://reference.aspose.com/pdf/python-net/aspose.pdf/batesnartifact/) classe, os desenvolvedores podem personalizar totalmente o comportamento da numeração — incluindo o número inicial, a contagem de dígitos, prefixos e sufixos, alinhamento e margens. Uma vez configurado, o artefato pode ser aplicado ao [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) através do `add_bates_numbering` método no [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) ou adicionado como parte de uma lista de [`PaginationArtifact`](https://reference.aspose.com/pdf/python-net/aspose.pdf/paginationartifact/) objects. Aspose.PDF também suporta um estilo de configuração baseado em delegate, permitindo o controle dinâmico das configurações de artefatos em tempo de execução.
+
+Além de criar números Bates, a API fornece uma maneira fácil de removê-los usando `delete_bates_numbering`, oferecendo total flexibilidade nos fluxos de trabalho de processamento de documentos.
+
+Este artigo mostra vários métodos para adicionar e remover numeração Bates em um PDF usando Aspose.PDF for Python via .NET, com exemplos claros de configuração, aplicação e remoção de artefatos.
+
+## Adicionando Artefato de Numeração Bates
+
+Este exemplo mostra como adicionar programaticamente a numeração Bates a um documento PDF usando Aspose.PDF for Python via .NET. Configurando um [`BatesNArtifact`](https://reference.aspose.com/pdf/python-net/aspose.pdf/batesnartifact/) com as configurações desejadas e aplicando‑as às páginas do documento, você pode automatizar o processo de adicionar identificadores padronizados a cada página.
+
+Para adicionar um artefato de numeração Bates a um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), chame o `AddBatesNumbering(BatesNArtifact)` método de extensão em [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/), passando um [`BatesNArtifact`](https://reference.aspose.com/pdf/python-net/aspose.pdf/batesnartifact/) instância como parâmetro:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def _create_bates_artifact():
+ """Create a Bates numbering artifact with default settings."""
+ artifact = ap.BatesNArtifact()
+ artifact.start_page = 1
+ artifact.end_page = 0
+ artifact.subset = ap.Subset.ALL
+ artifact.number_of_digits = 6
+ artifact.start_number = 1
+ artifact.prefix = ""
+ artifact.suffix = ""
+ artifact.artifact_vertical_alignment = ap.VerticalAlignment.BOTTOM
+ artifact.artifact_horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ artifact.right_margin = 72
+ artifact.left_margin = 72
+ artifact.top_margin = 36
+ artifact.bottom_margin = 36
+ return artifact
+```
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def add_bates_n_artifact(infile, outfile):
+ """Add Bates numbering artifact to a PDF document."""
+ with ap.Document(infile) as document:
+ for _ in range(2):
+ document.pages.add()
+
+ bates_artifact = _create_bates_artifact()
+ ap.PageCollectionExtensions.add_bates_numbering(document.pages, bates_artifact)
+ document.save(outfile)
+```
+
+## Adicionar numeração Bates usando artefatos de paginação
+
+Adicionar numeração Bates a um PDF usando a coleção de artefatos de paginação no Aspose.PDF for Python:
+
+1. Carregue o documento PDF.
+1. Insira páginas extras se necessário antes de aplicar a numeração.
+1. Crie um artefato Bates.
+1. Configure as propriedades do artefato.
+1. Adicione o artefato à coleção de paginação.
+1. Aplicar paginação nas páginas.
+1. Salve o documento atualizado.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def add_bates_n_artifact_pagination(infile, outfile):
+ """Add Bates numbering using pagination artifacts collection."""
+ with ap.Document(infile) as document:
+ for _ in range(2):
+ document.pages.add()
+
+ bates_artifact = _create_bates_artifact()
+ ap.PageCollectionExtensions.add_pagination(document.pages, [bates_artifact])
+ document.save(outfile)
+```
+
+## Excluir numeração Bates
+
+Para remover a numeração Bates de um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), use o `delete_bates_numbering()` método no [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/):
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+
+def delete_bates_numbering(infile, outfile):
+ """Delete Bates numbering from a PDF document."""
+ with ap.Document(infile) as document:
+ ap.PageCollectionExtensions.delete_bates_numbering(document.pages)
+ document.save(outfile)
+```
+
+## Tópicos de Artefatos Relacionados
+
+- [Trabalhar com artefatos PDF em Python](/pdf/pt/python-net/artifacts/)
+- [Adicionar marcas d'água ao PDF em Python](/pdf/pt/python-net/add-watermarks/)
+- [Adicionar fundos PDF em Python](/pdf/pt/python-net/add-backgrounds/)
+- [Contar tipos de artefato em arquivos PDF](/pdf/pt/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/artifacts/add-watermarks/_index.md b/pt/python-net/advanced-operations/artifacts/add-watermarks/_index.md
new file mode 100644
index 0000000000..cdacc80aa1
--- /dev/null
+++ b/pt/python-net/advanced-operations/artifacts/add-watermarks/_index.md
@@ -0,0 +1,120 @@
+---
+title: Adicionar marcas d'água ao PDF em Python
+linktitle: Adicionando marca d'água
+type: docs
+weight: 30
+url: /pt/python-net/add-watermarks/
+description: Aprenda como adicionar artefatos de marca d'água a arquivos PDF em Python usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar marca d'água ao PDF com Python
+Abstract: O artigo discute o uso do Aspose.PDF for Python via .NET para adicionar marcas d'água a documentos PDF por meio da gestão de artifacts. Ele apresenta as classes principais para manipular artifacts – `Artifact` e `ArtifactCollection` – e descreve como acessá‑las através da propriedade `Artifacts` da classe `Page`. O artigo detalha as propriedades da classe `Artifact`, incluindo atributos como `contents`, `form`, `image`, `text`, `rectangle`, `rotation` e `opacity`, que permitem a manipulação abrangente de artifacts dentro de arquivos PDF. Além disso, é fornecido um exemplo prático, demonstrando como adicionar programaticamente uma marca d'água à primeira página de um PDF usando Python. O trecho de código ilustra a criação e configuração de um `WatermarkArtifact`, definindo seu texto, alinhamento, rotação e opacidade, antes de adicioná‑lo a um documento PDF e salvar as alterações.
+---
+
+Adicionar um artefato de marca d'água a um PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando Aspose.PDF for Python via .NET. Uma marca d'água é uma sobreposição visual aplicada às páginas para branding, segurança ou fins informacionais. O exemplo mostra como configurar [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/) aparência, posicionamento com [`HorizontalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/horizontalalignment/) e [`VerticalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/verticalalignment/), rotação e transparência antes de aplicar a marca d'água a [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+
+## Extrair marcas d'água de PDF
+
+1. Carregue o documento PDF.
+1. Acessar artefatos de página.
+1. Filtrar artefatos de marca d'água.
+1. Coletar elementos de marca d'água.
+1. Extrair propriedades da marca d'água.
+1. Exibir informações da marca d'água.
+
+```python
+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}")
+```
+
+## Adicionar uma marca d'água ao PDF
+
+Adicionar uma marca d'água de texto a um documento PDF usando Aspose.PDF for Python:
+
+1. Carregue o documento PDF.
+1. Criar um estado de texto.
+1. Criar um artefato de marca d'água.
+1. Definir o texto e o estilo da marca d'água.
+1. Configurar posicionamento e rotação.
+1. Defina a opacidade e o comportamento de fundo.
+1. Anexe a marca d'água a uma página.
+1. Salve o documento atualizado.
+
+```python
+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)
+
+```
+
+## Remover artefatos de marca d'água da página PDF
+
+Remover artefatos de marca d'água de uma página específica em um documento PDF usando a API Aspose.PDF for Python. A abordagem tem como alvo os elementos de marca d'água armazenados como artefatos de página (especificamente aqueles classificados como subtipos de marca d'água de paginação), itera sobre eles e os exclui antes de salvar o documento atualizado.
+
+1. Carregue o documento PDF.
+1. Acessar artefatos de página.
+1. Filtrar artefatos de marca d'água.
+1. Excluir artefatos de marca d'água.
+1. Salve o documento atualizado.
+
+```python
+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)
+```
+
+## Tópicos de Artefatos Relacionados
+
+- [Trabalhar com artefatos PDF em Python](/pdf/pt/python-net/artifacts/)
+- [Adicionar fundos PDF em Python](/pdf/pt/python-net/add-backgrounds/)
+- [Adicionar numeração Bates ao PDF em Python](/pdf/pt/python-net/add-bates-numbering/)
+- [Contar tipos de artefato em arquivos PDF](/pdf/pt/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/artifacts/artifacts-header-footer/_index.md b/pt/python-net/advanced-operations/artifacts/artifacts-header-footer/_index.md
new file mode 100644
index 0000000000..cf56dba094
--- /dev/null
+++ b/pt/python-net/advanced-operations/artifacts/artifacts-header-footer/_index.md
@@ -0,0 +1,119 @@
+---
+title: Gerenciar cabeçalhos e rodapés de PDF usando Python
+linktitle: Gerenciar cabeçalhos e rodapés de PDF
+type: docs
+weight: 70
+url: /pt/python-net/artifacts-header-footer/
+description: Aprenda como gerenciar cabeçalhos e rodapés em documentos PDF com Python e Aspose.PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar, personalizar e remover cabeçalhos e rodapés de PDF usando Python
+Abstract: Gerenciar cabeçalhos e rodapés é uma necessidade comum ao trabalhar com documentos PDF em negócios, publicação e fluxos de trabalho de automação. Este artigo demonstra como usar Aspose.PDF for Python para adicionar cabeçalhos e rodapés com aparência profissional, com estilo personalizado como fonte, tamanho, cor e alinhamento. Também mostra como detectar e remover artefatos de paginação existentes, como cabeçalhos e rodapés, de uma página PDF. Com funções reutilizáveis e exemplos claros, os desenvolvedores podem integrar rapidamente esses recursos em sistemas de processamento de documentos para branding, relatórios ou limpeza de arquivos.
+---
+
+## Criar Artefatos de Texto Estilizado
+
+Esta função utilitária explica como criar um artefato de texto reutilizável para páginas PDF usando Aspose.PDF for Python. Ela foi projetada para gerar cabeçalhos ou rodapés estilizados com formatação consistente, incluindo configurações de Font, cor, tamanho e alinhamento. A função abstrai a criação do artefato para que possa ser reutilizada em diferentes decorações de texto a nível de página.
+
+1. Instanciar o objeto artefato.
+1. Definir o conteúdo de texto do artefato.
+1. Aplicar estilo de texto.
+1. Definir alinhamento.
+1. Retornar artefato configurado.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def _create_text_artifact(artifact_class, text):
+ """Create a text artifact (header/footer) with common styling."""
+ artifact = artifact_class()
+ artifact.text = text
+ artifact.text_state.font_size = 14
+ artifact.text_state.font = ap.text.FontRepository.find_font("Arial")
+ artifact.text_state.foreground_color = ap.Color.navy
+ artifact.artifact_horizontal_alignment = ap.HorizontalAlignment.CENTER
+ return artifact
+
+```
+
+## Adicionar cabeçalho ao PDF
+
+1. Abra o PDF de entrada.
+1. Crie um HeaderArtifact com o texto "Sample Header".
+1. Anexe‑o à primeira página.
+1. Salve o PDF atualizado.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def add_header_artifact(infile, outfile):
+ """Add a header artifact to the first page of a PDF document."""
+ with ap.Document(infile) as document:
+ header = _create_text_artifact(ap.HeaderArtifact, "Sample Header")
+ document.pages[1].artifacts.append(header)
+ document.save(outfile)
+```
+
+## Adicionar Rodapé ao PDF
+
+1. Abra o PDF de entrada.
+1. Crie um FooterArtifact com texto "Sample Footer".
+1. Anexe‑o à primeira página.
+1. Salve o arquivo de saída.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def add_footer_artifact(infile, outfile):
+ """Add a footer artifact to the first page of a PDF document."""
+ with ap.Document(infile) as document:
+ footer = _create_text_artifact(ap.FooterArtifact, "Sample Footer")
+ document.pages[1].artifacts.append(footer)
+ document.save(outfile)
+```
+
+## Excluir Artefatos de Cabeçalho ou Rodapé
+
+1. Abrir o PDF.
+1. Encontre artefatos marcados como cabeçalhos ou rodapés de paginação.
+1. Remova-os da primeira página.
+1. Salve o documento limpo.
+
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def delete_header_footer_artifact(infile, outfile):
+ with ap.Document(infile) as document:
+ header_footers = [
+ artifact
+ for artifact in document.pages[1].artifacts
+ if artifact.type == ap.Artifact.ArtifactType.PAGINATION
+ and (
+ artifact.subtype == ap.Artifact.ArtifactSubtype.HEADER
+ or artifact.subtype == ap.Artifact.ArtifactSubtype.FOOTER
+ )
+ ]
+
+ for art in header_footers:
+ document.pages[1].artifacts.delete(art)
+
+ document.save(outfile)
+```
+
+## Tópicos de Artefatos Relacionados
+
+- [Trabalhar com artefatos PDF em Python](/pdf/pt/python-net/artifacts/)
+- [Adicionar fundos PDF em Python](/pdf/pt/python-net/add-backgrounds/)
+- [Adicionar numeração Bates ao PDF em Python](/pdf/pt/python-net/add-bates-numbering/)
+- [Contar tipos de artefato em arquivos PDF](/pdf/pt/python-net/counting-artifacts/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/artifacts/counting-artifacts/_index.md b/pt/python-net/advanced-operations/artifacts/counting-artifacts/_index.md
new file mode 100644
index 0000000000..f31c774d35
--- /dev/null
+++ b/pt/python-net/advanced-operations/artifacts/counting-artifacts/_index.md
@@ -0,0 +1,58 @@
+---
+title: Contar Artefatos PDF em Python
+linktitle: Contando Artefatos
+type: docs
+weight: 40
+url: /pt/python-net/counting-artifacts/
+description: Aprenda como inspecionar e contar artefatos de paginação em documentos PDF usando Python com Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Contando Artefatos em PDF usando Python
+Abstract: Artefatos de paginação, como marcas d'água, planos de fundo, cabeçalhos e rodapés, são comumente usados em documentos PDF para fornecer estrutura, identidade visual e identificação. Este exemplo demonstra como inspecionar e contar esses artefatos programaticamente usando Aspose.PDF for Python via .NET. Ao filtrar artefatos em uma página e agrupá-los por subtipo, os desenvolvedores podem analisar rapidamente a composição do documento e verificar a presença de elementos específicos. O código fornecido ilustra como abrir um PDF, extrair artefatos de paginação da primeira página, contar cada subtipo e exibir os resultados, oferecendo uma abordagem prática para auditoria e validação de documentos.
+---
+
+## Contando Artefatos de um Tipo Particular
+
+Inspecione e conte artefatos de paginação em um PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando Aspose.PDF for Python via .NET. Artefatos de paginação incluem elementos como marcas d'água, fundos, cabeçalhos e rodapés que são aplicados às páginas para fins de layout e identificação. Ao filtrar [`Artifact`](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) objetos em um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) e agrupando-os por subtipo (`Artifact.ArtifactSubtype`), os desenvolvedores podem analisar rapidamente a estrutura do documento e verificar a presença de elementos específicos.
+
+Para calcular a contagem total de artefatos de um tipo específico (por exemplo, o número total de marcas d'água), use o código a seguir. O exemplo filtra a página [`Artifacts`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) coleção (an [`ArtifactCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifactcollection/)) by [`Artifact.ArtifactType`](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/#properties) e então conta subtipos (`Artifact.ArtifactSubtype`).
+
+1. Abra o documento PDF (veja [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)).
+1. Filtre artefatos de paginação usando o 'da página [`Artifacts`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) coleção.
+1. Contar artefatos por subtipo (`Artifact.ArtifactSubtype`).
+1. Imprima os resultados.
+
+```python
+
+from os import path
+from collections import Counter
+import sys
+import aspose.pdf as ap
+
+def count_pdf_artifacts(infile):
+ """Count and display artifacts of different types on the first page."""
+ with ap.Document(infile) as document:
+ pagination_artifacts = [
+ artifact
+ for artifact in document.pages[1].artifacts
+ if artifact.type == ap.Artifact.ArtifactType.PAGINATION
+ ]
+
+ subtypes = [artifact.subtype for artifact in pagination_artifacts]
+ counts = Counter(subtypes)
+
+ print(f"Watermarks: {counts.get(ap.Artifact.ArtifactSubtype.WATERMARK, 0)}")
+ print(f"Backgrounds: {counts.get(ap.Artifact.ArtifactSubtype.BACKGROUND, 0)}")
+ print(f"Headers: {counts.get(ap.Artifact.ArtifactSubtype.HEADER, 0)}")
+ print(f"Footers: {counts.get(ap.Artifact.ArtifactSubtype.FOOTER, 0)}")
+```
+
+## Tópicos de Artefatos Relacionados
+
+- [Trabalhar com artefatos PDF em Python](/pdf/pt/python-net/artifacts/)
+- [Adicionar marcas d'água ao PDF em Python](/pdf/pt/python-net/add-watermarks/)
+- [Adicionar fundos PDF em Python](/pdf/pt/python-net/add-backgrounds/)
+- [Adicionar numeração Bates ao PDF em Python](/pdf/pt/python-net/add-bates-numbering/)
diff --git a/pt/python-net/advanced-operations/artifacts/watermark.png b/pt/python-net/advanced-operations/artifacts/watermark.png
new file mode 100644
index 0000000000..7e604310ae
Binary files /dev/null and b/pt/python-net/advanced-operations/artifacts/watermark.png differ
diff --git a/pt/python-net/advanced-operations/attachments/_index.md b/pt/python-net/advanced-operations/attachments/_index.md
index 20e5670327..f37fe7983c 100644
--- a/pt/python-net/advanced-operations/attachments/_index.md
+++ b/pt/python-net/advanced-operations/attachments/_index.md
@@ -1,150 +1,28 @@
---
-title: Trabalhando com Anexos em PDF usando Python
-linktitle: Trabalhando com Anexos
+title: Trabalhar com anexos PDF em Python
+linktitle: Trabalhando com anexos
type: docs
weight: 130
url: /pt/python-net/attachments/
-description: Use a API PDF do Python para acessar, adicionar e remover anexos em arquivos PDF usando Python dentro de suas aplicações. Guia completo com exemplos de código em Python.
-lastmod: "2023-02-17"
+description: Aprenda como adicionar, extrair, organizar e remover anexos PDF em Python com Aspose.PDF for Python via .NET, incluindo arquivos incorporados e portfólios PDF.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar, remover e gerenciar anexos PDF e portfólios em Python
+Abstract: Este artigo explica como trabalhar com anexos PDF no Aspose.PDF for Python via .NET. Aprenda como adicionar arquivos incorporados a documentos PDF, remover anexos programaticamente e criar ou gerenciar portfólios PDF que agrupam vários tipos de arquivos em um único contêiner PDF.
---
-
+Nesta seção, explicaremos como trabalhar com anexos em PDF usando o Aspose.PDF for Python via .NET.
+Um anexo é um arquivo adicional que é anexado a um documento pai; pode ser de vários tipos de arquivo, como pdf, word, imagem ou outros arquivos.
+Você aprenderá como adicionar anexos a pdf, obter as informações de um anexo e salvá‑lo em um arquivo, excluir o anexo de um PDF programaticamente com Python.
-Na seção seguinte, explicaremos como trabalhar com anexos em PDF usando Aspose.PDF para Python via .NET.
-Um anexo é um arquivo adicional que é anexado a um documento pai, ele pode ser de vários tipos de arquivos, como pdf, word, imagem ou outros arquivos.
-Você aprenderá como adicionar anexos a um pdf, obter as informações de um anexo e salvá-lo em um arquivo, deletar o anexo de um PDF programaticamente com Python.
+Use estes artigos quando precisar incorporar arquivos de apoio dentro de um PDF, remover arquivos incorporados de um documento existente ou agrupar materiais relacionados como um portfólio PDF.
-- [Adicionando anexo a um documento PDF](/pdf/pt/python-net/add-attachment-to-pdf-document/)
-- [Removendo anexo de um PDF existente](/pdf/pt/python-net/removing-attachment-from-an-existing-pdf/)
-- [Portfólio](/pdf/pt/python-net/portfolio/)
+## Fluxos de Trabalho de Anexo Cobertos Nesta Seção
-
\ No newline at end of file
+- [Adicionando anexo a um documento PDF](/pdf/pt/python-net/add-attachment-to-pdf-document/)
+- [Removendo anexo de um PDF existente](/pdf/pt/python-net/removing-attachment-from-an-existing-pdf/)
+- [Portfólio](/pdf/pt/python-net/portfolio/)
+- [Extrair anexos](/pdf/pt/python-net/extract-attachment/)
diff --git a/pt/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md b/pt/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md
index d3178fea67..fe4d300f7e 100644
--- a/pt/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/attachments/add-attachment-to-pdf-document/_index.md
@@ -1,170 +1,45 @@
---
-title: Adicionando Anexo a um Documento PDF usando Python
-linktitle: Adicionando Anexo a um Documento PDF
+title: Adicionar anexos ao PDF em Python
+linktitle: Adicionando anexo a um documento PDF
type: docs
weight: 10
url: /pt/python-net/add-attachment-to-pdf-document/
-description: Esta página descreve como adicionar um anexo a um arquivo PDF com Aspose.PDF para Python via biblioteca .NET.
-lastmod: "2023-02-17"
+description: Aprenda como adicionar anexos de arquivos a documentos PDF em Python usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar anexos ao PDF com Python
+Abstract: Este artigo fornece um guia passo a passo sobre como adicionar anexos a um arquivo PDF usando Python e a biblioteca Aspose.PDF. Ele detalha o processo de configuração de um novo projeto Python, importação do pacote Aspose.PDF necessário e criação de um objeto `Document`. O artigo explica como criar um objeto `FileSpecification` com o arquivo e a descrição desejados, e como adicionar esse objeto à `EmbeddedFileCollection` do documento PDF usando o método `add`. A `EmbeddedFileCollection` contém todos os anexos dentro do PDF. Um trecho de código está incluído para demonstrar o processo de abertura de um documento, configuração de um arquivo para anexar, adicioná‑lo à coleção de anexos do documento e salvar o PDF atualizado.
---
-
+Os anexos podem conter uma grande variedade de informações e podem ser de diversos tipos de arquivo. Este artigo explica como adicionar um anexo a um arquivo PDF.
-Attachments podem conter uma ampla variedade de informações e podem ser de vários tipos de arquivos. Este artigo explica como adicionar um anexo a um arquivo PDF.
+Use anexos PDF incorporados quando precisar empacotar arquivos-fonte de suporte, planilhas, imagens ou documentos relacionados junto com o PDF principal.
1. Crie um novo projeto Python.
1. Importe o pacote Aspose.PDF
-1. Crie um objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Crie um objeto [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) com o arquivo que você está adicionando e a descrição do arquivo.
-1. Adicione o objeto [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) à coleção [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), com o método [add](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) da coleção.
+1. Crie um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) object.
+1. Crie um [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) objeto com o arquivo que você está adicionando e a descrição do arquivo.
+1. Adicionar o [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) objeto ao [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) do objeto [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) coleção, com a coleção’s [add](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) método.
-A coleção [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) contém todos os anexos no arquivo PDF.
- O seguinte trecho de código mostra como adicionar um anexo em um documento PDF.
+O [EmbeddedFileCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) A coleção contém todos os anexos no arquivo PDF. O trecho de código a seguir mostra como adicionar um anexo em um documento PDF.
```python
+from os import path
+import aspose.pdf as ap
+
+def add_attachments(infile, attachment_path, outfile):
+ with ap.Document(infile) as document:
+ file_spec = ap.FileSpecification(attachment_path, "Sample text file")
+ document.embedded_files.add(path.basename(attachment_path), file_spec)
+ document.save(outfile)
+```
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
-
- # Configurar novo arquivo para ser adicionado como anexo
- fileSpecification = ap.FileSpecification(attachment_file, "Arquivo de texto de exemplo")
-
- # Adicionar anexo à coleção de anexos do documento
- document.embedded_files.append(fileSpecification)
+## Tópicos Relacionados a Anexos
- # Salvar nova saída
- document.save(output_pdf)
-```
+- [Trabalhar com anexos PDF em Python](/pdf/pt/python-net/attachments/)
+- [Remover anexos de PDF em Python](/pdf/pt/python-net/removing-attachment-from-an-existing-pdf/)
+- [Criar e gerenciar portfólios PDF em Python](/pdf/pt/python-net/portfolio/)
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/attachments/extract-attachment/_index.md b/pt/python-net/advanced-operations/attachments/extract-attachment/_index.md
new file mode 100644
index 0000000000..1612397af0
--- /dev/null
+++ b/pt/python-net/advanced-operations/attachments/extract-attachment/_index.md
@@ -0,0 +1,126 @@
+---
+title: Extrair anexos de PDF
+linktitle: Extrair anexos
+type: docs
+weight: 50
+url: /pt/python-net/extract-attachment/
+description: Aprenda como trabalhar com anexos de PDF usando Python e Aspose.PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: "Guia completo para gerenciar anexos de PDF em Python: adicionar, extrair e processar arquivos incorporados"
+Abstract: Os anexos de PDF são amplamente usados para armazenar documentos de apoio, relatórios, imagens e outros recursos diretamente dentro de um arquivo PDF. Este artigo fornece uma visão completa sobre o manuseio de anexos de PDF com Python usando Aspose.PDF. Ele explica como incorporar arquivos externos em PDFs existentes, extrair anexos específicos ou todos, inspecionar metadados como tamanho de arquivo e marcadores de tempo, e recuperar arquivos armazenados como anotações FileAttachment. Cada exemplo demonstra técnicas práticas para automatizar fluxos de trabalho de anexos, melhorar a portabilidade de documentos e simplificar o gerenciamento de arquivos. Seja construindo sistemas de documentos corporativos ou scripts de automação personalizados, os desenvolvedores podem usar esses métodos para gerenciar eficientemente arquivos incorporados dentro de documentos PDF.
+---
+
+## Extrair Anexo Específico de PDF
+
+Extrair um único arquivo incorporado de um documento PDF usando Python e Aspose.PDF. Ele procura um anexo pelo nome, recupera seu conteúdo e o salva como um arquivo separado. Isso é útil para acessar documentos incorporados, como relatórios, logs ou arquivos de suporte armazenados dentro do PDF.
+
+1. Definir Função 'extract_single_attachment()'.
+1. Abrir documento PDF.
+1. Pesquisar anexo.
+1. Extrair conteúdo do anexo.
+
+```python
+import aspose.pdf as ap
+
+def extract_single_attachment(infile, attachment_name, outfile):
+ with ap.Document(infile) as document:
+ print(f"Extracting attachment: {attachment_name}")
+
+ attachment_found = False
+ for file_spec in document.embedded_files:
+ if file_spec.name == attachment_name:
+ with open(outfile, "wb") as f:
+ f.write(file_spec.contents.read())
+ print("Attachment extracted successfully")
+ attachment_found = True
+ break
+
+ if not attachment_found:
+ raise ValueError(f"Attachment '{attachment_name}' not found in PDF")
+```
+
+## Exibir Metadados do Anexo de Arquivo
+
+Esta função auxiliar imprime informações de metadados de um objeto de especificação de arquivo. Ela é tipicamente usada ao trabalhar com anexos de arquivos incorporados em PDFs usando Aspose.PDF, permitindo que os desenvolvedores inspecionem detalhes como checksum, data de criação, data de modificação e tamanho do arquivo.
+
+```python
+def _print_file_params(params):
+ """Helper to print file specification parameters."""
+ if params:
+ print(f"CheckSum: {params.check_sum}")
+ print(f"Creation Date: {params.creation_date}")
+ print(f"Modification Date: {params.mod_date}")
+ print(f"Size: {params.size}")
+```
+
+## Extrair e Inspecionar Todos os Anexos PDF
+
+Este trecho de código demonstra como extrair todos os arquivos incorporados de um documento PDF usando Python e Aspose.PDF. Ele não apenas salva cada anexo em uma pasta especificada, mas também imprime metadados detalhados, como nome do arquivo, descrição, tipo MIME, soma de verificação e carimbos de data/hora. Isso é útil para auditoria, exportação ou processamento de conteúdo incorporado em arquivos PDF.
+
+```python
+from os import path
+import aspose.pdf as ap
+
+def extract_attachments(infile, output_dir):
+ with ap.Document(infile) as document:
+ print(f"Total files: {len(document.embedded_files)}")
+
+ for file_spec in document.embedded_files:
+ print(f"Name: {file_spec.name}")
+ print(f"Description: {file_spec.description}")
+ print(f"Mime Type: {file_spec.mime_type}")
+ _print_file_params(file_spec.params)
+
+ output_path = path.join(output_dir, file_spec.name)
+ with open(output_path, "wb") as f:
+ f.write(file_spec.contents.read())
+```
+
+## Extrair arquivos de anotações de anexos PDF
+
+Extrair um arquivo incorporado de uma anotação FileAttachment em um PDF usando Python e Aspose.PDF. Ele procura na primeira página a primeira anotação de anexo, recupera o arquivo incorporado e o salva em um diretório de saída selecionado. Isso é útil quando os PDFs contêm ícones de anexos de arquivo clicáveis em vez de coleções padrão de arquivos incorporados.
+
+```python
+from os import path
+import aspose.pdf as ap
+from aspose.pycore import cast
+
+def extract_file_attachment_annotation(infile, output_dir):
+ # Open PDF document
+ with ap.Document(infile) as document:
+
+ # Get first page
+ page = document.pages[1]
+
+ # Find first FileAttachment annotation
+ file_attachment = next(
+ (
+ annot
+ for annot in page.annotations
+ if annot.annotation_type == ap.annotations.AnnotationType.FILE_ATTACHMENT
+ ),
+ None,
+ )
+
+ if file_attachment is None:
+ print("No FileAttachment annotation found on the first page.")
+ return
+
+ # Cast to FileAttachmentAnnotation
+ faa = cast(ap.annotations.FileAttachmentAnnotation, file_attachment)
+
+ # Access embedded file
+ file_spec = faa.file
+ print(f"File name: {file_spec.name}")
+
+ # Save embedded file to disk
+ output_path = path.join(output_dir, f"extracted-{file_spec.name}")
+ with open(output_path, "wb") as f:
+ f.write(file_spec.contents.read())
+
+ print(f"Extracted to: {output_path}")
+```
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/attachments/portfolio/_index.md b/pt/python-net/advanced-operations/attachments/portfolio/_index.md
index a592cc9527..4ca8a3a91e 100644
--- a/pt/python-net/advanced-operations/attachments/portfolio/_index.md
+++ b/pt/python-net/advanced-operations/attachments/portfolio/_index.md
@@ -1,203 +1,85 @@
---
-title: Trabalhando com Portfólio em PDF usando Python
+title: Criar Portfólios PDF em Python
linktitle: Portfólio
type: docs
weight: 20
url: /pt/python-net/portfolio/
-description: Como Criar um Portfólio em PDF com Python. Você deve usar um arquivo Microsoft Excel, um documento Word e um arquivo de imagem para criar um Portfólio em PDF.
-lastmod: "2023-02-17"
+description: Saiba como criar e gerenciar portfólios PDF em Python com Aspose.PDF for Python via .NET.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Crie e edite portfólios PDF com arquivos incorporados em Python
+Abstract: Este artigo explica como criar e gerenciar portfólios PDF usando Aspose.PDF for Python via .NET. Saiba como agrupar múltiplos tipos de arquivo em um único portfólio PDF, adicionar arquivos a uma coleção de documentos e remover itens do portfólio programaticamente com Python.
---
-
-
-
-Criar um portfólio em PDF permite consolidar e arquivar diferentes tipos de arquivos em um único documento consistente. Tal documento pode incluir arquivos de texto, imagens, planilhas, apresentações e outros materiais, garantindo que todo o material relevante esteja armazenado e organizado em um só lugar.
-
-O portfólio em PDF ajudará a mostrar sua apresentação de uma maneira de alta qualidade, onde quer que você a utilize. Em geral, criar um portfólio em PDF é uma tarefa muito atual e moderna.
-
-## Como Criar um Portfólio em PDF
-
-Aspose.PDF para Python via .NET permite criar documentos de Portfólio em PDF usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Adicione um arquivo ao objeto document.collection depois de obtê-lo com a classe [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/). Quando os arquivos tiverem sido adicionados, use o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) da classe Document para salvar o documento do portfólio.
-
-O exemplo a seguir usa um arquivo do Microsoft Excel, um documento do Word e um arquivo de imagem para criar um portfólio em PDF.
+
+Criar um portfólio PDF permite consolidar e arquivar diferentes tipos de arquivos em um único documento consistente. Esse documento pode incluir arquivos de texto, imagens, planilhas, apresentações e outros materiais, garantindo que todo o material relevante seja armazenado e organizado em um só lugar.
+
+O portfólio PDF ajudará a exibir sua apresentação de forma de alta qualidade, onde quer que você a use. Em geral, criar um portfólio PDF é uma tarefa muito atual e moderna.
+
+Use um portfólio PDF quando quiser distribuir um conjunto de arquivos relacionados juntos, mantendo cada arquivo em seu formato original dentro de um único contêiner PDF.
+
+## Como criar um portfólio PDF
+
+Aspose.PDF for Python via .NET permite criar documentos de PDF Portfolio usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) class. Adicione um arquivo em um document.collection object após obtê‑lo com o [FileSpecification](https://reference.aspose.com/pdf/python-net/aspose.pdf/filespecification/) classe. Quando os arquivos foram adicionados, use a\u00A0Document\u00A0class\u0027 [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método para salvar o documento de portfólio.
+
+O exemplo a seguir usa um arquivo Microsoft Excel, um documento Word e um arquivo de imagem para criar um Portfólio PDF.
O código abaixo resulta no seguinte portfólio.
-### Um Portfólio PDF criado com Aspose.PDF para Python
+### Um PDF Portfolio criado com Aspose.PDF para Python
-
+
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Instanciar Objeto Documento
+def create_pdf_portfolio(input_files, outfile):
+ # Instantiate Document Object
document = ap.Document()
- # Instanciar objeto Collection do documento
+ # Instantiate document Collection object
document.collection = ap.Collection()
- # Obter arquivos para adicionar ao Portfólio
- excel = ap.FileSpecification(input_excel)
- word = ap.FileSpecification(input_doc)
- image = ap.FileSpecification(input_jpg)
+ # Get Files to add to Portfolio
+ excel = ap.FileSpecification(input_files[0])
+ word = ap.FileSpecification(input_files[1])
+ image = ap.FileSpecification(input_files[2])
- # Fornecer descrição dos arquivos
- excel.description = "Arquivo Excel"
- word.description = "Arquivo Word"
- image.description = "Arquivo de Imagem"
+ # Provide description of the files
+ excel.description = "Excel File"
+ word.description = "Word File"
+ image.description = "Image File"
- # Adicionar arquivos à coleção do documento
+ # Add files to document collection
document.collection.append(excel)
document.collection.append(word)
document.collection.append(image)
- # Salvar documento do Portfólio
- document.save(output_pdf)
+ # Save Portfolio document
+ document.save(outfile)
```
-## Remover Arquivos do Portfólio PDF
+## Remover arquivos do PDF Portfolio
-Para excluir/remover arquivos do portfólio PDF, tente usar as seguintes linhas de código.
+Para excluir/remover arquivos do PDF portfolio, tente usar as linhas de código a seguir.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Abrir documento
- documento = ap.Document(input_pdf)
- documento.collection.delete()
+def remove_files_from_pdf_portfolio(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ document.collection.delete()
- # Salvar arquivo atualizado
- documento.save(output_pdf)
+ # Save updated file
+ document.save(outfile)
```
-
\ No newline at end of file
+## Tópicos Relacionados ao Anexo
+
+- [Trabalhar com anexos PDF em Python](/pdf/pt/python-net/attachments/)
+- [Adicionar anexos ao PDF em Python](/pdf/pt/python-net/add-attachment-to-pdf-document/)
+- [Remover anexos do PDF em Python](/pdf/pt/python-net/removing-attachment-from-an-existing-pdf/)
+
diff --git a/pt/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_1.jpg b/pt/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_1.jpg
new file mode 100644
index 0000000000..06de27133c
Binary files /dev/null and b/pt/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_1.jpg differ
diff --git a/pt/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_2.jpg b/pt/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_2.jpg
new file mode 100644
index 0000000000..06de27133c
Binary files /dev/null and b/pt/python-net/advanced-operations/attachments/portfolio/working-with-pdf-portfolio_2.jpg differ
diff --git a/pt/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md b/pt/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md
index 629e31f330..eea406dfe2 100644
--- a/pt/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md
+++ b/pt/python-net/advanced-operations/attachments/removing-attachment-from-an-existing-pdf/_index.md
@@ -1,166 +1,67 @@
---
-title: Removendo anexo de PDF usando Python
+title: Remover Anexos de PDF em Python
linktitle: Removendo anexo de um PDF existente
type: docs
weight: 30
url: /pt/python-net/removing-attachment-from-an-existing-pdf/
-description: Aspose.PDF pode remover anexos de seus documentos PDF. Use a API Python PDF para remover anexos em arquivos PDF usando a biblioteca Aspose.PDF para Python via .NET.
-lastmod: "2023-02-17"
+description: Aspose.PDF pode remover anexos dos seus documentos PDF. Use a API PDF para Python para remover anexos em arquivos PDF usando a biblioteca Aspose.PDF for Python via .NET.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como excluir anexos de PDF com Python
+Abstract: Este artigo discute como remover anexos de arquivos PDF usando Aspose.PDF for Python. Os anexos em um documento PDF são armazenados dentro da coleção `EmbeddedFiles` do objeto `Document`. Para excluir todos os anexos de um PDF, você pode invocar o método `delete()` na coleção `EmbeddedFiles` e, em seguida, salvar o documento atualizado usando o método `save()` do objeto `Document`. Um trecho de código é fornecido para demonstrar esse processo, mostrando as etapas de abertura de um documento, exclusão de seus anexos e salvamento do arquivo modificado.
---
-
-
-
-Aspose.PDF para Python pode remover anexos de arquivos PDF. Os anexos de um documento PDF são mantidos na coleção [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) do objeto Document.
+
+Aspose.PDF for Python pode remover anexos de arquivos PDF. Os anexos de um documento PDF são mantidos no objeto `Document` [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) coleção.
+
+Esse fluxo de trabalho é útil quando você precisa limpar arquivos incorporados desatualizados, reduzir o tamanho do pacote ou preparar um PDF para redistribuição sem materiais de origem anexados.
Para excluir todos os anexos associados a um arquivo PDF:
-1. Chame o método [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) da coleção [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/).
-2. Salve o arquivo atualizado usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Chame o [EmbeddedFiles](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/) da coleção [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/#methods) método.
+1. Salve o arquivo atualizado usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) do objeto [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
O trecho de código a seguir mostra como remover anexos de um documento PDF.
```python
- import aspose.pdf as ap
+import aspose.pdf as ap
+
+def remove_attachment(infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ document.embedded_files.delete()
+ document.save(outfile)
+```
+
+## Remova um anexo específico pelo nome
+
+Se precisar remover apenas um anexo e manter os demais, use o [delete_by_key()](https://reference.aspose.com/pdf/python-net/aspose.pdf/embeddedfilecollection/delete_by_key/) método e passe o nome do anexo.
- # Abrir documento
- document = ap.Document(input_pdf)
+Para excluir um anexo específico:
- # Excluir todos os anexos
- document.embedded_files.delete()
+1. Abra o arquivo PDF de origem.
+1. Chamar `document.embedded_files.delete_by_key(attachment_name)`.
+1. Salve o arquivo PDF atualizado.
- # Salvar arquivo atualizado
- document.save(output_pdf)
+O trecho de código a seguir remove um anexo pelo seu nome.
+
+```python
+
+import aspose.pdf as ap
+
+def remove_attachment(infile, attachment_name, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ document.embedded_files.delete_by_key(attachment_name)
+ document.save(outfile)
```
+## Tópicos Relacionados a Anexos
+
+- [Trabalhar com anexos PDF em Python](/pdf/pt/python-net/attachments/)
+- [Adicionar anexos a PDF em Python](/pdf/pt/python-net/add-attachment-to-pdf-document/)
+- [Criar e gerenciar portfólios PDF em Python](/pdf/pt/python-net/portfolio/)
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/compare-pdf-documents/_index.md b/pt/python-net/advanced-operations/compare-pdf-documents/_index.md
new file mode 100644
index 0000000000..613414a6d0
--- /dev/null
+++ b/pt/python-net/advanced-operations/compare-pdf-documents/_index.md
@@ -0,0 +1,189 @@
+---
+title: Comparar documentos PDF em Python
+linktitle: Comparar PDF
+type: docs
+weight: 130
+url: /pt/python-net/compare-pdf-documents/
+description: Saiba como comparar documentos PDF em Python usando saída de diferenças lado a lado e gráfica com Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Comparar páginas PDF e documentos completos com saída visual de diferenças em Python
+Abstract: Este artigo explica como comparar documentos PDF no Aspose.PDF for Python via .NET. Aprenda como comparar páginas específicas ou arquivos PDF inteiros com saída lado a lado, e como usar métodos de comparação gráfica para gerar relatórios de diferenças baseados em imagem ou em PDF.
+---
+
+## Maneiras de Comparar Documentos PDF
+
+Ao trabalhar com documentos PDF, há momentos em que você precisa comparar o conteúdo de dois documentos para identificar diferenças. A biblioteca Aspose.PDF for Python via .NET fornece um conjunto de ferramentas poderoso para esse propósito. Neste artigo, exploraremos como comparar documentos PDF usando alguns trechos de código simples.
+
+Use a comparação lado a lado quando quiser uma saída PDF que destaque alterações de texto e layout entre as páginas. Use a comparação gráfica quando precisar de detecção de diferenças baseada em imagens para fluxos de trabalho de revisão visual, verificações de regressão ou relatórios de comparação de PDF.
+
+A funcionalidade de comparação no Aspose.PDF permite comparar dois documentos PDF página por página. Você pode escolher comparar páginas específicas ou documentos inteiros. O documento de comparação resultante destaca as diferenças, facilitando a identificação das alterações entre os dois arquivos.
+
+Aqui está uma lista de possíveis maneiras de comparar documentos PDF usando a biblioteca Aspose.PDF for Python via .NET:
+
+1. **Comparando Páginas Específicas** - Compare as primeiras páginas de dois documentos PDF.
+1. **Comparando Documentos Inteiros** - Compare todo o conteúdo de dois documentos PDF.
+1. **Comparar documentos PDF graficamente**:
+
+- Compare PDF com o método 'comparer.get_difference' - imagens individuais onde as alterações são marcadas.
+- Compare PDF com o método 'comparer.compare_documents_to_pdf' - documento PDF com imagens onde as alterações são marcadas.
+
+## Comparando Páginas Específicas
+
+O primeiro trecho de código demonstra como comparar as primeiras páginas de dois documentos PDF usando a classe SideBySidePdfComparer.
+
+1. Inicialização do Document.
+1. Crie uma função para executar a comparação.
+1. Processo de Comparação:
+
+- document1.pages[1] e document2.pages[1]: - estes especificam a primeira página de cada documento para comparação. Observe que a indexação de páginas começa em 1 no Aspose.PDF.
+- SideBySideComparisonOptions - esta classe permite a personalização do comportamento da comparação.
+- additional_change_marks = True - habilita a exibição de marcadores de alteração adicionais, destacando diferenças que podem estar presentes em outras páginas, mesmo que não estejam na página atual sendo comparada.
+- comparison_mode = ComparisonMode.IgnoreSpaces - define o modo de comparação para ignorar espaços no texto, concentrando‑se apenas nas alterações dentro das palavras.
+
+1. O resultado da comparação é salvo como um novo arquivo PDF chamado ComparingSpecificPages_out.pdf no diretório data_dir especificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def comparing_specific_pages(infile1, infile2, outfile):
+ # Open PDF documents
+ document_1 = ap.Document(infile1)
+ document_2 = ap.Document(infile2)
+
+ # Compare
+ options = ap.comparison.SideBySideComparisonOptions()
+ options.additional_change_marks = True
+ options.comparison_mode = ap.comparison.ComparisonMode.IGNORE_SPACES
+
+ # Perform comparison and save the result
+ ap.comparison.SideBySidePdfComparer.compare(
+ document_1.pages[1], document_2.pages[1], outfile, options
+ )
+```
+
+## Comparando Documentos Inteiros
+
+O segundo trecho de código expande o escopo para comparar todo o conteúdo de dois documentos PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def comparing_entire_documents(infile1, infile2, outfile):
+ # Open PDF documents
+ document_1 = ap.Document(infile1)
+ document_2 = ap.Document(infile2)
+
+ # Compare
+ options = ap.comparison.SideBySideComparisonOptions()
+ options.additional_change_marks = True
+ options.comparison_mode = ap.comparison.ComparisonMode.IGNORE_SPACES
+
+ # Perform comparison and save the result
+ ap.comparison.SideBySidePdfComparer.compare(
+ document_1, document_2, outfile, options
+ )
+```
+
+O código fornecido demonstra a comparação de dois documentos PDF usando Aspose.PDF for Python via .NET. Ele utiliza a classe SideBySidePdfComparer para realizar uma comparação página a página, gerando um novo PDF que exibe as diferenças lado a lado. A comparação é configurada com SideBySideComparisonOptions, onde additional_change_marks está definido como True para realçar alterações não apenas na página atual, mas também em outras páginas, e comparison_mode está definido como IgnoreSpaces para focar nas diferenças de conteúdo significativo, ignorando variações de espaços em branco.
+
+## Comparar usando GraphicalPdfComparer
+
+Ao colaborar em documentos, especialmente em ambientes profissionais, você costuma acabar com várias versões do mesmo arquivo.
+O código fornecido demonstra como comparar visualmente páginas específicas de dois documentos PDF usando Aspose.PDF for Python via .NET. Ao usar o `GraphicalPdfComparer` classe, realça as diferenças entre as primeiras páginas dos dois PDFs e gera imagens correspondentes para representar essas diferenças.
+
+Você pode definir as seguintes propriedades da classe:
+
+- Resolution - resolução em unidades DPI para imagens de saída, bem como para imagens geradas durante a comparação.
+- Color - a cor das marcas de alteração.
+- Limite - altere o limite em percentual. O valor padrão é zero. Definir um valor diferente de zero permite ignorar alterações gráficas que são insignificantes para você.
+
+Com Aspose.PDF for Python via .NET, é possível comparar documentos e páginas e gerar o resultado da comparação em um documento PDF ou arquivo de imagem.
+
+O `GraphicalPdfComparer` a classe tem um método que permite obter diferenças de imagem da página em um formato adequado para processamento adicional: `get_difference(document1.pages[1], document2.pages[1])`.
+
+Este método retorna um objeto do `images_difference` tipo, que contém uma imagem da primeira página sendo comparada e um array de diferenças.
+
+O `images_difference` objeto permite gerar uma imagem diferente e obter uma imagem da segunda página sendo comparada aplicando uma matriz de diferenças à imagem original. Para fazer isso, use o `difference_to_image` e `get_destination_image` métodos.
+
+### Comparar PDF com o método Get Difference
+
+O código fornecido define um método `get_difference` que compara dois documentos PDF e gera representações visuais das diferenças entre eles.
+
+Este método compara as primeiras páginas de dois arquivos PDF e gera duas imagens PNG:
+
+- Uma imagem destaca as diferenças entre as páginas em vermelho.
+- A outra imagem é uma representação visual da página de destino (segunda) do PDF.
+
+Esse processo pode ser útil para comparar visualmente alterações ou diferenças entre duas versões de um documento.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def compare_pdf_with_get_difference_method(infile1, infile2, outfile1, outfile2):
+ # Open PDF documents
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+
+ # Create comparer
+ comparer = ap.comparison.GraphicalPdfComparer()
+
+ # Compare specific pages
+ images_difference = comparer.get_difference(document1.pages[1], document2.pages[1])
+
+ # Get image showing differences in red over a white background
+ diff_img = images_difference.difference_to_image(ap.Color.red, ap.Color.white)
+ diff_img.save(outfile1)
+
+ # Get the second image representing the destination page
+ dest_img = images_difference.get_destination_image()
+ dest_img.save(outfile2)
+```
+
+### Comparar PDF com o método CompareDocumentsToPdf
+
+O trecho de código fornecido usa o `compare_documents_to_pdf` método, que compara dois documentos e gera um relatório em PDF dos resultados da comparação.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def compare_pdf_with_compare_documents_to_pdf_method(infile1, infile2, outfile):
+ # Open PDF documents
+ document_1 = ap.Document(infile1)
+ document_2 = ap.Document(infile2)
+
+ # Create comparer and set options
+ pdf_comparer = ap.comparison.GraphicalPdfComparer()
+ pdf_comparer.threshold = 3.0
+ pdf_comparer.color = ap.Color.blue
+ pdf_comparer.resolution = ap.devices.Resolution(300)
+
+ # Compare and output to a PDF file
+ pdf_comparer.compare_documents_to_pdf(document_1, document_2, outfile)
+```
+
+Este exemplo demonstra como realizar uma comparação gráfica de dois documentos PDF completos usando Aspose.PDF for Python via .NET. Ao aproveitar o `GraphicalPdfComparer` classe, gera um novo arquivo PDF que destaca visualmente as diferenças entre os documentos.
+
+- A propriedade threshold está definida como 3.0, significando que diferenças menores que essa percentagem são ignoradas durante a comparação, focando em alterações mais significativas.
+- As diferenças são marcadas em azul definindo a propriedade color para ap.Color.blue, permitindo uma distinção visual clara.
+- A comparação é realizada a uma resolução de 300 DPI definindo a propriedade de resolução, garantindo uma saída detalhada e nítida.
+
+O `compare_documents_to_pdf` método compara todas as páginas de ambos os documentos e gera o resultado em um novo arquivo PDF, compareDocumentsToPdf_out.pdf, com as diferenças destacadas visualmente.
+
+## Tópicos Relacionados
+
+- [Operações avançadas de PDF em Python](/pdf/pt/python-net/advanced-operations/)
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Trabalhar com texto PDF em Python](/pdf/pt/python-net/working-with-text/)
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/_index.md
index c26069be1c..4d372394ed 100644
--- a/pt/python-net/advanced-operations/navigation-and-interaction/_index.md
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/_index.md
@@ -1,144 +1,23 @@
---
-title: Navegação e Interação em PDF usando Python
+title: Navegação e Interação em PDF com Python
linktitle: Navegação e interação
type: docs
weight: 90
url: /pt/python-net/navigation-and-interaction/
-description: Esta seção descreve os recursos de trabalho com links, ações e marcadores com a Biblioteca Python.
-lastmod: "2023-02-17"
+description: Aprenda como trabalhar com links, ações e marcadores em PDF usando Python para navegação e comportamento interativo de documentos.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
- priority: 0.7
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Trabalhe com links, ações e marcadores em arquivos PDF usando Python
+Abstract: Esta seção explica como gerenciar recursos de navegação e interação em documentos PDF com Python. Aprenda a criar e atualizar links, adicionar ações interativas e trabalhar com marcadores para melhorar a navegação em PDF, a usabilidade e os fluxos de trabalho dos documentos.
---
-
+Use esta seção quando precisar criar navegação interativa em PDF com Python, seja criando marcadores, atualizando destinos de links ou anexando ações a eventos de documento, páginas e elementos de formulário.
-- [Favoritos](/pdf/pt/python-net/bookmarks/)- publicações grandes geralmente incluem uma estrutura de favoritos que pode ser facilmente visualizada e selecionada no Painel de Favoritos, permitindo que você clique em um favorito para pular para a página ou capítulo que ele representa. O Painel de Favoritos é um elemento sensível ao conteúdo e é visível na barra lateral apenas se o documento PDF aberto contiver uma estrutura de favoritos.
+## Tópicos nesta seção
-
\ No newline at end of file
+- [Ações](/pdf/pt/python-net/actions/) - neste artigo, você aprenderá a trabalhar com diferentes tipos de ações.
+- [Marcadores](/pdf/pt/python-net/bookmarks/)- publicações extensas geralmente incluem uma estrutura de marcadores que podem ser facilmente visualizados e selecionados no Painel de Marcadores, permitindo que você clique em um marcador para ir à página ou capítulo que ele representa. O Painel de Marcadores é um elemento sensível ao conteúdo e está visível na barra lateral apenas se o documento PDF aberto contiver uma estrutura de marcadores.
+- [Links](/pdf/pt/python-net/links/)- trabalhe com Links nos documentos PDF usando biblioteca Python.
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/actions/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/actions/_index.md
new file mode 100644
index 0000000000..38ab2daaa4
--- /dev/null
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/actions/_index.md
@@ -0,0 +1,360 @@
+---
+title: Trabalhar com Ações de PDF em Python
+linktitle: Ações
+type: docs
+weight: 20
+url: /pt/python-net/actions/
+description: Aprenda a adicionar, atualizar e remover ações de documento, página e formulário em arquivos PDF usando Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Adicione ações de documento, página e formulário a arquivos PDF em Python
+Abstract: Este artigo explora como trabalhar com ações em documentos PDF usando a biblioteca Aspose.PDF, abordando interações em nível de documento, nível de página e nível de formulário. As ações PDF são gatilhos predefinidos ou personalizáveis que respondem a eventos do usuário, permitindo navegação, execução de JavaScript, reprodução de multimídia, envio de formulários e muito mais. O guia demonstra como adicionar, personalizar e remover ações, como abrir URLs em eventos do documento, criar navegação ou efeitos de zoom específicos de página, adicionar botões interativos para impressão e navegação, ocultar elementos de formulário dinamicamente e enviar dados de formulário para endpoints web. Por meio de exemplos detalhados de código Python, os leitores aprendem a aprimorar a interatividade do PDF, simplificar fluxos de trabalho e integrar PDFs a sistemas externos, compreendendo as considerações de compatibilidade dos visualizadores.
+---
+
+Ações em um PDF são tarefas predefinidas que são acionadas por interação do usuário ou eventos do documento. Elas podem ser usadas para:
+
+- Navegue até uma página específica ou um arquivo externo
+- Abrir um link da web
+- Reproduzir conteúdo multimídia
+- Executar JavaScript
+- Enviar ou redefinir um formulário
+- Mostrar/ocultar campos
+- Alterar nível de zoom ou modo de visualização
+
+Quase todas as ações utilizam parâmetros integrados, mas há algumas que podem ser personalizadas. Por exemplo – Ações JavaScript.
+
+## Adicionar Ações de Lançamento de PDF
+
+Adicione ações de lançamento baseadas em JavaScript a um documento PDF usando Python e Aspose.PDF. Ele atribui ações a eventos chave do documento, como abertura, salvamento e impressão, permitindo que URLs sejam abertas automaticamente quando esses eventos ocorrerem em visualizadores de PDF compatíveis.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_launch_actions(infile, outfile):
+ """Add JavaScript launch actions for document events.
+
+ Adds JavaScript actions that launch URLs when specific document events occur:
+ - On document open: launches http://localhost:3000/open
+ - Before saving: launches http://localhost:3000/save
+ - Before printing: launches http://localhost:3000/print
+
+ Args:
+ infile (str): Path to the input PDF file.
+ outfile (str): Path to save the output PDF with document actions.
+
+ Returns:
+ None
+
+ Example:
+ >>> add_launch_actions("sample_data/input/add_launch_actions_in.pdf", "sample_data/output/add_launch_actions_out.pdf")
+
+ Notes:
+ - Uses `ap.annotations.JavascriptAction` with `app.launchURL()`.
+ - URLs are opened in the default browser depending on viewer support.
+ """
+
+ document = ap.Document(infile)
+
+ # Add JavaScript actions for document events
+ document.open_action = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/open');"
+ )
+ document.actions.before_saving = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/save');"
+ )
+ document.actions.before_printing = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/print');"
+ )
+
+ document.save(outfile)
+```
+
+## Removendo Ações do PDF Document
+
+Para limpar (ou remover) ações, basta definir o manipulador para `None`.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def remove_page_actions(infile, outfile):
+ document = ap.Document(infile)
+
+ if len(document.pages) < 3:
+ print("Error: The document does not have at least 3 pages.")
+ return
+
+ page = document.pages[3]
+ page.actions.remove_actions()
+
+ document.save(outfile)
+```
+
+## Adicionando Ações à página no Documento PDF
+
+Os gatilhos semelhantes são fornecidos para páginas: `on_open`, `on_close`.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_page_actions(infile, outfile):
+ document = ap.Document(infile)
+
+ if len(document.pages) < 3:
+ print("Error: The document does not have at least 3 pages.")
+ return
+
+ page = document.pages[3]
+
+ # Add GoTo action on page open - navigate to top of page
+ action = ap.annotations.GoToAction(page)
+ action.destination = ap.annotations.XYZExplicitDestination(
+ page, 0, page.page_info.height, 1
+ )
+ page.actions.on_open = action
+
+ # Add JavaScript action on page close
+ page.actions.on_close = ap.annotations.JavascriptAction(
+ "app.launchURL('http://localhost:3000/page/3');"
+ )
+
+ document.save(outfile)
+```
+
+## Ações em AcroForms
+
+### Usando ações de navegação
+
+O padrão PDF prevê um determinado conjunto de ações nomeadas. O significado dessas ações é determinado pelo seu nome.
+No código a seguir, usaremos ações para navegações.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_navigation_buttons(infile, outfile):
+ # Configuration for each navigation button
+ button_config = [
+ ("First Page", 10.0, PredefinedAction.FIRST_PAGE, lambda p, t: p == 1),
+ ("Previous Page", 120.0, PredefinedAction.PREV_PAGE, lambda p, t: p == 1),
+ ("Next Page", 230.0, PredefinedAction.NEXT_PAGE, lambda p, t: p == t),
+ ("Last Page", 340.0, PredefinedAction.LAST_PAGE, lambda p, t: p == t),
+ ]
+
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ # Add navigation buttons to each page
+ for page in document.pages:
+ for name, x_pos, action, is_readonly_fn in button_config:
+ # Create button rectangle
+ rect = Rectangle(x_pos, 10.0, x_pos + 100, 40.0, True)
+ button = ButtonField(page, rect)
+ button.partial_name = name
+ button.value = name
+ button.characteristics.border = ap.Color.red.to_rgb()
+ button.characteristics.background = ap.Color.orange.to_rgb()
+ # Disable button when not applicable
+ button.read_only = is_readonly_fn(page.number, total_pages)
+ button.actions.on_release_mouse_btn = NamedAction(action)
+ document.form.add(button)
+
+ document.save(outfile)
+```
+
+Este código adiciona botões de navegação a cada página de um documento PDF, facilitando para os usuários moverem‑se entre as páginas. Ele começa determinando os caminhos completos dos arquivos de entrada e saída usando um método auxiliar. A lista button_config define quatro tipos de botões de navegação —Primeira Página, Página Anterior, Próxima Página e Última Página— juntamente com suas posições horizontais, as ações de navegação predefinidas que eles acionam e uma função lambda que determina se cada botão deve ser somente leitura em uma determinada página (por exemplo, os botões "Primeira Página" e "Página Anterior" são somente leitura na primeira página).
+
+O código então carrega o PDF e itera por cada página. Para cada página, ele percorre as configurações de botões, criando uma área retangular para cada botão e instanciando um ButtonField naquele local. Cada botão recebe um nome, seu status somente‑leitura é definido com base na página atual, e sua ação de clique é atribuída à ação de navegação correspondente. O botão é então adicionado aos campos de formulário do PDF.
+
+Depois que todos os botões são adicionados a todas as páginas, o documento modificado é salvo. Se ocorrerem erros durante esse processo, eles são capturados e impressos. Essa abordagem garante que cada página tenha um conjunto consistente de controles de navegação, melhorando a usabilidade de PDFs de várias páginas. Uma sutileza é o uso da lambda is_readonly_fn para desativar os botões de navegação quando não fizer sentido (por exemplo, "Next Page" na última página), o que ajuda a prevenir a confusão do usuário.
+
+### Usando ações de impressão
+
+Ao usar formulários PDF, frequentemente há a necessidade de imprimir esses documentos PDF. Essa ação pode ser realizada usando um leitor de PDF, mas às vezes é mais conveniente fazê‑la diretamente a partir do documento usando um botão especial.
+
+Na verdade, este é mais um exemplo de como usar ações nomeadas. Nós usaremos `PredefinedAction.FILE_PRINT` (simulando o uso do item de menu File‑>Print), mas você também pode usar `PredefinedAction.PRINT` ou `PredefinedAction.PRINT_DIALOG`, dependendo dos seus próprios propósitos.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_named_action_print(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ # Create print button with specific dimensions and position
+ rect = Rectangle(10, 10, 100, 40, True)
+ print_button = ButtonField(page, rect)
+ print_button.partial_name = "printButton"
+ print_button.value = "Print"
+ print_button.actions.on_release_mouse_btn = NamedAction(PredefinedAction.FILE_PRINT)
+
+ # Add border for better visibility
+ border = ap.annotations.Border(print_button)
+ border.width = 1
+ print_button.border = border
+
+ # Add button to the form on page 1
+ document.form.add(print_button, 1)
+ document.save(outfile)
+```
+
+Este trecho de código demonstra como adicionar um botão "Print" à primeira página de um documento PDF. Ele começa carregando o PDF a partir do caminho de arquivo de entrada especificado e selecionando a primeira página (document.pages[1]).
+
+Uma área retangular é definida para a posição e tamanho do botão na página. Um ButtonField é então criado nessa localização, recebe o nome “printButton,” e seu valor de exibição é definido como “Print.” O botão é configurado para que, quando for clicado (especificamente, quando o botão do mouse for liberado), ele acione a ação predefinida “Print File,” solicitando ao visualizador de PDF que abra a caixa de diálogo de impressão.
+
+Para melhorar a aparência do botão, cria-se uma borda e atribui‑se ao botão, definindo sua largura como 1 unidade. O botão é então adicionado aos campos de formulário do PDF na primeira página. Finalmente, o documento modificado é salvo no caminho do arquivo de saída. Essa abordagem oferece aos usuários uma maneira conveniente de imprimir o documento diretamente a partir do PDF. Observe que a eficácia desse recurso depende do suporte do visualizador de PDF a campos de formulário interativos e ações predefinidas.
+
+### Usando a ação Ocultar
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_named_action_hide(infile, outfile):
+ document = ap.Document(infile)
+ # Collect all checkbox fields in the document
+ checkboxes = [
+ field for field in document.form if is_assignable(field, CheckboxField)
+ ]
+
+ # Create the hide button
+ rect = Rectangle(10, 410, 140, 440, True)
+ hide_button = ButtonField(document.pages[1], rect)
+ hide_button.partial_name = "HideButton"
+ hide_button.value = "Hide Checkboxes"
+
+ # Add HideAction to button - will hide all checkboxes when clicked
+ hide_button.actions.on_release_mouse_btn = HideAction(checkboxes, True)
+
+ # Add button to the form on page 1
+ document.form.add(hide_button, 1)
+
+ # Save the modified PDF
+ document.save(outfile)
+```
+
+Este trecho de código adiciona um botão à primeira página de um PDF que, ao ser clicado, oculta todos os campos de caixa de seleção no documento. Ele começa resolvendo os caminhos completos dos arquivos de entrada e saída usando um método auxiliar. O PDF é carregado, e todos os campos de caixa de seleção são coletados filtrando os campos de formulário por instâncias de `ap.CheckboxField`.
+
+Uma área retangular é definida para a posição do novo botão próximo ao topo da página. Um ButtonField é criado neste local, chamado “HideButton”, e rotulado “Hide Checkboxes”. O botão está configurado de modo que, quando clicado (ao liberar o botão do mouse), ele aciona uma HideAction que oculta todas as caixas de seleção coletadas.
+
+O botão é então adicionado aos campos de formulário na primeira página, e o PDF modificado é salvo no arquivo de saída. Se ocorrerem erros durante este processo, eles são capturados e exibidos. Esse recurso oferece aos usuários uma maneira de ocultar rapidamente todas as caixas de seleção no PDF, o que pode ser útil para personalizar a aparência ou o fluxo de trabalho do documento.
+
+### Aplicando Ação de Envio
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import is_assignable
+from aspose.pdf import Rectangle
+from aspose.pdf.forms import ButtonField, CheckboxField
+from aspose.pdf.annotations import (
+ NamedAction,
+ PredefinedAction,
+ HideAction,
+ SubmitFormAction,
+)
+from os import path
+import sys
+
+def add_submit_action(infile, outfile):
+ document = ap.Document(infile)
+
+ # Create the submit action
+ submit_action = SubmitFormAction()
+ submit_action.url = ap.FileSpecification("http://localhost:3000/submit")
+ submit_action.flags = (
+ SubmitFormAction.EXPORT_FORMAT | SubmitFormAction.SUBMIT_COORDINATES
+ )
+
+ # Create the submit button
+ rect = Rectangle(10, 10, 100, 40, True)
+ submit_button = ButtonField(document.pages[1], rect)
+ submit_button.partial_name = "SubmitButton"
+ submit_button.value = "Submit"
+ submit_button.actions.on_release_mouse_btn = submit_action
+
+ # Add the button to the form on page 1
+ document.form.add(submit_button, 1)
+
+ # Save the document
+ document.save(outfile)
+```
+
+Esta função adiciona um botão “Submit” à primeira página de um formulário PDF, permitindo que os usuários enviem os dados do formulário para um endpoint web especificado. Ela começa construindo os caminhos completos para os arquivos PDF de entrada e saída, depois carrega o PDF de entrada usando a biblioteca Aspose.PDF.
+
+A `SubmitFormAction` é criado para definir o comportamento quando o botão é clicado. O URL da ação é definido usando um `FileSpecification` apontando para http://localhost:3000/submit, o que significa que os dados do formulário serão enviados para esta URL. A propriedade flags combina `EXPORT_FORMAT` e `SUBMIT_COORDINATES`, garantindo que os dados do formulário sejam exportados em um formato padrão e que as coordenadas do clique do botão sejam incluídas na submissão.
+
+Uma área retangular é definida para a posição e o tamanho do botão na página. Um ButtonField é criado neste local na primeira página, com o nome “SubmitButton,” e seu valor de exibição é definido como “Submit.” A ação de envio é atribuída ao evento de liberação do mouse do botão, de modo que a ação é acionada quando o usuário clica no botão.
+
+Por fim, o botão é adicionado aos campos de formulário na primeira página, e o PDF modificado é salvo no arquivo de saída. Se ocorrerem erros durante este processo, eles são capturados e impressos. Essa abordagem fornece uma maneira amigável ao usuário para que os usuários de PDF enviem os dados do formulário diretamente para um endpoint de servidor.
+
+## Tópicos de Navegação Relacionados
+
+- [Navegação e interação em PDF usando Python](/pdf/pt/python-net/navigation-and-interaction/)
+- [Trabalhar com marcadores em PDF usando Python](/pdf/pt/python-net/bookmarks/)
+- [Trabalhe com links em PDF usando Python](/pdf/pt/python-net/links/)
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md
index 17f1546ec8..975abe040e 100644
--- a/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/_index.md
@@ -1,86 +1,29 @@
---
-title: Trabalhando com Marcadores em PDF usando Python
+title: Trabalhar com Marcadores de PDF em Python
linktitle: Marcadores
type: docs
weight: 30
url: /pt/python-net/bookmarks/
-description: Esta seção explica como adicionar, excluir e obter marcadores com Aspose.PDF para Python via .NET.
-lastmod: "2023-02-17"
+description: Saiba como adicionar, excluir, recuperar, atualizar e expandir marcadores de PDF em Python.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como trabalhar com Marcadores em PDF usando Python
+Abstract: O artigo discute a importância e a utilidade dos marcadores em documentos PDF. Os marcadores melhoram a experiência do usuário ao permitir navegação eficiente, organização e estruturação de arquivos PDF, tornando-os mais acessíveis. Eles funcionam como links interativos, permitindo que os usuários se desloquem rapidamente para seções ou páginas específicas, semelhante a um índice. O artigo fornece orientações sobre o gerenciamento de marcadores, incluindo como adicionar, excluir, obter, atualizar e expandi-los, capacitando os usuários a gerenciar e visualizar o conteúdo PDF de forma eficaz.
---
-
+Usar marcadores em PDF é um recurso prático. Com eles, você pode configurar a navegação nos seus documentos, organizar e estruturar arquivos PDF, tornando esses arquivos mais acessíveis. Eles funcionam como links interativos dentro do documento, permitindo que os usuários naveguem rapidamente para seções ou páginas específicas.
-Usar marcadores em PDF é um recurso muito útil. Com eles, você pode configurar a navegação em seus documentos, organizar e estruturar arquivos PDF e tornar esses arquivos mais acessíveis. Eles atuam como links interativos no documento, permitindo que os usuários naveguem rapidamente para seções ou páginas específicas.
+Os marcadores de PDF são uma ferramenta prática e essencial para a leitura de arquivos PDF. Eles permitem que os usuários pulem rapidamente para outros pontos em um documento PDF, naveguem pelas páginas e visualizem rapidamente o conteúdo de um PDF, assim como um índice.
-Os marcadores em PDF são uma ferramenta prática e essencial quando se trata de ler arquivos PDF. Eles permitem que os usuários saltem rapidamente para outros lugares em um documento PDF, naveguem pelas páginas e visualizem rapidamente o conteúdo de um PDF, como em um índice.
-Nesta seção, você aprenderá a:
+Use os guias de marcadores a seguir quando precisar criar uma experiência de navegação no estilo de índice ou inspecionar e atualizar uma árvore de marcadores existente em um PDF.
+
+## Tarefas de Marcadores Cobertas
+
+Nesta seção, você aprenderá como:
- [Adicionar e Excluir um Marcador](/pdf/pt/python-net/add-and-delete-bookmark/)
-- [Obter, Atualizar e Expandir um Marcador](/pdf/pt/python-net/get-update-and-expand-bookmark/)
\ No newline at end of file
+- [Obter, atualizar e expandir um marcador](/pdf/pt/python-net/get-update-and-expand-bookmark/)
+- [Visão geral da navegação e interação](/pdf/pt/python-net/navigation-and-interaction/)
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md
index cdd292d447..00ed137289 100644
--- a/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/add-and-delete-bookmark/_index.md
@@ -1,205 +1,160 @@
---
-title: Adicionar e Excluir um Marcador usando Python
+title: Adicionar e Excluir Marcadores de PDF em Python
linktitle: Adicionar e Excluir um Marcador
type: docs
weight: 10
url: /pt/python-net/add-and-delete-bookmark/
-description: Você pode adicionar um marcador a um documento PDF com Python. É possível excluir todos ou determinados marcadores de um documento PDF.
-lastmod: "2023-02-17"
+description: Aprenda como adicionar e excluir marcadores em documentos PDF usando Python.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar e remover Marcadores usando Python
+Abstract: Este artigo fornece instruções abrangentes sobre como gerenciar marcadores em documentos PDF usando a biblioteca Aspose.PDF para Python. Ele descreve os processos de adição, modificação e exclusão de marcadores dentro de um PDF. O artigo começa com um guia sobre como adicionar um marcador criando um objeto `OutlineItemCollection` e anexando‑o à `OutlineCollection` do documento. Inclui exemplos de código que demonstram a criação e a adição de marcadores pai e filho, destacando uma relação hierárquica. Além disso, o artigo aborda métodos para excluir todos os marcadores ou um marcador específico por título. Cada seção inclui trechos de código Python para ilustrar as operações, garantindo que os leitores possam implementar facilmente as funcionalidades descritas em suas tarefas de manipulação de PDF.
---
-
-
-
-## Adicionar um Marcador a um Documento PDF
-
-Os marcadores são mantidos na coleção [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) do objeto Document, que está na coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
+
+## Adicionar um marcador a um documento PDF
+
+Os marcadores são mantidos no objeto Document\u0027s [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) coleção, ela mesma no [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) coleção.
Para adicionar um marcador a um PDF:
-1. Abra um documento PDF usando o objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Abra um documento PDF usando [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto.
1. Crie um marcador e defina suas propriedades.
-1. Adicione a coleção [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) à coleção Outlines.
+1. Adicionar o [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) coleção para a coleção Outlines.
O trecho de código a seguir mostra como adicionar um marcador em um documento PDF.
```python
+import aspose.pdf as ap
+import sys
+from os import path
- import aspose.pdf as ap
+def add_bookmark(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
- # Abrir documento
- document = ap.Document(input_pdf)
+ # Create a bookmark object
+ pdf_outline = ap.OutlineItemCollection(document.outlines)
+ pdf_outline.title = "Test Outline"
+ pdf_outline.italic = True
+ pdf_outline.bold = True
- # Criar um objeto de marcador
- outline = ap.OutlineItemCollection(document.outlines)
- outline.title = "Test Bookmark"
- outline.italic = True
- outline.bold = True
- # Definir o número da página de destino
- outline.action = ap.annotations.GoToAction(document.pages[1])
- # Adicionar marcador na coleção de contornos do documento.
- document.outlines.append(outline)
+ # Set the destination page number
+ pdf_outline.action = ap.annotations.GoToAction(document.pages[1])
- # Salvar saída
- document.save(output_pdf)
-```
+ # Add bookmark to the document's outline collection
+ outlines = document.outlines
+ outlines.append(pdf_outline)
+ # Save PDF document
+ document.save(outfile)
+```
-## Adicionar um Marcador Filho ao Documento PDF
+## Adicionar um marcador filho ao documento PDF
-Os marcadores podem ser aninhados, indicando uma relação hierárquica com marcadores pai e filho. Este artigo explica como adicionar um marcador filho, ou seja, um marcador de segundo nível, a um PDF.
+Os marcadores podem ser aninhados, indicando uma relação hierárquica entre marcadores pai e filho. Este artigo explica como adicionar um marcador filho, ou seja, um marcador de segundo nível, a um PDF.
Para adicionar um marcador filho a um arquivo PDF, primeiro adicione um marcador pai:
-1. Abra um documento.
-1. Adicione um marcador à [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/), definindo suas propriedades.
-1. Adicione a OutlineItemCollection à coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) do objeto Documento.
+1. Abrir um documento.
+1. Adicionar um marcador ao [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/), definindo suas propriedades.
+1. Adicionar o OutlineItemCollection ao objeto Document [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) coleção.
-O marcador filho é criado da mesma forma que o marcador pai, explicado acima, mas é adicionado à coleção de contornos do marcador pai.
+O marcador filho é criado exatamente como o marcador pai, explicado acima, mas é adicionado à coleção Outlines do marcador pai
Os trechos de código a seguir mostram como adicionar um marcador filho a um documento PDF.
```python
-
- import aspose.pdf as ap
-
- # Abra o documento
- document = ap.Document(input_pdf)
-
- # Crie um objeto de marcador pai
- outline = ap.OutlineItemCollection(document.outlines)
- outline.title = "Parent Outline"
- outline.italic = True
- outline.bold = True
-
- # Crie um objeto de marcador filho
- childOutline = ap.OutlineItemCollection(document.outlines)
- childOutline.title = "Child Outline"
- childOutline.italic = True
- childOutline.bold = True
-
- # Adicione o marcador filho na coleção do marcador pai
- outline.append(childOutline)
- # Adicione o marcador pai na coleção de contornos do documento.
- document.outlines.append(outline)
-
- # Salvar saída
- document.save(output_pdf)
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_child_bookmark(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Create a parent bookmark object
+ pdf_outline = ap.OutlineItemCollection(document.outlines)
+ pdf_outline.title = "Parent Outline"
+ pdf_outline.italic = True
+ pdf_outline.bold = True
+
+ # Create a child bookmark object
+ pdf_child_outline = ap.OutlineItemCollection(document.outlines)
+ pdf_child_outline.title = "Child Outline"
+ pdf_child_outline.italic = True
+ pdf_child_outline.bold = True
+
+ # Add child bookmark to parent bookmark's collection
+ pdf_outline.append(pdf_child_outline)
+
+ # Add parent bookmark to the document's outline collection
+ document.outlines.append(pdf_outline)
+
+ # Save PDF document
+ document.save(outfile)
```
+## Excluir todos os marcadores de um documento PDF
-## Excluir todos os Favoritos de um Documento PDF
-
-Todos os favoritos em um PDF são mantidos na coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/). Este artigo explica como excluir todos os favoritos de um arquivo PDF.
+Todos os marcadores em um PDF são armazenados em [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) coleção. Este artigo explica como excluir todos os marcadores de um arquivo PDF.
-Para excluir todos os favoritos de um arquivo PDF:
+Para excluir todos os marcadores de um arquivo PDF:
-1. Chame o método Delete da coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
-2. Salve o arquivo modificado usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Chame o [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) método Delete da coleção.
+1. Salve o arquivo modificado usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) object's [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
-Os trechos de código a seguir mostram como excluir todos os favoritos de um documento PDF.
+Os trechos de código a seguir mostram como excluir todos os marcadores de um documento PDF.
```python
+import aspose.pdf as ap
+import sys
+from os import path
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
+def delete_bookmarks(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
- # Excluir todos os favoritos
+ # Delete all bookmarks in the PDF document
document.outlines.delete()
- # Salvar arquivo atualizado
- document.save(output_pdf)
-
+ # Save PDF document
+ document.save(outfile)
```
-## Excluir um Favorito Específico de um Documento PDF
+## Excluir um Marcador Particular de um Documento PDF
-Para excluir um favorito específico de um arquivo PDF:
+Para excluir um marcador específico de um arquivo PDF:
-1. Passe o título do marcador como parâmetro para o método Delete da coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
-1. Em seguida, salve o arquivo atualizado com o método Save do objeto Document.
+1. Passe o título do marcador como parâmetro para o [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) método Delete da coleção.
+1. Em seguida, salve o arquivo atualizado usando o método Save do objeto Document.
-A classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) fornece a coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/). O método [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/#methods) remove qualquer marcador com o título passado para o método.
+O [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe’ fornece o [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) coleção. O [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/#methods) método remove qualquer marcador com o título passado ao método.
-Os trechos de código a seguir mostram como deletar um marcador específico do documento PDF.
+Os trechos de código a seguir mostram como excluir um marcador específico do documento PDF.
```python
+import aspose.pdf as ap
+import sys
+from os import path
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
+def delete_bookmark(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
- # Deletar um marcador específico pelo Título
+ # Delete a specific bookmark by title.
+ # Note: If multiple bookmarks have the same title, only the first matching bookmark will be deleted.
document.outlines.delete("Child Outline")
- # Salvar arquivo atualizado
- document.save(output_pdf)
\ No newline at end of file
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Tópicos Relacionados ao Marcador
+
+- [Trabalhar com marcadores de PDF em Python](/pdf/pt/python-net/bookmarks/)
+- [Obtenha, atualize e expanda marcadores de PDF em Python](/pdf/pt/python-net/get-update-and-expand-bookmark/)
+- [Navegação e interação em PDF usando Python](/pdf/pt/python-net/navigation-and-interaction/)
+
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md
index c0b36fb20e..2d0d657eaf 100644
--- a/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/bookmarks/get-update-expand-bookmark/_index.md
@@ -1,96 +1,32 @@
---
-title: Obter, Atualizar e Expandir um Marcador usando Python
-linktitle: Obter, Atualizar e Expandir um Marcador
+title: Obter, atualizar e expandir marcadores de PDF em Python
+linktitle: Obter, atualizar e expandir um marcador
type: docs
weight: 20
url: /pt/python-net/get-update-and-expand-bookmark/
-description: Este artigo descreve como usar marcadores em um arquivo PDF com nossa biblioteca Aspose.PDF para Python.
-lastmod: "2023-02-17"
+description: Saiba como recuperar, atualizar e expandir marcadores em documentos PDF usando Python.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como usar marcadores em PDF com Python
+Abstract: Este artigo fornece um guia abrangente sobre como gerenciar marcadores dentro de um documento PDF usando a biblioteca Aspose.PDF em Python. Ele começa explicando como recuperar marcadores de um arquivo PDF através da `OutlineCollection`, que contém todos os marcadores, e detalha o acesso aos atributos dos marcadores via `OutlineItemCollection`. O artigo então descreve o processo de determinar o número da página associado a um marcador usando o `PdfBookmarkEditor`. Também explica como lidar com estruturas hierárquicas de marcadores, recuperando marcadores filhos dentro de cada `OutlineItemCollection`. Além disso, aborda a atualização das propriedades dos marcadores, demonstrando como modificar os atributos dos marcadores e salvar as alterações em um PDF. Por fim, o artigo trata da necessidade de expandir os marcadores ao visualizar um documento, mostrando como definir o status aberto de cada marcador para garantir que eles sejam expandidos por padrão. Trechos de código acompanham cada seção, fornecendo exemplos práticos de implementação dessas funcionalidades.
---
-
+## Obter Marcadores
-## Obter Favoritos
+O [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) object's [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) A coleção contém todos os marcadores de um arquivo PDF. Este artigo explica como obter marcadores de um arquivo PDF e como descobrir em qual página um marcador específico está.
-A coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) contém todos os favoritos de um arquivo PDF. Este artigo explica como obter os favoritos de um arquivo PDF, e como identificar em qual página um determinado favorito está.
-
-Para obter os favoritos, percorra a coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) e obtenha cada favorito na OutlineItemCollection. A [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) fornece acesso a todos os atributos do favorito. O trecho de código a seguir mostra como obter favoritos do arquivo PDF.
+Para obter os marcadores, percorra o [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) coleção e obtenha cada marcador na OutlineItemCollection. O [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) fornece acesso a todos os atributos do marcador. O trecho de código a seguir mostra como obter marcadores do arquivo PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Abrir documento
+def get_bookmarks(input_pdf):
document = ap.Document(input_pdf)
-
- # Percorrer todos os favoritos
for i in range(len(document.outlines)):
outline_item = document.outlines[i + 1]
print(outline_item.title)
@@ -99,44 +35,43 @@ Para obter os favoritos, percorra a coleção [OutlineCollection](https://refere
print(outline_item.color)
```
+## Obtendo o número da página de um marcador
-## Obtendo o Número da Página de um Marcador
-
-Depois de adicionar um marcador, você pode descobrir em qual página ele está obtendo o número da página de destino associado ao objeto Bookmark.
+Depois de adicionar um marcador, você pode descobrir em qual página ele está obtendo o PageNumber de destino associado ao objeto Bookmark.
```python
-
- import aspose.pdf as ap
-
- # Criar PdfBookmarkEditor
- bookmarkEditor = ap.facades.PdfBookmarkEditor()
- # Abrir arquivo PDF
- bookmarkEditor.bind_pdf(input_pdf)
- # Extrair marcadores
- bookmarks = bookmarkEditor.extract_bookmarks()
+from os import path
+import sys
+import aspose.pdf as ap
+
+def get_bookmark_page_number(input_pdf):
+ # Create PdfBookmarkEditor
+ bookmark_editor = ap.facades.PdfBookmarkEditor()
+ # Open PDF file
+ bookmark_editor.bind_pdf(input_pdf)
+ # Extract bookmarks
+ bookmarks = bookmark_editor.extract_bookmarks()
for bookmark in bookmarks:
- str_level_seprator = ""
+ str_level_separator = ""
for i in range(bookmark.level):
- str_level_seprator += "----"
+ str_level_separator += "----"
- print(str_level_seprator, "Título:", bookmark.title)
- print(str_level_seprator, "Número da Página:", bookmark.page_number)
- print(str_level_seprator, "Ação da Página:", bookmark.action)
+ print(str_level_separator, "Title:", bookmark.title)
+ print(str_level_separator, "Page Number:", bookmark.page_number)
+ print(str_level_separator, "Page Action:", bookmark.action)
```
-## Obter Marcadores Filhos de um Documento PDF
+## Obter marcadores filhos de um documento PDF
-Os marcadores podem ser organizados em uma estrutura hierárquica, com pais e filhos.
- Para obter todos os marcadores, faça um loop através das coleções de Outlines do objeto Document. No entanto, para obter também os marcadores filhos, faça um loop através de todos os marcadores em cada objeto [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) obtido no primeiro loop. Os seguintes trechos de código mostram como obter marcadores filhos de um documento PDF.
+Os marcadores podem ser organizados em uma estrutura hierárquica, com pais e filhos. Para obter todos os marcadores, percorra as coleções Outlines do objeto Document. No entanto, para obter também os marcadores filhos, percorra também todos os marcadores em cada [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) objeto obtido no primeiro loop. Os trechos de código a seguir mostram como obter marcadores filhos de um documento PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Abrir documento
+def get_child_bookmarks(input_pdf):
document = ap.Document(input_pdf)
-
- # Fazer loop através de todos os marcadores
for i in range(len(document.outlines)):
outline_item = document.outlines[i + 1]
print(outline_item.title)
@@ -145,126 +80,65 @@ Os marcadores podem ser organizados em uma estrutura hierárquica, com pais e fi
print(outline_item.color)
count = len(outline_item)
if count > 0:
- print("Marcadores Filhos")
- # Existem marcadores filhos, então faça um loop através deles também
+ print("Child Bookmarks")
+ # There are child bookmarks then loop through that as well
for j in range(len(outline_item)):
- child_outline_item = outline_item[i + 1]
+ child_outline_item = outline_item[j + 1]
print(child_outline_item.title)
print(child_outline_item.italic)
print(child_outline_item.bold)
print(child_outline_item.color)
```
-## Atualizar Favoritos em um Documento PDF
+## Atualizar Marcadores em um Documento PDF
-Para atualizar um favorito em um arquivo PDF, primeiro obtenha o favorito específico da coleção OutlineCollection do objeto Document, especificando o índice do favorito. Uma vez que você tenha recuperado o favorito no objeto [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/), você pode atualizar suas propriedades e, em seguida, salvar o arquivo PDF atualizado usando o método Save. Os fragmentos de código a seguir mostram como atualizar favoritos em um documento PDF.
+Para atualizar um marcador em um arquivo PDF, primeiro, obtenha o marcador específico da coleção OutlineColletion do objeto Document especificando o índice do marcador. [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) objeto, você pode atualizar suas propriedades e então salvar o arquivo PDF atualizado usando o método Save. Os trechos de código a seguir mostram como atualizar marcadores em um documento PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Abrir documento
+def update_bookmarks(input_pdf, output_pdf):
+ # Open document
document = ap.Document(input_pdf)
- # Obter um objeto de favorito
+ # Get a bookmark object
outline = document.outlines[1]
- # Obter objeto de favorito filho
+ # Get child bookmark object
child_outline = outline[1]
- child_outline.title = "Outline Atualizado"
+ child_outline.title = "Updated Outline"
child_outline.italic = True
child_outline.bold = True
- # Salvar saída
+ # Save output
document.save(output_pdf)
```
-## Favoritos Expandidos ao visualizar o documento
+## Marcadores expandidos ao visualizar o documento
-Os favoritos são mantidos na coleção [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) do objeto Document, que por sua vez está na coleção [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/).
- No entanto, podemos ter um requisito para que todos os marcadores sejam expandidos ao visualizar o arquivo PDF.
+Os marcadores são mantidos no objeto Document\u0027s [OutlineItemCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlineitemcollection/) coleção, ela mesma no [OutlineCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/outlinecollection/) coleção. No entanto, podemos ter um requisito de que todos os marcadores estejam expandidos ao visualizar o arquivo PDF.
-Para cumprir esse requisito, podemos definir o status de abertura para cada item de contorno/marcador como Aberto. O trecho de código a seguir mostra como definir o status de abertura para cada marcador como expandido em um documento PDF.
+Para atender a esse requisito, podemos definir o status aberto para cada item de contorno/marcador como Aberto. O trecho de código a seguir mostra como definir o status aberto para cada marcador como expandido em um documento PDF.
```python
+from os import path
+import sys
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Abrir documento
+def expanded_bookmarks(input_pdf, output_pdf):
document = ap.Document(input_pdf)
-
- # Definir modo de visualização da página, ou seja, mostrar miniaturas, tela cheia, mostrar painel de anexos
document.page_mode = ap.PageMode.USE_OUTLINES
- # Percorrer cada item de contorno na coleção de contornos do arquivo PDF
for i in range(len(document.outlines)):
item = document.outlines[i + 1]
- # Definir status de abertura para o item de contorno
item.open = True
-
- # Salvar saída
document.save(output_pdf)
```
-
\ No newline at end of file
+## Tópicos Relacionados ao Marcador
+
+- [Trabalhar com marcadores de PDF em Python](/pdf/pt/python-net/bookmarks/)
+- [Adicionar e excluir marcadores de PDF em Python](/pdf/pt/python-net/add-and-delete-bookmark/)
+- [Navegação e interação em PDF usando Python](/pdf/pt/python-net/navigation-and-interaction/)
+
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/links/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/links/_index.md
new file mode 100644
index 0000000000..0f9a7ff7a1
--- /dev/null
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/links/_index.md
@@ -0,0 +1,23 @@
+---
+title: Trabalhar com links PDF em Python
+linktitle: Links
+type: docs
+weight: 10
+url: /pt/python-net/links/
+description: Aprenda como criar, extrair e atualizar links internos e externos em documentos PDF usando Python.
+lastmod: "2026-05-19"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar, extrair e atualizar links PDF em Python
+Abstract: O guia Aspose.PDF for Python via .NET sobre como trabalhar com links oferece uma visão abrangente de como os desenvolvedores podem gerenciar programaticamente hiperlinks e elementos de navegação dentro de documentos PDF usando Python. Ele cobre operações essenciais, como criar links internos e externos, atualizar destinos e aparência dos links e extrair links existentes.
+---
+
+Use esta seção quando precisar criar links clicáveis, inspecionar anotações de links existentes ou atualizar a aparência e os destinos dos links em arquivos PDF.
+
+## Tarefas de Links Cobertas
+
+- [Criar links](/pdf/pt/python-net/create-links/) - aprenda de forma simples como criar links no seu arquivo PDF usando Python.
+- [Atualizar Links](/pdf/pt/python-net/update-links/) - tente definir o destino como PDF, tente definir o destino do link como endereço da web, tente definir o alvo do link como outro arquivo PDF, atualize a cor do texto do link.
+- [Extrair Links](/pdf/pt/python-net/extract-links/) - extraia links do arquivo PDF usando Python.
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/links/create-links/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/links/create-links/_index.md
new file mode 100644
index 0000000000..2179a91723
--- /dev/null
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/links/create-links/_index.md
@@ -0,0 +1,147 @@
+---
+title: Criar links PDF em Python
+linktitle: Criar links
+type: docs
+weight: 10
+url: /pt/python-net/create-links/
+description: Aprenda como criar links PDF internos, externos e remotos em Python.
+lastmod: "2026-05-19"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como criar links em PDF
+Abstract: O guia Aspose.PDF for Python via .NET sobre criação de links fornece aos desenvolvedores instruções práticas para adicionar hiperlinks interativos a documentos PDF usando Python. Ele cobre como criar vários tipos de links, incluindo aqueles que iniciam aplicativos externos, navegam para páginas específicas dentro do mesmo documento ou abrem outros arquivos PDF. A documentação explica como usar objetos LinkAnnotation, definir áreas clicáveis com Rectangle e atribuir ações como LaunchAction ou GoToRemoteAction. Com exemplos de código claros e orientações passo a passo, este recurso ajuda os desenvolvedores a melhorar a navegação e a interatividade de PDFs em suas aplicações Python.
+---
+
+## Links em Documentos PDF
+
+De acordo com a especificação PDF 1.7 (ISO 32000-1:2008), uma **Link annotation** pode acionar vários tipos de ações que definem o que acontece quando a anotação é ativada. Aqui estão as principais ações suportadas:
+
+1. **GoTo** – Navega para um destino dentro do mesmo documento.
+1. **GoToR** – Salta para um destino em outro arquivo PDF (go-to remoto).
+1. **URI** – Abre um identificador uniforme de recurso, normalmente um link da web.
+1. **Launch** – Lança um aplicativo ou abre um arquivo (dependente da plataforma e frequentemente restrito por questões de segurança).
+1. **Named** – Executa uma ação predefinida, como ir para a próxima página ou imprimir o documento.
+1. **JavaScript** – Executa código JavaScript incorporado (usado com cautela devido a preocupações de segurança).
+1. **SubmitForm** – Envia os dados do formulário para um URL especificado.
+1. **ResetForm** – Reseta os campos do formulário para seus valores padrão.
+1. **ImportData** – Importa dados para o documento a partir de um arquivo externo.
+
+Ao adicionar um link para um aplicativo em um documento, é possível vincular aplicativos a partir de um documento. Isso é útil quando você deseja que os leitores realizem uma certa ação em um ponto específico de um tutorial, por exemplo, ou para criar um documento rico em recursos.
+
+Para criar um link de aplicativo com ‘LaunchAction’:
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_launch_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ border = ap.annotations.Border(link)
+ border.width = 5
+ border.dash = ap.annotations.Dash(1, 1)
+ link.color = ap.Color.green
+ link.action = ap.annotations.LaunchAction(document, "sample.pdf")
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+## Criar link de Document PDF em um arquivo PDF
+
+### Usando GoToRemoteAction
+
+Este trecho de código demonstra como adicionar uma anotação de link a uma página específica de um documento PDF usando uma biblioteca PDF para Python.
+
+1. Abrir o documento PDF
+1. Selecione a segunda página do documento (índice 1)
+1. Criar uma anotação de link:
+1. Posicionado nas coordenadas (10, 580, 120, 600)
+1. Colorido em verde
+1. Links para 'sample.pdf' na sua primeira página
+1. Adicionar a anotação de link à página
+1. Salvar o documento modificado no caminho do arquivo de saída
+
+Para criar um link de documento PDF usando 'GoToRemoteAction':
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_go_to_remote_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ link.color = ap.Color.green
+ link.action = ap.annotations.GoToRemoteAction("sample.pdf", 1)
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+### Usando GoToAction
+
+Este código demonstra como adicionar uma anotação de link a uma página específica de um documento PDF usando Aspose.PDF for Python. O link aparece como um retângulo verde com borda tracejada e permite ao usuário navegar para outra página dentro do mesmo PDF. Para criar um link de documento PDF usando 'GoToAction':
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_go_to_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ border = ap.annotations.Border(link)
+ border.width = 5
+ border.dash = ap.annotations.Dash(1, 1)
+ link.color = ap.Color.green
+ if document.pages.length >= 4:
+ link.action = ap.annotations.GoToAction(document.pages[4])
+ else:
+ link.action = ap.annotations.GoToAction(document.pages[document.pages.length])
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+### Aplicando GoToURIAction
+
+O próximo exemplo demonstra como adicionar uma anotação de link a um documento PDF usando Aspose.PDF for Python. O link aparece como uma área verde clicável na primeira página e, quando clicado, abre a documentação do Aspose.PDF for Python em um navegador da web via uma GoToURIAction.
+
+Essa funcionalidade é útil para incorporar referências externas úteis, documentação ou links de suporte diretamente em seus PDFs.
+
+1. Carregue o Documento PDF. Abra o arquivo PDF existente usando ap.Document.
+1. Acesse a Primeira Página. Use document.pages[1] para acessar a primeira página (Aspose usa indexação baseada em 1).
+1. Crie uma Anotação de Link. Crie um objeto LinkAnnotation e especifique a área retangular clicável usando ap.Rectangle.
+1. Defina a aparência da anotação. Defina a cor da anotação para verde usando link.color = ap.Color.green.
+1. Atribua uma ação URI. Use GoToURIAction para vincular a anotação a um URL externo.
+1. Adicione a anotação à página. Anexe a anotação de link configurada à coleção de anotações da primeira página.
+1. Salve o documento modificado. Salve o documento PDF atualizado no caminho de saída especificado.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def create_link_annotation_go_to_URI_action(infile, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ link = ap.annotations.LinkAnnotation(page, ap.Rectangle(10, 580, 120, 600, True))
+ link.color = ap.Color.green
+ link.action = ap.annotations.GoToURIAction("https://docs.aspose.com/pdf/python")
+ page.annotations.append(link)
+ document.save(outfile)
+```
+
+## Tópicos de Links Relacionados
+
+- [Trabalhar com links PDF em Python](/pdf/pt/python-net/links/)
+- [Extrair links de PDF em Python](/pdf/pt/python-net/extract-links/)
+- [Atualizar links em PDF usando Python](/pdf/pt/python-net/update-links/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/links/extract-links/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/links/extract-links/_index.md
new file mode 100644
index 0000000000..6e066d91ee
--- /dev/null
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/links/extract-links/_index.md
@@ -0,0 +1,92 @@
+---
+title: Extrair Links PDF em Python
+linktitle: Extrair Links
+type: docs
+weight: 30
+url: /pt/python-net/extract-links/
+description: Aprenda como extrair anotações de links e hyperlinks de documentos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como extrair Links de PDF
+Abstract: O guia Aspose.PDF for Python via .NET sobre extração de links explica como recuperar programaticamente anotações de hyperlink de documentos PDF usando Python. A documentação inclui exemplos práticos de código e destaca como essa funcionalidade pode ser usada para tarefas como auditoria de links, análise de navegação ou criação de recursos interativos em documentos. Seja trabalhando com PDFs de página única ou processando grandes lotes, este guia oferece uma abordagem clara e eficiente para a extração de hyperlinks.
+---
+
+## Extrair Links do Arquivo PDF
+
+Este exemplo demonstra como iterar por todas as anotações de link na primeira página de um PDF usando Aspose.PDF for Python. Ele filtra as anotações para identificar aquelas do tipo LinkAnnotation, faz cast seguro delas e, em seguida, imprime o índice da página e a posição retangular na página.
+
+Isso pode ser usado para depuração, análises ou atualizações automatizadas das anotações de link existentes em um PDF.
+
+1. Carregue o documento PDF. Use ap.Document(path_infile) para abrir o arquivo.
+1. Acesse as anotações da primeira página. Use document.pages[1].annotations para recuperar todas as anotações.
+1. Filtre apenas os tipos LinkAnnotation. Verifique o annotation_type de cada anotação.
+1. Faça cast e processe as LinkAnnotations. Use is_assignable() e cast() para garantir acesso seguro às propriedades de LinkAnnotation.
+1. Imprima detalhes da anotação. Exiba o índice da página e o retângulo (localização) de cada link.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def extract_link_annotation(infile):
+
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ if is_assignable(la, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, la)
+ print(f"Page: {annotation.page_index}, location: {annotation.rect}")
+```
+
+## Extrair HyperLinks do Arquivo PDF
+
+Este código demonstra como extrair todos os objetos LinkAnnotation da primeira página de um documento PDF usando Aspose.PDF for Python, e então identificar aqueles que contêm um GoToURIAction. Para cada um desses links, ele imprime o índice da página e o URI de destino.
+
+Isso é útil para tarefas como:
+
+- Auditar links externos em um PDF
+- Extrair URLs de documentação ou suporte
+- Detectar hiperlinks quebrados ou desatualizados
+
+1. Carregar o documento PDF. Abrir o arquivo usando ap.Document.
+1. Obter todas as anotações de link da primeira página. Filtrar anotações para incluir apenas aquelas com o tipo AnnotationType.LINK.
+1. Verifique o tipo e faça cast para LinkAnnotation. Certifique‑se de que cada anotação é realmente uma LinkAnnotation antes de acessar suas propriedades.
+1. Verifique o tipo de ação do link. Filtre os links que utilizam um GoToURIAction (ou seja, links para um URL da web).
+1. Extraia e imprima o URI e o índice da página. Use .uri para obter o link externo e .page_index para obter o contexto.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def extract_hyperlinks(infile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ if is_assignable(la, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, la)
+ if is_assignable(annotation.action, ap.annotations.GoToURIAction):
+ action = cast(ap.annotations.GoToURIAction, annotation.action)
+ print(f"Page {annotation.page_index}, URI:{action.uri}")
+```
+
+## Tópicos de Links Relacionados
+
+- [Trabalhar com links de PDF em Python](/pdf/pt/python-net/links/)
+- [Criar links de PDF em Python](/pdf/pt/python-net/create-links/)
+- [Atualizar links em PDF usando Python](/pdf/pt/python-net/update-links/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/navigation-and-interaction/links/update-links/_index.md b/pt/python-net/advanced-operations/navigation-and-interaction/links/update-links/_index.md
new file mode 100644
index 0000000000..127c189552
--- /dev/null
+++ b/pt/python-net/advanced-operations/navigation-and-interaction/links/update-links/_index.md
@@ -0,0 +1,114 @@
+---
+title: Atualizar links PDF em Python
+linktitle: Atualizar links
+type: docs
+weight: 20
+url: /pt/python-net/update-links/
+description: Aprenda como atualizar a aparência e os destinos dos links PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como atualizar links em PDF
+Abstract: O guia Aspose.PDF for Python via .NET sobre atualização de links orienta os desenvolvedores no processo de modificar o comportamento de hyperlinks em documentos PDF usando Python. Ele explica como alterar os destinos dos links para apontar para páginas específicas, sites externos ou até mesmo outros arquivos PDF. A documentação também aborda como ajustar a aparência das anotações de link, incluindo a cor do texto, e fornece exemplos de código práticos para cada cenário. Seja corrigindo URLs desatualizadas ou aprimorando a navegação, este recurso oferece uma abordagem clara e eficiente para gerenciar links programaticamente.
+---
+
+## Atualizar a Cor do Texto da LinkAnnotation
+
+Este exemplo mostra como detectar todas as anotações de link na primeira página de um PDF usando Aspose.PDF for Python, então destacar o texto próximo a cada link alterando a cor da fonte para vermelho. Ele usa TextFragmentAbsorber com uma área ligeiramente expandida ao redor de cada retângulo de link para encontrar e modificar o texto próximo.
+
+Isso pode ser usado para:
+
+- Marcar visualmente links em um documento
+- Aprimorar a acessibilidade enfatizando o conteúdo vinculado
+- Pré-processamento de arquivos PDF antes da revisão ou exportação
+
+Para cada uma dessas anotações de link, o script recupera seu limite retangular e expande ligeiramente essa região para incluir texto próximo, permitindo uma identificação visual mais ampla. Em seguida, aplica um TextFragmentAbsorber sobre essa área expandida para extrair quaisquer fragmentos de texto localizados nela. Esses fragmentos capturados são modificados alterando a cor da fonte para vermelho, marcando efetivamente o texto ao redor para ênfase e revisão. Após aplicar todas essas atualizações, o documento modificado é salvo no caminho de saída, preservando as anotações destacadas e seu texto associado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def link_annotation_update_text_color(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ ta = ap.text.TextFragmentAbsorber()
+ rect = la.rect
+ rect.llx -= 2
+ rect.lly -= 2
+ rect.urx += 2
+ rect.ury += 2
+ ta.text_search_options = ap.text.TextSearchOptions(rect)
+ ta.visit(document.pages[1])
+ for textFragment in ta.text_fragments:
+ textFragment.text_state.foreground_color = ap.Color.red
+
+ document.save(outfile)
+```
+
+## Atualizar borda
+
+O script concentra-se na primeira página do documento e filtra todas as anotações, selecionando apenas aquelas do tipo LINK—geralmente representam elementos interativos, como hyperlinks ou gatilhos de navegação. Para cada uma dessas anotações de link, o código as converte para o tipo LinkAnnotation e atualiza sua propriedade de cor para vermelho, destacando-as visualmente para se sobressair ao restante do conteúdo. Após todas as anotações de link terem sido modificadas, o documento atualizado é salvo no local de saída definido, preservando o novo estilo.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def link_annotation_update_border(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ link_annotation = cast(ap.annotations.LinkAnnotation, la)
+ link_annotation.color = ap.Color.red
+
+ document.save(outfile)
+```
+
+## Atualizar Destino da Web
+
+Uma vez que os caminhos estejam configurados, o documento original é carregado usando a biblioteca Aspose.PDF, tornando seu conteúdo acessível para modificação. O script então foca na primeira página do documento, filtrando todas as anotações e selecionando apenas aquelas do tipo link, que tipicamente representam áreas clicáveis ou hiperlinks. Para evitar erros de tipo e garantir um manuseio seguro, cada anotação é verificada com is_assignable e então convertida para o tipo adequado LinkAnnotation. Se o link estiver associado a uma GoToURIAction, significando que aponta para um endereço web, o script atualiza esse URI para redirecionar os usuários para "https://www.aspose.com". Finalmente, depois que todas as alterações desejadas foram aplicadas, o documento modificado é salvo no caminho de saída especificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+from aspose.pycore import cast, is_assignable
+
+def link_annotation_update_web_destination(infile, outfile):
+ document = ap.Document(infile)
+ link_annotations = [
+ a
+ for a in document.pages[1].annotations
+ if (a.annotation_type == ap.annotations.AnnotationType.LINK)
+ ]
+
+ for la in link_annotations:
+ if is_assignable(la, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, la)
+ if is_assignable(annotation.action, ap.annotations.GoToURIAction):
+ action = cast(ap.annotations.GoToURIAction, annotation.action)
+ action.uri = "https://www.aspose.com"
+ document.save(outfile)
+```
+
+## Tópicos de Links Relacionados
+
+- [Trabalhar com links de PDF em Python](/pdf/pt/python-net/links/)
+- [Criar links de PDF em Python](/pdf/pt/python-net/create-links/)
+- [Extrair links de PDF em Python](/pdf/pt/python-net/extract-links/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/pdf-file-metadata/_index.md b/pt/python-net/advanced-operations/pdf-file-metadata/_index.md
new file mode 100644
index 0000000000..99e8cfe2e9
--- /dev/null
+++ b/pt/python-net/advanced-operations/pdf-file-metadata/_index.md
@@ -0,0 +1,147 @@
+---
+title: Trabalhar com metadados de arquivo PDF em Python
+linktitle: Metadados de Arquivo PDF
+type: docs
+weight: 200
+url: /pt/python-net/pdf-file-metadata/
+description: Saiba como extrair, atualizar e gerenciar metadados de arquivo PDF e propriedades XMP em Python usando Aspose.PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obtenha e defina informações do documento PDF e metadados XMP em Python
+Abstract: Este artigo explica como trabalhar com metadados PDF no Aspose.PDF for Python via .NET. Aprenda como ler informações do documento, como autor, título e palavras‑chave, atualizar propriedades do arquivo, definir campos de metadados XMP e registrar prefixos de metadados personalizados para arquivos PDF em Python.
+---
+
+Use este guia quando precisar inspecionar as propriedades do documento, atualizar as informações do arquivo PDF para busca ou catalogação, ou gerenciar metadados XMP programaticamente em Python.
+
+## Obter informações do arquivo PDF
+
+Este trecho de código demonstra como extrair metadados de um documento PDF usando Aspose.PDF for Python via .NET. Ao acessar a propriedade info do objeto Document, ele recupera informações essenciais como autor, data de criação, palavras‑chave, data de modificação, assunto e título. Essa funcionalidade é essencial para aplicações que exigem catalogação de documentos, otimização de busca ou validação das propriedades do documento.
+
+1. Abra o arquivo PDF usando a classe Document
+1. Recupere os metadados do documento através da propriedade info
+1. Exiba as informações de metadados. Imprima os campos de metadados desejados
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def get_pdf_file_information(infile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Get document information
+ doc_info = document.info
+
+ # Display document information
+ print(f"Author: {doc_info.author}")
+ print(f"Creation Date: {doc_info.creation_date}")
+ print(f"Keywords: {doc_info.keywords}")
+ print(f"Modify Date: {doc_info.mod_date}")
+ print(f"Subject: {doc_info.subject}")
+ print(f"Title: {doc_info.title}")
+```
+
+## Definir informações do arquivo PDF
+
+Aspose.PDF for Python via .NET permite definir informações específicas de arquivo para um PDF, informações como autor, data de criação, assunto e título. Para definir essas informações:
+
+1. Abra o arquivo PDF usando a classe Document.
+1. Criar um [DocumentInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/documentinfo/) objeto e definir as propriedades de metadados desejadas.
+1. Salvar as alterações em um novo arquivo PDF usando o método save.
+
+O trecho de código a seguir mostra como definir informações de arquivo PDF.
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def set_file_information(infile, outfile):
+
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Specify document information
+ doc_info = ap.DocumentInfo(document)
+ doc_info.author = "Aspose"
+ doc_info.creation_date = datetime.datetime.now()
+ doc_info.keywords = "Aspose.Pdf, DOM, API"
+ doc_info.mod_date = datetime.datetime.now()
+ doc_info.subject = "PDF Information"
+ doc_info.title = "Setting PDF Document Information"
+ doc_info.producer = "Custom producer"
+ doc_info.creator = "Custom creator"
+
+ # Save PDF document
+ document.save(outfile)
+```
+
+## Definir metadados XMP em um arquivo PDF
+
+Este trecho de código demonstra como definir ou atualizar programaticamente metadados XMP em um documento PDF usando Aspose.PDF for Python via .NET. Ao modificar propriedades como xmp:CreateDate, xmp:Nickname e campos definidos pelo usuário, você pode incorporar metadados padronizados em seus arquivos PDF. Essa abordagem é particularmente útil para melhorar a organização de documentos, facilitar a pesquisa e incorporar informações essenciais diretamente no arquivo.
+
+Aspose.PDF permite que você defina metadados em um arquivo PDF. Para definir metadados:
+
+1. Abra o arquivo PDF usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Modifique os metadados XMP atribuindo valores a chaves específicas.
+1. Salve o Documento PDF Atualizado.
+
+O trecho de código a seguir mostra como definir metadados em um arquivo PDF.
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def set_xmp_metadata(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Set XMP metadata properties
+ document.metadata.add("xmp:CreateDate", datetime.datetime.now().isoformat())
+ document.metadata.add("xmp:Nickname", "Nickname")
+ document.metadata.add("xmp:CustomProperty", "Custom Value")
+
+ # Save the updated PDF document
+ document.save(outfile)
+```
+
+## Inserir Metadados com Prefixo
+
+Alguns desenvolvedores precisam criar um novo espaço de nomes de metadados com um prefixo. O trecho de código a seguir mostra como inserir metadados com prefixo.
+
+```python
+import aspose.pdf as ap
+import datetime
+import sys
+from os import path
+
+def set_prefix_metadata(infile, outfile):
+ # Open PDF document
+ document = ap.Document(infile)
+
+ # Register a namespace URI for the 'xmp' prefix
+ document.metadata.register_namespace_uri("xmp", "http://ns.adobe.com/xap/1.0/")
+
+ # Set the metadata property using the registered prefix
+ document.metadata.add(
+ "xmp:ModifyDate", datetime.datetime.now().isoformat()
+ ) # ISO 8601 format
+
+ # Save the updated PDF document
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Operações avançadas de PDF em Python](/pdf/pt/python-net/advanced-operations/)
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Trabalhe com anexos PDF em Python](/pdf/pt/python-net/attachments/)
+- [Compare documentos PDF em Python](/pdf/pt/python-net/compare-pdf-documents/)
diff --git a/pt/python-net/advanced-operations/securing-and-signing/_index.md b/pt/python-net/advanced-operations/securing-and-signing/_index.md
new file mode 100644
index 0000000000..ac45f1354c
--- /dev/null
+++ b/pt/python-net/advanced-operations/securing-and-signing/_index.md
@@ -0,0 +1,41 @@
+---
+title: Proteger e Assinar Arquivos PDF em Python
+linktitle: Proteção e assinatura em PDF
+type: docs
+weight: 210
+url: /pt/python-net/securing-and-signing/
+description: Aprenda como assinar, criptografar, descriptografar e proteger arquivos PDF em Python, incluindo assinaturas digitais, cartões inteligentes e permissões de documento.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Assine, criptografe, descriptografar e proteja documentos PDF em Python
+Abstract: Esta seção explica como proteger e assinar documentos PDF usando Aspose.PDF for Python via .NET. Aprenda como aplicar assinaturas digitais, usar cartões inteligentes e certificados, extrair informações de assinatura e gerenciar a criptografia de PDF, senhas e privilégios de acesso em Python.
+---
+
+Esta seção explica como aplicar assinaturas digitais de forma segura a documentos PDF usando Python Library. Enquanto os termos assinatura eletrônica e assinatura digital são às vezes usados de forma intercambiável, eles não são iguais. Uma assinatura digital é respaldada por um [autoridade certificadora](https://en.wikipedia.org/wiki/Certificate_authority), fornecendo um selo confiável que protege o documento contra adulteração. Em contraste, uma assinatura eletrônica é normalmente usada para indicar a intenção de uma pessoa de assinar um documento, sem o mesmo nível de validação de segurança.
+
+Use estes guias quando precisar proteger o conteúdo PDF, controlar as permissões do documento, verificar a confiança ou aplicar assinaturas baseadas em certificado em fluxos de trabalho Python.
+
+## Tarefas de Segurança e Assinatura Abrangidas
+
+Aspose.PDF oferece suporte a assinaturas digitais:
+
+- PKCS1 com algoritmo de assinatura RSA e digestão SHA-1.
+- PKCS7 com algoritmo de assinatura RSA e digestão SHA-1.
+- PKCS7 destacado com algoritmos de assinatura DSA, RSA e ECDSA. Os algoritmos de digestão suportados dependem do algoritmo de assinatura.
+- Assinatura de timestamp.
+
+Algoritmos de digestão para PKCS7 destacado:
+
+- DSA - SHA-1.
+- RSA - SHA-1, SHA-256, SHA-384, SHA-512.
+- ECDSA - SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384, SHA3-512.
+
+Recomenda-se evitar assinaturas digitais com o algoritmo de resumo SHA-1 devido à sua insegurança.
+
+- [Assinar digitalmente arquivo PDF](/pdf/pt/python-net/digitally-sign-pdf-file/)
+- [Definir privilégios, criptografar e descriptografar arquivo PDF](/pdf/pt/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
+- [Extrair informações de imagem e assinatura](/pdf/pt/python-net/extract-image-and-signature-information/)
+- [Assinar documento PDF a partir de cartão inteligente](/pdf/pt/python-net/sign-pdf-document-from-smart-card/)
diff --git a/pt/python-net/advanced-operations/securing-and-signing/digitally-sign-pdf-file/_index.md b/pt/python-net/advanced-operations/securing-and-signing/digitally-sign-pdf-file/_index.md
new file mode 100644
index 0000000000..746a3dae8f
--- /dev/null
+++ b/pt/python-net/advanced-operations/securing-and-signing/digitally-sign-pdf-file/_index.md
@@ -0,0 +1,232 @@
+---
+title: Adicionar assinatura digital ou assinar PDF digitalmente em Python
+linktitle: Assinar PDF digitalmente
+type: docs
+weight: 10
+url: /pt/python-net/digitally-sign-pdf-file/
+description: Aprenda a assinar digitalmente documentos PDF, adicionar carimbos de horário e validar assinaturas em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Assine digitalmente arquivos PDF com Python
+Abstract: Este guia explica como assinar digitalmente documentos PDF usando Aspose.PDF for Python via .NET. Ele detalha o processo de aplicação de assinaturas digitais padrão e avançadas, utilizando certificados (PFX e PKCS#12), e personalizando a aparência e o comportamento da assinatura. A documentação inclui exemplos de código que demonstram como assinar PDFs existentes, adicionar carimbos de data/hora e verificar a validade da assinatura. Isso permite que os desenvolvedores garantam a autenticidade, integridade e conformidade dos documentos com os padrões de assinatura digital em suas aplicações Python.
+---
+
+## Assinar PDF com assinaturas digitais
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_document(infile: str, outfile: str, pfxfile: str) -> None:
+ """Sign a PDF document with a PKCS#7 certificate."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7(pfxfile, "12345")
+ signature.sign(1, True, drawing.Rectangle(300, 100, 400, 200), pkcs)
+ signature.save(outfile)
+```
+
+A **assinatura PKCS#7 destacada** adiciona uma assinatura digital a um documento sem incorporar o conteúdo ao bloco de assinatura.
+
+Use estes exemplos quando precisar aplicar assinaturas baseadas em certificado a arquivos PDF, verificar a validade da assinatura ou adicionar carimbos de tempo confiáveis a documentos assinados.
+
+O próximo exemplo assina um documento PDF usando uma assinatura digital PKCS#7 destacada, aplicando a assinatura à primeira página em uma área retangular especificada.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_document_PKCS7_detached(
+ infile: str,
+ outfile: str,
+ pfxfile: str,
+ password: str,
+) -> None:
+ """Sign a PDF document with a detached PKCS#7 certificate."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7Detached(
+ pfxfile,
+ password,
+ ap.DigestHashAlgorithm.SHA256,
+ )
+ signature.sign(1, True, drawing.Rectangle(300, 100, 400, 200), pkcs)
+ signature.save(outfile)
+```
+
+**Verificar todas as assinaturas digitais em um documento PDF**
+
+1. Cria uma instância de PdfFileSignature que permite interagir com assinaturas em PDF.
+1. Obtenha uma lista de nomes de assinatura `get_signature_names(True)`.
+1. Verifica a primeira assinatura na lista `verify_signature` para conformidade com o certificado especificado.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify(infile: str) -> None:
+ """Verify all digital signatures in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_name in signature.get_signature_names(True):
+ if not signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+**Verificar uma assinatura com um arquivo de certificado de chave pública**
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_with_public_key_certificate1(certificate: str, infile: str) -> None:
+ """Verify a signature with a public key certificate file."""
+ with ap.facades.PdfFileSignature(infile) as file_sign:
+ signature_names = file_sign.get_signature_names(True)
+ with open(certificate, "rb") as file_stream:
+ certificate_bytes = file_stream.read()
+ print(file_sign.verify_signature(signature_names[0], certificate_bytes))
+```
+
+**Verificar uma assinatura com o certificado extraído do arquivo**
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_with_public_key_certificate_from_signature(infile: str) -> None:
+ """Verify a signature with the certificate extracted from the file."""
+ with ap.facades.PdfFileSignature(infile) as file_sign:
+ signature_names = file_sign.get_signature_names(True)
+ certificate = []
+ if file_sign.try_extract_certificate(signature_names[0], certificate):
+ print(file_sign.verify_signature(signature_names[0], certificate[0]))
+ else:
+ print(False)
+```
+
+**Verificar assinaturas com validação de cadeia de certificados habilitada**
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_signature_with_certificate_check(infile: str) -> None:
+ """Verify signatures with certificate-chain validation enabled."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_name in signature.get_signature_names(True):
+ options = ap.security.ValidationOptions()
+ options.validation_mode = ap.security.ValidationMode.STRICT
+ options.validation_method = ap.security.ValidationMethod.AUTO
+ options.check_certificate_chain = True
+ options.request_timeout = 20000
+ validation_result = []
+ verified = signature.verify_signature(
+ signature_name,
+ options,
+ validation_result,
+ )
+ print(f"Certificate validation result: {validation_result[0].status}")
+ print(f"Is verified: {verified}")
+```
+
+## Adicionar carimbo de tempo à assinatura digital
+
+### Como assinar digitalmente um PDF com carimbo de tempo
+
+Aspose.PDF for Python suporta assinar digitalmente o PDF com um servidor de timestamp ou serviço Web.
+
+Para atender a esse requisito, o [Configurações de Carimbo de Tempo](https://reference.aspose.com/pdf/python-net/aspose.pdf/timestampsettings/) classe foi adicionada ao namespace Aspose.PDF. Por favor, dê uma olhada no trecho de código a seguir que obtém o timestamp e o adiciona ao documento PDF:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_with_time_stamp_server(
+ infile: str,
+ outfile: str,
+ pfxfile: str,
+ password: str,
+) -> None:
+ """Sign a PDF document and apply a timestamp from an external server."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7(pfxfile, password)
+ pkcs.timestamp_settings = ap.TimestampSettings(
+ "https://freetsa.org/tsr",
+ "",
+ ap.DigestHashAlgorithm.SHA256,
+ )
+ rect = drawing.Rectangle(100, 100, 200, 100)
+ signature.sign(
+ 1, "Signature Reason", "Contact", "Location", True, rect, pkcs
+ )
+ signature.save(outfile)
+```
+
+## Assinando documentos PDF usando ECDSA
+
+Assinar documentos PDF usando ECDSA (Algoritmo de Assinatura Digital de Curva Elíptica) envolve a utilização de criptografia de curva elíptica para gerar assinaturas digitais.
+
+O trecho de código acima ilustra como aplicar uma assinatura digital PKCS#7 destacada a um documento PDF usando Aspose.PDF for Python. Ao carregar o documento, configurar a aparência da assinatura e as configurações de segurança, e salvar o resultado, este exemplo demonstra um fluxo de trabalho completo e confiável para assinar digitalmente arquivos PDF.
+
+Este método garante a autenticidade e integridade do documento ao incorporar uma assinatura segura e verificável na primeira página. O uso do SHA-256 como algoritmo de digestão atende aos padrões criptográficos modernos, enquanto a capacidade de controlar a colocação da assinatura oferece flexibilidade para marcas de aprovação visíveis.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_ecdsa(infile: str, outfile: str, pfxfile: str, password: str) -> None:
+ """Sign a PDF document with an ECDSA signature."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ pkcs = ap.forms.PKCS7Detached(
+ pfxfile,
+ password,
+ ap.DigestHashAlgorithm.SHA256,
+ )
+ signature.sign(1, True, drawing.Rectangle(300, 100, 400, 200), pkcs)
+ signature.save(outfile)
+```
+
+**Verificar assinaturas ECDSA em um documento PDF**
+
+```python
+def verify_ecdsa(infile: str) -> None:
+ """Verify ECDSA signatures in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ if not signature.contains_signature():
+ raise Exception("Not contains signature")
+
+ for signature_name in signature.get_signature_names(True):
+ if not signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+## Tópicos de Segurança Relacionados
+
+- [Proteja e assine arquivos PDF em Python](/pdf/pt/python-net/securing-and-signing/)
+- [Extrair informações de imagem e assinatura em Python](/pdf/pt/python-net/extract-image-and-signature-information/)
+- [Assine documentos PDF a partir de um cartão inteligente em Python](/pdf/pt/python-net/sign-pdf-document-from-smart-card/)
+- [Criptografar e descriptografar arquivos PDF em Python](/pdf/pt/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/securing-and-signing/extract-signature-info/_index.md b/pt/python-net/advanced-operations/securing-and-signing/extract-signature-info/_index.md
new file mode 100644
index 0000000000..2abe04722a
--- /dev/null
+++ b/pt/python-net/advanced-operations/securing-and-signing/extract-signature-info/_index.md
@@ -0,0 +1,170 @@
+---
+title: Extrair informações da assinatura de PDF em Python
+linktitle: Extrair detalhes da assinatura
+type: docs
+weight: 20
+url: /pt/python-net/extract-image-and-signature-information/
+description: Aprenda a extrair imagens de assinatura, certificados e detalhes de assinatura digital de arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extraia imagens de assinatura e detalhes de certificados de PDFs em Python
+Abstract: Este artigo explica como extrair informações de imagem e assinatura digital de documentos PDF usando Aspose.PDF for Python. Aprenda como recuperar imagens de assinatura, extrair dados de certificado, inspecionar algoritmos de assinatura e detectar assinaturas comprometidas em arquivos PDF assinados.
+---
+
+## Extrair Imagem de um Campo de Assinatura
+
+Aspose.PDF for Python via .NET permite que você recupere a imagem visual incorporada em um [Campo de Assinatura](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/signaturefield/). Isto é útil quando você precisa exibir ou arquivar a aparência da assinatura sem renderizar o PDF completo.
+
+O exemplo abaixo itera sobre todos os campos de formulário, encontra cada `SignatureField`, e salva sua imagem como um arquivo JPEG:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def extract_images_from_signature_field(infile: str, outfile: str) -> None:
+ """Extract the image stored in a signature field."""
+ with ap.Document(infile) as document:
+ for field in document.form:
+ if not isinstance(field, ap.forms.SignatureField):
+ continue
+
+ image_stream = field.extract_image()
+ if image_stream is None:
+ continue
+
+ image = drawing.Bitmap.from_stream(image_stream)
+ image.save(outfile, drawing.imaging.ImageFormat.jpeg)
+```
+
+## Ler detalhes do algoritmo de assinatura
+
+Usar `PdfFileSignature.get_signatures_info()` para ler metadados criptográficos de cada assinatura em um documento — incluindo o algoritmo de digestão, o tipo de algoritmo, o padrão criptográfico e o nome da assinatura:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def get_signatures_info(infile: str) -> None:
+ """Print information about all signatures in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_info in signature.get_signatures_info():
+ print(signature_info.DIGEST_HASH_ALGORITHM)
+ print(signature_info.ALGORITHM_TYPE)
+ print(signature_info.CRYPTOGRAPHIC_STANDARD)
+ print(signature_info.signature_name)
+```
+
+## Extrair um Certificado Digital de um Campo de Assinatura
+
+Use o [extract_certificate](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/signaturefield/#methods) método em um `SignatureField` para recuperar o certificado incorporado como um fluxo de bytes e salvá-lo no disco para validação externa:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def extract_certificate(infile: str, outfile: str) -> None:
+ """Extract a certificate from a signature field and save it to disk."""
+ with ap.Document(infile, password="owner") as document:
+ for field in document.form:
+ if not isinstance(field, ap.forms.SignatureField):
+ continue
+
+ certificate_stream = field.extract_certificate()
+ if certificate_stream is None:
+ continue
+
+ with certificate_stream:
+ bytes_data = bytearray(certificate_stream.length)
+ certificate_stream.read(bytes_data, 0, len(bytes_data))
+ with open(outfile, "wb") as file_stream:
+ file_stream.write(bytes_data)
+ return
+```
+
+## Extrair Certificados Usando a Fachada PdfFileSignature
+
+`PdfFileSignature.try_extract_certificate()` fornece uma maneira alternativa de recuperar certificados pelo nome da assinatura. O exemplo a seguir itera sobre todos os nomes de assinatura e tenta a extração para cada um:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def extract_certificate_try_extract_certificate_method(infile: str) -> None:
+ """Extract certificates with the try_extract_certificate facade method."""
+ with ap.Document(infile, password="owner") as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ for signature_name in signature.get_signature_names(True):
+ certificate = []
+ if signature.try_extract_certificate(signature_name, certificate):
+ print("The certificate extraction succeeded")
+```
+
+## Verificar Assinaturas Digitais Externas
+
+Para confirmar que um documento não foi modificado após a assinatura, verifique cada assinatura externa usando `PdfFileSignature.verify_signature()`. O exemplo abaixo gera uma exceção para qualquer assinatura que falhar na verificação:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_external_signature(infile: str) -> None:
+ """Verify an external signature in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as pdf_signature:
+ for signature_name in pdf_signature.get_signature_names(True):
+ if not pdf_signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+## Detectar assinaturas comprometidas
+
+`SignaturesCompromiseDetector` verifica se alguma assinatura digital em um documento foi invalidada por alterações subsequentes. Use isso em fluxos de trabalho jurídicos, financeiros ou de conformidade onde a integridade do documento deve ser garantida.
+
+O exemplo abaixo verifica assinaturas comprometidas e relata seus nomes juntamente com a cobertura geral de assinaturas do documento:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def check(infile: str) -> None:
+ """Check whether a PDF contains compromised signatures."""
+ with ap.Document(infile) as document:
+ detector = ap.SignaturesCompromiseDetector(document)
+ result = []
+
+ if detector.check(result):
+ print("No signature compromise detected")
+ return
+
+ if result[0].has_compromised_signatures:
+ print(
+ f"Count of compromised signatures: {len(result[0].COMPROMISED_SIGNATURES)}"
+ )
+ for signature_name in result[0].COMPROMISED_SIGNATURES:
+ print(f"Signature name: {signature_name.FULL_NAME}")
+
+ print(result[0].signatures_coverage)
+```
+
+## Tópicos de Segurança Relacionados
+
+- [Proteja e assine arquivos PDF em Python](/pdf/pt/python-net/securing-and-signing/)
+- [Assinar digitalmente arquivos PDF em Python](/pdf/pt/python-net/digitally-sign-pdf-file/)
+- [Assine documentos PDF a partir de um cartão inteligente em Python](/pdf/pt/python-net/sign-pdf-document-from-smart-card/)
+- [Criptografar e descriptografar arquivos PDF em Python](/pdf/pt/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
diff --git a/pt/python-net/advanced-operations/securing-and-signing/set-privileges/_index.md b/pt/python-net/advanced-operations/securing-and-signing/set-privileges/_index.md
new file mode 100644
index 0000000000..949c08326e
--- /dev/null
+++ b/pt/python-net/advanced-operations/securing-and-signing/set-privileges/_index.md
@@ -0,0 +1,228 @@
+---
+title: Criptografar e Decifrar Arquivos PDF em Python
+linktitle: Criptografar e Decifrar Arquivo PDF
+type: docs
+weight: 70
+url: /pt/python-net/set-privileges-encrypt-and-decrypt-pdf-file/
+description: Aprenda como definir privilégios de PDF, criptografar arquivos, descriptografar PDFs protegidos e alterar senhas em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Defina permissões de PDF e gerencie a criptografia em Python.
+Abstract: Esta página de documentação explica como definir privilégios de documento, aplicar criptografia e descriptografar arquivos PDF usando Aspose.PDF para Python. Ela orienta os desenvolvedores sobre como configurar senhas de usuário e de proprietário, definir restrições de acesso (como impressão, cópia ou edição). Exemplos de código ilustram como proteger conteúdo sensível e gerenciar a segurança de PDF de forma eficaz em aplicações Python, garantindo acesso controlado e confidencialidade de dados.
+---
+
+Gerenciar a segurança de documentos é essencial ao trabalhar com conteúdo sensível ou crítico para os negócios. Aspose.PDF for Python via .NET fornece uma API robusta para aplicar criptografia programaticamente, controlar o acesso por meio de permissões e descriptografar arquivos PDF protegidos.
+
+Este artigo orienta desenvolvedores Python através de exemplos práticos para definir privilégios, aplicar e remover criptografia, alterar senhas e detectar estados de proteção — tudo dentro de um fluxo de trabalho PDF.
+
+Aspose.PDF for Python via .NET oferece aos desenvolvedores controle total sobre a segurança de PDF:
+
+**Definir privilégios** - Controle de acesso refinado usando permissões.
+**Criptografar Arquivo** - Aplicar criptografia AES ou RC4 com senhas personalizadas.
+**Descriptografar Arquivo** - Remover a segurança usando a senha do proprietário.
+**Alterar senhas** - Rotacione ou atualize credenciais sem alterar o conteúdo.
+**Inspecionar Segurança** - Detectar o status de criptografia ou tipos de senha necessários.
+
+Use esta página quando precisar proteger documentos PDF com senhas, restringir impressão ou cópia, girar credenciais ou verificar se um documento está criptografado.
+
+## Definir privilégios em um arquivo PDF existente
+
+Você pode restringir ou permitir operações específicas (por exemplo, impressão, cópia, preenchimento de formulários) atribuindo senhas de usuário e de proprietário juntamente com privilégios de acesso.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def set_privileges_on_existing_pdf_file(infile: str, outfile: str) -> None:
+ """Set restricted privileges on an existing PDF document."""
+ with ap.Document(infile) as document:
+ document_privilege = ap.facades.DocumentPrivilege.forbid_all
+ document_privilege.allow_screen_readers = True
+ document.encrypt(
+ "user",
+ "owner",
+ document_privilege,
+ ap.CryptoAlgorithm.AESx128,
+ False,
+ )
+ document.save(outfile)
+```
+
+## Criptografar arquivo PDF usando diferentes tipos e algoritmos de criptografia
+
+Criptografar um PDF garante que somente usuários com credenciais válidas possam abrir ou modificar o arquivo.
+
+>Termos-chave:
+
+- Senha do usuário. Necessária para abrir o documento.
+
+- Senha do proprietário. Necessária para alterar permissões ou remover a criptografia.
+
+- Tamanho da Chave. Use AE_SX128 para máxima segurança em fluxos de trabalho modernos.
+
+O trecho de código a seguir mostra como criptografar arquivos PDF.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def encrypt_pdf_file(infile: str, outfile: str) -> None:
+ """Encrypt a PDF document with user and owner passwords."""
+ with ap.Document(infile) as document:
+ document.encrypt(
+ "user",
+ "owner",
+ ap.Permissions.EXTRACT_CONTENT,
+ ap.CryptoAlgorithm.AESx128,
+ )
+ document.save(outfile)
+```
+
+## Descriptografar arquivo PDF usando a senha do proprietário
+
+Para remover a proteção por senha e restaurar o acesso total:
+
+1. Carrega o PDF criptografado usando a senha correta ('password' é a senha de usuário ou de proprietário).
+1. Remove toda a proteção por senha e as configurações de criptografia do documento.
+1. Salva o PDF agora desprotegido no arquivo de saída especificado.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def decrypt_pdf_file(infile: str, outfile: str) -> None:
+ """Decrypt a password-protected PDF document."""
+ with ap.Document(infile, "password") as document:
+ document.decrypt()
+ document.save(outfile)
+```
+
+## Criptografar e descriptografar um PDF com certificados de chave pública
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def pub_sec_encryption(
+ crypto_algorithm,
+ pub_cert: str,
+ in_pfx: str,
+ outfile: str,
+) -> None:
+ """Demonstrate public-key encryption and decryption."""
+ pfx_password = "12345"
+
+ with ap.Document() as document:
+ document.info.title = "TestTitle"
+ document.info.author = "TestAuthor"
+ page = document.pages.add()
+ page.paragraphs.add(ap.text.TextFragment("Hello World!"))
+
+ with open(pub_cert, "rb") as file_stream:
+ byte_content = file_stream.read()
+
+ document.encrypt(
+ ap.Permissions.PRINT_DOCUMENT,
+ crypto_algorithm,
+ [byte_content],
+ )
+ document.save(outfile)
+
+ with ap.Document(
+ outfile,
+ ap.security.CertificateEncryptionOptions(pub_cert, in_pfx, pfx_password),
+ ) as document:
+ print(document.info.title)
+ print(document.info.author)
+
+ text_absorber = ap.text.TextAbsorber()
+ document.pages[1].accept(text_absorber)
+ print(text_absorber.text)
+
+ document.decrypt()
+ document.save(path.join(path.dirname(outfile), "pubsec_decrypted_out.pdf"))
+```
+
+## Alterar senha de um arquivo PDF
+
+Atualizar as credenciais de segurança (senhas de usuário e proprietário) de um documento PDF enquanto preserva seu conteúdo e estrutura.
+
+1. Abre o PDF usando a senha de proprietário existente ('owner'), que fornece acesso total, incluindo permissão para alterar as configurações de segurança.
+1. Substitui as senhas antigas por uma nova senha de usuário ('newuser') e uma nova senha de proprietário ('newowner').
+1. Salva o PDF com as configurações de senha atualizadas.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def change_password(infile: str, outfile: str) -> None:
+ """Change the passwords of a password-protected PDF document."""
+ with ap.Document(infile, "owner") as document:
+ document.change_passwords("owner", "newuser", "newowner")
+ document.save(outfile)
+```
+
+## Como - determinar se o PDF de origem está protegido por senha
+
+### Determinar a senha correta a partir de um Array
+
+Em alguns cenários, pode ser necessário identificar a senha correta a partir de uma lista de candidatos potenciais para acessar um PDF protegido. O trecho de código abaixo demonstra como verificar se um arquivo PDF está protegido por senha e, em seguida, tentar desbloqueá‑lo iterando sobre uma lista predefinida de senhas usando Aspose.PDF for Python via .NET.
+
+O processo inclui:
+
+1. Usando PdfFileInfo para detectar se o PDF está criptografado.
+1. Tenta abrir o PDF com cada senha usando ap.Document().
+1. Se for bem-sucedido, ele imprime o número de páginas.
+1. Caso contrário, ele captura a exceção e relata a senha falhada.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def determine_correct_password_from_array(infile: str) -> None:
+ """Try a list of passwords until the document opens successfully."""
+ with ap.facades.PdfFileInfo() as pdf_file_info:
+ pdf_file_info.bind_pdf(infile)
+ print(f"File is password protected {pdf_file_info.is_encrypted}")
+
+ passwords = ["test", "test1", "test2", "test3", "sample"]
+
+ for password in passwords:
+ try:
+ with ap.Document(infile, password) as document:
+ if len(document.pages) > 0:
+ print(f"Password = {password} is correct")
+ print(f"Number of pages in document = {len(document.pages)}")
+ break
+ except Exception:
+ print(f"Password = {password} is not correct")
+```
+
+## Tópicos de Segurança Relacionados
+
+- [Proteja e assine arquivos PDF em Python](/pdf/pt/python-net/securing-and-signing/)
+- [Assinar digitalmente arquivos PDF em Python](/pdf/pt/python-net/digitally-sign-pdf-file/)
+- [Extrair informações de assinatura de PDF em Python](/pdf/pt/python-net/extract-image-and-signature-information/)
+- [Assine documentos PDF a partir de um cartão inteligente em Python](/pdf/pt/python-net/sign-pdf-document-from-smart-card/)
+
diff --git a/pt/python-net/advanced-operations/securing-and-signing/sign-pdf-document-from-smart-card/_index.md b/pt/python-net/advanced-operations/securing-and-signing/sign-pdf-document-from-smart-card/_index.md
new file mode 100644
index 0000000000..372cc4d390
--- /dev/null
+++ b/pt/python-net/advanced-operations/securing-and-signing/sign-pdf-document-from-smart-card/_index.md
@@ -0,0 +1,131 @@
+---
+title: Assinar documentos PDF de um Cartão Inteligente em Python
+linktitle: Assinatura de PDF com Cartão Inteligente
+type: docs
+weight: 30
+url: /pt/python-net/sign-pdf-document-from-smart-card/
+description: Aprenda como assinar documentos PDF com Cartões Inteligentes e certificados externos em Python
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Assinar documentos PDF de um Cartão Inteligente com Python
+Abstract: Este guia explica como assinar digitalmente documentos PDF usando um smart card com Aspose.PDF for Python via .NET. Ele demonstra como acessar certificados armazenados em dispositivos de hardware (como tokens USB ou smart cards) através do Windows Certificate Store e aplicá‑los para assinar arquivos PDF. A documentação inclui exemplos de código que mostram como localizar o certificado apropriado, configurar as propriedades da assinatura e incorporar a assinatura digital no PDF. Isso permite assinaturas seguras, baseadas em hardware, em conformidade com os padrões de assinatura digital, adequadas para fluxos de trabalho empresariais e jurídicos de alta confiança.
+---
+
+Aspose.PDF oferece recursos robustos para integrar componentes de assinatura visual e criptográfica, garantindo tanto a autenticidade quanto a apresentação profissional em documentos PDF assinados digitalmente.
+
+Use este fluxo de trabalho quando seu processo de assinatura depender de certificados armazenados em dispositivos com suporte de hardware, como smart cards, tokens USB ou repositórios de certificados gerenciados.
+
+## Assinar com Smart Card usando Campo de Assinatura
+
+Este exemplo demonstra como assinar digitalmente um documento PDF usando um certificado externo com Aspose.PDF for Python e aplicar uma imagem personalizada de aparência da assinatura:
+
+1. Abrindo o documento PDF.
+1. Criando um objeto PdfFileSignature e vinculando‑o ao documento.
+1. Recuperando um certificado digital local usando um método personalizado `get_local_certificate()`.
+1. Configurando um ExternalSignature com base no certificado selecionado.
+1. Aplicando uma imagem de aparência de assinatura personalizada (por exemplo, um logotipo da empresa ou assinatura manuscrita).
+1. Assinando digitalmente a primeira página do documento com metadados especificados (razão, contato, localização).
+1. Salvando o documento assinado em um novo arquivo de saída.
+
+Este método é ideal para casos em que as assinaturas precisam ser aplicadas programaticamente usando certificados externos — como tokens de hardware, armazenamentos de certificados ou provedores confiáveis — e apresentadas com um layout visual personalizado.
+
+A seguir estão os trechos de código para assinar um documento PDF a partir de um smart card:
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def sign_with_smart_card(infile: str, outfile: str, pngfile: str) -> None:
+ """Sign a PDF document using a smart-card certificate."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature() as pdf_signature:
+ pdf_signature.bind_pdf(document)
+ external_signature = ap.forms.ExternalSignature(get_local_certificate())
+ pdf_signature.signature_appearance = pngfile
+ pdf_signature.sign(
+ 1,
+ "Reason",
+ "Contact",
+ "Location",
+ True,
+ drawing.Rectangle(100, 100, 200, 200),
+ external_signature,
+ )
+ pdf_signature.save(outfile)
+```
+
+## Verificar Assinaturas Digitais
+
+Este trecho de código demonstra como verificar assinaturas digitais em um documento PDF usando Aspose.PDF for Python:
+
+1. Abrindo o arquivo PDF.
+1. Criando um 'PdfFileSignature object' e vinculando‑o ao documento.
+1. Recuperando a lista de todos os nomes de campos de assinatura usando 'get_signature_names()'.
+1. Iterando por cada assinatura e verificando sua validade com 'verify_signature()'.
+1. Lançando uma exceção se alguma assinatura falhar na verificação.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def verify_external_signature(infile: str) -> None:
+ """Verify an external signature in a PDF document."""
+ with ap.Document(infile) as document:
+ with ap.facades.PdfFileSignature(document) as pdf_signature:
+ for signature_name in pdf_signature.get_signature_names(True):
+ if not pdf_signature.verify_signature(signature_name):
+ raise Exception("Not verified")
+```
+
+## Assinar com Certificado Externo
+
+Este trecho de código demonstra como adicionar e assinar um campo de assinatura digital em um documento PDF usando Aspose.PDF for Python com um certificado externo:
+
+1. Abrindo o arquivo PDF como um fluxo binário.
+1. Criando um SignatureField e posicionando‑o na primeira página do documento em uma posição especificada.
+1. Recuperando um certificado digital local usando um método personalizado `get_local_certificate()`.
+1. Configurando um ExternalSignature com metadados como autoridade, motivo e informações de contato.
+1. Atribuindo um nome de campo exclusivo ao campo de assinatura (partial_name = "sig1").
+1. Adicionando o campo de assinatura aos campos de formulário do PDF.
+1. Assinando o campo com o certificado externo.
+1. Salvando o documento assinado em um arquivo de saída.
+
+```python
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def get_signature_info_using_signature_field(infile: str, outfile: str) -> None:
+ """Create a signature field and sign it with an external certificate."""
+ with open(infile, "rb+") as file_stream:
+ document = ap.Document(file_stream)
+ signature_field = ap.forms.SignatureField(
+ document.pages[1],
+ ap.Rectangle(100, 400, 10, 10, True),
+ )
+ selected_certificate = get_local_certificate()
+ external_signature = ap.forms.ExternalSignature(selected_certificate)
+ external_signature.authority = "Me"
+ external_signature.reason = "Reason"
+ external_signature.contact_info = "Contact"
+ signature_field.partial_name = "sig1"
+ document.form.add(signature_field, 1)
+ signature_field.sign(external_signature)
+ document.save(outfile)
+```
+
+## Tópicos de Segurança Relacionados
+
+- [Proteja e assine arquivos PDF em Python](/pdf/pt/python-net/securing-and-signing/)
+- [Assinar digitalmente arquivos PDF em Python](/pdf/pt/python-net/digitally-sign-pdf-file/)
+- [Extrair informações de assinatura de PDF em Python](/pdf/pt/python-net/extract-image-and-signature-information/)
+- [Criptografar e descriptografar arquivos PDF em Python](/pdf/pt/python-net/set-privileges-encrypt-and-decrypt-pdf-file/)
+
diff --git a/pt/python-net/advanced-operations/working-with-documents/_index.md b/pt/python-net/advanced-operations/working-with-documents/_index.md
index 7054f93426..311808de01 100644
--- a/pt/python-net/advanced-operations/working-with-documents/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/_index.md
@@ -1,157 +1,33 @@
---
-title: Trabalhando com Documentos PDF usando Python
+title: Trabalhar com documentos PDF em Python
linktitle: Trabalhando com Documentos
type: docs
weight: 10
url: /pt/python-net/working-with-documents/
-description: Este artigo descreve quais manipulações podem ser feitas com o documento usando a biblioteca Aspose.PDF para Python via .NET.
-lastmod: "2023-04-12"
+description: Aprenda como criar, formatar, manipular, otimizar, mesclar, dividir e gerenciar documentos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Crie, formate, mescle, divida e otimize documentos PDF em Python
+Abstract: Esta seção explica como trabalhar com documentos PDF usando Aspose.PDF for Python via .NET. Aprenda a criar arquivos PDF, formatar propriedades do documento, manipular a estrutura de conteúdo, otimizar o tamanho do arquivo, mesclar e dividir PDFs e gerenciar camadas de conteúdo opcional em fluxos de trabalho Python.
---
-
+Arquivos PDF são projetados para a troca segura e de alta qualidade de documentos, independentemente do software ou sistema operacional usado para visualizá‑los. Eles podem ser abertos e visualizados em muitos dispositivos e sistemas operacionais, incluindo computadores, tablets e smartphones. Hoje, esses documentos podem conter imagens, tabelas, vários elementos interativos, etc.
-Arquivos PDF são projetados para a troca segura e de alta qualidade de documentos, independentemente de qual software ou sistema operacional é usado para visualizá-los. Eles podem ser abertos e visualizados em muitos dispositivos e sistemas operacionais, incluindo computadores, tablets e smartphones. Atualmente, tais documentos podem conter imagens, tabelas, vários elementos interativos, etc.
+Documentos PDF podem ser visualizados e impressos, mas nem sempre são facilmente editados. No entanto, o **Aspose.PDF for Python via .NET** ajudará você a lidar até mesmo com a tarefa mais difícil ao trabalhar com PDF.
-Documentos PDF podem ser visualizados e impressos, mas nem sempre são facilmente editáveis. No entanto, a **Biblioteca Aspose.PDF para Python** ajudará você a lidar até mesmo com a tarefa mais difícil ao trabalhar com PDF.
+Use esta seção quando precisar trabalhar com fluxos de trabalho de PDF de documento inteiro em Python, como criar arquivos, validar padrões, otimizar tamanho, combinar vários PDFs ou dividir documentos grandes em menores.
+
+## Tarefas de Documento Cobertas
Você pode fazer o seguinte:
- [Criar Documento PDF](/pdf/pt/python-net/create-pdf-document/) - criar um documento PDF simples.
- [Formatar Documento PDF](/pdf/pt/python-net/formatting-pdf-document/) - criar um documento, obter e definir propriedades do documento, incorporar fontes e outras operações com arquivos PDF.
-
-- [Manipular Documento PDF](/pdf/pt/python-net/manipulate-pdf-document/) - validar um documento PDF para o padrão PDF A, trabalhar com TOC, definir data de expiração do PDF, etc.
-- [Otimizar PDF](/pdf/pt/python-net/optimize-pdf/) - otimizar o conteúdo da página, otimizar o tamanho do arquivo, remover objetos não utilizados, comprimir todas as imagens para otimização bem-sucedida do documento.
-- [Mesclar PDF](/pdf/pt/python-net/merge-pdf-documents/) - mesclar vários arquivos PDF em um único documento PDF usando Python.
-- [Dividir PDF](/pdf/pt/python-net/split-document/) - dividir páginas PDF em arquivos PDF individuais em suas aplicações Python.
-- [Trabalhando com Títulos](/pdf/pt/python-net/working-with-headings/) - você pode criar numeração em título no seu documento PDF com Python.
-
-
\ No newline at end of file
+- [Manipular Documento PDF](/pdf/pt/python-net/manipulate-pdf-document/) - validar um documento PDF para o padrão PDF/A, trabalhar com TOC, definir data de validade do PDF, etc.
+- [Otimizar PDF](/pdf/pt/python-net/optimize-pdf/) - otimizar o conteúdo da página, otimizar o tamanho do arquivo, remover objetos não utilizados, comprimir todas as imagens para uma otimização bem-sucedida do documento.
+- [Mesclar PDF](/pdf/pt/python-net/merge-pdf-documents/) - mescle vários arquivos PDF em um único documento PDF usando Python.
+- [Dividir PDF](/pdf/pt/python-net/split-document/) - divida páginas PDF em arquivos PDF individuais em suas aplicações Python.
+- [Trabalhando com Cabeçalhos](/pdf/pt/python-net/working-with-headings/) - você pode criar numeração nos cabeçalhos do seu documento PDF com Python.
diff --git a/pt/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
index 25cf0dd664..07be72910f 100644
--- a/pt/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/create-pdf-document/_index.md
@@ -1,83 +1,22 @@
---
-title: Como Criar PDF usando Python
-linktitle: Criar Documento PDF
+title: Criar arquivos PDF em Python
+linktitle: Criar documento PDF
type: docs
weight: 10
url: /pt/python-net/create-pdf-document/
-description: Crie e formate o Documento PDF com Aspose.PDF para Python via .NET.
-lastmod: "2023-04-12"
+description: Aprenda como criar arquivos PDF e gerar PDFs pesquisáveis em Python usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar arquivo PDF com Python
+Abstract: Aspose.PDF for Python via .NET é uma API versátil projetada para desenvolvedores manipular arquivos PDF em aplicações Python direcionadas ao framework .NET. Ela permite que os usuários criem, carreguem, modifiquem e convertam documentos PDF sem esforço. Este artigo fornece um guia passo a passo para criar um arquivo PDF simples usando Aspose.PDF. O processo envolve inicializar um objeto `Document`, adicionar uma `Page` ao documento, inserir um `TextFragment` nos parágrafos da página e salvar o arquivo como PDF. O trecho de código Python incluído demonstra essas etapas criando um documento PDF que contém o texto "Hello World!". Esta API simplifica o manuseio de PDFs com código mínimo, aumentando a produtividade dos desenvolvedores que trabalham com PDFs em ambientes .NET.
---
-
-
-
-**Aspose.PDF para Python via .NET** é uma API de manipulação de PDF que permite aos desenvolvedores criar, carregar, modificar e converter arquivos PDF diretamente de aplicações Python para .NET com apenas algumas linhas de código.
+
+**Aspose.PDF for Python via .NET** é uma API de manipulação de PDF que permite que os desenvolvedores criem, carreguem, modifiquem e convertam arquivos PDF diretamente do Python para aplicações .NET com apenas algumas linhas de código.
+
+Use estes exemplos quando precisar gerar novos arquivos PDF do zero ou converter a saída de OCR em documentos PDF pesquisáveis em Python.
## Como Criar um Arquivo PDF Simples
@@ -85,19 +24,71 @@ Para criar um PDF usando Python via .NET com Aspose.PDF, você pode seguir estas
1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
1. Adicione um objeto [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) à coleção [pages](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) do objeto Document
-1. Adicione [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) à coleção [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) da página
-1. Salve o documento PDF resultante
+1. Adicione um [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) à coleção [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) da página
+1.º Guarde o documento PDF resultante
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Inicializar objeto do documento
+def create_new_document(output_pdf):
+ """Create a simple PDF with a single “Hello World!” page."""
document = ap.Document()
- # Adicionar página
page = document.pages.add()
- # Adicionar texto à nova página
page.paragraphs.add(ap.text.TextFragment("Hello World!"))
- # Salvar PDF atualizado
document.save(output_pdf)
-```
\ No newline at end of file
+```
+
+## Como criar um documento PDF pesquisável
+
+Aspose.PDF for Python via .NET permite criar e manipular documentos PDF existentes. Ao adicionar elementos de Texto a um arquivo PDF, o PDF resultante é pesquisável. No entanto, ao converter uma imagem contendo texto para um arquivo PDF, o conteúdo do PDF resultante não é pesquisável. Como solução alternativa, podemos aplicar OCR ao arquivo resultante para que ele se torne pesquisável.
+
+O seguinte é o código completo para atender a este requisito:
+
+1. Carregar o PDF usando 'ap.Document'.
+1. Configurar a resolução de renderização.
+1. Usar 'PngDevice.process' para converter a página PDF selecionada em uma imagem.
+1. Executar OCR na imagem gerada.
+1. Criar um novo PDF a partir da saída de OCR.
+1. Salvar o PDF pesquisável.
+
+```python
+import aspose.pdf as ap
+import io
+
+# Requires: pip install pytesseract
+# Also ensure the Tesseract OCR engine is installed and available on your system PATH.
+import pytesseract
+from pathlib import Path
+
+
+# Path to the source PDF
+input_pdf_path = "input.pdf"
+# Path for the temporary image
+temp_image_path = "temp_image.png"
+# Path for the searchable PDF
+output_pdf_path = "output_searchable.pdf"
+page_number = 1
+image_stream = io.FileIO(temp_image_path, "w")
+try:
+ document = ap.Document(input_pdf_path)
+ resolution = ap.devices.Resolution(300)
+ png_device = ap.devices.PngDevice(resolution)
+ png_device.process(document.pages[page_number], image_stream)
+ image_stream.close()
+ pdf = pytesseract.image_to_pdf_or_hocr(temp_image_path, extension="pdf")
+ document = ap.Document(io.BytesIO(pdf))
+ document.save(output_pdf_path)
+finally:
+ image_file = Path(temp_image_path)
+ image_file.unlink(missing_ok=True)
+```
+
+## Tópicos relacionados ao Document
+
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Formate documentos PDF em Python](/pdf/pt/python-net/formatting-pdf-document/)
+- [Manipule documentos PDF em Python](/pdf/pt/python-net/manipulate-pdf-document/)
+- [Otimize arquivos PDF em Python](/pdf/pt/python-net/optimize-pdf/)
+
diff --git a/pt/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md
index 56c0d82156..3428ce09b0 100644
--- a/pt/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/formatting-pdf-document/_index.md
@@ -1,343 +1,232 @@
---
-title: Formatando Documento PDF usando Python
-linktitle: Formatando Documento PDF
+title: Formatar documentos PDF em Python
+linktitle: Formatando documento PDF
type: docs
weight: 11
url: /pt/python-net/formatting-pdf-document/
-description: Crie e formate o Documento PDF com Aspose.PDF para Python via .NET. Use o próximo trecho de código para resolver suas tarefas.
-lastmod: "2023-04-12"
+description: Aprenda a formatar documentos PDF, incorporar Font, controlar configurações do visualizador e ajustar opções de exibição no Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Formatando documentos PDF usando Python.
+Abstract: O artigo fornece um guia abrangente sobre manipulação e formatação de documentos PDF usando a biblioteca Aspose.PDF em Python. Ele aborda vários aspectos da personalização de PDFs, incluindo a definição de propriedades da janela do documento e da exibição de página, como centralizar a janela, direção de leitura e ocultar elementos da interface do usuário. O artigo explica como recuperar e definir essas propriedades programaticamente usando a classe `Document`. Além disso, trata da gestão de fontes, detalhando como incorporar fontes Standard Type 1 e outras fontes em PDFs, garantindo a portabilidade do documento e consistência visual entre sistemas. Também destaca técnicas para definir um nome de fonte padrão, recuperar todas as fontes de um PDF e melhorar a incorporação de fontes usando `FontSubsetStrategy`. Ademais, o artigo aprofunda o ajuste do fator de zoom de documentos PDF usando a classe `GoToAction` e a configuração de propriedades predefinidas da caixa de diálogo de impressão, incluindo opções de impressão duplex. Trechos de código acompanham cada seção, fornecendo exemplos práticos para implementar esses recursos.
---
-
-
-
-## Formatação do Documento PDF
-
-### Obter Propriedades da Janela do Documento e Exibição de Página
-
-Este tópico ajuda você a entender como obter propriedades da janela do documento, aplicativo visualizador e como as páginas são exibidas. Para definir essas propriedades:
-
-Abra o arquivo PDF usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Agora, você pode definir as propriedades do objeto Document, tais como:
+
+Este guia é útil quando você precisa controlar o comportamento do visualizador PDF, a incorporação de Font, as configurações padrão de exibição ou as preferências de impressão em documentos gerados em Python.
+
+## Formatando documento PDF
+
+### Obter Propriedades de Exibição da Janela e da Página do Documento
+
+Este tópico ajuda você a entender como obter propriedades da janela do documento, do aplicativo visualizador e como as páginas são exibidas. Para definir essas propriedades:
+
+Abra o arquivo PDF usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe. Agora, você pode definir as propriedades do objeto Document, como
- CenterWindow – Centralizar a janela do documento na tela. Padrão: false.
-- Direction – Ordem de leitura. Isso determina como as páginas são dispostas quando exibidas lado a lado. Padrão: da esquerda para a direita.
-- DisplayDocTitle – Exibir o título do documento na barra de título da janela do documento. Padrão: false (o título é exibido).
-- HideMenuBar – Ocultar ou exibir a barra de menu da janela do documento. Padrão: false (a barra de menu é exibida).
+- Direção – Ordem de leitura. Isso determina como as páginas são dispostas quando exibidas lado a lado. Padrão: da esquerda para a direita.
+- DisplayDocTitle – Exibe o título do documento na barra de título da janela do documento. Padrão: false (o título é exibido).
+- HideMenuBar – Ocultar ou exibir a barra de menus da janela do documento. Padrão: false (a barra de menus é exibida).
- HideToolBar – Ocultar ou exibir a barra de ferramentas da janela do documento. Padrão: false (a barra de ferramentas é exibida).
-- HideWindowUI – Ocultar ou exibir elementos da janela do documento, como barras de rolagem.
- Padrão: false (elementos da UI são exibidos).
-- NonFullScreenPageMode – Como o documento quando não está exibido em modo de página inteira.
+- HideWindowUI – Ocultar ou exibir elementos da janela do documento, como barras de rolagem. Padrão: false (os elementos da IU são exibidos).
+- NonFullScreenPageMode – Como o documento quando não é exibido no modo de página inteira.
- PageLayout – O layout da página.
- PageMode – Como o documento é exibido quando aberto pela primeira vez. As opções são mostrar miniaturas, tela cheia, mostrar painel de anexos.
-O seguinte trecho de código mostra como obter as propriedades usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+O trecho de código a seguir mostra como obter as propriedades usando [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Abrir documento
+def get_document_window(input_pdf, output_pdf):
+ """Print document window metadata for inspection."""
document = ap.Document(input_pdf)
- # Obter diferentes propriedades do documento
- # Posição da janela do documento - Padrão: false
- print("CenterWindow :", document.center_window)
-
- # Ordem de leitura predominante; determina a posição da página
- # Quando exibido lado a lado - Padrão: L2R
- print("Direction :", document.direction)
-
- # Se a barra de título da janela deve exibir o título do documento
- # Se false, a barra de título exibe o nome do arquivo PDF - Padrão: false
- print("DisplayDocTitle :", document.display_doc_title)
-
- # Se redimensionar a janela do documento para ajustar ao tamanho da
- # Primeira página exibida - Padrão: false
- print("FitWindow :", document.fit_window)
-
- # Se esconder a barra de menu do aplicativo visualizador - Padrão: false
- print("HideMenuBar :", document.hide_menubar)
-
- # Se esconder a barra de ferramentas do aplicativo visualizador - Padrão: false
- print("HideToolBar :", document.hide_tool_bar)
-
- # Se esconder elementos de UI como barras de rolagem
- # E deixar apenas o conteúdo da página exibido - Padrão: false
- print("HideWindowUI :", document.hide_window_ui)
-
- # Modo de página do documento. Como exibir o documento ao sair do modo de tela cheia.
- print("NonFullScreenPageMode :", document.non_full_screen_page_mode)
-
- # O layout da página, ou seja, página única, uma coluna
- print("PageLayout :", document.page_layout)
-
- # Como o documento deve ser exibido ao ser aberto
- # Ou seja, mostrar miniaturas, tela cheia, mostrar painel de anexos
- print("pageMode :", document.page_mode)
-
+ print("CenterWindow:", document.center_window)
+ print("Direction:", document.direction)
+ print("DisplayDocTitle:", document.display_doc_title)
+ print("FitWindow:", document.fit_window)
+ print("HideMenuBar:", document.hide_menubar)
+ print("HideToolBar:", document.hide_tool_bar)
+ print("HideWindowUI:", document.hide_window_ui)
+ print("NonFullScreenPageMode:", document.non_full_screen_page_mode)
+ print("PageLayout:", document.page_layout)
+ print("PageMode:", document.page_mode)
```
-### Definir Propriedades da Janela do Documento e Exibição de Página
+### Definir propriedades de exibição da janela do documento e da página
-Este tópico explica como definir as propriedades da janela do documento, aplicativo de visualização e exibição de página. Para definir essas diferentes propriedades:
+Este tópico explica como definir as propriedades da janela do documento, do aplicativo visualizador e da exibição da página. Para definir essas diferentes propriedades:
-1. Abra o arquivo PDF usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Abra o arquivo PDF usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
1. Defina as propriedades do objeto Document.
1. Salve o arquivo PDF atualizado usando o método save.
-As propriedades disponíveis são:
+Propriedades disponíveis são:
-- CenterWindow
-- Direction
-- DisplayDocTitle
-- FitWindow
-- HideMenuBar
-- HideToolBar
-- HideWindowUI
-- NonFullScreenPageMode
-- PageLayout
-- PageMode
+- CentralizarJanela
+- Direção
+- Exibir título do documento
+- Ajustar à janela
+- OcultarBarraDeMenu
+- OcultarBarraDeFerramentas
+- OcultarInterfaceDaJanela
+- ModoNãoTelaCheia
+- Layout da Página
+- Modo de página
-Cada uma é usada e descrita no código abaixo. O seguinte trecho de código mostra como definir as propriedades usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+Cada um é usado e descrito no código abaixo. O trecho de código a seguir mostra como definir as propriedades usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Abrir documento
+def set_document_window(input_pdf, output_pdf):
+ """Set document window properties and save the result."""
document = ap.Document(input_pdf)
- # Definir diferentes propriedades do documento
- # Especificar para posicionar a janela do documento - Padrão: false
document.center_window = True
-
- # Ordem de leitura predominante; determina a posição da página
- # Quando exibido lado a lado - Padrão: L2R
document.direction = ap.Direction.R2L
-
- # Especificar se a barra de título da janela deve exibir o título do documento
- # Se false, a barra de título exibe o nome do arquivo PDF - Padrão: false
document.display_doc_title = True
-
- # Especificar se deve redimensionar a janela do documento para ajustar ao tamanho da
- # Primeira página exibida - Padrão: false
document.fit_window = True
-
- # Especificar se deve ocultar a barra de menu do aplicativo de visualização - Padrão: false
document.hide_menubar = True
-
- # Especificar se deve ocultar a barra de ferramentas do aplicativo de visualização - Padrão: false
document.hide_tool_bar = True
-
- # Especificar se deve ocultar elementos da interface do usuário como barras de rolagem
- # E deixar apenas o conteúdo da página exibido - Padrão: false
document.hide_window_ui = True
-
- # Modo de página do documento. especificar como exibir o documento ao sair do modo de tela cheia.
document.non_full_screen_page_mode = ap.PageMode.USE_OC
-
- # Especificar o layout da página, ou seja, página única, uma coluna
document.page_layout = ap.PageLayout.TWO_COLUMN_LEFT
-
- # Especificar como o documento deve ser exibido quando aberto
- # Ou seja, mostrar miniaturas, tela cheia, mostrar painel de anexos
document.page_mode = ap.PageMode.USE_THUMBS
- # Salvar arquivo PDF atualizado
document.save(output_pdf)
```
+### Incorporação de Fontes Tipo 1 Padrão
-### Incorporando Fontes Tipo 1 Padrão
-
-Alguns documentos PDF possuem fontes de um conjunto especial de fontes da Adobe. Fontes deste conjunto são chamadas de "Fontes Tipo 1 Padrão". Este conjunto inclui 14 fontes e incorporar este tipo de fontes requer o uso de flags especiais, ou seja, [embed_standard_fonts](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties). A seguir está o trecho de código que pode ser usado para obter um documento com todas as fontes incorporadas, incluindo Fontes Tipo 1 Padrão:
+Alguns documentos PDF têm fontes de um conjunto especial de fontes da Adobe. As fontes desse conjunto são chamadas “Standard Type 1 Fonts”. Esse conjunto inclui 14 fontes e a incorporação desse tipo de fontes requer o uso de flags especiais, ou seja [embed_standard_fonts](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties). O trecho de código a seguir pode ser usado para obter um documento com todas as fontes incorporadas, incluindo fontes Standard Type 1:
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Carregar um Documento PDF existente
+def embedded_fonts(input_pdf, output_pdf):
+ """Ensure fonts in an existing PDF are embedded."""
document = ap.Document(input_pdf)
- # Definir a propriedade EmbedStandardFonts do documento
document.embed_standard_fonts = True
+
for page in document.pages:
- if page.resources.fonts != None:
+ if page.resources.fonts:
for page_font in page.resources.fonts:
- # Verificar se a fonte já está incorporada
if not page_font.is_embedded:
page_font.is_embedded = True
document.save(output_pdf)
```
-### Incorporando Fontes ao criar PDF
+### Incorporando fontes ao criar PDF
-Se você precisar usar qualquer fonte além das 14 fontes principais suportadas pelo Adobe Reader, você deve incorporar a descrição da fonte ao gerar o arquivo PDF. Se a informação da fonte não estiver incorporada, o Adobe Reader a obterá do Sistema Operacional se estiver instalada no sistema, ou construirá uma fonte substituta de acordo com o descritor de fonte no PDF.
+Se precisar usar qualquer fonte que não seja as 14 fontes principais suportadas pelo Adobe Reader, você deve incorporar a descrição da fonte ao gerar o arquivo PDF. Se as informações da fonte não forem incorporadas, o Adobe Reader as obterá do Sistema Operacional se estiverem instaladas nele, ou construirá uma fonte substituta de acordo com o descritor de fonte no PDF.
->Por favor, note que a fonte incorporada deve estar instalada na máquina host, ou seja, no caso do seguinte código a fonte 'Univers Condensed' está instalada no sistema.
+>Por favor, note que a fonte incorporada deve estar instalada na máquina host, ou seja, no caso do código a seguir, a fonte ‘Univers Condensed’ está instalada no sistema.
-Usamos a propriedade 'is_embedded' para incorporar a informação da fonte no arquivo PDF. Definir o valor desta propriedade como 'True' irá incorporar o arquivo completo da fonte no PDF, sabendo que isso aumentará o tamanho do arquivo PDF. A seguir está o trecho de código que pode ser usado para incorporar a informação da fonte no PDF.
+Usamos a propriedade 'is_embedded' para incorporar as informações da fonte no arquivo PDF. Definir o valor desta propriedade como 'True' incorporará o arquivo de fonte completo no PDF, sabendo que isso aumentará o tamanho do arquivo PDF. A seguir, está o trecho de código que pode ser usado para incorporar as informações da fonte no PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Instanciar objeto Pdf chamando seu construtor vazio
- doc = ap.Document()
- # Criar uma seção no objeto Pdf
- page = doc.pages.add()
+def embedded_fonts_in_new_document(input_pdf, output_pdf):
+ """Embed fonts while generating a document from scratch."""
+ document = ap.Document()
+ page = document.pages.add()
fragment = ap.text.TextFragment("")
- segment = ap.text.TextSegment(" Este é um texto de exemplo usando fonte personalizada.")
- ts = ap.text.TextState()
- ts.font = ap.text.FontRepository.find_font("Arial")
- ts.font.is_embedded = True
- segment.text_state = ts
+ segment = ap.text.TextSegment(" This is a sample text using Custom font.")
+ text_state = ap.text.TextState()
+ text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_state.font.is_embedded = True
+ segment.text_state = text_state
fragment.segments.append(segment)
page.paragraphs.add(fragment)
- # Salvar Documento PDF
- doc.save(output_pdf)
+ document.save(output_pdf)
```
+### Definir o Nome da Fonte Padrão ao Salvar o PDF
-### Definir Nome de Fonte Padrão ao Salvar PDF
-
-Quando um documento PDF contém fontes que não estão disponíveis no próprio documento e no dispositivo, a API substitui essas fontes pela fonte padrão. Se a fonte estiver disponível (instalada no dispositivo ou incorporada no documento), o PDF de saída deve ter a mesma fonte (não deve ser substituída pela fonte padrão). O valor da fonte padrão deve conter o nome da fonte (não o caminho para os arquivos de fonte). Implementamos um recurso para definir o nome da fonte padrão ao salvar um documento como PDF. O seguinte trecho de código pode ser usado para definir a fonte padrão:
+Quando um documento PDF contém fontes que não estão disponíveis no próprio documento e no dispositivo, a API substitui essas fontes pela fonte padrão. Se a fonte estiver disponível (instalada no dispositivo ou incorporada ao documento), o PDF de saída deve ter a mesma fonte (não deve ser substituída pela fonte padrão). O valor da fonte padrão deve conter o nome da fonte (não o caminho para os arquivos de fonte). Implementamos um recurso para definir o nome da fonte padrão ao salvar um documento como PDF. O trecho de código a seguir pode ser usado para definir a fonte padrão:
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Carregar um documento PDF existente com fonte ausente
+def set_default_font(input_pdf, output_pdf):
+ """Assign a fallback font when saving a PDF."""
document = ap.Document(input_pdf)
- pdfSaveOptions = ap.PdfSaveOptions()
- # Especificar Nome da Fonte Padrão
- newName = "Arial"
- pdfSaveOptions.default_font_name = newName
- document.save(output_pdf, pdfSaveOptions)
+ save_options = ap.PdfSaveOptions()
+ save_options.default_font_name = "Arial"
+ document.save(output_pdf, save_options)
```
-### Obter Todas as Fontes de um Documento PDF
+### Obter Todas as Fonts do PDF Document
-Caso você queira obter todas as fontes de um documento PDF, você pode usar o método [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) fornecido na classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
- Verifique o seguinte trecho de código para obter todas as fontes de um documento PDF existente:
+Caso você queira obter todas as fontes de um documento PDF, você pode usar [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) método fornecido em [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe. Por favor, verifique o trecho de código a seguir para obter todas as fontes de um documento PDF existente:
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document(input_pdf)
- fonts = doc.font_utilities.get_all_fonts()
- for font in fonts:
+def get_all_fonts(input_pdf, output_pdf):
+ """Print all fonts referenced by a document."""
+ document = ap.Document(input_pdf)
+ for font in document.font_utilities.get_all_fonts():
print(font.font_name)
```
-### Melhorar a Incorporação de Fontes usando FontSubsetStrategy
+### Melhorar a incorporação de fontes usando FontSubsetStrategy
-O trecho de código a seguir mostra como definir [FontSubsetStrategy](https://reference.aspose.com/pdf/python-net/aspose.pdf/fontsubsetstrategy/) usando a propriedade [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties):
+O trecho de código a seguir mostra como definir [FontSubsetStrategy](https://reference.aspose.com/pdf/python-net/aspose.pdf/fontsubsetstrategy/) usado [font_utilities](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#properties) propriedade:
```python
+import aspose.pdf as ap
+
- import aspose.pdf as ap
+def improve_fonts_embedding(input_pdf, output_pdf):
+ """Apply different font subset strategies to reduce file size."""
+ document = ap.Document(input_pdf)
- doc = ap.Document(input_pdf)
- # Todas as fontes serão incorporadas como subconjunto no documento no caso de SubsetAllFonts.
- doc.font_utilities.subset_fonts(ap.FontSubsetStrategy.SUBSET_ALL_FONTS)
- # O subconjunto de fontes será incorporado para fontes totalmente incorporadas, mas fontes que não estão incorporadas no documento não serão afetadas.
- doc.font_utilities.subset_fonts(ap.FontSubsetStrategy.SUBSET_EMBEDDED_FONTS_ONLY)
- doc.save(output_pdf)
+ document.font_utilities.subset_fonts(ap.FontSubsetStrategy.SUBSET_ALL_FONTS)
+ document.font_utilities.subset_fonts(
+ ap.FontSubsetStrategy.SUBSET_EMBEDDED_FONTS_ONLY
+ )
+
+ document.save(output_pdf)
```
### Obter-Definir Fator de Zoom de Arquivo PDF
-Às vezes, você quer determinar qual é o fator de zoom atual de um documento PDF. Com Aspose.Pdf, você pode descobrir o valor atual e também definir um.
+Às vezes, você deseja determinar qual é o fator de zoom atual de um documento PDF. Com o Aspose.Pdf, você pode descobrir o valor atual e também definir um.
-A propriedade Destination da classe [GoToAction](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/gotoaction/) permite que você obtenha o valor de zoom associado a um arquivo PDF. Da mesma forma, ela pode ser usada para definir o fator de zoom de um arquivo.
+O [GoToAction](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/gotoaction/) A propriedade Destination da classe permite que você obtenha o valor de zoom associado a um arquivo PDF. Da mesma forma, ela pode ser usada para definir o fator de zoom de um arquivo.
-#### Definir fator de Zoom
+#### Definir fator de zoom
O trecho de código a seguir mostra como definir o fator de zoom de um arquivo PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Instanciar novo objeto Document
- doc = ap.Document(input_pdf)
+def set_zoom_factor(input_pdf, output_pdf):
+ """Set an initial zoom level via document open action."""
+ document = ap.Document(input_pdf)
- action = ap.annotations.GoToAction(ap.annotations.XYZExplicitDestination(1, 0.0, 0.0, 0.5))
- doc.open_action = action
- # Salvar o documento
- doc.save(output_pdf)
+ action = ap.annotations.GoToAction(
+ ap.annotations.XYZExplicitDestination(1, 0.0, 0.0, 0.5)
+ )
+ document.open_action = action
+ document.save(output_pdf)
```
#### Obter Fator de Zoom
@@ -345,45 +234,23 @@ O trecho de código a seguir mostra como definir o fator de zoom de um arquivo P
O trecho de código a seguir mostra como obter o fator de zoom de um arquivo PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Instanciar novo objeto Document
- doc = ap.Document(input_pdf)
-
- # Criar objeto GoToAction
- action = doc.open_action
- # Obter o fator de Zoom do arquivo PDF
- print(action.destination.zoom)
-```
-
-
-### Configurando Propriedades Predefinidas de Diálogo de Impressão
-
-Aspose.PDF permite configurar os membros [DUPLEX_FLIP_LONG_EDGE](https://reference.aspose.com/pdf/python-net/aspose.pdf/printduplex/#members) de um documento PDF. Isso permite alterar a propriedade DuplexMode de um documento PDF, que é configurada como simplex por padrão. Isso pode ser realizado usando duas metodologias diferentes, como mostrado abaixo.
-
-```python
-
- import aspose.pdf as ap
+def get_zoom_factor(input_pdf, output_pdf):
+ """Print the zoom level configured in the document open action."""
+ document = ap.Document(input_pdf)
- doc = ap.Document()
- doc.pages.add()
- doc.duplex = ap.PrintDuplex.DUPLEX_FLIP_LONG_EDGE
- doc.save(output_pdf)
+ action = document.open_action
+ if action and action.destination:
+ print("Zoom:", action.destination.zoom)
+ else:
+ print("Zoom: not set")
```
-### Configurando Propriedades Predefinidas de Diálogo de Impressão usando Editor de Conteúdo PDF
-
-```python
-
- import aspose.pdf as ap
-
- ed = ap.facades.PdfContentEditor()
- ed.bind_pdf(input_pdf)
- if (ed.get_viewer_preference() & ap.facades.ViewerPreference.DUPLEX_FLIP_SHORT_EDGE) > 0:
- print("O arquivo tem duplex flip borda curta")
+## Tópicos Relacionados ao Documento
- ed.change_viewer_preference(ap.facades.ViewerPreference.DUPLEX_FLIP_SHORT_EDGE)
- ed.save(output_pdf)
-```
\ No newline at end of file
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Criar arquivos PDF em Python](/pdf/pt/python-net/create-pdf-document/)
+- [Manipular documentos PDF em Python](/pdf/pt/python-net/manipulate-pdf-document/)
+- [Otimizar arquivos PDF em Python](/pdf/pt/python-net/optimize-pdf/)
diff --git a/pt/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md
index cc7f8492aa..f5d32fcccf 100644
--- a/pt/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/manipulate-pdf-document/_index.md
@@ -1,198 +1,118 @@
---
-title: Manipular Documento PDF em Python via .NET
-linktitle: Manipular Documento PDF
+title: Manipular documentos PDF em Python
+linktitle: Manipular documento PDF
type: docs
weight: 20
url: /pt/python-net/manipulate-pdf-document/
-description: Este artigo contém informações sobre como validar Documento PDF para o padrão PDF A usando Python, como trabalhar com TOC, como definir data de expiração do PDF, etc.
-lastmod: "2023-04-13"
+description: Aprenda como validar, estruturar e modificar documentos PDF em Python, incluindo o gerenciamento de TOC e verificações de PDF/A.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Guia sobre manipulação de documentos PDF usando Python
+Abstract: Este artigo fornece um guia abrangente sobre a manipulação de documentos PDF usando Python, especificamente com a biblioteca Aspose.PDF. Ele cobre diversas funcionalidades, incluindo a validação de documentos PDF para conformidade PDF/A-1a e PDF/A-1b usando o método `validate` da classe `Document`. Ele também detalha como adicionar, personalizar e gerenciar um Sumário (TOC) em arquivos PDF, como definir diferentes TabLeaderTypes, ocultar números de página e personalizar a numeração de páginas com um prefixo. Além disso, o artigo explica como definir uma data de expiração para um documento PDF incorporando JavaScript para restrição de acesso e como achatar formulários preenchíveis em um PDF para torná‑los não editáveis. Cada seção é acompanhada por trechos de código que demonstram a implementação desses recursos usando Aspose.PDF em Python.
---
-
+Esta página é útil quando você precisa validar a conformidade de PDF, criar ou personalizar um índice, definir o comportamento de expiração de documentos ou achatar PDFs preenchíveis em fluxos de trabalho Python.
## Manipular Documento PDF em Python
-## Validar Documento PDF para o Padrão PDF A (A 1A e A 1B)
+## Validar Documento PDF para o padrão PDF/A (A 1A e A 1B)
-Para validar um documento PDF para compatibilidade com PDF/A-1a ou PDF/A-1b, use o método [validate](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Este método permite que você especifique o nome do arquivo no qual o resultado deve ser salvo e o tipo de validação necessário na enumeração PdfFormat: PDF_A_1A ou PDF_A_1B.
+Para validar um documento PDF para compatibilidade PDF/A-1a ou PDF/A-1b, use o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe [validate](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método. Este método permite especificar o nome do arquivo no qual o resultado será salvo e o tipo de validação necessário da enumeração PdfFormat: PDF_A_1A ou PDF_A_1B.
O trecho de código a seguir mostra como validar um documento PDF para PDF/A-1A.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Abrir documento
+def validate_pdfa_standard_a1a(input_pdf, output_pdf):
document = ap.Document(input_pdf)
-
- # Validar PDF para PDF/A-1a
- document.validate(output_xml, ap.PdfFormat.PDF_A_1A)
+ document.validate(output_pdf, ap.PdfFormat.PDF_A_1A)
```
O trecho de código a seguir mostra como validar um documento PDF para PDF/A-1b.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Abrir documento
+def validate_pdfa_standard_a1b(input_pdf, output_pdf):
document = ap.Document(input_pdf)
-
- # Validar PDF para PDF/A-1a
- document.validate(output_xml, ap.PdfFormat.PDF_A_1B)
+ document.validate(output_pdf, ap.PdfFormat.PDF_A_1B)
```
-
## Trabalhando com TOC
-### Adicionar TOC a um PDF Existente
+### Adicionar TOC a PDF Existente
-TOC em PDF significa "Tabela de Conteúdos". É um recurso que permite aos usuários navegar rapidamente por um documento, fornecendo uma visão geral de suas seções e títulos.
+TOC em PDF significa "Table of Contents". É um recurso que permite aos usuários navegar rapidamente por um documento, oferecendo uma visão geral de suas seções e cabeçalhos.
-Para adicionar um TOC a um arquivo PDF existente, use a classe Heading no namespace [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/). O namespace [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/) pode tanto criar novos arquivos PDF quanto manipular arquivos PDF existentes. Para adicionar um TOC a um PDF existente, use o namespace Aspose.Pdf. O trecho de código a seguir mostra como criar uma tabela de conteúdos dentro de um arquivo PDF existente usando Python via .NET.
+Para adicionar um TOC a um arquivo PDF existente, use a classe Heading no [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/) namespace. O [aspose.pdf](https://reference.aspose.com/pdf/python-net/aspose.pdf/) namespace pode criar novos e manipular PDFs existentes. Para adicionar um TOC a um PDF existente, use o namespace Aspose.Pdf. O trecho de código a seguir demonstra como criar um TOC dentro de um arquivo PDF existente usando Python via .NET.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Carregar um arquivo PDF existente
- doc = ap.Document(input_pdf)
-
- # Obter acesso à primeira página do arquivo PDF
- tocPage = doc.pages.insert(1)
- # Criar objeto para representar informações do TOC
- tocInfo = ap.TocInfo()
- title = ap.text.TextFragment("Tabela de Conteúdos")
+def add_table_of_contents(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.insert(1)
+ toc_info = ap.TocInfo()
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 20
title.text_state.font_style = ap.text.FontStyles.BOLD
+ toc_info.title = title
+ toc_page.toc_info = toc_info
- # Definir o título para o TOC
- tocInfo.title = title
- tocPage.toc_info = tocInfo
-
- # Criar objetos de string que serão usados como elementos do TOC
- titles = ["Primeira página", "Segunda página", "Terceira página", "Quarta página"]
- for i in range(0, 2):
- # Criar objeto Heading
- heading2 = ap.Heading(1)
- segment2 = ap.text.TextSegment()
- heading2.toc_page = tocPage
- heading2.segments.append(segment2)
-
- # Especificar a página de destino para o objeto heading
- heading2.destination_page = doc.pages[i + 2]
-
- # Página de destino
- heading2.top = doc.pages[i + 2].rect.height
-
- # Coordenada de destino
- segment2.text = titles[i]
-
- # Adicionar heading à página que contém o TOC
- tocPage.paragraphs.add(heading2)
-
- # Salvar o documento atualizado
- doc.save(output_pdf)
+ titles = ["First page", "Second page"]
+ for index, title_text in enumerate(titles[:2]):
+ heading = ap.Heading(1)
+ segment = ap.text.TextSegment(title_text)
+ heading.toc_page = toc_page
+ heading.segments.append(segment)
+ destination_page = document.pages[index + 2]
+ heading.destination_page = destination_page
+ heading.top = destination_page.rect.height
+ toc_page.paragraphs.add(heading)
+
+ document.save(output_pdf)
```
+### Defina diferentes TabLeaderType para diferentes níveis de TOC
-### Definir diferentes TabLeaderType para diferentes níveis de TOC
-
-Aspose.PDF para Python também permite definir diferentes TabLeaderType para diferentes níveis de TOC. Você precisa definir a propriedade [line_dash](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/).
+Aspose.PDF for Python também permite definir diferentes TabLeaderType para diferentes níveis de TOC. Você precisa definir [line_dash](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) propriedade de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/).
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document()
- tocPage = doc.pages.add()
+def set_toc_levels(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.add()
toc_info = ap.TocInfo()
-
- # definir LeaderType
toc_info.line_dash = ap.text.TabLeaderType.SOLID
- title = ap.text.TextFragment("Índice")
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 30
toc_info.title = title
-
- # Adicionar a seção de lista à coleção de seções do documento Pdf
- tocPage.toc_info = toc_info
- # Definir o formato da lista de quatro níveis configurando as margens à esquerda
- # e
- # configurações de formato de texto de cada nível
+ toc_page.toc_info = toc_info
toc_info.format_array_length = 4
toc_info.format_array[0].margin.left = 0
toc_info.format_array[0].margin.right = 30
toc_info.format_array[0].line_dash = ap.text.TabLeaderType.DOT
- toc_info.format_array[0].text_state.font_style = ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ toc_info.format_array[0].text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
toc_info.format_array[1].margin.left = 10
toc_info.format_array[1].margin.right = 30
toc_info.format_array[1].line_dash = 3
@@ -205,226 +125,146 @@ Aspose.PDF para Python também permite definir diferentes TabLeaderType para dif
toc_info.format_array[3].margin.right = 30
toc_info.format_array[3].text_state.font_style = ap.text.FontStyles.BOLD
- # Criar uma seção no documento Pdf
- page = doc.pages.add()
-
- # Adicionar quatro cabeçalhos na seção
- for Level in range(1, 5):
- heading2 = ap.Heading(Level)
- segment2 = ap.text.TextSegment()
- heading2.segments.append(segment2)
- heading2.is_auto_sequence = True
- heading2.toc_page = tocPage
- segment2.text = "Cabeçalho de Exemplo" + str(Level)
- heading2.text_state.font = ap.text.FontRepository.find_font("Arial")
-
- # Adicionar o cabeçalho ao Índice.
- heading2.is_in_list = True
- page.paragraphs.add(heading2)
-
- # salvar o Pdf
- doc.save(output_pdf)
+ page = document.pages.add()
+ for level in range(1, 5):
+ heading = ap.Heading(level)
+ heading.is_auto_sequence = True
+ heading.toc_page = toc_page
+ heading.text_state.font = ap.text.FontRepository.find_font("Arial")
+ segment = ap.text.TextSegment(f"Sample Heading{level}")
+ heading.segments.append(segment)
+ heading.is_in_list = True
+ page.paragraphs.add(heading)
+
+ document.save(output_pdf)
```
+### Ocultar números de página no TOC
-### Ocultar Números de Página no TOC
-
-Caso você não queira exibir números de página, junto com os títulos no TOC, você pode usar a propriedade [is_show_page_numbers](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) da Classe [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) como falso. Por favor, verifique o seguinte trecho de código para ocultar os números de página no índice:
+Caso não queira exibir números de página, juntamente com os títulos no TOC, você pode usar [is_show_page_numbers](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) propriedade de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) Classe como falso. Por favor, verifique o trecho de código a seguir para ocultar os números de página no sumário:
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- doc = ap.Document()
- toc_page = doc.pages.add()
+def hide_page_numbers_in_toc(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.add()
toc_info = ap.TocInfo()
- title = ap.text.TextFragment("Índice")
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 20
title.text_state.font_style = ap.text.FontStyles.BOLD
toc_info.title = title
- # Adicionar a seção da lista à coleção de seções do documento Pdf
+ toc_info.is_show_page_numbers = False
toc_page.toc_info = toc_info
- # Definir o formato da lista de quatro níveis configurando as margens esquerdas e
- # configurações de formato de texto de cada nível
- toc_info.is_show_page_numbers = False
toc_info.format_array_length = 4
toc_info.format_array[0].margin.right = 0
- toc_info.format_array[0].text_state.font_style = ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ toc_info.format_array[0].text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
toc_info.format_array[1].margin.left = 30
toc_info.format_array[1].text_state.underline = True
toc_info.format_array[1].text_state.font_size = 10
toc_info.format_array[2].text_state.font_style = ap.text.FontStyles.BOLD
toc_info.format_array[3].text_state.font_style = ap.text.FontStyles.BOLD
- page = doc.pages.add()
- # Adicionar quatro títulos na seção
- for Level in range(1, 5):
- heading2 = ap.Heading(Level)
- segment2 = ap.text.TextSegment()
- heading2.toc_page = toc_page
- heading2.segments.append(segment2)
- heading2.is_auto_sequence = True
- segment2.text = "este é o título do nível " + str(Level)
- heading2.is_in_list = True
- page.paragraphs.add(heading2)
- doc.save(output_pdf)
+ page = document.pages.add()
+ for level in range(1, 2):
+ heading = ap.Heading(level)
+ heading.toc_page = toc_page
+ heading.is_auto_sequence = True
+ heading.is_in_list = True
+ segment = ap.text.TextSegment(f"this is heading of level {level}")
+ heading.segments.append(segment)
+ page.paragraphs.add(heading)
+
+ document.save(output_pdf)
```
+### Personalizar números de página ao adicionar o TOC
-### Personalizar Números de Página ao Adicionar TOC
-
-É comum personalizar a numeração de páginas no TOC ao adicionar TOC em um documento PDF. Por exemplo, podemos precisar adicionar algum prefixo antes do número da página como P1, P2, P3 e assim por diante. Nesse caso, o Aspose.PDF para Python fornece a propriedade [page_numbers_prefix](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) da classe [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) que pode ser usada para personalizar os números de página conforme mostrado no exemplo de código a seguir.
+É comum personalizar a numeração de páginas no TOC ao adicionar o TOC em um documento PDF. Por exemplo, pode ser necessário adicionar algum prefixo antes do número da página, como P1, P2, P3 e assim por diante. Nesse caso, Aspose.PDF for Python fornece [page_numbers_prefix](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/#properties) propriedade de [TocInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/tocinfo/) classe que pode ser usada para personalizar números de página como mostrado no exemplo de código a seguir.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Carregar um arquivo PDF existente
- doc = ap.Document(input_pdf)
- # Obter acesso à primeira página do arquivo PDF
- toc_page = doc.pages.insert(1)
- # Criar objeto para representar as informações do TOC
+def customize_page_numbers_in_toc(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ toc_page = document.pages.insert(1)
toc_info = ap.TocInfo()
- title = ap.text.TextFragment("Índice")
+ title = ap.text.TextFragment("Table Of Contents")
title.text_state.font_size = 20
title.text_state.font_style = ap.text.FontStyles.BOLD
- # Definir o título para o TOC
toc_info.title = title
toc_info.page_numbers_prefix = "P"
toc_page.toc_info = toc_info
- for i in range(len(doc.pages)):
- # Criar objeto de Título
- heading2 = ap.Heading(1)
- segment2 = ap.text.TextSegment()
- heading2.toc_page = toc_page
- heading2.segments.append(segment2)
- # Especificar a página de destino para o objeto de título
- heading2.destination_page = doc.pages[i + 1]
- # Página de destino
- heading2.top = doc.pages[i + 1].rect.height
- # Coordenada de destino
- segment2.text = "Página " + str(i)
- # Adicionar título à página contendo o TOC
- toc_page.paragraphs.add(heading2)
-
- # Salvar o documento atualizado
- doc.save(output_pdf)
-```
+ for index, page in enumerate(document.pages, start=1):
+ heading = ap.Heading(1)
+ heading.toc_page = toc_page
+ heading.destination_page = page
+ heading.top = page.rect.height
+ segment = ap.text.TextSegment(f"Page {index}")
+ heading.segments.append(segment)
+ toc_page.paragraphs.add(heading)
+ document.save(output_pdf)
+```
## Como definir a data de expiração do PDF
-Aplicamos privilégios de acesso em arquivos PDF para que um determinado grupo de usuários possa acessar recursos/objetos específicos de documentos PDF. Para restringir o acesso ao arquivo PDF, geralmente aplicamos criptografia e podemos ter a necessidade de definir a expiração do arquivo PDF, para que o usuário que acessa/visualiza o documento receba um aviso válido sobre a expiração do arquivo PDF.
+Aplicamos privilégios de acesso em arquivos PDF para que um determinado grupo de usuários possa acessar recursos/objetos específicos de documentos PDF. Para restringir o acesso ao arquivo PDF, normalmente aplicamos criptografia e podemos ter a necessidade de definir a expiração do arquivo PDF, de modo que o usuário que acessa/visualiza o documento receba um aviso válido sobre a expiração do arquivo PDF.
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Instanciar objeto Document
- doc = ap.Document()
- # Adicionar página à coleção de páginas do arquivo PDF
- doc.pages.add()
- # Adicionar fragmento de texto à coleção de parágrafos do objeto página
- doc.pages[1].paragraphs.add(ap.text.TextFragment("Olá Mundo..."))
- # Criar objeto JavaScript para definir a data de expiração do PDF
- javaScript = ap.annotations.JavascriptAction(
+def set_pdf_expiry_date(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ document.pages.add()
+ document.pages[1].paragraphs.add(ap.text.TextFragment("Hello World..."))
+ script = ap.annotations.JavascriptAction(
"var year=2017;"
- + "var month=5;"
- + "today = new Date(); today = new Date(today.getFullYear(), today.getMonth());"
- + "expiry = new Date(year, month);"
- + "if (today.getTime() > expiry.getTime())"
- + "app.alert('O arquivo expirou. Você precisa de um novo.');"
+ "var month=5;"
+ "today = new Date(); today = new Date(today.getFullYear(), today.getMonth());"
+ "expiry = new Date(year, month);"
+ "if (today.getTime() > expiry.getTime())"
+ "app.alert('The file is expired. You need a new one.');"
)
- # Definir JavaScript como ação de abertura do PDF
- doc.open_action = javaScript
-
- # Salvar documento PDF
- doc.save(output_pdf)
+ document.open_action = script
+ document.save(output_pdf)
```
+## Achatar PDF preenchível em Python
-## Flatten Fillable PDF em Python
-
-Documentos PDF frequentemente incluem formulários com widgets interativos preenchíveis, tais como botões de rádio, caixas de seleção, caixas de texto, listas, etc. Para torná-los não editáveis para várias finalidades de aplicação, precisamos achatar o arquivo PDF. Aspose.PDF fornece a função para achatar seu PDF em Python com apenas algumas linhas de código:
+Documentos PDF frequentemente incluem formulários com widgets interativos preenchíveis, como botões de opção, caixas de seleção, caixas de texto, listas, etc. Para torná-lo não editável para várias finalidades de aplicação, precisamos achatar o arquivo PDF.
+Aspose.PDF fornece a função para achatar seu PDF em Python com apenas algumas linhas de código:
```python
+import sys
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Carregar formulário PDF de origem
- doc = ap.Document(input_pdf)
-
- # Achatar PDF preenchível
- if len(doc.form.fields) > 0:
- for item in doc.form.fields:
- item.flatten()
-
- # Salvar o documento atualizado
- doc.save(output_pdf)
+def flatten_fillable_pdf(input_pdf, output_pdf):
+ document = ap.Document(input_pdf)
+ if document.form and document.form.fields:
+ for field in document.form.fields:
+ field.flatten()
+ document.save(output_pdf)
```
-
\ No newline at end of file
+## Tópicos de Documentos Relacionados
+
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Formatar documentos PDF em Python](/pdf/pt/python-net/formatting-pdf-document/)
+- [Criar arquivos PDF em Python](/pdf/pt/python-net/create-pdf-document/)
+- [Otimize arquivos PDF em Python](/pdf/pt/python-net/optimize-pdf/)
diff --git a/pt/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md b/pt/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md
index ed989f6653..840075cb02 100644
--- a/pt/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/merge-pdf/_index.md
@@ -1,184 +1,276 @@
---
-title: Como Mesclar PDF usando Python
+title: Mesclar arquivos PDF em Python
linktitle: Mesclar arquivos PDF
type: docs
weight: 50
url: /pt/python-net/merge-pdf-documents/
-description: Esta página explica como mesclar documentos PDF em um único arquivo PDF com Python.
-lastmod: "2023-04-14"
+description: Aprenda como mesclar vários arquivos PDF em um único documento em Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Combine páginas PDF usando Python
+Abstract: Este artigo aborda a necessidade comum de mesclar vários arquivos PDF em um único documento, um processo valioso para organizar e otimizar o armazenamento e o compartilhamento de conteúdo PDF. Ele explora o uso do Aspose.PDF for Python via .NET para combinar arquivos PDF de forma eficiente, reconhecendo que mesclar PDFs em Python pode ser desafiador sem bibliotecas de terceiros. O artigo fornece um guia passo a passo para concatenar arquivos PDF – criar um novo documento, mesclar os arquivos e salvar o documento mesclado. Um trecho de código demonstra a implementação usando o Aspose.PDF, destacando a capacidade da biblioteca de simplificar o processo de mesclagem. Além disso, apresenta o Aspose.PDF Merger, uma ferramenta online para mesclar PDFs, permitindo que os usuários explorem a funcionalidade em um ambiente baseado na web.
---
-
-
-
-## Mesclar ou combinar vários PDFs em um único PDF em Python
+
+## Mesclar ou combinar vários PDF em um único PDF em Python
Combinar arquivos PDF é uma consulta muito popular entre os usuários. Isso pode ser útil quando você tem vários arquivos PDF que deseja compartilhar ou armazenar juntos como um único documento.
-Mesclar arquivos PDF pode ajudá-lo a organizar seus documentos, liberar espaço de armazenamento no seu PC e compartilhar vários arquivos PDF com outras pessoas combinando-os em um único documento.
+Mesclar arquivos PDF pode ajudar a organizar seus documentos, liberar espaço de armazenamento no seu PC e compartilhar vários arquivos PDF com outras pessoas, combinando-os em um único documento.
-Mesclar PDF em Python via .NET não é uma tarefa simples sem usar uma biblioteca de terceiros. Este artigo mostra como mesclar vários arquivos PDF em um único documento PDF usando Aspose.PDF para Python via .NET.
+Mesclar PDF em Python via .NET não é uma tarefa direta sem usar uma biblioteca de terceiros.
+Este artigo mostra como mesclar vários arquivos PDF em um único documento PDF usando Aspose.PDF for Python via .NET.
-## Mesclar Arquivos PDF usando Python e DOM
+## Mesclar arquivos PDF usando Python e DOM
Para concatenar dois arquivos PDF:
-1. Crie dois objetos [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), cada um contendo um dos arquivos PDF de entrada.
+1. Criar um Novo Documento.
+1. Mesclar os arquivos PDF
+1. Salvar o Documento Mesclado
+
+Combinando vários documentos PDF em um único arquivo:
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_two_documents(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ document1.pages.add(document2.pages)
+ document1.save(outfile)
+```
+
+## Anexar um intervalo de páginas de um PDF a outro
-1. Em seguida, chame o método [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) para o objeto Document que você deseja adicionar o outro arquivo PDF.
-1. Passe a coleção PageCollection do segundo objeto Document para o método [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) da primeira coleção PageCollection.
-1. Finalmente, salve o arquivo PDF de saída usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+Copiar e anexar um intervalo específico de páginas de um documento PDF de origem para um documento PDF de destino usando Aspose.PDF for Python.
-O seguinte trecho de código mostra como concatenar arquivos PDF.
+1. Abra os arquivos PDF usando a classe Document.
+1. Verifique se o documento fonte tem páginas.
+1. Validar o intervalo de páginas.
+1. Ignorar a operação se a página inicial for maior que a página final.
+1. Iterar sobre o intervalo de páginas.
+1. Anexe páginas ao documento de destino.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
- # Abrir o primeiro documento
- document1 = ap.Document(input_pdf_1)
- # Abrir o segundo documento
- document2 = ap.Document(input_pdf_2)
+def _append_page_range(source_document, destination_document, start_page, end_page):
+ total_pages = len(source_document.pages)
+ if total_pages == 0:
+ return
- # Adicionar páginas do segundo documento ao primeiro
- document1.pages.add(document2.pages)
+ start = max(1, start_page)
+ end = min(end_page, total_pages)
+ if start > end:
+ return
+
+ for page_number in range(start, end + 1):
+ destination_document.pages.add(source_document.pages[page_number])
+```
+
+## Mesclar vários documentos PDF em um
+
+Este trecho de código explica como mesclar múltiplos arquivos PDF em um único documento:
+
+1. Criar um documento de saída vazio.
+1. Iterar pelos arquivos de entrada.
+1. Carregue cada documento de origem.
+1. Determinar intervalo de páginas.
+1. Anexar páginas ao documento de saída.
+1. Repita para todos os documentos.
+1. Salve o PDF mesclado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_multiple_documents(input_files, outfile):
+ output_document = ap.Document()
+
+ for input_file in input_files:
+ source_document = ap.Document(input_file)
+ _append_page_range(
+ source_document, output_document, 1, len(source_document.pages)
+ )
+
+ output_document.save(outfile)
+```
+
+## Mesclar intervalos de páginas selecionados de vários PDFs
+
+1. Carregue os documentos PDF de origem.
+1. Crie um documento de saída.
+1. Defina intervalos de páginas para cada documento.
+1. Anexar páginas do primeiro Document.
+1. Anexar páginas do segundo documento.
+1. Combine as páginas na ordem desejada.
+1. Salve o PDF mesclado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_selected_page_ranges(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ output_document = ap.Document()
+
+ _append_page_range(document1, output_document, 1, 2)
+ _append_page_range(document2, output_document, 2, 3)
+
+ output_document.save(outfile)
+```
+
+## Inserir um PDF em outro em uma posição específica
+
+1. Carregue a base e insira documentos.
+1. Crie um documento de saída.
+1. Determine o total de páginas no documento base.
+1. Validar o índice de inserção.
+1. Anexar páginas antes do ponto de inserção.
+1. Anexar todas as páginas do documento de inserção.
+1. Anexar páginas restantes do documento base.
+1. Salve o PDF resultante.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_insert_document_at_position(infile1, infile2, insert_after_page, outfile):
+ base_document = ap.Document(infile1)
+ insert_document = ap.Document(infile2)
+ output_document = ap.Document()
+
+ base_total_pages = len(base_document.pages)
+ insert_index = max(0, min(insert_after_page, base_total_pages))
+
+ _append_page_range(base_document, output_document, 1, insert_index)
+ _append_page_range(insert_document, output_document, 1, len(insert_document.pages))
+ _append_page_range(
+ base_document, output_document, insert_index + 1, base_total_pages
+ )
+
+ output_document.save(outfile)
+```
+
+## Mesclar PDFs por páginas alternadas
+
+Este exemplo demonstra como mesclar dois documentos PDF alternando suas páginas usando o Aspose.PDF for Python.
+
+1. Carregue os documentos PDF de entrada.
+1. Crie um documento de saída.
+1. Obtenha o número de páginas em cada documento.
+1. Calcule a contagem máxima de páginas.
+1. Iterar pelos números de página.
+1. Anexar páginas alternadamente.
+1. Manipular contagens de páginas desiguais.
+1. Salve o PDF mesclado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_alternating_pages(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ output_document = ap.Document()
+
+ document1_pages = len(document1.pages)
+ document2_pages = len(document2.pages)
+ max_pages = max(document1_pages, document2_pages)
+
+ for page_number in range(1, max_pages + 1):
+ if page_number <= document1_pages:
+ output_document.pages.add(document1.pages[page_number])
+ if page_number <= document2_pages:
+ output_document.pages.add(document2.pages[page_number])
+
+ output_document.save(outfile)
+```
+
+## Mesclar PDFs com Separadores de Seção e Marcadores
+
+Mescle vários documentos PDF em um único arquivo com seções estruturadas e marcadores de navegação usando o Aspose.PDF for Python.
+
+1. Crie um documento de saída.
+1. Iterar pelos arquivos de entrada.
+1. Carregue o documento de origem.
+1. Adicionar uma página separadora.
+1. Criar um marcador de seção.
+1. Anexar páginas do documento de origem.
+1. Rastreie a primeira página de conteúdo.
+1. Adicionar um marcador de conteúdo aninhado (opcional).
+1. Repita para todos os documentos.
+1. Salve o PDF mesclado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def merge_with_section_separators_and_bookmarks(input_files, outfile):
+ output_document = ap.Document()
+
+ for section_index, input_file in enumerate(input_files, start=1):
+ source_document = ap.Document(input_file)
+ source_page_count = len(source_document.pages)
- # Salvar arquivo de saída concatenado
- document1.save(output_pdf)
+ separator_page = output_document.pages.add()
+ separator_page.paragraphs.add(
+ ap.text.TextFragment(
+ f"Section {section_index}: {path.basename(input_file)}"
+ )
+ )
+
+ section_bookmark = ap.OutlineItemCollection(output_document.outlines)
+ section_bookmark.title = f"Section {section_index}"
+ section_bookmark.action = ap.annotations.GoToAction(separator_page)
+ output_document.outlines.append(section_bookmark)
+
+ first_content_page_number = len(output_document.pages) + 1
+ _append_page_range(source_document, output_document, 1, source_page_count)
+
+ if source_page_count > 0 and first_content_page_number <= len(
+ output_document.pages
+ ):
+ content_bookmark = ap.OutlineItemCollection(output_document.outlines)
+ content_bookmark.title = f"Section {section_index} Content"
+ content_bookmark.action = ap.annotations.GoToAction(
+ output_document.pages[first_content_page_number]
+ )
+ section_bookmark.append(content_bookmark)
+
+ output_document.save(outfile)
```
## Exemplo ao Vivo
-[Aspose.PDF Merger](https://products.aspose.app/pdf/merger) é um aplicativo web gratuito online que permite investigar como a funcionalidade de mesclagem de apresentações funciona.
-
-[](https://products.aspose.app/pdf/merger)
-
-
\ No newline at end of file
+[Merger Aspose.PDF](https://products.aspose.app/pdf/merger) é um aplicativo web gratuito online que permite investigar como funciona a funcionalidade de mesclagem de apresentações.
+
+[](https://products.aspose.app/pdf/merger)
+
+## Tópicos de Documentos Relacionados
+
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Dividir arquivos PDF em Python](/pdf/pt/python-net/split-document/)
+- [Otimizar arquivos PDF em Python](/pdf/pt/python-net/optimize-pdf/)
+- [Manipular documentos PDF em Python](/pdf/pt/python-net/manipulate-pdf-document/)
+
diff --git a/pt/python-net/advanced-operations/working-with-documents/merge-pdf/merger.png b/pt/python-net/advanced-operations/working-with-documents/merge-pdf/merger.png
new file mode 100644
index 0000000000..c7977aa68d
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-documents/merge-pdf/merger.png differ
diff --git a/pt/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md
index ed6010b736..fd4341cce7 100644
--- a/pt/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/optimize-pdf-document/_index.md
@@ -1,401 +1,359 @@
---
-title: Otimizar, Comprimir ou Reduzir Tamanho de PDF em Python
+title: Otimizar arquivos PDF em Python
linktitle: Otimizar PDF
type: docs
weight: 30
url: /pt/python-net/optimize-pdf/
-description: Otimizar arquivo PDF, reduzir todas as imagens, diminuir tamanho do PDF, Desincorporar fontes, Remover objetos não utilizados com Python.
-lastmod: "2023-04-17"
+description: Aprenda a otimizar, compactar e reduzir o tamanho de arquivos PDF em Python usando Aspose.PDF.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Compacte páginas PDF usando Python
+Abstract: Este artigo fornece um guia abrangente sobre otimização de arquivos PDF para reduzir seu tamanho e melhorar o desempenho em várias plataformas, como páginas da Web, e‑mails e sistemas de armazenamento. As técnicas de otimização incluem a redução do tamanho das imagens, a remoção de recursos não utilizados e a desvinculação de fontes. Métodos específicos para otimizar PDFs para a web e reduzir o tamanho geral do arquivo são discutidos, utilizando os métodos `Optimize` e `OptimizeResources` no Aspose.PDF for Python. A personalização das estratégias de otimização é possível via `OptimizationOptions`, permitindo ações direcionadas como compactar imagens, remover objetos e fluxos não utilizados, vincular fluxos duplicados e desvincular fontes. Estratégias adicionais cobrem o achatamento de anotações, a remoção de campos de formulário e a conversão de arquivos PDF de RGB para escala de cinza para diminuir ainda mais o tamanho. O artigo também destaca o uso da compressão FlateDecode para otimização de imagens, garantindo uma gestão eficaz de arquivos PDF enquanto mantém a qualidade e a funcionalidade.
---
-
-
-
-Um documento PDF pode, às vezes, conter dados adicionais. Reduzir o tamanho de um arquivo PDF ajudará a otimizar a transferência de rede e o armazenamento. Isso é especialmente útil para publicação em páginas da web, compartilhamento em redes sociais, envio por e-mail ou arquivamento em armazenamento. Podemos usar várias técnicas para otimizar o PDF:
+
+Um documento PDF pode, às vezes, conter dados adicionais. Reduzir o tamanho de um arquivo PDF ajudará a otimizar a transferência de rede e o armazenamento. Isso é especialmente útil para publicação em páginas da web, compartilhamento em redes sociais, envio por e‑mail ou arquivamento em armazenamento. Podemos usar várias técnicas para otimizar o PDF:
+
+Use esta página quando precisar reduzir o tamanho do PDF para entrega na web, compartilhamento por e‑mail, economia de armazenamento ou saída pronta para impressão, sem reconstruir o document do zero.
- Otimizar o conteúdo da página para navegação online
-- Reduzir ou comprimir todas as imagens
-- Permitir reutilização de conteúdo da página
+- Reduza ou comprima todas as imagens
+- Habilitar reutilização de conteúdo da página
- Mesclar fluxos duplicados
- Desincorporar fontes
- Remover objetos não utilizados
-- Remover campos de formulário achatados
+- Remover flattening de campos de formulário
- Remover ou achatar anotações
{{% alert color="primary" %}}
- Uma explicação detalhada dos métodos de otimização pode ser encontrada na página Visão Geral dos Métodos de Otimização.
+ A explicação detalhada dos métodos de otimização pode ser encontrada na página Visão geral dos Métodos de Otimização.
{{% /alert %}}
## Otimizar Documento PDF para a Web
-Otimização, ou linearização para a Web, refere-se ao processo de tornar um arquivo PDF adequado para navegação online usando um navegador web. Para otimizar um arquivo para exibição na web:
+Otimização, ou linearização para Web, refere-se ao processo de tornar um arquivo PDF adequado para navegação online usando um navegador web. Para otimizar um arquivo para exibição na web:
-1. Abra o documento de entrada em um objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Use o método [Optimize](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-1. Salve o documento otimizado usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Abra o documento de entrada em um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto.
+1. Use o [Optimize](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
+1. Salve o documento otimizado usando o [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
O trecho de código a seguir mostra como otimizar um documento PDF para a web.
-```python
-
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- # Abrir documento
- document = ap.Document(input_pdf)
- # Otimizar para a web
+def optimize_pdf(infile, outfile):
+ document = ap.Document(infile)
document.optimize()
-
- # Salvar documento de saída
- document.save(output_pdf)
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-## Reduzir Tamanho do PDF
+## Reduzir tamanho PDF
-O método [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) permite reduzir o tamanho do documento eliminando informações desnecessárias. Por padrão, este método funciona da seguinte forma:
+O [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) O método permite reduzir o tamanho do documento ao remover as informações desnecessárias. Por padrão, este método funciona da seguinte forma:
- Recursos que não são usados nas páginas do documento são removidos
- Recursos iguais são unidos em um único objeto
+- Objetos não usados são excluídos
-- Objetos não utilizados são deletados
-
-O trecho abaixo é um exemplo. No entanto, observe que este método não pode garantir a redução do documento.
+O trecho abaixo é um exemplo. Note, porém, que este método não pode garantir a redução do documento.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
- # Otimizar documento PDF. No entanto, observe que este método não pode garantir a redução do documento
+def reduce_size_pdf(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Optimize PDF document. Note, though, that this method cannot guarantee document shrinking
document.optimize_resources()
- # Salvar documento atualizado
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
## Gerenciamento de Estratégia de Otimização
-Também podemos personalizar a estratégia de otimização. Atualmente, o método [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) usa 5 técnicas. Essas técnicas podem ser aplicadas usando o método OptimizeResources() com o parâmetro [OptimizationOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/optimizationoptions/).
+Também podemos personalizar a estratégia de otimização. Atualmente, o [OptimizeResources()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método usa 5 técnicas. Estas técnicas podem ser aplicadas usando o método OptimizeResources() com o [OptimizationOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/optimizationoptions/) parâmetro.
### Reduzindo ou Compactando Todas as Imagens
-Temos duas maneiras de trabalhar com imagens: reduzir a qualidade da imagem e/ou alterar sua resolução.
- Em qualquer caso, [ImageCompressionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/imagecompressionoptions/) deve ser aplicado. No exemplo a seguir, reduzimos as imagens diminuindo a ImageQuality para 50.
+Temos duas maneiras de trabalhar com imagens: reduzir a qualidade da imagem e/ou alterar sua resolução. Em qualquer caso, [ImageCompressionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.optimization/imagecompressionoptions/) deve ser aplicado. No exemplo a seguir, reduzimos as imagens diminuindo ImageQuality para 50.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
- # Inicializar OptimizationOptions
+def shrinking_or_compressing_all_images(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Initialize OptimizationOptions
optimizeOptions = ap.optimization.OptimizationOptions()
- # Definir opção CompressImages
+ # Set CompressImages option
optimizeOptions.image_compression_options.compress_images = True
- # Definir opção ImageQuality
+ # Set ImageQuality option
optimizeOptions.image_compression_options.image_quality = 50
- # Otimizar documento PDF usando OptimizationOptions
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Salvar documento atualizado
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Removendo Objetos Não Utilizados
+### Removendo objetos não utilizados
-Um documento PDF às vezes contém objetos PDF que não são referenciados por nenhum outro objeto no documento. Isso pode acontecer, por exemplo, quando uma página é removida da árvore de páginas do documento, mas o próprio objeto de página não é removido. Remover esses objetos não torna o documento inválido, mas sim o encolhe.
+Um documento PDF às vezes contém objetos PDF que não são referenciados por nenhum outro objeto no documento. Isso pode acontecer, por exemplo, quando uma página é removida da árvore de páginas do documento, mas o próprio objeto da página não é removido. A remoção desses objetos não torna o documento inválido, mas sim o diminui.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
- # Definir a opção RemoveUsedObject
+def removing_unused_objects(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set RemoveUnusedObjects option
optimizeOptions = ap.optimization.OptimizationOptions()
optimizeOptions.remove_unused_objects = True
- # Otimizar documento PDF usando OptimizationOptions
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Salvar documento atualizado
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Removendo Fluxos Não Utilizados
+### Removendo fluxos não usados
-Às vezes, o documento contém fluxos de recursos não utilizados. Esses fluxos não são "objetos não utilizados" porque são referenciados a partir de um dicionário de recursos de página. Assim, eles não são removidos com um método de "remover objetos não utilizados". Mas esses fluxos nunca são usados com o conteúdo da página. Isso pode acontecer em casos quando uma imagem foi removida da página, mas não dos recursos da página. Além disso, essa situação geralmente ocorre quando páginas são extraídas do documento e as páginas do documento têm recursos "comuns", ou seja, o mesmo objeto de Recursos. O conteúdo das páginas é analisado para determinar se um fluxo de recursos é usado ou não. Fluxos não utilizados são removidos. Isso às vezes diminui o tamanho do documento. O uso dessa técnica é semelhante ao passo anterior:
+Às vezes o documento contém fluxos de recursos não utilizados. Esses fluxos não são “objetos não utilizados” porque são referenciados a partir de um dicionário de recursos da página. Portanto, não são removidos com um método “remove unused objects”. Mas esses fluxos nunca são usados com o conteúdo da página. Isso pode acontecer quando uma imagem foi removida da página, mas não dos recursos da página. Além disso, essa situação costuma ocorrer quando páginas são extraídas do documento e as páginas do documento têm recursos “comuns”, ou seja, o mesmo objeto Resources. O conteúdo das páginas é analisado para determinar se um fluxo de recurso está sendo usado ou não. Fluxos não utilizados são removidos. Isso às vezes diminui o tamanho do documento. O uso desta técnica é semelhante ao passo anterior:
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
- # Definir a opção RemoveUsedStreams
+def removing_unused_streams(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set RemoveUnusedStreams option
optimizeOptions = ap.optimization.OptimizationOptions()
optimizeOptions.remove_unused_streams = True
- # Otimizar documento PDF usando OptimizationOptions
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Salvar documento atualizado
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
### Vinculando Fluxos Duplicados
-Alguns documentos podem conter vários fluxos de recursos idênticos (como imagens, por exemplo). Isso pode acontecer, por exemplo, quando um documento é concatenado consigo mesmo. O documento de saída contém duas cópias independentes do mesmo fluxo de recursos. Analisamos todos os fluxos de recursos e os comparamos. Se os fluxos são duplicados, eles são mesclados, ou seja, apenas uma cópia é mantida. As referências são alteradas adequadamente, e as cópias do objeto são removidas. Em alguns casos, isso ajuda a diminuir o tamanho do documento.
+Alguns documentos podem conter vários fluxos de recursos idênticos (como imagens, por exemplo). Isso pode acontecer, por exemplo, quando um documento é concatenado com ele mesmo. O documento de saída contém duas cópias independentes do mesmo fluxo de recurso. Analisamos todos os fluxos de recurso e os comparamos. Se os fluxos forem duplicados, eles são mesclados, ou seja, apenas uma cópia permanece. As referências são alteradas adequadamente e as cópias do objeto são removidas. Em alguns casos, isso ajuda a diminuir o tamanho do documento.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
- # Definir a opção LinkDuplicateStreams
+def linking_duplicate_streams(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set link_duplicate_streams option
optimizeOptions = ap.optimization.OptimizationOptions()
- optimizeOptions.link_duplcate_streams = True
- # Otimizar o documento PDF usando OptimizationOptions
+ optimizeOptions.link_duplicate_streams = True
+ # Optimize PDF document using OptimizationOptions
document.optimize_resources(optimizeOptions)
- # Salvar documento atualizado
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Desincorporando Fontes
+### Desincorporação de fontes
-Se o documento usa fontes incorporadas, isso significa que todos os dados da fonte estão armazenados no documento.
- A vantagem é que o documento pode ser visualizado independentemente de a fonte estar instalada na máquina do usuário ou não. Mas a incorporação de fontes torna o documento maior. O método de remover fontes incorporadas remove todas as fontes incorporadas. Assim, o tamanho do documento diminui, mas o próprio documento pode se tornar ilegível se a fonte correta não estiver instalada.
+Se o documento usar fontes incorporadas, isso significa que todos os dados da fonte estão armazenados no documento. A vantagem é que o documento pode ser visualizado independentemente de a fonte estar instalada na máquina do usuário ou não. Mas incorporar fontes aumenta o tamanho do documento. O método de desincorporar fontes remove todas as fontes incorporadas. Assim, o tamanho do documento diminui, mas o próprio documento pode ficar ilegível se a fonte correta não estiver instalada.
```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
- # Definir a opção UnembedFonts
- optimizeOptions = ap.optimization.OptimizationOptions()
- optimizeOptions.unembed_fonts = True
- # Otimizar o documento PDF usando OptimizationOptions
- document.optimize_resources(optimizeOptions)
- # Salvar documento atualizado
- document.save(output_pdf)
- file_stats_1 = os.stat(input_pdf)
- file_stats_2 = os.stat(output_pdf)
+import aspose.pdf as ap
+from os import path, stat
+import sys
+
+
+def unembed_fonts(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Set unembed_fonts option
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.unembed_fonts = True
+ # Optimize PDF document using OptimizationOptions
+ document.optimize_resources(optimize_options)
+ # Save updated document
+ document.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
print(
- "Tamanho do arquivo original: {}. Tamanho do arquivo reduzido: {}".format(
+ "Original file size: {}. Reduced file size: {}".format(
file_stats_1.st_size, file_stats_2.st_size
)
)
```
-Os recursos de otimização aplicam esses métodos ao documento. Se qualquer um desses métodos for aplicado, o tamanho do documento provavelmente diminuirá. Se nenhum desses métodos for aplicado, o tamanho do documento não mudará, o que é óbvio.
+Os recursos de otimização aplicam esses métodos ao documento. Se algum desses métodos for aplicado, o tamanho do documento provavelmente diminuirá. Se nenhum desses métodos for aplicado, o tamanho do documento não mudará, o que é óbvio.
-## Formas Adicionais de Reduzir o Tamanho do Documento PDF
+## Outras maneiras de reduzir o tamanho do documento PDF
-### Removendo ou Achatando Anotações
+### Removendo ou Aplanando Anotações
-As anotações podem ser deletadas quando são desnecessárias. Quando são necessárias, mas não requerem edição adicional, elas podem ser achatadas. Ambas as técnicas reduzirão o tamanho do arquivo.
+As anotações podem ser excluídas quando são desnecessárias. Quando são necessárias, mas não exigem edição adicional, podem ser achatadas. Ambas as técnicas reduzirão o tamanho do arquivo.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
- # Achar anotações
+def flatten_annotations(infile, outfile):
+ # Open document
+ document = ap.Document(infile)
+ # Flatten annotations
for page in document.pages:
for annotation in page.annotations:
annotation.flatten()
- # Salvar documento atualizado
- document.save(output_pdf)
+ # Save updated document
+ document.save(outfile)
```
-### Removendo Campos de Formulário
+### Removendo FormFields
-Se o documento PDF contiver AcroForms, podemos tentar reduzir o tamanho do arquivo achatando os campos do formulário.
+Se o documento PDF contiver AcroForms, podemos tentar reduzir o tamanho do arquivo achatando os campos de formulário.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Carregar formulário PDF de origem
- doc = ap.Document(input_pdf)
+def flatten_forms(infile, outfile):
+ # Load source PDF form
+ doc = ap.Document(infile)
- # Achar Formulários
+ # Flatten Forms
if len(doc.form.fields) > 0:
for item in doc.form.fields:
item.flatten()
- # Salvar o documento atualizado
- doc.save(output_pdf)
+ # Save the updated document
+ doc.save(outfile)
+ file_stats_1 = stat(infile)
+ file_stats_2 = stat(outfile)
+ print(
+ "Original file size: {}. Reduced file size: {}".format(
+ file_stats_1.st_size, file_stats_2.st_size
+ )
+ )
```
-### Converter um PDF de espaço de cor RGB para escala de cinza
+### Converter um PDF do espaço de cores RGB para escala de cinza
-Um arquivo PDF é composto por Texto, Imagem, Anexo, Anotações, Gráficos e outros objetos. Pode surgir a necessidade de converter um PDF de espaço de cor RGB para escala de cinza para que a impressão desses arquivos PDF seja mais rápida. Além disso, quando o arquivo é convertido para escala de cinza, o tamanho do documento também é reduzido, mas isso pode causar uma diminuição na qualidade do documento. Este recurso é atualmente suportado pelo recurso Pre-Flight do Adobe Acrobat, mas quando falamos de automação de escritório, o Aspose.PDF é uma solução definitiva para fornecer tais vantagens para manipulações de documentos. Para realizar essa tarefa, o seguinte trecho de código pode ser usado.
+Um arquivo PDF é composto por Texto, Imagem, Anexo, Anotações, Gráficos e outros objetos. Você pode se deparar com a necessidade de converter um PDF do espaço de cores RGB para escala de cinza, de modo que a impressão desses arquivos PDF seja mais rápida. Além disso, quando o arquivo é convertido para escala de cinza, o tamanho do documento também é reduzido, mas isso pode também causar uma diminuição na qualidade do documento. Esse recurso é atualmente suportado pelo recurso Pre-Flight do Adobe Acrobat, mas ao falar de automação de Office, Aspose.PDF é uma solução definitiva para fornecer tais vantagens para manipulação de documentos. Para atender a essa necessidade, o seguinte trecho de código pode ser usado.
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
- import aspose.pdf as ap
- # Carregar o arquivo PDF de origem
- document = ap.Document(input_pdf)
+def сonvert_PDF_from_RGB_colorspace_to_grayscale(infile, outfile):
+ document = ap.Document(infile)
strategy = ap.RgbToDeviceGrayConversionStrategy()
for page in document.pages:
- # Converter a imagem do espaço de cor RGB para o espaço de cor em escala de cinza
+ # Convert the RGB colorspace image to GrayScale colorspace
strategy.convert(page)
- # Salvar o arquivo resultante
- document.save(output_pdf)
+ # Save resultant file
+ document.save(outfile)
```
-
### Compressão FlateDecode
-Aspose.PDF para Python via .NET oferece suporte à compressão FlateDecode para a funcionalidade de Otimização de PDF. O trecho de código abaixo mostra como usar a opção de Otimização para armazenar imagens com compressão **FlateDecode**:
+Aspose.PDF for Python via .NET fornece suporte à compressão FlateDecode para a funcionalidade de Otimização de PDF. O trecho de código a seguir demonstra como usar a opção em Otimização para armazenar imagens com compressão **FlateDecode**:
```python
+import aspose.pdf as ap
+from os import path, stat
+import sys
+
- import aspose.pdf as ap
+def using_flatedecode_compression(infile, outfile):
- # Abrir Documento
- doc = ap.Document(input_pdf)
- # Inicializar OptimizationOptions
+ # Open Document
+ doc = ap.Document(infile)
+ # Initialize OptimizationOptions
optimizationOptions = ap.optimization.OptimizationOptions()
- # Para otimizar imagem usando Compressão FlateDecode, definir opções de otimização para Flate
- optimizationOptions.image_compression_options.encoding = ap.optimization.ImageEncoding.FLATE
- # Definir Opções de Otimização
+ # To optimise image using FlateDecode Compression set optimization options to Flate
+ optimizationOptions.image_compression_options.encoding = (
+ ap.optimization.ImageEncoding.FLATE
+ )
+ # Set Optimization Options
doc.optimize_resources(optimizationOptions)
- # Salvar Documento
- doc.save(output_pdf)
+ # Save Document
+ doc.save(outfile)
```
-
\ No newline at end of file
+## Tópicos Relacionados ao Documento
+
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Mesclar arquivos PDF em Python](/pdf/pt/python-net/merge-pdf-documents/)
+- [Dividir arquivos PDF em Python](/pdf/pt/python-net/split-document/)
+- [Manipular documentos PDF em Python](/pdf/pt/python-net/manipulate-pdf-document/)
+
diff --git a/pt/python-net/advanced-operations/working-with-documents/split-pdf/_index.md b/pt/python-net/advanced-operations/working-with-documents/split-pdf/_index.md
index 5ad98fbbd3..62008e0dba 100644
--- a/pt/python-net/advanced-operations/working-with-documents/split-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-documents/split-pdf/_index.md
@@ -1,178 +1,372 @@
---
-title: Dividir PDF programaticamente em Python
+title: Dividir arquivos PDF em Python
linktitle: Dividir arquivos PDF
type: docs
weight: 60
url: /pt/python-net/split-pdf-document/
-description: Este tópico mostra como dividir páginas de PDF em arquivos PDF individuais em suas aplicações Python.
-lastmod: "2023-04-17"
+description: Aprenda como dividir páginas de PDF em arquivos PDF separados em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dividindo páginas de PDF usando Python
+Abstract: O artigo discute o processo de dividir páginas de PDF em arquivos individuais usando Python, destacando a utilidade desse recurso para gerenciar documentos PDF grandes. Ele faz referência ao Aspose.PDF Splitter, uma ferramenta online projetada para demonstrar a funcionalidade de divisão de PDFs. O artigo fornece um método detalhado para alcançar isso em aplicações Python, envolvendo a iteração pelas páginas de um documento PDF através da `PageCollection` do objeto `Document`. Para cada página, um novo objeto `Document` é criado, a página é adicionada a ele e o novo arquivo PDF é salvo usando o método `save()`. Um trecho de código Python acompanhante ilustra esse processo, mostrando as etapas necessárias para dividir um documento PDF em arquivos separados ao iterar pelas suas páginas e salvar cada uma como um PDF individual.
---
-
-
-
-Dividir páginas de PDF pode ser um recurso útil para aqueles que desejam dividir um arquivo grande em páginas separadas ou grupos de páginas.
-
-## Exemplo Ao Vivo
-
-[Aspose.PDF Splitter](https://products.aspose.app/pdf/splitter) é uma aplicação web gratuita que permite investigar como a funcionalidade de divisão de apresentação funciona.
-
-[](https://products.aspose.app/pdf/splitter)
-
-Este tópico mostra como dividir páginas de PDF em arquivos PDF individuais em suas aplicações Python. Para dividir páginas de PDF em arquivos PDF de uma única página usando Python, os seguintes passos podem ser seguidos:
-
-1. Percorra as páginas do documento PDF através da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
-1. Para cada iteração, crie um novo objeto Document e adicione o objeto [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) individual no documento vazio
-
-1. Salve o novo PDF usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods)
-
-## Dividir PDF em vários arquivos ou pdfs separados em Python
-
-O seguinte trecho de código Python mostra como dividir páginas de PDF em arquivos PDF individuais.
+
+Dividir páginas de PDF pode ser um recurso útil para quem deseja dividir um arquivo grande em páginas individuais ou grupos de páginas.
+
+Use este fluxo de trabalho quando precisar dividir PDFs grandes em arquivos de uma única página ou em conjuntos de documentos menores para distribuição, revisão ou processamento subsequente.
+
+## Exemplo ao vivo
+
+[Aspose.PDF Splitter](https://products.aspose.app/pdf/splitter) é um aplicativo web gratuito online que permite investigar como a funcionalidade de divisão de apresentação funciona.
+
+[](https://products.aspose.app/pdf/splitter)
+
+Este tópico mostra como dividir páginas PDF em arquivos PDF individuais em seus aplicativos Python. Para dividir páginas PDF em arquivos PDF de página única usando Python, os seguintes passos podem ser seguidos:
+
+1. Percorra as páginas do documento PDF através do [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) do objeto [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) coleção
+1. Para cada iteração, crie um novo objeto Document e adicione o individual [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) objeto no documento vazio
+1. Salvar o novo PDF usando [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método
+
+## Divida PDF em vários arquivos ou PDFs separados em Python
+
+O trecho de código Python a seguir mostra como dividir páginas de PDF em arquivos PDF individuais.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents(infile, outdir):
+ document = ap.Document(infile)
+ for page_num in range(1, len(document.pages) + 1):
+ with ap.Document() as new_document:
+ new_document.pages.add(document.pages[page_num])
+ new_document.save(path.join(outdir, f"Page_{page_num}.pdf"))
+```
+
+## Divida um PDF em duas partes iguais
+
+1. Carregue o documento PDF.
+1. Determine o número total de páginas.
+1. Calcule o ponto médio.
+1. Crie o primeiro documento de saída.
+1. Remover as páginas da segunda metade do primeiro documento.
+1. Salve a primeira parte.
+1. Crie o segundo documento de saída.
+1. Remover as páginas da primeira metade do segundo documento.
+1. Salvar a segunda parte.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_into_two_parts(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+ mid_point = total_pages // 2
+
+ # First part
+ with ap.Document(infile) as first_document:
+ first_part_range = range(mid_point + 1, total_pages + 1)
+ first_document.pages.delete(first_part_range)
+ first_document.save(path.join(outdir, "Part_1.pdf"))
+
+ # Second part
+ with ap.Document(infile) as second_document:
+ second_part_range = range(1, mid_point + 1)
+ second_document.pages.delete(second_part_range)
+ second_document.save(path.join(outdir, "Part_2.pdf"))
+```
+
+## Dividir um PDF em vários arquivos a cada N páginas
+
+Divida um documento PDF em vários arquivos menores com base em um número fixo de páginas usando Aspose.PDF for Python.
+
+1. Carregue o documento PDF.
+1. Determine o número total de páginas.
+1. Definir páginas por parte.
+1. Iterar pelo documento em blocos.
+1. Calcule o intervalo de páginas para cada parte.
+1. Crie um novo documento para cada parte.
+1. Copie páginas para o novo documento.
+1. Salvar o documento dividido.
+1. Repita até que todas as páginas sejam processadas.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_pdf)
+def split_documents_every_n_pages(infile, outdir, pages_per_part=3):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
- page_count = 1
+ part_index = 1
+ for start_page in range(1, total_pages + 1, pages_per_part):
+ end_page = min(start_page + pages_per_part - 1, total_pages)
- # Percorrer todas as páginas
- for pdfPage in document.pages:
- new_document = ap.Document()
- new_document.pages.add(pdfPage)
- new_document.save(output_path + "_page_" + str(page_count) + ".pdf")
- page_count = page_count + 1
+ with ap.Document() as part_document:
+ for page_num in range(start_page, end_page + 1):
+ part_document.pages.add(document.pages[page_num])
+ part_document.save(
+ path.join(outdir, f"Every_{pages_per_part}_Part_{part_index}.pdf")
+ )
+
+ part_index += 1
+```
+
+## Dividir um PDF por intervalos de páginas personalizados
+
+Divida um documento PDF em vários arquivos com base em intervalos de páginas definidos de forma personalizada usando Aspose.PDF for Python.
+
+1. Carregue o documento PDF.
+1. Determine o número total de páginas.
+1. Crie uma lista de tuplas representando intervalos (start_page, end_page).
+1. Iterar pelos intervalos definidos.
+1. Validar a página inicial.
+1. Ajuste a página final.
+1. Valide o intervalo efetivo.
+1. Crie um novo documento para cada intervalo.
+1. Copie páginas para o novo documento.
+1. Salve cada documento dividido.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_by_page_ranges(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+ # Define ranges as (start_page, end_page). Use None to indicate last page.
+ ranges = [(1, 3), (4, 6), (7, None)]
+
+ for index, (start_page, end_page) in enumerate(ranges, start=1):
+ if start_page > total_pages:
+ continue
+
+ effective_end = total_pages if end_page is None else min(end_page, total_pages)
+ if start_page > effective_end:
+ continue
+
+ with ap.Document() as range_document:
+ for page_num in range(start_page, effective_end + 1):
+ range_document.pages.add(document.pages[page_num])
+ range_document.save(
+ path.join(outdir, f"Range_{index}_{start_page}_to_{effective_end}.pdf")
+ )
+```
+
+## Divida um PDF em Primeira Página e Páginas Restantes
+
+Separe a primeira página de um documento PDF do restante das páginas usando Aspose.PDF for Python.
+
+1. Carregue o documento PDF.
+1. Determine o número total de páginas.
+1. Verifique se o documento está vazio.
+1. Crie um documento para a primeira página.
+1. Adicionar a primeira página.
+1. Salvar o documento da primeira página.
+1. Verifique se há páginas adicionais.
+1. Crie um documento para as páginas restantes.
+1. Copiar páginas restantes.
+1. Salvar o documento das páginas restantes.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_first_page_and_rest(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ if total_pages == 0:
+ return
+
+ with ap.Document() as first_page_document:
+ first_page_document.pages.add(document.pages[1])
+ first_page_document.save(path.join(outdir, "First_Page.pdf"))
+
+ if total_pages == 1:
+ return
+
+ with ap.Document() as remaining_pages_document:
+ for page_num in range(2, total_pages + 1):
+ remaining_pages_document.pages.add(document.pages[page_num])
+ remaining_pages_document.save(path.join(outdir, "Remaining_Pages.pdf"))
```
-
\ No newline at end of file
+## Divida um PDF em Última Página e Páginas Anteriores
+
+Extraia a última página de um documento PDF e separe-a das páginas restantes usando Aspose.PDF for Python.
+
+1. Carregue o documento PDF.
+1. Determine o número total de páginas.
+1. Verifique se o documento está vazio.
+1. Crie um documento para a última página.
+1. Adicionar a última página.
+1. Salvar o documento da última página.
+1. Verificar documentos de página única.
+1. Remova a última página do documento original.
+1. Salvar as páginas restantes.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_last_page_and_rest(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ if total_pages == 0:
+ return
+
+ with ap.Document() as last_page_document:
+ last_page_document.pages.add(document.pages[total_pages])
+ last_page_document.save(path.join(outdir, "Last_Page.pdf"))
+
+ if total_pages == 1:
+ return
+
+ document.pages.delete(total_pages) # Remove last page from original document
+ document.save(path.join(outdir, "Previous_Pages.pdf"))
+```
+
+## Dividir um PDF em três partes
+
+Divida um documento PDF em três partes separadas usando o Aspose.PDF for Python.
+
+1. Carregue o documento PDF.
+1. Determine o número total de páginas.
+1. Verifique se o documento está vazio.
+1. Calcule o tamanho da parte.
+1. Iterar através de três partes.
+1. Determine o intervalo de páginas para cada parte.
+1. Validar o intervalo de páginas.
+1. Crie um novo documento para cada parte.
+1. Copiar páginas para o documento da parte.
+1. Salvar cada parte.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_into_three_parts(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ if total_pages == 0:
+ return
+
+ part_size = max(1, (total_pages + 2) // 3)
+
+ for part_index in range(3):
+ start_page = part_index * part_size + 1
+ end_page = min((part_index + 1) * part_size, total_pages)
+
+ if start_page > total_pages:
+ break
+
+ with ap.Document() as part_document:
+ for page_num in range(start_page, end_page + 1):
+ part_document.pages.add(document.pages[page_num])
+ part_document.save(path.join(outdir, f"Three_Parts_{part_index + 1}.pdf"))
+```
+
+## Divisor de Página PDF Personalizado
+
+Divida um documento PDF em vários arquivos com base em grupos de páginas definidos customizados usando Aspose.PDF for Python.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_custom_page_groups(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+ groups = [
+ [1, 2, 5],
+ [3, 4, 6, 7],
+ ]
+
+ for group_index, group in enumerate(groups, start=1):
+ valid_pages = [page_num for page_num in group if 1 <= page_num <= total_pages]
+ if not valid_pages:
+ continue
+
+ with ap.Document() as group_document:
+ for page_num in valid_pages:
+ group_document.pages.add(document.pages[page_num])
+ group_document.save(path.join(outdir, f"Custom_Group_{group_index}.pdf"))
+```
+
+## Dividir PDF em Páginas Individuais com Nomes de Arquivo Estáveis
+
+Divida um documento PDF em páginas individuais e salve-as com nomes de arquivo estáveis usando o Aspose.PDF para Python.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_with_stable_filenames(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ for page_num in range(1, total_pages + 1):
+ with ap.Document() as new_document:
+ new_document.pages.add(document.pages[page_num])
+ new_document.save(path.join(outdir, f"Page_{page_num:03d}.pdf"))
+```
+
+## Dividir PDF em Páginas Ímpares e Pares
+
+Divida um documento PDF em dois arquivos separados contendo, respectivamente, páginas ímpares e pares, usando Aspose.PDF for Python.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+
+def split_documents_odd_even_pages(infile, outdir):
+ document = ap.Document(infile)
+ total_pages = len(document.pages)
+
+ # Odd pages document
+ with ap.Document(infile) as document:
+ with ap.Document() as odd_document:
+ for page_num in range(1, total_pages + 1, 2):
+ odd_document.pages.add(document.pages[page_num])
+ odd_document.save(path.join(outdir, "Odd_Pages.pdf"))
+
+ with ap.Document() as even_document:
+ for page_num in range(2, total_pages + 1, 2):
+ even_document.pages.add(document.pages[page_num])
+ even_document.save(path.join(outdir, "Even_Pages.pdf"))
+```
+
+## Tópicos Relacionados ao Documento
+
+- [Trabalhe com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Mesclar arquivos PDF em Python](/pdf/pt/python-net/merge-pdf-documents/)
+- [Otimizar arquivos PDF em Python](/pdf/pt/python-net/optimize-pdf/)
+- [Manipular documentos PDF em Python](/pdf/pt/python-net/manipulate-pdf-document/)
+
diff --git a/pt/python-net/advanced-operations/working-with-documents/split-pdf/splitter.png b/pt/python-net/advanced-operations/working-with-documents/split-pdf/splitter.png
new file mode 100644
index 0000000000..ede55d9927
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-documents/split-pdf/splitter.png differ
diff --git a/pt/python-net/advanced-operations/working-with-documents/working-with-headings/_index.md b/pt/python-net/advanced-operations/working-with-documents/working-with-headings/_index.md
deleted file mode 100644
index 16a80c8f05..0000000000
--- a/pt/python-net/advanced-operations/working-with-documents/working-with-headings/_index.md
+++ /dev/null
@@ -1,218 +0,0 @@
----
-title: Trabalhando com Títulos em PDF
-type: docs
-weight: 40
-url: /pt/python-net/working-with-headings/
-description: Crie numeração no título do seu documento PDF com Python. Aspose.PDF para Python via .NET oferece diferentes tipos de estilos de numeração.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Aplicar Estilo de Numeração em Cabeçalhos
-
-Cabeçalhos são partes importantes de qualquer documento. Os escritores sempre tentam tornar os cabeçalhos mais proeminentes e significativos para seus leitores. Se houver mais de um cabeçalho em um documento, um escritor tem várias opções para organizar esses cabeçalhos. Uma das abordagens mais comuns para organizar cabeçalhos é escrever cabeçalhos no Estilo de Numeração.
-
-[Aspose.PDF para Python via .NET](/pdf/pt/python-net/) oferece muitos estilos de numeração predefinidos. Esses estilos de numeração predefinidos são armazenados em uma enumeração, [NumberingStyle](https://reference.aspose.com/pdf/python-net/aspose.pdf/numberingstyle/). Os valores predefinidos da enumeração NumberingStyle e suas descrições são apresentados abaixo:
-
-|**Tipos de Cabeçalhos**|**Descrição**|
-| :- | :- |
-|NumeralsArabic|Tipo árabe, por exemplo, 1,1.1,...|
-|NumeralsRomanUppercase|Tipo romano maiúsculo, por exemplo, I,I.II, ...|
-|NumeralsRomanLowercase|Tipo romano minúsculo, por exemplo, i,i.ii, ...|
-|LettersUppercase|Tipo inglês maiúsculo, por exemplo, A,A.B, ...|
-
-|LettersLowercase|Tipo inglês minúsculo, por exemplo, a,a.b, ...|
-A propriedade [style](https://reference.aspose.com/pdf/python-net/aspose.pdf/heading/#properties) da classe [Heading](https://reference.aspose.com/pdf/python-net/aspose.pdf/heading/) é usada para definir os estilos de numeração dos cabeçalhos.
-
-|**Figura: Estilos de numeração predefinidos**|
-| :- |
-O código-fonte, para obter a saída mostrada na figura acima, é fornecido abaixo no exemplo.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- document.page_info.width = 612.0
- document.page_info.height = 792.0
- document.page_info.margin = ap.MarginInfo()
- document.page_info.margin.left = 72
- document.page_info.margin.right = 72
- document.page_info.margin.top = 72
- document.page_info.margin.bottom = 72
-
- page = document.pages.add()
- page.page_info.width = 612.0
- page.page_info.height = 792.0
- page.page_info.margin = ap.MarginInfo()
- page.page_info.margin.left = 72
- page.page_info.margin.right = 72
- page.page_info.margin.top = 72
- page.page_info.margin.bottom = 72
-
- float_box = ap.FloatingBox()
- float_box.margin = page.page_info.margin
-
- page.paragraphs.add(float_box)
-
- heading = ap.Heading(1)
- heading.is_in_list = True
- heading.start_number = 1
- heading.text = "Lista 1"
- heading.style = ap.NumberingStyle.NUMERALS_ROMAN_LOWERCASE
- heading.is_auto_sequence = True
-
- float_box.paragraphs.add(heading)
-
- heading2 = ap.Heading(1)
- heading2.is_in_list = True
- heading2.start_number = 13
- heading2.text = "Lista 2"
- heading2.style = ap.NumberingStyle.NUMERALS_ROMAN_LOWERCASE
- heading2.is_auto_sequence = True
-
- float_box.paragraphs.add(heading2)
-
- heading3 = ap.Heading(2)
- heading3.is_in_list = True
- heading3.start_number = 1
- heading3.text = "o valor, na data efetiva do plano, da propriedade a ser distribuída sob o plano em relação a cada permitido"
- heading3.style = ap.NumberingStyle.LETTERS_LOWERCASE
- heading3.is_auto_sequence = True
-
- float_box.paragraphs.add(heading3)
- document.save(output_pdf)
-```
-
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-forms/_index.md b/pt/python-net/advanced-operations/working-with-forms/_index.md
index 666c77cc0c..4332c807c8 100644
--- a/pt/python-net/advanced-operations/working-with-forms/_index.md
+++ b/pt/python-net/advanced-operations/working-with-forms/_index.md
@@ -4,81 +4,19 @@ linktitle: Trabalhando com Formulários
type: docs
weight: 60
url: /pt/python-net/working-with-forms/
-description: Esta seção descreve como trabalhar com AcroForms em documentos PDF com Aspose.PDF. para Python via .NET.
-lastmod: "2023-02-17"
+description: Esta seção descreve como trabalhar com AcroForms em documentos PDF com Aspose.PDF para Python via .NET.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como trabalhar com Formulários usando Python
+Abstract: Este artigo descreve um método simples para concluir programaticamente documentos PDF usando a Biblioteca Aspose.PDF for Python via .NET. Destaca o processo de utilizar a biblioteca para identificar e mapear campos em PDFs existentes que utilizam AcroForms. AcroForms são formulários eletrônicos que permitem aos usuários preencher, enviar e armazenar informações de forma eficiente, servindo como uma ferramenta conveniente para coleta de dados. Além disso, o artigo oferece insights sobre a criação de formulários, preenchimento de campos de formulário, extração de dados e gerenciamento de campos em PDFs usando a biblioteca Python.
---
-
-
-Esta seção descreve uma abordagem rápida e simples para completar programaticamente um documento PDF através do uso da Aspose.PDF para Python via .NET Library. A seção também discute como se pode usar a Aspose.PDF para Python para descobrir e mapear os campos disponíveis dentro de um PDF existente com AcroForms.
+Esta seção descreve uma abordagem rápida e simples para concluir programaticamente um documento PDF usando a Biblioteca Aspose.PDF for Python via .NET. A seção também discute como alguém pode usar o Aspose.PDF for Python para descobrir e mapear os campos disponíveis em um PDF existente com AcroForms.
AcroForms permite que os usuários preencham, enviem e armazenem os formulários eletronicamente, tornando-os uma maneira conveniente e eficiente de coletar informações.
-- [AcroForms](/pdf/pt/python-net/acroforms/) - criar formulário, preencher campo de formulário, extrair dados do formulário, adicionar e remover campos em seu PDF com a biblioteca Python.
\ No newline at end of file
+- [AcroForms](/pdf/pt/python-net/acroforms/) - criar formulário, preencher campo de formulário, extrair dados do formulário, adicionar e remover campos no seu PDF com a biblioteca Python.
+- [Formulários XFA](/pdf/pt/python-net/xfa-forms/) - converter XFA, uso de IgnoreNeedsRendering.
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/_index.md
index be2cac0542..d9707e68e1 100644
--- a/pt/python-net/advanced-operations/working-with-forms/acroforms/_index.md
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/_index.md
@@ -4,155 +4,30 @@ linktitle: AcroForms
type: docs
weight: 10
url: /pt/python-net/acroforms/
-description: Com Aspose.PDF para Python, você pode criar um formulário do zero, preencher o campo do formulário em um documento PDF, extrair dados do formulário, etc.
-lastmod: "2023-02-17"
+description: Aprenda como criar, preencher, extrair, importar, exportar e gerenciar campos AcroForm em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Guia para trabalhar com AcroForms em Python
+Abstract: Esta seção apresenta os AcroForms e explica como trabalhar com formulários PDF interativos usando Aspose.PDF for Python via .NET. Ela cobre fluxos de trabalho principais, como criar formulários, preencher campos, extrair valores, importar e exportar dados de formulário, e modificar ou remover campos de formulário. Esses tutoriais ajudam a criar pipelines práticos de processamento de formulários para cenários de automação de documentos.
---
-
-
## Fundamentos dos AcroForms
-**AcroForms** - tecnologia de formulário PDF única da Adobe. AcroForms é um formulário orientado por página. Eles apareceram pela primeira vez em 1998. Eles aceitam entrada no formato de Dados ou FDF e formato de Dados XML ou xFDF. Fornecedores terceiros suportam AcroForms. Quando a Adobe introduziu os AcroForms, eles os chamaram de "formulário PDF, que é o autor do Adobe Acrobat Pro/Standard e não é um tipo especial de formulário XFA estático ou dinâmico. AcroForms são portáteis e funcionam em todas as plataformas.
-
-Você pode usar AcroForms para adicionar páginas adicionais ao documento de formulário PDF. Graças ao conceito de Templates, você pode usar AcroForms para apoiar o preenchimento do formulário com múltiplos registros de banco de dados.
-
-O PDF 1.7 suporta dois métodos diferentes para integrar dados e formulários PDF.
+AcroForms são formulários PDF interativos e orientados por página introduzidos pela Adobe e incluídos na especificação PDF desde a versão 1.2. Eles são amplamente suportados e podem ser usados para captura de dados, validação e troca em fluxos de trabalho multiplataforma.
-*AcroForms (também conhecidos como formulários Acrobat)*, introduzidos e incluídos na especificação do formato PDF 1.2.
+Em fluxos de trabalho baseados em AcroForm, os dados do formulário podem ser trocados em formatos como FDF e XFDF. Isso torna os AcroForms adequados para cenários em que você precisa pré-preencher campos a partir de sistemas externos, extrair valores enviados ou sincronizar dados de formulário entre documentos.
-Para um aprendizado mais detalhado das capacidades da biblioteca Java, veja os seguintes artigos:
+Aspose.PDF for Python via .NET oferece APIs para criar e gerenciar AcroForms programaticamente, incluindo preenchimento de campos, exportação de dados, modificação da estrutura do formulário e adição de ações de envio.
-- [Criar AcroForm](/pdf/pt/python-net/create-form) - criar formulário do zero com Python.
-- [Preencher AcroForm](/pdf/pt/python-net/fill-form) - preencher campo de formulário no seu documento PDF.
-- [Extrair AcroForm](/pdf/pt/python-net/extract-form) - obter valor de todos ou de um campo individual do documento PDF.
+Para exemplos práticos, consulte os artigos a seguir:
-
\ No newline at end of file
+- [Criar AcroForm](/pdf/pt/python-net/create-form/) - criar um formulário do zero.
+- [Preencher AcroForm](/pdf/pt/python-net/fill-form/) - preencher campos de formulário em um documento PDF.
+- [Extrair AcroForm](/pdf/pt/python-net/extract-form/) - extrair valores de todos os campos ou de um campo específico.
+- [Importar e Exportar Dados de Formulário](/pdf/pt/python-net/import-export-form-data/) - importar e exportar dados de formulário em formatos comuns.
+- [Modificando AcroForm](/pdf/pt/python-net/modifying-form/) - modificar propriedades dos campos AcroForm.
+- [Excluir Formulários do PDF](/pdf/pt/python-net/remove-form/) - remover campos de formulário de um documento PDF.
+- [Publicar Formulários](/pdf/pt/python-net/posting-form/) - adicionar funcionalidade de envio a um formulário PDF.
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md
index 687aa7b87b..1fa6c22462 100644
--- a/pt/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/create-form/_index.md
@@ -1,184 +1,255 @@
---
-title: Create AcroForm - Criar PDF Preenchível em Python
-linktitle: Create AcroForm
+title: Criar AcroForm - Criar PDF preenchível em Python
+linktitle: Criar AcroForm
type: docs
weight: 10
url: /pt/python-net/create-form/
-description: Com Aspose.PDF para Python você pode criar um formulário do zero em seu arquivo PDF
-lastmod: "2023-02-17"
+description: Crie campos AcroForm do zero em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como criar AcroForm em PDF usando Python
+Abstract: Este artigo explica como criar campos AcroForm em documentos PDF usando o Aspose.PDF for Python via .NET. Ele abrange a criação básica de campos com TextBoxField, a personalização da aparência de caixas de texto com múltiplos widgets e tipos de campo adicionais, como botões de opção, caixas de combinação, caixas de seleção, caixas de lista, campos de assinatura e campos de código de barras. Esses exemplos ajudam a criar formulários PDF interativos para coleta de dados e fluxos de trabalho de automação de documentos.
---
-
-
-
-## Criar formulário do zero
+
+## Criar Form a partir do zero
### Adicionar Campo de Formulário em um Documento PDF
-A classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) fornece uma coleção chamada [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) que ajuda a gerenciar campos de formulário em um documento PDF.
+O [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) a classe fornece uma coleção chamada [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) que ajuda a gerenciar campos de formulário em um documento PDF.
Para adicionar um campo de formulário:
-1. Crie o campo de formulário que deseja adicionar.
-1. Chame o método [add](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/#methods) da coleção Form.
+1. Crie o campo de formulário que você deseja adicionar.
+1. Chame a coleção Form [add](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/#methods) método.
### Adicionando TextBoxField
-O exemplo abaixo mostra como adicionar um [TextBoxField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/).
+O exemplo a seguir mostra como adicionar um [TextBoxField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/).
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_text_box_field(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ rectangle = ap.Rectangle(10, 600, 110, 620, True)
+ text_box_field = ap.forms.TextBoxField(page, rectangle)
+ text_box_field.partial_name = "textbox1"
+ text_box_field.value = "Text Box"
+
+ text_box_field.default_appearance = ap.annotations.DefaultAppearance(
+ "Arial", 10, drawing.Color.dark_blue
+ )
+
+ border = ap.annotations.Border(text_box_field)
+ border.width = 1
+ border.style = ap.annotations.BorderStyle.DASHED
+ border.dash = ap.annotations.Dash(3, 3)
+ text_box_field.border = border
+
+ text_box_field.characteristics.border = ap.Color.red.to_rgb()
+ text_box_field.characteristics.background = ap.Color.yellow.to_rgb()
+
+ document.form.add(text_box_field, 1)
+ document.save(output_file_name)
+```
+
+### Campo de Caixa de Texto Multi-Widget em PDF
+
+Crie um campo de formulário de caixa de texto com várias aparências de widget em um PDF usando Python e Aspose.PDF. Ele coloca várias áreas de entrada de texto em uma página, aplica diferentes fontes e cores a cada widget, personaliza bordas e define o estilo de fundo para um formulário PDF interativo.
+
+1. Criar Novo Documento PDF.
+1. Definir posições dos campos de texto.
+1. Criar Aparências Padrão Diferentes.
+1. Criar Campo de Caixa de Texto.
+1. Aplicar Aparência a Cada Widget.
+1. Personalizar o estilo da borda.
+1. Adicionar campo ao Form.
+1. Salvar arquivo PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_text_box_field_nt(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ rects = [
+ ap.Rectangle(10, 600, 110, 620, normalize_coordinates=True),
+ ap.Rectangle(10, 630, 110, 650, normalize_coordinates=True),
+ ap.Rectangle(10, 660, 110, 680, normalize_coordinates=True),
+ ]
+
+ default_appearances = [
+ ap.annotations.DefaultAppearance("Arial", 10, drawing.Color.dark_blue),
+ ap.annotations.DefaultAppearance("Helvetica", 12, drawing.Color.dark_green),
+ ap.annotations.DefaultAppearance(
+ ap.text.FontRepository.find_font("Calibri"), 14, drawing.Color.dark_magenta
+ ),
+ ]
+
+ text_box_field = ap.forms.TextBoxField(page, rects)
+ text_box_field.partial_name = "textbox1"
+ text_box_field.value = "Some text"
+
+ for i, widget in enumerate(text_box_field):
+ widget.default_appearance = default_appearances[i]
+
+ border = ap.annotations.Border(text_box_field)
+ border.width = 1
+ border.style = ap.annotations.BorderStyle.DASHED
+ border.dash = ap.annotations.Dash(3, 3)
+ text_box_field.border = border
+
+ text_box_field.characteristics.border = ap.Color.red.to_rgb()
+ text_box_field.characteristics.background = ap.Color.yellow.to_rgb()
+
+ document.form.add(text_box_field)
+ document.save(output_file_name)
+```
+
+## Adicionando Outros Campos de Formulário
+
+Os trechos de código a seguir demonstram como adicionar vários tipos de campos, como botões de opção, caixas de combinação, caixas de seleção, caixas de lista, campos de assinatura e campos de código de barras. Cada função cria um novo documento PDF, adiciona um campo de destino com as opções selecionadas e salva o arquivo atualizado.
+
+1. Adicionar campo de Botão de Opção
+1. Adicionar Campo de Caixa de Combinação
+1. Adicionar campo de caixa de seleção
+1. Adicionar Campo de Lista
+1. Adicionar Campo de Assinatura
+1. Adicionar Campo de Código de Barras
+
+### Adicionar campo de Botão de Opção
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_radio_button(output_file_name):
+ document = ap.Document()
+ document.pages.add()
+
+ radio = ap.forms.RadioButtonField(document.pages[1])
+ radio.add_option(
+ "Option 1", ap.Rectangle(100, 640, 120, 680, normalize_coordinates=True)
+ )
+ radio.add_option(
+ "Option 2", ap.Rectangle(140, 640, 160, 680, normalize_coordinates=True)
+ )
+
+ document.form.add(radio)
+ document.save(output_file_name)
+```
+
+### Adicionar Campo de Caixa de Combinação
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_combo_box(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ combo = ap.forms.ComboBoxField(
+ page, ap.Rectangle(100, 640, 150, 656, normalize_coordinates=True)
+ )
+ combo.add_option("Red")
+ combo.add_option("Yellow")
+ combo.add_option("Green")
+ combo.add_option("Blue")
+ combo.selected = 3
+
+ document.form.add(combo)
+ document.save(output_file_name)
+```
+
+### Adicionar campo de caixa de seleção
```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
- import aspose.pdf as ap
+def add_checkbox_field_to_pdf(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
- # Abrir documento
- pdfDocument = ap.Document(input_file)
+ checkbox = ap.forms.CheckboxField(
+ page, ap.Rectangle(50, 620, 100, 650, normalize_coordinates=True)
+ )
+ checkbox.characteristics.background = ap.Color.aqua.to_rgb()
+ checkbox.style = ap.forms.BoxStyle.CIRCLE
- # Criar um campo
- textBoxField = ap.forms.TextBoxField(pdfDocument.pages[1], ap.Rectangle(100, 200, 300, 300, True))
- textBoxField.partial_name = "textbox1"
- textBoxField.value = "Caixa de Texto"
+ document.form.add(checkbox)
+ document.save(output_file_name)
+```
- border = ap.annotations.Border(textBoxField)
- border.width = 5
- border.dash = ap.annotations.Dash(1, 1)
- textBoxField.border = border
+### Adicionar Campo de Lista
- textBoxField.color = ap.Color.green
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_list_box_field_to_pdf(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ list_box = ap.forms.ListBoxField(
+ page, ap.Rectangle(50, 650, 100, 700, normalize_coordinates=True)
+ )
+ list_box.partial_name = "list"
+ list_box.add_option("Red")
+ list_box.add_option("Green")
+ list_box.add_option("Blue")
+
+ document.form.add(list_box)
+ document.save(output_file_name)
+```
- # Adicionar campo ao documento
- pdfDocument.form.add(textBoxField, 1)
+### Adicionar Campo de Assinatura
- # Salvar PDF modificado
- pdfDocument.save(output_pdf)
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_signature_field(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ signature_field = ap.forms.SignatureField(
+ page, ap.Rectangle(100, 700, 200, 800, True)
+ )
+ signature_field.partial_name = "Signature1"
+ document.form.add(signature_field)
+ document.save(output_file_name)
+```
+
+### Adicionar Campo de Código de Barras
+
+```python
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+
+def add_barcode_field(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ barcode = ap.forms.BarcodeField(page, ap.Rectangle(100, 700, 200, 740, True))
+ barcode.partial_name = "Barcode1"
+ barcode.add_barcode("1234567890")
+ document.form.add(barcode)
+ document.save(output_file_name)
```
+## Tópicos Relacionados
-
\ No newline at end of file
+- [Preencher AcroForm](/pdf/pt/python-net/fill-form/)
+- [Extrair AcroForm](/pdf/pt/python-net/extract-form/)
+- [Modificando AcroForm](/pdf/pt/python-net/modifying-form/)
+- [Importar e Exportar Dados de Formulário](/pdf/pt/python-net/import-export-form-data/)
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md
index 640b8aadc4..1a15207171 100644
--- a/pt/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/extract-form/_index.md
@@ -1,164 +1,53 @@
---
-title: Extrair AcroForm - Extrair Dados de Formulário de PDF em Python
+title: Extrair AcroForm - Extrair Dados de Form de PDF em Python
linktitle: Extrair AcroForm
type: docs
weight: 30
url: /pt/python-net/extract-form/
-description: Extraia o formulário do seu documento PDF com a biblioteca Aspose.PDF para Python. Obtenha o valor de um campo individual de um arquivo PDF.
-lastmod: "2023-02-17"
+description: Extrair valores dos campos AcroForm em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como obter Dados de Form de PDF usando Python
+Abstract: Este artigo mostra como extrair dados dos campos AcroForm em documentos PDF usando Aspose.PDF for Python via .NET. O exemplo itera pelos nomes dos campos Form, lê os valores usando a fachada Form, e retorna um dicionário para processamento posterior. Este fluxo de trabalho é útil para relatórios, validação e integração com sistemas externos.
---
-
+## Extrair Dados de Form
-## Extrair dados do formulário
+### Obter valores de todos os campos em um documento PDF
-### Obter Valores de todos os Campos do Documento PDF
+Para ler valores de todos os campos em um documento PDF, itere pelos nomes dos campos de formulário e recupere cada valor do [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) facade.
-Para obter valores de todos os campos em um documento PDF, você precisa navegar por todos os campos do formulário e então obter o valor usando a propriedade Value. Obtenha cada campo da coleção Form, no tipo de campo base chamado [Field](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/field/) e acesse sua propriedade [value](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/field/#properties).
+Use os passos a seguir:
-Os seguintes trechos de código Python mostram como obter os valores de todos os campos de um documento PDF.
+1. Vincular o PDF de entrada a um `Form` objeto.
+1. Iterar através de `field_names`.
+1. Leia cada valor com `get_field()`.
+1. Armazene valores em um dicionário.
+1. Retornar ou processar os valores extraídos.
+
+O trecho de código Python a seguir demonstra essa abordagem.
```python
+import aspose.pdf as ap
+
- import aspose.pdf as ap
+def get_values_from_all_fields(input_file_name):
+ form = ap.facades.Form(input_file_name)
- # Abrir documento
- pdfDocument = ap.Document(input_file)
+ form_values = {}
+ for field_name in form.field_names:
+ form_values[field_name] = form.get_field(field_name)
- # Obter valores de todos os campos
- for formField in pdfDocument.form.fields:
- # Analisar nomes e valores, se necessário
- print("Nome do Campo : " + formField.partial_name)
- print("Valor : " + str(formField.value))
+ print(form_values)
+ return form_values
```
-
\ No newline at end of file
+## Tópicos Relacionados
+
+- [Criar AcroForm](/pdf/pt/python-net/create-form/)
+- [Preencher AcroForm](/pdf/pt/python-net/fill-form/)
+- [Importar e Exportar Dados do Form](/pdf/pt/python-net/import-export-form-data/)
+- [Modificando AcroForm](/pdf/pt/python-net/modifying-form/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md
index 5afd22ad2c..321cd23641 100644
--- a/pt/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/fill-form/_index.md
@@ -4,161 +4,50 @@ linktitle: Preencher AcroForm
type: docs
weight: 20
url: /pt/python-net/fill-form/
-description: Você pode preencher formulários no seu documento PDF com a biblioteca Aspose.PDF para Python.
-lastmod: "2023-02-17"
+description: Preencher campos AcroForm em um PDF Document usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como preencher FormField em PDF usando Python
+Abstract: Este artigo explica como preencher campos AcroForm em um PDF Document usando Aspose.PDF for Python via .NET. O exemplo usa a fachada Form, mapeia nomes de campos para novos valores em um dicionário, atualiza os campos correspondentes e salva o PDF de saída. Essa abordagem é útil para fluxos de trabalho automatizados de conclusão de Document e processamento em massa de formulários.
---
-
+## Preencher FormField em um PDF Document
-## Preencher Campo de Formulário em um Documento PDF
+O exemplo a seguir preenche vários campos em um PDF Form existente usando o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada.
-Para preencher um campo de formulário, obtenha o campo da coleção [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) do objeto Documento. Em seguida, defina o valor do campo usando a propriedade [value](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/#properties) do campo.
+Use as etapas a seguir:
-Este exemplo seleciona um [TextBoxField](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/) e define seu valor usando a propriedade Value.
+1. Crie um dicionário com nomes de campos e valores.
+1. Associe o PDF de entrada a um objeto Form.
+1. Iterar pelos campos de formulário disponíveis.
+1. Preencher os campos que existem no dicionário.
+1. Salvar o PDF atualizado.
```python
+import aspose.pdf as ap
+
+def fill_form(input_file_name, output_file_name):
+ new_field_values = {
+ "First Name": "Alexander_New",
+ "Last Name": "Greenfield_New",
+ "City": "Yellowtown_New",
+ "Country": "Redland_New",
+ }
- import aspose.pdf as ap
+ form = ap.facades.Form(input_file_name)
- # Abrir documento
- pdfDocument = ap.Document(input_file)
- for formField in pdfDocument.form.fields:
- if formField.partial_name == "Field 1":
- # Modificar valor do campo
- formField.value = "777"
+ for field_name in form.field_names:
+ if field_name in new_field_values:
+ form.fill_field(field_name, new_field_values[field_name])
- # Salvar documento atualizado
- pdfDocument.save(output_pdf)
+ form.save(output_file_name)
```
+## Tópicos Relacionados
-
\ No newline at end of file
+- [Criar AcroForm](/pdf/pt/python-net/create-form/)
+- [Extrair AcroForm](/pdf/pt/python-net/extract-form/)
+- [Importar e Exportar Dados do Formulário](/pdf/pt/python-net/import-export-form-data/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/import-export-form-data/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/import-export-form-data/_index.md
new file mode 100644
index 0000000000..8f0141f793
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/import-export-form-data/_index.md
@@ -0,0 +1,226 @@
+---
+title: Importar e Exportar Dados de Formulário
+linktitle: Importar e Exportar Dados de Formulário
+type: docs
+weight: 80
+url: /pt/python-net/import-export-form-data/
+description: Importar e exportar dados de campo AcroForm em XML, FFD, XFDF e JSON usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Técnicas de importação e exportação usando Aspose.PDF for Python via .NET.
+Abstract: Esta compilação apresenta um conjunto abrangente de técnicas de importação e exportação de dados de formulário usando Aspose.PDF for Python via .NET. Ela cobre fluxos de trabalho para integrar formulários PDF com formatos de dados externos, incluindo XML, FDF, XFDF e JSON. Os usuários podem automatizar o preenchimento em massa de formulários ao importar dados estruturados em campos interativos, ou extrair valores de campo para análise, backup ou integração com outros sistemas. Os exemplos demonstram como vincular formulários PDF, transferir dados entre formatos e salvar documentos atualizados, permitindo um processamento de documentos escalável e consistente em diversas aplicações.
+---
+
+Esta página mostra fluxos de trabalho comuns para importar e exportar dados AcroForm com Aspose.PDF for Python via .NET. Todas as operações utilizam o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada.
+
+## Importar dados de campo de formulário do XML
+
+Use esta abordagem para preencher um formulário PDF com dados XML externos.
+
+1. Criar um `Form` objeto.
+1. Vincule o PDF de entrada.
+1. Abra o arquivo de dados XML.
+1. Importar dados XML para o formulário.
+1. Salvar o PDF atualizado.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def import_data_from_xml(input_file_name, data_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(data_file_name, "r") as f:
+ form.import_xml(f)
+
+ form.save(output_file_name)
+```
+
+## Exportar dados de campo de formulário para XML
+
+Este método exporta os valores dos campos de formulário de um documento PDF para XML.
+
+1. Criar um `Form` objeto.
+1. Vincule o PDF de entrada.
+1. Abra o arquivo de saída XML.
+1. Exportar dados do formulário para XML.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def export_data_to_xml(input_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+ with FileIO(output_file_name, "w") as f:
+ form.export_xml(f)
+```
+
+## Importar dados de campo de formulário do FDF
+
+O `import_data_from_fdf` método importa dados de campo de formulário de um arquivo FDF (Forms Data Format) para um formulário PDF.
+
+1. Criar um `Form` objeto.
+1. Vincule o PDF de entrada.
+1. Importe os dados do formulário com `import_fdf()`.
+1. Salvar o PDF atualizado.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def import_data_from_fdf(input_file_name, data_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(data_file_name, "r") as f:
+ form.import_fdf(f)
+ form.save(output_file_name)
+```
+
+## Exportar dados de FormField para FDF
+
+Este exemplo exporta os dados do formulário de um documento PDF para um arquivo FDF.
+
+1. Criar um `Form` objeto.
+1. Vincular o documento PDF.
+1. Exportar dados de formulário com `export_fdf()`.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def export_data_to_fdf(input_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(output_file_name, "w") as f:
+ form.export_fdf(f)
+```
+
+## Importar dados de campo de formulário do XFDF
+
+Use este método para importar dados de campos de formulário de um arquivo XFDF (XML Forms Data Format) para um formulário PDF.
+
+1. Criar um `Form` objeto.
+1. Vincule o PDF de entrada.
+1. Importar dados de formulário de um arquivo XFDF.
+1. Salvar o PDF atualizado.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def import_data_from_xfdf(input_file_name, data_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(data_file_name, "r") as f:
+ form.import_xfdf(f)
+ form.save(output_file_name)
+```
+
+## Exportar dados de campos de formulário para XFDF
+
+Este código exporta os dados dos campos de formulário de um documento PDF para um arquivo XFDF.
+
+1. Criar um `Form` objeto.
+1. Vincule o PDF de entrada.
+1. Exportar dados de formulário para XFDF.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def export_data_to_xfdf(input_file_name, output_file_name):
+ form = ap.facades.Form()
+ form.bind_pdf(input_file_name)
+
+ with FileIO(output_file_name, "w") as f:
+ form.export_xfdf(f)
+```
+
+## Importar dados de outro PDF
+
+Este exemplo transfere os dados de campos de formulário de um PDF de origem para um PDF de destino exportando XFDF para um fluxo em memória e importando-o para o formulário de destino.
+
+1. Criar origem e destino `Form` objetos.
+1. Vincule os PDFs de origem e destino.
+1. Exportar dados do formulário do PDF de origem.
+1. Importar dados de formulário para o PDF de destino.
+1. Salve o PDF de destino atualizado.
+
+```python
+from io import StringIO
+import aspose.pdf as ap
+
+def import_data_from_another_pdf(source_pdf_name, destination_pdf_name, output_file_name):
+ form_source = ap.facades.Form()
+ form_dest = ap.facades.Form()
+
+ form_source.bind_pdf(source_pdf_name)
+ form_dest.bind_pdf(destination_pdf_name)
+
+ with StringIO() as xfdf_stream:
+ form_source.export_xfdf(xfdf_stream)
+ xfdf_stream.seek(0)
+ form_dest.import_xfdf(xfdf_stream)
+
+ form_dest.save(output_file_name)
+```
+
+## Extrair campos de formulário para JSON
+
+Este método exporta campos de formulário para um arquivo JSON por meio de `export_json()`.
+
+1. Criar um `Form` objeto.
+1. Abra o arquivo de saída JSON.
+1. Exportar campos de formulário usando `export_json()`.
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def extract_form_fields_to_json(input_file_name, output_file_name):
+ form = ap.facades.Form(input_file_name)
+ with FileIO(output_file_name, "w") as json_file:
+ form.export_json(json_file, True)
+```
+
+## Extrair campos de formulário para documento JSON
+
+Este exemplo cria um documento JSON personalizado a partir dos nomes e valores dos campos de formulário.
+
+1. Crie um objeto Form a partir do arquivo de entrada.
+1. Inicialize um dicionário vazio para armazenar os dados dos campos de formulário.
+1. Itere por todos os campos de formulário e extraia seus valores.
+1. Serializar o dicionário de dados do formulário em uma string JSON com indentação de 4 espaços.
+1. Escreva a string JSON no arquivo de saída com codificação UTF-8.
+
+```python
+import json
+import aspose.pdf as ap
+
+def extract_form_fields_to_json_doc(input_file_name, output_file_name):
+ form = ap.facades.Form(input_file_name)
+ form_data = {}
+ for field_name in form.field_names:
+ form_data[field_name] = form.get_field(field_name)
+
+ json_string = json.dumps(form_data, indent=4)
+
+ with open(output_file_name, "w", encoding="utf-8") as json_file:
+ json_file.write(json_string)
+```
+
+## Tópicos Relacionados (abordagem Facades)
+
+- [Importar Dados XML](/pdf/pt/python-net/import-xml-data/)
+- [Importar Dados FDF](/pdf/pt/python-net/import-fdf-data/)
+- [Importar dados XFDF](/pdf/pt/python-net/import-xfdf-data/)
+- [Importar Dados JSON](/pdf/pt/python-net/import-json-data/)
+- [Exportar para XML](/pdf/pt/python-net/export-to-xml/)
+- [Exportar para FDF](/pdf/pt/python-net/export-to-fdf/)
+- [Exportar para XFDF](/pdf/pt/python-net/export-to-xfdf/)
+- [Exportar para JSON](/pdf/pt/python-net/export-to-json/)
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/modifying-form/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/modifying-form/_index.md
new file mode 100644
index 0000000000..231ff88789
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/modifying-form/_index.md
@@ -0,0 +1,139 @@
+---
+title: Modificando AcroForm
+linktitle: Modificando AcroForm
+type: docs
+weight: 45
+url: /pt/python-net/modifying-form/
+description: Modifique os campos AcroForm em documentos PDF usando Aspose.PDF for Python via .NET, incluindo limpar texto, definir limites, estilizar campos e remover campos.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciando e Personalizando Campos de Formulário PDF
+Abstract: Este artigo apresenta exemplos práticos para modificar campos AcroForm usando Aspose.PDF for Python via .NET. Ele aborda a limpeza de texto de conteúdo de formulário Typewriter, a definição e leitura de limites de caracteres de campos de texto, a aplicação de aparência de fonte personalizada e a remoção de campos por nome. Esses fluxos de trabalho dão suporte a tarefas comuns de manutenção de formulários em pipelines automatizados de processamento de PDF.
+---
+
+## Limpar Texto no Form
+
+Este exemplo demonstra como limpar texto de campos de formulário Typewriter em um PDF usando Aspose.PDF for Python via .NET. Ele varre a primeira página do PDF, identifica os formulários Typewriter, remove seu conteúdo e salva o documento atualizado. Essa abordagem é útil para redefinir ou sanitizar campos de formulário antes de redistribuir um PDF.
+
+1. Carregue o documento PDF de entrada.
+1. Acesse os formulários na primeira página.
+1. Itere sobre cada formulário e verifique se ele é um `Typewriter` formulário.
+1. Use TextFragmentAbsorber para encontrar fragmentos de texto no formulário.
+1. Limpe o texto de cada fragmento.
+1. Salve o PDF modificado no arquivo de saída.
+
+```python
+import aspose.pdf as ap
+
+
+def clear_text_in_form(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+
+ forms = document.pages[1].resources.forms
+
+ for form in forms:
+ if form.it == "Typewriter" and form.subtype == "Form":
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(form)
+
+ for fragment in absorber.text_fragments:
+ fragment.text = ""
+
+ document.save(output_file_name)
+```
+
+## Definir Limite de Campo
+
+Usar `set_field_limit(field, limit)` de `FormEditor` para definir o número máximo de caracteres permitidos em um campo de texto.
+
+1. Criar um `FormEditor` objeto.
+1. Vincule o PDF de entrada.
+1. Defina o limite de campo para um campo alvo.
+1. Salvar o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+
+
+def set_field_limit(input_file_name, output_file_name):
+ form = ap.facades.FormEditor()
+ form.bind_pdf(input_file_name)
+ form.set_field_limit("First Name", 15)
+ form.save(output_file_name)
+```
+
+## Obter limite do campo
+
+Você também pode ler o limite de caracteres de um campo de texto.
+
+1. Carregue o documento PDF.
+1. Acesse o campo de formulário de destino.
+1. Certifique-se de que o campo seja um `TextBoxField`.
+1. Ler e imprimir `max_len`.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+
+
+def get_field_limit(input_file_name):
+ document = ap.Document(input_file_name)
+ if is_assignable(document.form[1], ap.forms.TextBoxField):
+ text_box_field = cast(ap.forms.TextBoxField, document.form[1])
+ print(f"Limit: {text_box_field.max_len}")
+```
+
+## Definir Fonte Personalizada para o Campo de Formulário
+
+Este exemplo define uma aparência padrão personalizada para um campo de caixa de texto, incluindo fonte, tamanho e cor.
+
+1. Carregue o documento PDF.
+1. Acesse o campo de destino e verifique seu tipo.
+1. Encontre a fonte em `FontRepository`.
+1. Aplicar um novo `DefaultAppearance`.
+1. Salvar o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+
+
+def set_form_field_font(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ if is_assignable(document.form[1], ap.forms.TextBoxField):
+ text_box_field = cast(ap.forms.TextBoxField, document.form[1])
+ font = ap.text.FontRepository.find_font("Calibri")
+ text_box_field.default_appearance = ap.annotations.DefaultAppearance(
+ font, 10, ap.Color.black.to_rgb()
+ )
+
+ document.save(output_file_name)
+```
+
+## Remover Campos em um Formulário Existente
+
+Este código remove um campo de formulário específico (pelo nome) de um documento PDF e salva o arquivo atualizado usando Aspose.PDF for Python via .NET.
+
+1. Carregue o documento PDF.
+1. Excluir um campo de formulário pelo nome.
+1. Salvar o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+
+
+def delete_form_field(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ document.form.delete("First Name")
+ document.save(output_file_name)
+```
+
+## Tópicos Relacionados
+
+- [Criar AcroForm](/pdf/pt/python-net/create-form/)
+- [Preencher AcroForm](/pdf/pt/python-net/fill-form/)
+- [Extrair AcroForm](/pdf/pt/python-net/extract-form/)
+- [Importar e Exportar Dados de Formulário](/pdf/pt/python-net/import-export-form-data/)
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/posting-form/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/posting-form/_index.md
new file mode 100644
index 0000000000..ea66bd27fe
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/posting-form/_index.md
@@ -0,0 +1,76 @@
+---
+title: Publicando Formulários em PDF via Python
+linktitle: Publicando Formulários
+type: docs
+weight: 75
+url: /pt/python-net/posting-form/
+description: Adicione botões de envio e ações de submissão ao PDF AcroForms usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como Adicionar Botões de Envio e Ações de Submissão de Formulário a um PDF Usando Python
+Abstract: Este artigo mostra duas abordagens para adicionar funcionalidade de envio a formulários PDF usando Aspose.PDF for Python via .NET. Você pode adicionar um botão de envio pronto por meio do FormEditor ou criar um campo de botão personalizado com SubmitFormAction para controle avançado. Esses padrões ajudam a integrar formulários PDF com endpoints de processamento de formulários no lado do servidor.
+---
+
+## Adicionar Botão de Envio com FormEditor
+
+O trecho de código a seguir demonstra como adicionar um botão de envio a um formulário PDF usando a classe FormEditor no Aspose.PDF for Python via .NET. O botão está configurado para enviar os dados do formulário para um URL especificado ao ser clicado.
+
+1. Criar um `FormEditor` objeto.
+1. Adicionar um botão de envio à página de destino.
+1. Definir o URL de envio e as coordenadas do botão.
+1. Salvar o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+
+def add_submit_button(input_file_name, output_file_name):
+ editor = ap.facades.FormEditor(input_file_name, output_file_name)
+ editor.add_submit_btn(
+ "submitbutton", 1, "Submit", "http://localhost/testing/show", 100, 450, 150, 475
+ )
+ editor.save()
+```
+
+## Adicionar Ação de Envio Personalizada
+
+O trecho de código a seguir explica como criar um botão de envio personalizado em um formulário PDF usando Aspose.PDF for Python via .NET. O botão está configurado para enviar os dados do formulário para uma URL especificada ao ser clicado.
+
+1. Abra o PDF com ap.Document().
+1. Crie uma ação de envio.
+1. Defina a URL de destino e as flags de envio.
+1. Crie um campo de botão e vincule sua ação de clique.
+1. Adicione o botão ao formulário.
+1. Salvar o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+
+def add_submit_action(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+
+ submit_action = ap.annotations.SubmitFormAction()
+ submit_action.url = ap.FileSpecification("http://localhost:3000/submit")
+ submit_action.flags = (
+ ap.annotations.SubmitFormAction.EXPORT_FORMAT
+ | ap.annotations.SubmitFormAction.SUBMIT_COORDINATES
+ )
+
+ rect = ap.Rectangle(10, 10, 100, 40)
+ submit_button = ap.forms.ButtonField(document.pages[1], rect)
+ submit_button.partial_name = "SubmitButton"
+ submit_button.value = "Submit"
+ submit_button.actions.on_release_mouse_btn = submit_action
+
+ document.form.add(submit_button, 1)
+ document.save(output_file_name)
+```
+
+## Tópicos Relacionados
+
+- [Criar AcroForm](/pdf/pt/python-net/create-form/)
+- [Preencher AcroForm](/pdf/pt/python-net/fill-form/)
+- [Modificando AcroForm](/pdf/pt/python-net/modifying-form/)
+- [Importar e Exportar Dados de Formulário](/pdf/pt/python-net/import-export-form-data/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-forms/acroforms/remove-form/_index.md b/pt/python-net/advanced-operations/working-with-forms/acroforms/remove-form/_index.md
new file mode 100644
index 0000000000..c0ae00a18b
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-forms/acroforms/remove-form/_index.md
@@ -0,0 +1,65 @@
+---
+title: Excluir Formulários de PDF em Python
+linktitle: Excluir Formulários
+type: docs
+weight: 70
+url: /pt/python-net/remove-form/
+description: Remover objetos de formulário de páginas PDF usando Aspose.PDF for Python via .NET, incluindo limpeza completa e exclusão direcionada.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Formulários de PDF com Aspose.PDF for Python via .NET
+Abstract: Este artigo apresenta duas abordagens para remover elementos de formulário de documentos PDF usando Aspose.PDF for Python via .NET. O primeiro método limpa todos os objetos de formulário de uma página selecionada, enquanto o segundo método remove apenas recursos de formulário Typewriter correspondentes. Esses exemplos ajudam na limpeza de formulários, preparação de modelos e fluxos de trabalho de normalização de documentos.
+---
+
+## Remover Todos os Formulários de uma Página
+
+Este código remove todos os objetos de formulário da página especificada por `page_num` e salva o documento atualizado.
+
+1. Carregue o documento PDF.
+1. Acesse os recursos da página.
+1. Limpe os objetos de formulário.
+1. Salve o documento atualizado.
+
+```python
+import aspose.pdf as ap
+
+def remove_all_forms(input_file_name, page_num, output_file_name):
+ document = ap.Document(input_file_name)
+ forms = document.pages[page_num].resources.forms
+ forms.clear()
+ document.save(output_file_name)
+```
+
+## Remover um Tipo de Formulário Específico
+
+O próximo exemplo itera pelos objetos de formulário em uma página PDF especificada, identifica anotações de formulário tipo máquina de escrever, exclui‑as e, em seguida, salva o PDF atualizado usando Aspose.PDF for Python via .NET.
+
+1. Carregue o documento PDF.
+1. Acessar formulários da página.
+1. Iterar sobre formulários.
+1. Verificar formulários tipo máquina de escrever.
+1. Excluir o formulário correspondente.
+1. Salve o documento atualizado.
+
+```python
+import aspose.pdf as ap
+
+def remove_specified_form(input_file_name, page_num, output_file_name):
+ document = ap.Document(input_file_name)
+ forms = document.pages[page_num].resources.forms
+ for form in forms:
+ if form.it == "Typewriter" and form.subtype == "Form":
+ name = forms.get_form_name(form)
+ forms.delete(name)
+ document.save(output_file_name)
+```
+
+## Tópicos Relacionados
+
+- [Criar AcroForm](/pdf/pt/python-net/create-form/)
+- [Preencher AcroForm](/pdf/pt/python-net/fill-form/)
+- [Modificando AcroForm](/pdf/pt/python-net/modifying-form/)
+- [Publicando Formulários](/pdf/pt/python-net/posting-form/)
diff --git a/pt/python-net/advanced-operations/working-with-forms/xfa-forms/_index.md b/pt/python-net/advanced-operations/working-with-forms/xfa-forms/_index.md
new file mode 100644
index 0000000000..dc0ded71e7
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-forms/xfa-forms/_index.md
@@ -0,0 +1,61 @@
+---
+title: Trabalhando com formulários XFA
+linktitle: Formulários XFA
+type: docs
+weight: 20
+url: /pt/python-net/xfa-forms/
+description: Aspose.PDF for Python via .NET API permite que você trabalhe com campos XFA e XFA Acroform em um documento PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+## Converter XFA-para-Acroform
+
+{{% alert color="primary" %}}
+
+Experimente online
+Você pode verificar a qualidade da conversão do Aspose.PDF e visualizar os resultados online neste link: [products.aspose.app/pdf/xfa/acroform](https://products.aspose.app/pdf/xfa/acroform)
+
+{{% /alert %}}
+
+O próximo trecho de código demonstra como converter um formulário XFA (XML Forms Architecture) dinâmico para um AcroForm padrão.
+
+**Etapas principais incluem:**
+
+1. Carregando o documento PDF de entrada.
+1. Alterando o tipo de formulário para STANDARD.
+1. Salvando o PDF convertido em um novo arquivo.
+
+Esta conversão permite melhor compatibilidade e tratamento consistente de formulários em diferentes leitores e aplicativos PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def convert_dynamic_xfa_to_acroform(infile: str, outfile: str):
+ """Convert dynamic XFA form to standard AcroForm."""
+ with ap.Document(infile) as document:
+ document.form.type = ap.forms.FormType.STANDARD
+ document.save(outfile)
+```
+
+## Uso de IgnoreNeedsRendering
+
+Este exemplo demonstra como converter um formulário XFA dinâmico para um AcroForm padrão usando Aspose.PDF for Python. O código verifica se o PDF de entrada contém um formulário XFA e substitui a renderização se necessário. Em seguida, define o tipo de formulário como STANDARD e salva o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def convert_xfa_form_with_ignore_needs_rendering(infile: str, outfile: str):
+ """Convert XFA form ignoring needs rendering flag."""
+ with ap.Document(infile) as document:
+ if not document.form.needs_rendering and document.form.has_xfa:
+ document.form.ignore_needs_rendering = True
+ document.form.type = ap.forms.FormType.STANDARD
+ document.save(outfile)
+```
diff --git a/pt/python-net/advanced-operations/working-with-graphs/_index.md b/pt/python-net/advanced-operations/working-with-graphs/_index.md
new file mode 100644
index 0000000000..11bb551b0b
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/_index.md
@@ -0,0 +1,43 @@
+---
+title: Trabalhar com Gráficos PDF em Python
+linktitle: Trabalhando com Gráficos
+type: docs
+weight: 70
+url: /pt/python-net/working-with-graphs/
+description: Aprenda como desenhar gráficos e formas em arquivos PDF em Python, incluindo arcos, círculos, curvas, linhas, retângulos e elipses.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhe e personalize formas de gráfico vetoriais em arquivos PDF usando Python
+Abstract: Esta seção apresenta a classe Graph em Aspose.PDF for Python via .NET e explica como criar formas vetoriais comuns em documentos PDF. Aprenda como adicionar e estilizar arcos, círculos, curvas, linhas, retângulos, elipses e validar os limites das formas.
+---
+
+## O que é Graph
+
+[Aspose.PDF for Python via .NET](/pdf/pt/python-net/) fornece o [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe para desenhar gráficos vetoriais em documentos PDF.
+
+`Graph` é um elemento de nível de parágrafo, então você o adiciona a uma página através da página `paragraphs` coleção. Cada gráfico contém um `Shapes` coleção onde você pode adicionar objetos de desenho, como linhas, arcos, círculos, curvas, retângulos e elipses.
+
+Use esta seção quando precisar desenhar gráficos vetoriais diretamente em páginas PDF em Python, seja para gráficos, diagramas, ilustrações ou anotações de página personalizadas.
+
+## Formas de Graph Cobertas
+
+Os seguintes tipos de formas são suportados pelo [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe:
+
+- [Arco](/pdf/pt/python-net/add-arc/) - desenhar segmentos de arco para círculos parciais e elementos de diagrama curvos.
+- [Círculo](/pdf/pt/python-net/add-circle/) - criar contornos de círculo ou círculos preenchidos para marcadores e realces visuais.
+- [Curva](/pdf/pt/python-net/add-curve/) - adicionar curvas estilo Bezier para caminhos personalizados e elementos gráficos suaves.
+- [Line](/pdf/pt/python-net/add-line/) - desenhar linhas retas, incluindo linhas estilizadas e tracejadas.
+- [Retângulo](/pdf/pt/python-net/add-rectangle/) - criar formas de retângulo delineadas, preenchidas, em gradiente ou transparentes.
+- [Elipse](/pdf/pt/python-net/add-ellipse/) - desenhar formas ovais e adicionar texto dentro delas quando necessário.
+
+Você também pode validar a colocação das formas com verificação de limites:
+
+- [Verifique os limites das formas em gráficos PDF com Python](/pdf/pt/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/)
+
+Os exemplos nesta seção são ilustrados na figura abaixo:
+
+
+
diff --git a/pt/python-net/advanced-operations/working-with-graphs/arc/_index.md b/pt/python-net/advanced-operations/working-with-graphs/arc/_index.md
new file mode 100644
index 0000000000..0396fdf5dd
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/arc/_index.md
@@ -0,0 +1,95 @@
+---
+title: Adicionar formas de arco ao PDF em Python
+linktitle: Adicionar arco
+type: docs
+weight: 10
+url: /pt/python-net/add-arc/
+description: Aprenda como desenhar e preencher formas de arco em arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhe formas de arco em arquivos PDF usando Python
+Abstract: Este artigo mostra como adicionar formas de arco a documentos PDF com Aspose.PDF for Python via .NET. Ele aborda a criação de arcos contornados, o desenho de segmentos de arco preenchidos e a adição deles a um contêiner Graph.
+---
+
+## Adicionar objeto Arc
+
+Aspose.PDF for Python via .NET permite que você adicione [Arc](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/arc/) formas nas páginas PDF usando o [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Você pode desenhar arcos contornados e segmentos de arco preenchidos para diagramas e ilustrações técnicas.
+
+Siga os passos abaixo:
+
+1. Criar [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instância.
+1. Criar [Graph object](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/) com certas dimensões.
+1. Definir [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/#properties) para o objeto Graph.
+1. Crie um objeto de arco correspondente.
+1. Adicione este objeto à coleção Shapes no objeto graph.
+1. Adicionar [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objeto à coleção de parágrafos da página.
+1. Salve nosso arquivo PDF.
+
+O trecho de código a seguir mostra como adicionar um [Arc](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/arc/) objeto.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_arc(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ arc1 = drawing.Arc(100, 100, 95, 0, 90)
+ arc1.graph_info.color = ap.Color.green_yellow
+ graph.shapes.add(arc1)
+
+ arc2 = drawing.Arc(100, 100, 90, 70, 180)
+ arc2.graph_info.color = ap.Color.dark_blue
+ graph.shapes.add(arc2)
+
+ arc3 = drawing.Arc(100, 100, 85, 120, 210)
+ arc3.graph_info.color = ap.Color.red
+ graph.shapes.add(arc3)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+## Criar Objeto de Arco Preenchido
+
+Este exemplo mostra como adicionar um segmento de arco preenchido com cor.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_arc_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ arc = drawing.Arc(100, 100, 95, 0, 90)
+
+ arc.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(arc)
+
+ line = drawing.Line([195, 100, 100, 100, 100, 195])
+ line.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(line)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Resultado da adição de um arco preenchido:
+
+
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Adicionar formas de círculo ao PDF em Python](/pdf/pt/python-net/add-circle/)
+- [Adicionar formas de curva ao PDF em Python](/pdf/pt/python-net/add-curve/)
+- [Adicionar formas de linha ao PDF em Python](/pdf/pt/python-net/add-line/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-graphs/arc/filled_arc.png b/pt/python-net/advanced-operations/working-with-graphs/arc/filled_arc.png
new file mode 100644
index 0000000000..4b8fb92761
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/arc/filled_arc.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/checking-shape-bounds/_index.md b/pt/python-net/advanced-operations/working-with-graphs/checking-shape-bounds/_index.md
new file mode 100644
index 0000000000..e297fbc12a
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/checking-shape-bounds/_index.md
@@ -0,0 +1,72 @@
+---
+title: Verificar limites de forma em gráficos PDF com Python
+linktitle: Verificar limites de forma
+type: docs
+weight: 70
+url: /pt/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/
+description: Saiba como validar os limites de forma em coleções de gráficos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Validar limites de forma de gráfico em arquivos PDF usando Python
+Abstract: Este artigo mostra como validar os limites de forma em coleções de Graph com Aspose.PDF for Python via .NET. Ele aborda a configuração do BoundsCheckMode, a detecção de formas fora do intervalo e o tratamento seguro de exceções de limites.
+---
+
+## Verificar limites de forma em um Graph
+
+Quando você adiciona formas a um [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/), você pode habilitar a validação de limites para garantir que cada forma caiba na área do gráfico.
+
+Usar [BoundsCheckMode](https://reference.aspose.com/pdf/python-net/aspose.pdf/boundscheckmode/) para definir o comportamento quando uma forma está fora do intervalo. Neste exemplo, `THROW_EXCEPTION_IF_DOES_NOT_FIT` é usado para gerar uma exceção.
+
+Siga os passos abaixo:
+
+1. Criar um novo PDF [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Adicionar um [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Criar um [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) e adicioná-lo à página.
+1. Criar um [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) que se estende fora dos limites do gráfico.
+1. Definir modo de verificação de limites para `THROW_EXCEPTION_IF_DOES_NOT_FIT`.
+1. Adicione o retângulo e trate a exceção.
+1. Salve o documento.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def check_shape_bounds(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+
+ graph = drawing.Graph(100, 100)
+ graph.top = 10
+ graph.left = 15
+ graph.border = ap.BorderInfo(ap.BorderSide.BOX, 1, ap.Color.black)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(-1, 0, 50, 50)
+ rect.graph_info.fill_color = ap.Color.tomato
+
+ try:
+ graph.shapes.update_bounds_check_mode(
+ ap.BoundsCheckMode.THROW_EXCEPTION_IF_DOES_NOT_FIT
+ )
+ graph.shapes.add(rect)
+ except Exception as e:
+ print(e)
+
+ document.save(outfile)
+```
+
+## Observações
+
+- Usar `THROW_EXCEPTION_IF_DOES_NOT_FIT` quando a validação estrita de layout é necessária.
+- Para comportamento permissivo, escolha outro `BoundsCheckMode` opção baseada nas suas necessidades de layout.
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Adicionar formas de retângulo ao PDF em Python](/pdf/pt/python-net/add-rectangle/)
+- [Adicionar formas de linha ao PDF em Python](/pdf/pt/python-net/add-line/)
+- [Adicionar formas de elipse ao PDF em Python](/pdf/pt/python-net/add-ellipse/)
diff --git a/pt/python-net/advanced-operations/working-with-graphs/circle/_index.md b/pt/python-net/advanced-operations/working-with-graphs/circle/_index.md
new file mode 100644
index 0000000000..03f46ec820
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/circle/_index.md
@@ -0,0 +1,84 @@
+---
+title: Adicionar formas de círculo ao PDF em Python
+linktitle: Adicionar círculo
+type: docs
+weight: 20
+url: /pt/python-net/add-circle/
+description: Aprenda como desenhar e preencher formas de círculo em arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhar formas de círculo em arquivos PDF usando Python
+Abstract: Este artigo mostra como adicionar formas de círculo a documentos PDF com Aspose.PDF for Python via .NET. Ele cobre a criação de círculos contornados, preenchimento de círculos com cor e a inserção de texto dentro de objetos de círculo.
+---
+
+## Adicionar objeto de círculo
+
+Aspose.PDF for Python via .NET permite que você adicione [Circle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/circle/) formas para páginas PDF através do [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Use círculos para diagramas, anotações e elementos visuais simples.
+
+Siga os passos abaixo:
+
+1. Criar [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instância.
+1. Criar [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/) com certas dimensões.
+1. Definir [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/#properties) para o objeto Graph.
+1. Adicionar [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objeto à coleção de parágrafos da página.
+1. Salve nosso arquivo PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_circle(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ circle = drawing.Circle(100, 100, 40)
+ circle.graph_info.color = ap.Color.green_yellow
+ graph.shapes.add(circle)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Nosso círculo desenhado ficará assim:
+
+
+
+## Criar Objeto de Círculo Preenchido
+
+Este exemplo mostra como adicionar um círculo e preenchê‑lo com cor.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_circle_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ circle = drawing.Circle(100, 100, 40)
+ circle.graph_info.color = ap.Color.green_yellow
+ circle.graph_info.fill_color = ap.Color.green
+ circle.text = ap.text.TextFragment("Circle")
+ graph.shapes.add(circle)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Resultado da adição de um círculo preenchido:
+
+
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Adicionar formas de arco ao PDF em Python](/pdf/pt/python-net/add-arc/)
+- [Adicionar formas de elipse ao PDF em Python](/pdf/pt/python-net/add-ellipse/)
+- [Adicionar formas de retângulo ao PDF em Python](/pdf/pt/python-net/add-rectangle/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-graphs/circle/drawing_circle.png b/pt/python-net/advanced-operations/working-with-graphs/circle/drawing_circle.png
new file mode 100644
index 0000000000..13109c6782
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/circle/drawing_circle.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/circle/filled_circle.png b/pt/python-net/advanced-operations/working-with-graphs/circle/filled_circle.png
new file mode 100644
index 0000000000..be6042befa
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/circle/filled_circle.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/curve/_index.md b/pt/python-net/advanced-operations/working-with-graphs/curve/_index.md
new file mode 100644
index 0000000000..f2dd8f8ea6
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/curve/_index.md
@@ -0,0 +1,85 @@
+---
+title: Adicionar formas de curva ao PDF em Python
+linktitle: Adicionar curva
+type: docs
+weight: 30
+url: /pt/python-net/add-curve/
+description: Aprenda como desenhar e preencher formas de curva em arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhe formas de curva em arquivos PDF usando Python
+Abstract: Este artigo mostra como adicionar formas de curva a documentos PDF com Aspose.PDF for Python via .NET. Ele aborda a criação de curvas contornadas, o preenchimento de objetos de curva e a renderização de caminhos de curva personalizados em um contêiner Graph.
+---
+
+## Adicionar objeto Curve
+
+Aspose.PDF for Python via .NET permite que você adicione [Curve](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/curve/) formas para páginas PDF através do [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe.
+
+Este artigo mostra como criar curvas contornadas e preenchidas.
+
+Siga os passos abaixo:
+
+1. Criar [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instância.
+1. Criar [Graph object](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/) com certas dimensões.
+1. Definir [border](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/#properties) para o objeto Graph.
+1. Adicionar [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objeto à coleção de parágrafos da página.
+1. Salve nosso arquivo PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_curve(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ curve1 = drawing.Curve([10, 10, 50, 60, 70, 10, 100, 120])
+ curve1.graph_info.color = ap.Color.green_yellow
+ graph.shapes.add(curve1)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+A imagem a seguir mostra o resultado executado com nosso trecho de código:
+
+
+
+## Criar Objeto de Curva Preenchida
+
+Este exemplo mostra como adicionar um objeto Curva que está preenchido com cor.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def add_curve_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 200)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ curve1 = drawing.Curve([10, 10, 50, 60, 70, 10, 100, 120])
+ curve1.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(curve1)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+Resultado da adição de uma curva preenchida:
+
+
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Adicionar formas de arco ao PDF em Python](/pdf/pt/python-net/add-arc/)
+- [Adicionar formas de linha ao PDF em Python](/pdf/pt/python-net/add-line/)
+- [Adicionar formas de elipse ao PDF em Python](/pdf/pt/python-net/add-ellipse/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-graphs/curve/drawing_curve.png b/pt/python-net/advanced-operations/working-with-graphs/curve/drawing_curve.png
new file mode 100644
index 0000000000..be9f2e5ceb
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/curve/drawing_curve.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/curve/filled_curve.png b/pt/python-net/advanced-operations/working-with-graphs/curve/filled_curve.png
new file mode 100644
index 0000000000..c1422bb267
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/curve/filled_curve.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/ellipse/_index.md b/pt/python-net/advanced-operations/working-with-graphs/ellipse/_index.md
new file mode 100644
index 0000000000..9c4fc72aac
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/ellipse/_index.md
@@ -0,0 +1,113 @@
+---
+title: Adicionar formas de elipse ao PDF em Python
+linktitle: Adicionar elipse
+type: docs
+weight: 60
+url: /pt/python-net/add-ellipse/
+description: Aprenda como desenhar, preencher e rotular formas de elipse em arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhar formas de elipse em arquivos PDF usando Python
+Abstract: Este artigo mostra como adicionar formas elípticas a documentos PDF com Aspose.PDF for Python via .NET. Ele cobre elipses contornadas, elipses preenchidas e a inserção de texto dentro de objetos elipse.
+---
+
+## Adicionar objeto Elipse
+
+Aspose.PDF for Python via .NET permite que você adicione [Ellipse](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/ellipse/) formas para páginas PDF com o [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Você pode desenhar contornos de elipse, aplicar cores de preenchimento e colocar texto dentro de objetos elipse.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_ellipse(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ ellipse1 = drawing.Ellipse(150, 100, 120, 60)
+ ellipse1.graph_info.color = ap.Color.green_yellow
+ ellipse1.text = ap.text.TextFragment("Ellipse")
+ graph.shapes.add(ellipse1)
+
+ ellipse2 = drawing.Ellipse(50, 50, 18, 300)
+ ellipse2.graph_info.color = ap.Color.dark_red
+ graph.shapes.add(ellipse2)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+
+
+## Criar Objeto Elipse Preenchida
+
+O trecho de código a seguir mostra como adicionar um [Ellipse](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/ellipse/) objeto que está preenchido com cor.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def create_ellipse_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ ellipse1 = drawing.Ellipse(100, 100, 120, 180)
+ ellipse1.graph_info.fill_color = ap.Color.green_yellow
+ graph.shapes.add(ellipse1)
+
+ ellipse2 = drawing.Ellipse(200, 150, 180, 120)
+ ellipse2.graph_info.fill_color = ap.Color.dark_red
+ graph.shapes.add(ellipse2)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+
+
+## Adicionar texto dentro da elipse
+
+O Aspose.PDF for Python via .NET também permite colocar texto dentro de objetos de forma. O exemplo a seguir adiciona texto a formas de elipse.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_text_inside_ellipse(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.green)
+
+ text_fragment = ap.text.TextFragment("Ellipse")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Helvetica")
+ text_fragment.text_state.font_size = 24
+
+ ellipse1 = ap.drawing.Ellipse(100, 100, 120, 180)
+ ellipse1.graph_info.fill_color = ap.Color.green_yellow
+ ellipse1.text = text_fragment
+ graph.shapes.add(ellipse1)
+
+ ellipse2 = ap.drawing.Ellipse(200, 150, 180, 120)
+ ellipse2.graph_info.fill_color = ap.Color.dark_red
+ ellipse2.text = text_fragment
+ graph.shapes.add(ellipse2)
+
+ page.paragraphs.add(graph)
+ document.save(outfile)
+```
+
+
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Adicionar formas de círculo ao PDF em Python](/pdf/pt/python-net/add-circle/)
+- [Adicionar formas de curva ao PDF em Python](/pdf/pt/python-net/add-curve/)
+- [Adicionar formas de retângulo ao PDF em Python](/pdf/pt/python-net/add-rectangle/)
diff --git a/pt/python-net/advanced-operations/working-with-graphs/ellipse/ellipse.png b/pt/python-net/advanced-operations/working-with-graphs/ellipse/ellipse.png
new file mode 100644
index 0000000000..0322050025
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/ellipse/ellipse.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/ellipse/fill_ellipse.png b/pt/python-net/advanced-operations/working-with-graphs/ellipse/fill_ellipse.png
new file mode 100644
index 0000000000..ef85eef54a
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/ellipse/fill_ellipse.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/ellipse/text_ellipse.png b/pt/python-net/advanced-operations/working-with-graphs/ellipse/text_ellipse.png
new file mode 100644
index 0000000000..20468c71f2
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/ellipse/text_ellipse.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/graphs.png b/pt/python-net/advanced-operations/working-with-graphs/graphs.png
new file mode 100644
index 0000000000..b9574829a8
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/graphs.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/line/_index.md b/pt/python-net/advanced-operations/working-with-graphs/line/_index.md
new file mode 100644
index 0000000000..ebc5350b0e
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/line/_index.md
@@ -0,0 +1,109 @@
+---
+title: Adicionar formas de linha ao PDF em Python
+linktitle: Adicionar linha
+type: docs
+weight: 40
+url: /pt/python-net/add-line/
+description: Aprenda como desenhar formas de linha e linhas estilizadas em arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhar formas de linha em arquivos PDF usando Python
+Abstract: Este artigo mostra como adicionar formas de linha a documentos PDF com Aspose.PDF for Python via .NET. Ele cobre a criação de linhas básicas, a configuração de estilos de linha tracejada e o desenho de linhas através de uma página.
+---
+
+## Adicionar objeto Line
+
+Aspose.PDF for Python via .NET permite que você adicione [Line](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/line/) formas nas páginas PDF usando o [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Você pode controlar a cor da linha, o padrão de traço e o posicionamento.
+
+Siga os passos abaixo:
+
+1. Criar [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) instância.
+1. Criar um Objeto de Gráfico
+1. Adicionar [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objeto à coleção de parágrafos da página.
+1. Criar e Configurar a Linha
+1. Adicionar o [Line](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/line/) ao Gráfico
+1. Salve nosso arquivo PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def add_line(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ line = drawing.Line([100, 100, 200, 100])
+ line.graph_info.dash_array = [0, 1, 0]
+ line.graph_info.dash_phase = 1
+ graph.shapes.add(line)
+
+ document.save(outfile)
+```
+
+
+
+## Como adicionar linha pontilhada tracejada ao seu documento PDF
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_dotted_dashed_line(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ line = drawing.Line([100, 100, 200, 100])
+ line.graph_info.color = ap.Color.red
+ line.graph_info.dash_array = [0, 1, 0]
+ line.graph_info.dash_phase = 1
+ graph.shapes.add(line)
+
+ document.save(outfile)
+```
+
+Resultado da adição de uma linha pontilhada tracejada:
+
+
+
+## Desenhar Linha Através da Página
+
+Você também pode desenhar linhas através da página para formar uma cruz.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def draw_line_across_page(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ page.page_info.margin.left = 0
+ page.page_info.margin.right = 0
+ page.page_info.margin.bottom = 0
+ page.page_info.margin.top = 0
+
+ graph = drawing.Graph(page.page_info.width, page.page_info.height)
+ line = drawing.Line([page.rect.llx, 0, page.page_info.width, page.rect.ury])
+ graph.shapes.add(line)
+ line2 = drawing.Line([0, page.rect.ury, page.page_info.width, page.rect.llx])
+ graph.shapes.add(line2)
+ page.paragraphs.add(graph)
+
+ document.save(outfile)
+```
+
+
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Adicionar formas de curva ao PDF em Python](/pdf/pt/python-net/add-curve/)
+- [Adicionar formas de retângulo ao PDF em Python](/pdf/pt/python-net/add-rectangle/)
+- [Verifique os limites das formas em gráficos PDF com Python](/pdf/pt/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/)
diff --git a/pt/python-net/advanced-operations/working-with-graphs/line/add_line.png b/pt/python-net/advanced-operations/working-with-graphs/line/add_line.png
new file mode 100644
index 0000000000..4cb1631d6f
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/line/add_line.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/line/dash_line.png b/pt/python-net/advanced-operations/working-with-graphs/line/dash_line.png
new file mode 100644
index 0000000000..2021f2d82a
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/line/dash_line.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/line/draw_line.png b/pt/python-net/advanced-operations/working-with-graphs/line/draw_line.png
new file mode 100644
index 0000000000..07e95f957a
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/line/draw_line.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/rectangle/_index.md b/pt/python-net/advanced-operations/working-with-graphs/rectangle/_index.md
new file mode 100644
index 0000000000..5287104919
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-graphs/rectangle/_index.md
@@ -0,0 +1,195 @@
+---
+title: Adicionar formas de retângulo ao PDF em Python
+linktitle: Adicionar Retângulo
+type: docs
+weight: 50
+url: /pt/python-net/add-rectangle/
+description: Aprenda como desenhar e preencher formas de retângulo em arquivos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Desenhe formas de retângulo em arquivos PDF usando Python
+Abstract: Este artigo mostra como adicionar formas de retângulo a documentos PDF com Aspose.PDF for Python via .NET. Ele cobre retângulos contornados, preenchimentos sólidos e gradientes, transparência alfa e controle de ordem Z.
+---
+
+## Adicionar objeto Rectangle
+
+Aspose.PDF for Python via .NET permite que você adicione [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) formas para páginas PDF através do [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) classe. Você pode desenhar retângulos contornados e aplicar preenchimentos sólidos, gradientes ou transparentes.
+
+Siga os passos abaixo:
+
+1. Criar um novo PDF [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Adicionar [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) para a coleção de páginas do arquivo PDF.
+1. Adicionar [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/) para a coleção de parágrafos da instância da página.
+1. Criar [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) instância.
+1. Definir borda para [Graph](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/graph/) objeto.
+1. Adicionar [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objeto para a coleção de formas do objeto Graph.
+1. Adicionar objeto de gráfico à coleção de parágrafos da instância de página.
+1. Adicionar [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/) para a coleção de parágrafos da instância da página.
+1. E salve seu arquivo PDF
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_rectangle(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ text_fragment = ap.text.TextFragment("Rectangle")
+ page.paragraphs.add(text_fragment)
+
+ graph = drawing.Graph(400, 300)
+ page.paragraphs.add(graph)
+ graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
+
+ rect = drawing.Rectangle(20, 20, 350, 250)
+ graph.shapes.add(rect)
+ page.paragraphs.add(text_fragment)
+
+ document.save(outfile)
+```
+
+
+
+## Criar Objeto Retângulo Preenchido
+
+Aspose.PDF for Python via .NET também oferece o recurso de preencher o objeto retângulo com uma certa cor.
+
+O trecho de código a seguir mostra como adicionar um [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objeto que está preenchido com cor.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def create_rectangle_filled(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(100, 100, 200, 120)
+ rect.graph_info.fill_color = ap.Color.red
+ graph.shapes.add(rect)
+
+ document.save(outfile)
+```
+
+Resultado do retângulo preenchido com uma cor sólida:
+
+
+
+## Adicionar Desenho com Preenchimento em Degradê
+
+O Aspose.PDF for Python via .NET oferece o recurso de adicionar objetos de gráfico a documentos PDF e, às vezes, é necessário preencher os objetos de gráfico com Cor em Degradê.
+
+O trecho de código a seguir mostra como adicionar um [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objeto que está preenchido com Cor em Degradê.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def add_drawing_with_gradient_fill(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(400, 400)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(0, 0, 300, 300)
+ gradient_color = ap.Color()
+ gradient_settings = drawing.GradientAxialShading(ap.Color.red, ap.Color.blue)
+ gradient_settings.start = ap.Point(0, 0)
+ gradient_settings.end = ap.Point(350, 350)
+ gradient_color.pattern_color_space = gradient_settings
+ rect.graph_info.fill_color = gradient_color
+ graph.shapes.add(rect)
+
+ document.save(outfile)
+```
+
+
+
+## Criar Retângulo com Canal de Cor Alfa
+
+Aspose.PDF for Python via .NET também suporta transparência por meio de um canal de cor alfa.
+
+O trecho de código a seguir mostra como adicionar um [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objeto com valores alfa.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+def create_rectangle_with_alpha_color_channel(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ graph = drawing.Graph(100, 400)
+ page.paragraphs.add(graph)
+
+ rect = drawing.Rectangle(100, 100, 200, 120)
+ rect.graph_info.fill_color = ap.Color.from_argb(128, 244, 180, 0)
+ graph.shapes.add(rect)
+
+ rect1 = drawing.Rectangle(200, 150, 200, 100)
+ rect1.graph_info.fill_color = ap.Color.from_argb(160, 120, 0, 120)
+ graph.shapes.add(rect1)
+
+ document.save(outfile)
+```
+
+
+
+## Controlar a Ordem Z das formas
+
+Aspose.PDF for .NET suporta o recurso de adicionar objetos gráficos (por exemplo gráfico, linha, retângulo etc.) a documentos PDF. Ao adicionar mais de uma instância do mesmo objeto dentro do arquivo PDF, podemos controlar sua renderização especificando a Ordem Z. A Ordem Z também é usada quando precisamos renderizar objetos um sobre o outro.
+
+O fragmento de código a seguir mostra as etapas para renderizar [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf.drawing/rectangle/) objetos uns sobre os outros.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.drawing as drawing
+
+
+def _add_rectangle_to_page(
+ page: ap.Page,
+ x: float,
+ y: float,
+ width: float,
+ height: float,
+ color: ap.Color,
+ zindex: int,
+):
+ graph = drawing.Graph(width, height)
+ graph.is_change_position = False
+ graph.left = x
+ graph.top = y
+ rect = drawing.Rectangle(0, 0, width, height)
+ rect.graph_info.fill_color = color
+ rect.graph_info.color = color
+ graph.shapes.add(rect)
+ graph.z_index = zindex
+ page.paragraphs.add(graph)
+
+
+def control_z_order_of_rectangle(outfile: str):
+ document = ap.Document()
+ page = document.pages.add()
+ page.set_page_size(375, 300)
+ page.page_info.margin.left = 0
+ page.page_info.margin.top = 0
+
+ _add_rectangle_to_page(page, 50, 40, 60, 40, ap.Color.red, 2)
+ _add_rectangle_to_page(page, 20, 20, 30, 30, ap.Color.blue, 1)
+ _add_rectangle_to_page(page, 40, 40, 60, 30, ap.Color.green, 0)
+
+ document.save(outfile)
+```
+
+
+
+## Tópicos Relacionados ao Gráfico
+
+- [Trabalhar com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Verifique os limites das formas em gráficos PDF com Python](/pdf/pt/python-net/aspose-pdf-drawing-graph-shapes-bounds-check/)
+- [Adicionar formas de linha ao PDF em Python](/pdf/pt/python-net/add-line/)
+- [Adicionar formas de elipse ao PDF em Python](/pdf/pt/python-net/add-ellipse/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-graphs/rectangle/control.png b/pt/python-net/advanced-operations/working-with-graphs/rectangle/control.png
new file mode 100644
index 0000000000..b7c0f8b35c
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/rectangle/control.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/rectangle/create_rectangle.png b/pt/python-net/advanced-operations/working-with-graphs/rectangle/create_rectangle.png
new file mode 100644
index 0000000000..f2748957f4
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/rectangle/create_rectangle.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/rectangle/fill_rectangle.png b/pt/python-net/advanced-operations/working-with-graphs/rectangle/fill_rectangle.png
new file mode 100644
index 0000000000..264a88da44
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/rectangle/fill_rectangle.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/rectangle/gradient.png b/pt/python-net/advanced-operations/working-with-graphs/rectangle/gradient.png
new file mode 100644
index 0000000000..854480c132
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/rectangle/gradient.png differ
diff --git a/pt/python-net/advanced-operations/working-with-graphs/rectangle/rectangle_color.png b/pt/python-net/advanced-operations/working-with-graphs/rectangle/rectangle_color.png
new file mode 100644
index 0000000000..e14ed9fef0
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-graphs/rectangle/rectangle_color.png differ
diff --git a/pt/python-net/advanced-operations/working-with-images/_index.md b/pt/python-net/advanced-operations/working-with-images/_index.md
index e0a92bcbf6..601721ec1f 100644
--- a/pt/python-net/advanced-operations/working-with-images/_index.md
+++ b/pt/python-net/advanced-operations/working-with-images/_index.md
@@ -1,86 +1,30 @@
---
-title: Trabalhando com Imagens em PDF usando Python
+title: Trabalhar com Imagens em PDF usando Python
linktitle: Trabalhando com Imagens
type: docs
weight: 40
url: /pt/python-net/working-with-images/
-description: Esta seção descreve os recursos de trabalhar com imagens em um arquivo PDF usando a biblioteca Python.
-lastmod: "2023-04-17"
+description: Aprenda como adicionar, excluir, extrair, substituir e inspecionar imagens em documentos PDF usando Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar imagens em arquivos PDF com Python
+Abstract: Esta seção mostra como trabalhar com imagens em documentos PDF usando Aspose.PDF for Python via .NET. Ela abrange a adição, exclusão, extração, substituição e inspeção de imagens em arquivos PDF existentes.
---
-
+Aspose.PDF for Python via .NET fornece um conjunto completo de ferramentas para operações de imagem em documentos PDF existentes.
-Há muitos métodos e ferramentas para editar e manipular imagens em documentos PDF. Além das funções usuais de adicionar e remover imagens do arquivo PDF, a biblioteca Aspose.PDF para Python também permite extrair imagens. **Aspose.PDF para Python** é uma ferramenta inteligente e eficiente para trabalhar com imagens em um PDF existente.
+Use esta seção para inserir novas imagens, remover ou substituir imagens incorporadas, extrair o conteúdo da imagem e inspecionar detalhes de posicionamento da imagem em uma página.
-Você é capaz de fazer o seguinte:
+## Tarefas de Imagem Cobertas
+
+As tarefas a seguir são cobertas:
+
+- [Adicionar Imagem a um Arquivo PDF Existente](/pdf/pt/python-net/add-image-to-existing-pdf-file/) - colocar imagens em coordenadas fixas e incorporar imagens com diferentes opções.
+- [Excluir Imagens de Arquivo PDF](/pdf/pt/python-net/delete-images-from-pdf-file/) - remover um recurso de imagem ou todas as imagens de uma página selecionada.
+- [Extrair Imagens de Arquivo PDF](/pdf/pt/python-net/extract-images-from-pdf-file/) - extrair imagens incorporadas de páginas PDF.
+- [Substituir Imagem em Arquivo PDF Existente](/pdf/pt/python-net/replace-image-in-existing-pdf-file/) - substituir imagens incorporadas por índice de recurso ou posicionamento.
+- [Pesquisar e Obter Imagens de Documento PDF](/pdf/pt/python-net/search-and-get-images-from-pdf-document/) - encontrar imagens e inspecionar a colocação de imagens em um documento.
-- [Adicionar Imagem ao Arquivo PDF Existente](/pdf/pt/python-net/add-image-to-existing-pdf-file/) - adicionar imagens e referências de uma única imagem no documento PDF, após isso controlar a qualidade.
-- [Excluir Imagens do Arquivo PDF](/pdf/pt/python-net/delete-images-from-pdf-file/) - verificar trecho de código para excluir imagens do arquivo PDF.
-- [Extrair Imagens do Arquivo PDF](/pdf/pt/python-net/extract-images-from-pdf-file/) - o próximo artigo mostra como extrair imagens do arquivo PDF usando a biblioteca Python.
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md
index 0d584c6ffe..9b449d6ce8 100644
--- a/pt/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md
+++ b/pt/python-net/advanced-operations/working-with-images/add-image-to-existing-pdf-file/_index.md
@@ -1,186 +1,159 @@
---
-title: Adicionar Imagem ao PDF usando Python
-linktitle: Adicionar Imagem
+title: Adicionar imagem ao PDF usando Python
+linktitle: Adicionar imagem
type: docs
weight: 10
url: /pt/python-net/add-image-to-existing-pdf-file/
-description: Esta seção descreve como adicionar imagem a um arquivo PDF existente usando a biblioteca Python.
-lastmod: "2022-02-17"
+description: Saiba como adicionar imagens a arquivos PDF existentes em Python.
+lastmod: "2026-05-20"
+TechArticle: true
+AlternativeHeadline: Adicionar imagens a arquivos PDF existentes com Python
+Abstract: Este artigo mostra como adicionar imagens a documentos PDF com Aspose.PDF for Python via .NET. Ele aborda a adição de uma imagem em coordenadas fixas, a inserção de imagens com operadores de baixo nível, a atribuição de texto alternativo para acessibilidade e a incorporação de imagens com compressão Flate.
---
-
-
-
-## Adicionar Imagem em um Arquivo PDF Existente
-
-O trecho de código a seguir mostra como adicionar uma imagem no arquivo PDF.
-
-1. Carregue o arquivo PDF de entrada.
-1. Especifique o número da página na qual a imagem será colocada.
-1. Para definir a posição da imagem na página, chame o método [add_image](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) da classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
-1. Chame o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+
+## Adicionar imagem em um arquivo PDF existente
+
+Este exemplo mostra como posicionar uma imagem em um local fixo em uma página PDF existente usando Aspose.PDF for Python via .NET.
+
+Use esses exemplos desta página quando precisar posicionar logotipos, fotos ou outras imagens em coordenadas fixas dentro de um layout PDF existente.
+
+1. Carregue um PDF existente com `ap.Document(infile)`.
+1. Selecione a página de destino (`document.pages[1]` para a primeira página).
+1. Chamada `page.add_image()` com:
+ - O caminho do arquivo de imagem.
+ - A `Rectangle` definindo coordenadas de posicionamento.
+1. Salve o PDF atualizado.
```python
+import aspose.pdf as ap
+
+
+def add_image(infile, image_file, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+ page.add_image(image_file, ap.Rectangle(20, 730, 120, 830, True))
+ document.save(outfile)
+```
- import aspose.pdf as ap
+## Adicionar uma Imagem Usando Operadores
- # Abrir documento
- document = ap.Document(input_file)
+Esta abordagem adiciona uma imagem com operadores PDF de baixo nível em vez dos de alto nível. `add_image()` ajudante.
- document.pages[1].add_image(image_file, ap.Rectangle(20, 730, 120, 830, True))
+1. Criar um novo `Document` e adicione uma página.
+1. Adicione a imagem aos recursos da página (`page.resources.images`).
+1. Criar operadores de transformação (`GSave`, `ConcatenateMatrix`, `Do`, `GRestore`).
+1. Adicione operadores ao conteúdo da página.
+1. Salve o PDF resultante.
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def add_image_using_operators(image_file, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ page.set_page_size(842, 595)
+ resources_images = page.resources.images
+
+ with FileIO(image_file, "rb") as image_stream:
+ image_id = resources_images.add(image_stream)
+
+ rectangle = ap.Rectangle(0, 0, page.media_box.width, page.media_box.height, True)
+
+ operators = [
+ ap.operators.GSave(),
+ ap.operators.ConcatenateMatrix(
+ ap.Matrix(
+ rectangle.urx - rectangle.llx,
+ 0,
+ 0,
+ rectangle.ury - rectangle.lly,
+ rectangle.llx,
+ rectangle.lly,
+ )
+ ),
+ ap.operators.Do(image_id),
+ ap.operators.GRestore(),
+ ]
+
+ page.contents.add(operators)
+ document.save(outfile)
```
-## Adicionar Imagem em um Arquivo PDF Existente (Facades)
+## Adicionar Imagem com Texto Alternativo
+
+Este exemplo adiciona uma imagem e atribui texto alternativo para acessibilidade.
-Há também uma maneira alternativa e mais fácil de adicionar uma imagem a um arquivo PDF.
- Você pode usar o método [AddImage](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/methods/addimage/index) da classe [PdfFileMend](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/). O método [add_image()](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/#methods) requer a imagem a ser adicionada, o número da página na qual a imagem precisa ser adicionada e as informações de coordenadas. Depois disso, salve o arquivo PDF atualizado e feche o objeto PdfFileMend usando o método [close()](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilemend/#methods). O trecho de código a seguir mostra como adicionar uma imagem em um arquivo PDF existente.
+1. Criar um novo `Document` e adicione uma página.
+1. Adicione a imagem à página com `page.add_image()`.
+1. Obter recursos de imagem de `page.resources.images`.
+1. Definir texto alternativo usando `try_set_alternative_text()`.
+1. Salve o PDF resultante.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Abrir documento
- mender = ap.facades.PdfFileMend()
+def add_image_set_alternative_text(image_file, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ page.set_page_size(842, 595)
- # Criar objeto PdfFileMend para adicionar texto
- mender.bind_pdf(input_file)
+ page.add_image(image_file, ap.Rectangle(0, 0, 842, 595, True))
+ resources_images = page.resources.images
+ x_image = resources_images[1]
+ result = x_image.try_set_alternative_text("Alternative text for image", page)
- # Adicionar imagem no arquivo PDF
- mender.add_image(image_file, 1, 100.0, 600.0, 200.0, 700.0)
+ if result:
+ print("Alternative text has been added successfully")
+
+ document.save(outfile)
+```
- # Salvar alterações
- mender.save(output_pdf)
+## Adicionar uma imagem a um PDF com compressão Flate
- # Fechar objeto PdfFileMend
- mender.close()
+Este exemplo incorpora uma imagem usando `ImageFilterType.FLATE` compressão.
+1. Criar um novo `Document` e adicione uma página.
+1. Adicionar a imagem aos recursos da página com compressão Flate
+1. Use operadores de matriz para posicionar e desenhar a imagem.
+1. Salvar o documento.
+
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def add_image_to_pdf_with_flate_compression(image_file, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ resources_images = page.resources.images
+
+ with FileIO(image_file, "rb") as image_stream:
+ image_id = resources_images.add(image_stream, ap.ImageFilterType.FLATE)
+
+ rectangle = ap.Rectangle(0, 0, 600, 600, True)
+ matrix = ap.Matrix(
+ rectangle.urx - rectangle.llx,
+ 0,
+ 0,
+ rectangle.ury - rectangle.lly,
+ rectangle.llx,
+ rectangle.lly,
+ )
+
+ page.contents.add([ap.operators.GSave()])
+ page.contents.add([ap.operators.ConcatenateMatrix(matrix)])
+ page.contents.add([ap.operators.Do(image_id)])
+ page.contents.add([ap.operators.GRestore()])
+
+ document.save(outfile)
```
-
\ No newline at end of file
+## Tópicos Relacionados à Imagem
+
+- [Trabalhe com imagens em PDF usando Python](/pdf/pt/python-net/working-with-images/)
+- [Substitua imagens em arquivos PDF existentes](/pdf/pt/python-net/replace-image-in-existing-pdf-file/)
+- [Excluir imagens de arquivos PDF](/pdf/pt/python-net/delete-images-from-pdf-file/)
+- [Extrair imagens de arquivos PDF](/pdf/pt/python-net/extract-images-from-pdf-file/)
diff --git a/pt/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md
index 985b6d1815..d2bb74e6d4 100644
--- a/pt/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md
+++ b/pt/python-net/advanced-operations/working-with-images/delete-images-from-pdf-file/_index.md
@@ -4,190 +4,55 @@ linktitle: Excluir Imagens
type: docs
weight: 20
url: /pt/python-net/delete-images-from-pdf-file/
-description: Esta seção explica como excluir imagens de um arquivo PDF usando Aspose.PDF para Python via .NET.
-lastmod: "2023-04-17"
+description: Aprenda como excluir imagens específicas ou todas as imagens de arquivos PDF em Python.
+lastmod: "2026-05-20"
+TechArticle: true
+AlternativeHeadline: Excluir imagens de arquivos PDF com Python
+Abstract: Este artigo mostra como excluir imagens de documentos PDF com Aspose.PDF for Python via .NET. Ele aborda a remoção de um recurso de imagem específico e a exclusão de todas as imagens de uma página selecionada.
---
-
-
-
-Existem muitas razões para remover todas ou imagens específicas de PDFs.
-
-Às vezes, um arquivo PDF pode conter imagens importantes que precisam ser removidas para proteger a privacidade ou impedir o acesso não autorizado a certas informações.
-
-Remover imagens indesejadas ou redundantes pode ajudar a reduzir o tamanho do arquivo, facilitando o compartilhamento ou armazenamento dos PDFs.
-
-Se necessário, você pode reduzir o número de páginas removendo todas as imagens do documento. Além disso, excluir imagens do documento ajudará a preparar o PDF para compressão ou extração de informações de texto.
-
-**Aspose.PDF for Python via .NET** irá ajudá-lo com esta tarefa.
-## Excluir Imagens de Arquivo PDF
+Use esta página quando precisar remover gráficos desnecessários, reduzir o tamanho do PDF ou limpar conteúdo visual sensível de um documento.
-Para excluir uma imagem de um arquivo PDF:
+## Excluir Imagens de Arquivo PDF
-1. Abra o Documento PDF existente.
-1. Exclua uma imagem específica.
-1. Salve o arquivo PDF atualizado.
+Use os seguintes passos para excluir uma imagem de uma página:
-O trecho de código a seguir mostra como excluir uma imagem de um arquivo PDF.
+1. Carregue o PDF de origem com `ap.Document(infile)`.
+1. Selecione a página e o índice do recurso de imagem.
+1. Excluir a imagem com `resources.images.delete(index)`.
+1. Salve o PDF atualizado.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
-
- # Abra o documento
- document = ap.Document(input_file)
-
- # Exclua uma imagem específica
- document.pages[2].resources.images.delete(1)
- # Salve o arquivo PDF atualizado
- document.save(output_pdf)
+def delete_image(infile, outfile):
+ document = ap.Document(infile)
+ document.pages[1].resources.images.delete(1)
+ document.save(outfile)
```
+## Excluir Todas as Imagens de uma Página
-## Excluir todas as imagens do PDF de entrada
+Use este exemplo para remover todas as imagens de uma página específica.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_file)
+def delete_all_images_from_page(infile, outfile, page_number):
+ document = ap.Document(infile)
+ page = document.pages[page_number]
- # Excluir todas as imagens em todas as páginas
- for i in range(len(document.pages)):
- while len(document.pages[i + 1].resources.images) != 0:
- document.pages[i + 1].resources.images.delete(1)
+ while len(page.resources.images) != 0:
+ page.resources.images.delete(1)
- # Salvar arquivo PDF atualizado
- document.save(output_file)
+ document.save(outfile)
```
+## Tópicos Relacionados à Imagem
-
\ No newline at end of file
+- [Trabalhar com imagens em PDF usando Python](/pdf/pt/python-net/working-with-images/)
+- [Substituir imagens em arquivos PDF existentes](/pdf/pt/python-net/replace-image-in-existing-pdf-file/)
+- [Extrair imagens de arquivos PDF](/pdf/pt/python-net/extract-images-from-pdf-file/)
+- [Adicionar imagens a arquivos PDF existentes](/pdf/pt/python-net/add-image-to-existing-pdf-file/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md
index 4545bdf9c1..86515e2911 100644
--- a/pt/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md
+++ b/pt/python-net/advanced-operations/working-with-images/extract-images-from-pdf-file/_index.md
@@ -1,162 +1,69 @@
---
-title: Extrair Imagens de Arquivo PDF usando Python
-linktitle: Extrair Imagens
+title: Extrair imagens de arquivo PDF usando Python
+linktitle: Extrair imagens
type: docs
weight: 30
url: /pt/python-net/extract-images-from-pdf-file/
-description: Esta seção mostra como extrair imagens de um arquivo PDF usando a biblioteca Python.
-lastmod: "2023-02-17"
+description: Aprenda como extrair imagens incorporadas de arquivos PDF em Python.
+lastmod: "2026-05-20"
+TechArticle: true
+AlternativeHeadline: Extrair imagens de arquivos PDF com Python
+Abstract: Este artigo mostra como extrair imagens de documentos PDF com Aspose.PDF for Python via .NET. Ele cobre a extração de uma única imagem incorporada e a exportação de imagens encontradas dentro de uma região retangular específica em uma página.
---
-
+Use esta página quando precisar reutilizar gráficos incorporados, arquivar ativos de imagem ou processar conteúdo de imagem fora do PDF.
-Você precisa separar imagens dos seus arquivos PDF? Para gerenciamento simplificado, arquivamento, análise ou compartilhamento de imagens dos seus documentos, use **Aspose.PDF for Python** e extraia imagens de arquivos PDF.
+1. Carregue o PDF de origem com `ap.Document(infile)`.
+1. Selecione a página de destino e o índice do recurso de imagem.
+1. Salve o objeto de imagem em um fluxo de saída.
-As imagens são mantidas na coleção [resources](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) de cada página na coleção [XImage](https://reference.aspose.com/pdf/python-net/aspose.pdf/ximagecollection/). Para extrair uma página específica, obtenha a imagem da coleção Images usando o índice específico da imagem.
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def extract_image(infile, outfile):
+ document = ap.Document(infile)
+ x_image = document.pages[1].resources.images[1]
+ with FileIO(outfile, "wb") as output_image:
+ x_image.save(output_image)
+```
+
+## Extrair imagens de região específica em PDF
+
+Este exemplo extrai imagens localizadas dentro de uma região retangular especificada em uma página PDF e as salva como arquivos separados.
-O índice da imagem retorna um objeto [XImage](https://reference.aspose.com/pdf/python-net/aspose.pdf/ximage/). Este objeto fornece um método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) que pode ser usado para salvar a imagem extraída. O snippet de código a seguir mostra como extrair imagens de um arquivo PDF.
+1. Carregue o PDF de origem.
+1. Criar `ImagePlacementAbsorber` e aceite-o na página de destino.
+1. Defina o retângulo de destino.
+1. Itere pelas colocações de imagens e verifique se os limites de cada imagem se encaixam na região.
+1. Salve as imagens correspondentes em arquivos de saída.
```python
+import aspose.pdf as ap
+from io import FileIO
- import aspose.pdf as ap
- # Abrir documento
- document = ap.Document(input_file)
+def extract_image_from_specific_region(infile, outfile):
+ document = ap.Document(infile)
+ rectangle = ap.Rectangle(0, 0, 590, 590, True)
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
- # Extrair uma imagem específica
- xImage = document.pages[2].resources.images[1]
- outputImage = io.FileIO(output_image, "w")
+ index = 1
+ for image_placement in absorber.image_placements:
+ point1 = ap.Point(image_placement.rectangle.llx, image_placement.rectangle.lly)
+ point2 = ap.Point(image_placement.rectangle.urx, image_placement.rectangle.ury)
- # Salvar imagem de saída
- xImage.save(outputImage)
- outputImage.close()
+ if rectangle.contains(point1, True) and rectangle.contains(point2, True):
+ with FileIO(outfile.replace("index", str(index)), "wb") as output_image:
+ image_placement.image.save(output_image)
+ index += 1
```
+## Tópicos Relacionados à Imagem
-
\ No newline at end of file
+- [Trabalhar com imagens em PDF usando Python](/pdf/pt/python-net/working-with-images/)
+- [Substituir imagens em arquivos PDF existentes](/pdf/pt/python-net/replace-image-in-existing-pdf-file/)
+- [Excluir imagens de arquivos PDF](/pdf/pt/python-net/delete-images-from-pdf-file/)
+- [Adicionar imagens a arquivos PDF existentes](/pdf/pt/python-net/add-image-to-existing-pdf-file/)
diff --git a/pt/python-net/advanced-operations/working-with-images/replace-image-in-existing-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-images/replace-image-in-existing-pdf-file/_index.md
new file mode 100644
index 0000000000..6faddc692f
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-images/replace-image-in-existing-pdf-file/_index.md
@@ -0,0 +1,70 @@
+---
+title: Substituir imagem em arquivo PDF existente usando Python
+linktitle: Substituir imagem
+type: docs
+weight: 70
+url: /pt/python-net/replace-image-in-existing-pdf-file/
+description: Aprenda como substituir imagens incorporadas em arquivos PDF existentes em Python.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Substitua imagens em arquivos PDF existentes com Python
+Abstract: Este artigo mostra como substituir imagens em documentos PDF com Aspose.PDF for Python via .NET. Ele cobre a substituição de uma imagem por índice de recurso e a substituição de uma imagem específica encontrada com ImagePlacementAbsorber.
+---
+
+## Substituir uma imagem em PDF
+
+Use esta página quando precisar atualizar logotipos, diagramas ou outras imagens incorporadas em um PDF sem recriar o layout do documento.
+
+1. Carregue o PDF de origem com `ap.Document(infile)`.
+1. Abra a imagem de substituição como um fluxo binário.
+1. Substitua um recurso de imagem por índice em uma página.
+1. Salve o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def replace_image(infile, image_file, outfile):
+ document = ap.Document(infile)
+
+ with FileIO(image_file, "rb") as image_stream:
+ document.pages[1].resources.images.replace(1, image_stream)
+
+ document.save(outfile)
+```
+
+## Substituir uma Imagem Específica
+
+Este exemplo substitui um posicionamento de imagem específico encontrado por `ImagePlacementAbsorber`.
+
+1. Carregar o PDF de origem.
+1. Criar `ImagePlacementAbsorber` e coletar posicionamentos de imagens na página.
+1. Verificar se existem posicionamentos de imagem na página.
+1. Substitua a posição selecionada por um novo fluxo de imagem.
+1. Salve o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+from io import FileIO
+
+
+def replace_image_with_absorber(infile, image_file, outfile):
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
+
+ if len(absorber.image_placements) > 0:
+ image_placement = absorber.image_placements[1]
+ with FileIO(image_file, "rb") as image_stream:
+ image_placement.replace(image_stream)
+
+ document.save(outfile)
+```
+
+## Tópicos Relacionados a Imagens
+
+- [Trabalhe com imagens em PDF usando Python](/pdf/pt/python-net/working-with-images/)
+- [Excluir imagens de arquivos PDF](/pdf/pt/python-net/delete-images-from-pdf-file/)
+- [Extrair imagens de arquivos PDF](/pdf/pt/python-net/extract-images-from-pdf-file/)
+- [Adicionar imagens a arquivos PDF existentes](/pdf/pt/python-net/add-image-to-existing-pdf-file/)
diff --git a/pt/python-net/advanced-operations/working-with-images/search-and-get-images-from-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-images/search-and-get-images-from-pdf-document/_index.md
new file mode 100644
index 0000000000..9bbe922f75
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-images/search-and-get-images-from-pdf-document/_index.md
@@ -0,0 +1,236 @@
+---
+title: Obter e Pesquisar Imagens em PDF
+linktitle: Obter e Pesquisar Imagens
+type: docs
+weight: 40
+url: /pt/python-net/search-and-get-images-from-pdf-document/
+description: Aprenda como pesquisar e inspecionar imagens em documentos PDF em Python.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Pesquise e inspecione imagens em arquivos PDF com Python
+Abstract: Este artigo mostra como pesquisar e inspecionar imagens em documentos PDF com Aspose.PDF for Python via .NET. Ele aborda o uso de ImagePlacementAbsorber para analisar a posição da imagem, tamanho, resolução e texto alternativo.
+---
+
+## Inspecionar propriedades de posicionamento de imagem em uma página PDF
+
+Este exemplo demonstra como analisar e exibir as propriedades de todas as imagens em uma página PDF específica usando Aspose.PDF for Python via .NET.
+
+Use esta página quando precisar auditar o posicionamento de imagens, inspecionar a resolução da imagem ou identificar objetos de imagem incorporados em várias páginas PDF.
+
+1. Crie um 'ImagePlacementAbsorber' para coletar todas as imagens na página.
+1. Chame 'document.pages[1].accept(absorber)' para analisar as posições das imagens na primeira página.
+1. Itere através de 'absorber.image_placements' e exiba as principais propriedades de cada imagem:
+ - Largura e Altura (pontos).
+ - Coordenadas X (LLX) e Y (LLY) do canto inferior esquerdo.
+ - Resolução horizontal (X) e vertical (Y) (DPI).
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_params(infile):
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
+
+ for image_placement in absorber.image_placements:
+ print("image width: " + str(image_placement.rectangle.width))
+ print("image height: " + str(image_placement.rectangle.height))
+ print("image LLX: " + str(image_placement.rectangle.llx))
+ print("image LLY: " + str(image_placement.rectangle.lly))
+ print("image horizontal resolution: " + str(image_placement.resolution.x))
+ print("image vertical resolution: " + str(image_placement.resolution.y))
+```
+
+## Extrair e Contar Tipos de Imagem em um PDF
+
+Esta função analisa todas as imagens na primeira página de um PDF e conta quantas são imagens em escala de cinza e RGB.
+
+1. Crie um 'ImagePlacementAbsorber' para coletar todas as imagens na página.
+1. Inicializar contadores para imagens em escala de cinza e RGB.
+1. Chame 'document.pages[1].accept(absorber)' para analisar a colocação de imagens.
+1. Imprima o número total de imagens encontradas.
+1. Itere por cada imagem em 'absorber.image_placements':
+ - Obtenha o tipo de cor da imagem usando 'image_placement.image.get_color_type()'.
+ - Incrementar o contador correspondente (escala de cinza ou rgb).
+ - Imprimir uma mensagem para cada imagem indicando se ela é em escala de cinza ou RGB.
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_types_from_pdf(infile):
+ """
+ Extract and count image types (grayscale/RGB) with resolution analysis.
+
+ Args:
+ infile (str): Input PDF filename
+
+ Returns:
+ None
+
+ Example:
+ extract_image_types_from_pdf("sample_extr.pdf")
+
+ Note:
+ Prints total images count, color type for each image, and resolution info.
+ """
+
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+
+ # Counters for grayscale and RGB images
+ grayscaled = 0
+ rgb = 0
+
+ document.pages[1].accept(absorber)
+
+ print("--------------------------------")
+ print("Total Images = " + str(len(absorber.image_placements)))
+
+ image_counter = 1
+
+ for image_placement in absorber.image_placements:
+ # Determine the color type of the image
+ colorType = image_placement.image.get_color_type()
+ if colorType == ap.ColorType.GRAYSCALE:
+ grayscaled += 1
+ print(f"Image {image_counter} is Grayscale...")
+ elif colorType == ap.ColorType.RGB:
+ rgb += 1
+ print(f"Image {image_counter} is RGB...")
+ image_counter += 1
+
+ print("--------------------------------")
+ print("Grayscale Images = " + str(grayscaled))
+ print("RGB Images = " + str(rgb))
+```
+
+## Extrair informações detalhadas da imagem de um PDF
+
+Esta função analisa todas as imagens na primeira página de um PDF e calcula suas dimensões escalonadas e resolução efetiva com base nas transformações gráficas da página.
+
+1. Carregar PDF e inicializar variáveis
+1. Coletar recursos de imagem
+1. Processar operadores de conteúdo da página:
+ - 'GSave' - empurrar a CTM atual para a pilha.
+ - 'GRestore' - retirar a última CTM da pilha.
+ - 'ConcatenateMatrix' - atualize a CTM atual multiplicando‑a pela matriz do operador.
+1. Imprima o nome da imagem, dimensões escaladas e resolução calculada.
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_information_from_pdf(infile):
+ with ap.Document(infile) as document:
+ default_resolution = 72
+ graphics_state = []
+
+ image_names = list(document.pages[1].resources.images.names)
+
+ graphics_state.append(
+ drawing.drawing2d.Matrix(
+ float(1), float(0), float(0), float(1), float(0), float(0)
+ )
+ )
+
+ for op in document.pages[1].contents:
+ if is_assignable(op, ap.operators.GSave):
+ graphics_state.append(
+ cast(drawing.drawing2d.Matrix, graphics_state[-1]).clone()
+ )
+
+ elif is_assignable(op, ap.operators.GRestore):
+ graphics_state.pop()
+
+ elif is_assignable(op, ap.operators.ConcatenateMatrix):
+ op_cm = cast(ap.operators.ConcatenateMatrix, op)
+ cm = drawing.drawing2d.Matrix(
+ float(op_cm.matrix.a),
+ float(op_cm.matrix.b),
+ float(op_cm.matrix.c),
+ float(op_cm.matrix.d),
+ float(op_cm.matrix.e),
+ float(op_cm.matrix.f),
+ )
+
+ graphics_state[-1].multiply(cm)
+ continue
+
+ elif is_assignable(op, ap.operators.Do):
+ op_do = cast(ap.operators.Do, op)
+ if op_do.name in image_names:
+ last_ctm = cast(drawing.drawing2d.Matrix, graphics_state[-1])
+ index = image_names.index(op_do.name) + 1
+ image = document.pages[1].resources.images[index]
+
+ scaled_width = math.sqrt(
+ last_ctm.elements[0] ** 2 + last_ctm.elements[1] ** 2
+ )
+ scaled_height = math.sqrt(
+ last_ctm.elements[2] ** 2 + last_ctm.elements[3] ** 2
+ )
+
+ original_width = image.width
+ original_height = image.height
+
+ res_horizontal = (
+ original_width * default_resolution / scaled_width
+ )
+ res_vertical = (
+ original_height * default_resolution / scaled_height
+ )
+
+ info = (
+ f"{infile} image {op_do.name} "
+ f"({scaled_width:.2f}:{scaled_height:.2f}): "
+ f"res {res_horizontal:.2f} x {res_vertical:.2f}\n"
+ )
+ print(info.rstrip())
+```
+
+## Extrair Texto Alternativo de Imagens em um PDF
+
+Esta função recupera o texto alternativo (alt text) de todas as imagens na primeira página de um PDF, útil para verificações de acessibilidade e conformidade com PDF/UA.
+
+1. Carregue o documento PDF usando 'ap.Document()'.
+1. Crie um 'ImagePlacementAbsorber' para coletar todas as imagens na página.
+1. Aceite o absorvedor na primeira página (page.accept(absorber)).
+1. Itere por cada imagem em 'absorber.image_placements':
+ - Imprima o nome da imagem na coleção de recursos da página (get_name_in_collection()).
+ - Recupere o texto alternativo usando 'get_alternative_text(page)'.
+ - Imprima a primeira linha do texto alternativo.
+
+```python
+import math
+import aspose.pdf as ap
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as drawing
+
+def extract_image_alt_text(infile):
+ document = ap.Document(infile)
+ absorber = ap.ImagePlacementAbsorber()
+ page = document.pages[1]
+ page.accept(absorber)
+
+ for image_placement in absorber.image_placements:
+ print(
+ "Name in collection: " + str(image_placement.image.get_name_in_collection())
+ )
+ lines = image_placement.image.get_alternative_text(page)
+ print("Alt Text: " + lines[0])
+```
+
+## Tópicos Relacionados a Imagens
+
+- [Trabalhe com imagens em PDF usando Python](/pdf/pt/python-net/working-with-images/)
+- [Extrair imagens de arquivos PDF](/pdf/pt/python-net/extract-images-from-pdf-file/)
+- [Substituir imagens em arquivos PDF existentes](/pdf/pt/python-net/replace-image-in-existing-pdf-file/)
+- [Adicionar imagens a arquivos PDF existentes](/pdf/pt/python-net/add-image-to-existing-pdf-file/)
diff --git a/pt/python-net/advanced-operations/working-with-layers/_index.md b/pt/python-net/advanced-operations/working-with-layers/_index.md
new file mode 100644
index 0000000000..1c981af548
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-layers/_index.md
@@ -0,0 +1,220 @@
+---
+title: Trabalhar com Camadas PDF usando Python
+linktitle: Trabalhar com camadas PDF
+type: docs
+weight: 50
+url: /pt/python-net/working-with-pdf-layers/
+description: Aprenda a adicionar, bloquear, extrair, achatar e mesclar camadas de PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerencie camadas de PDF com Python
+Abstract: Este artigo explica como trabalhar com camadas PDF (Grupos de Conteúdo Opcional) usando Aspose.PDF for Python via .NET. Aprenda como adicionar camadas, bloquear a visibilidade das camadas, extrair o conteúdo da camada, achatar o conteúdo em camadas e mesclar camadas em uma única.
+---
+
+As camadas de PDF, também chamadas de Grupos de Conteúdo Opcional (OCGs), permitem organizar o conteúdo em grupos visuais separados que podem ser exibidos ou ocultados em visualizadores de PDF compatíveis. No Aspose.PDF, as operações de camada são construídas em torno do [`Layer`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/) API.
+
+Com Aspose.PDF for Python via .NET, você pode:
+
+- Adicionar várias camadas a uma página.
+- Bloqueie e desbloqueie camadas para controlar o comportamento de visibilidade.
+- Extrair camadas em arquivos ou fluxos separados.
+- Achatar conteúdo em camadas na página.
+- Mesclar várias camadas em uma camada.
+
+## Adicionar Camadas a um PDF
+
+Este exemplo cria um PDF com três camadas. Ele usa um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), adiciona um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/), e adiciona [`Layer`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/) objetos para essa página.
+
+1. Criar um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) e adicione um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Crie e adicione a camada vermelha.
+1. Crie e adicione a camada verde.
+1. Crie e adicione a camada azul.
+1. Salve o documento PDF.
+
+O PDF resultante conterá três camadas separadas: uma linha vermelha, uma linha verde e uma linha azul. Cada uma pode ser ativada ou desativada em leitores de PDF que suportam conteúdo em camadas.
+
+```python
+import aspose.pdf as ap
+
+def add_layers(outfile: str) -> None:
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Red layer
+ layer = ap.Layer("oc1", "Red Line")
+ layer.contents.append(ap.operators.SetRGBColorStroke(1, 0, 0))
+ layer.contents.append(ap.operators.MoveTo(500, 700))
+ layer.contents.append(ap.operators.LineTo(400, 700))
+ layer.contents.append(ap.operators.Stroke())
+ page.layers.append(layer)
+
+ # Green layer
+ layer = ap.Layer("oc2", "Green Line")
+ layer.contents.append(ap.operators.SetRGBColorStroke(0, 1, 0))
+ layer.contents.append(ap.operators.MoveTo(500, 750))
+ layer.contents.append(ap.operators.LineTo(400, 750))
+ layer.contents.append(ap.operators.Stroke())
+ page.layers.append(layer)
+
+ # Blue layer
+ layer = ap.Layer("oc3", "Blue Line")
+ layer.contents.append(ap.operators.SetRGBColorStroke(0, 0, 1))
+ layer.contents.append(ap.operators.MoveTo(500, 800))
+ layer.contents.append(ap.operators.LineTo(400, 800))
+ layer.contents.append(ap.operators.Stroke())
+ page.layers.append(layer)
+
+ document.save(outfile)
+ print(f"Layers added successfully. File saved at {outfile}")
+```
+
+## Bloquear uma camada PDF
+
+Este exemplo abre um PDF, bloqueia uma camada específica na primeira página e salva o arquivo atualizado.
+
+Bloquear uma camada impede que os usuários alterem o estado de visibilidade dessa camada em visualizadores de PDF compatíveis. As camadas são acessadas a partir de uma página e gerenciadas através da coleção de camadas da página.
+
+Métodos e propriedades disponíveis:
+
+- [`Layer.lock()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods) bloqueia a camada.
+- [`Layer.unlock()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods) desbloqueia a camada.
+- [`Layer.locked`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#properties) retorna o estado atual de bloqueio.
+
+1. Abra o documento PDF.
+1. Acesse a primeira página do PDF.
+1. Verifique se a página tem camadas.
+1. Obtenha a primeira camada e bloqueie-a.
+1. Salve o PDF atualizado.
+
+Se o PDF contiver camadas, a primeira camada será travada, garantindo que seu estado de visibilidade não possa ser alterado pelo usuário. Se nenhuma camada for encontrada, uma mensagem será impressa em vez disso.
+
+```python
+import aspose.pdf as ap
+
+def lock_layer(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ if len(page.layers) > 0:
+ layer = page.layers[0]
+ layer.lock()
+ document.save(outfile)
+ print(f"Layer locked successfully. File saved at {outfile}")
+ else:
+ print("No layers found in the document.")
+```
+
+## Extrair elementos de camada PDF
+
+Este exemplo usa a biblioteca Aspose.PDF for Python via .NET para extrair camadas individuais da primeira página de um documento PDF e salvar cada camada como um arquivo PDF separado usando [`Layer.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods).
+
+Para criar um novo PDF a partir de uma camada, o seguinte trecho de código pode ser usado:
+
+1. Carregue o PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Acesse as camadas na página 1 até [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Verifique se as camadas existem.
+1. Iterar pelas camadas e salvar cada uma.
+
+```python
+import aspose.pdf as ap
+
+def extract_layers(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ layers = document.pages[1].layers
+
+ if len(layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ index = 1
+ for layer in layers:
+ output_file = outfile.replace(".pdf", f"{index}.pdf")
+ layer.save(output_file)
+ print(f"Layer {index} saved to {output_file}")
+ index += 1
+```
+
+É possível extrair elementos de camada PDF e salvá-los em um novo fluxo de arquivo PDF:
+
+```python
+from io import FileIO
+import aspose.pdf as ap
+
+def extract_layers_stream(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+
+ if len(document.pages[1].layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ layer = document.pages[1].layers[0]
+
+ with FileIO(outfile, "wb") as output_layer:
+ layer.save(output_layer)
+ print(f"Layer extracted to stream: {outfile}")
+```
+
+## Aplanar um PDF em camadas
+
+Este script usa Aspose.PDF for Python via .NET para achatar todas as camadas na primeira página de um PDF Document. O aplanamento mescla o conteúdo visual de cada camada em uma camada unificada, facilitando a impressão, o compartilhamento ou o arquivamento sem perder a fidelidade visual ou os dados específicos de camada. A operação é executada com [`Layer.flatten()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/layer/#methods).
+
+1. Carregue o documento PDF.
+1. Acessar camadas na página 1.
+1. Verifique se as camadas existem.
+1. Achatar cada camada com `layer.flatten(True)`.
+1. Salve o documento modificado.
+
+```python
+import aspose.pdf as ap
+
+def flatten_layers(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ layers = document.pages[1].layers
+
+ if len(layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ for layer in layers:
+ layer.flatten(True)
+
+ document.save(outfile)
+ print(f"Layers flattened successfully. File saved at {outfile}")
+```
+
+## Mesclar Todas as Camadas de um PDF em Uma
+
+Este trecho de código usa Aspose.PDF para mesclar todas as camadas na primeira página de um PDF em uma única camada unificada com um nome personalizado usando [`Page.merge_layers()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods).
+
+1. Carregue o documento PDF.
+1. Acesse a página 1 e recupere suas camadas.
+1. Verifique se as camadas existem.
+1. Defina um novo nome de camada.
+1. Mescle as camadas em uma.
+1. Salvar o documento.
+
+```python
+import aspose.pdf as ap
+
+def merge_layers(infile: str, outfile: str) -> None:
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ if len(page.layers) == 0:
+ print("No layers found in the document.")
+ return
+
+ new_layer_name = "LayerNew"
+ page.merge_layers(new_layer_name)
+ document.save(outfile)
+ print(f"Layers merged successfully. File saved at {outfile}")
+```
+
+## Tópicos de Camada Relacionados
+
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Trabalhar com tabelas em PDF usando Python](/pdf/pt/python-net/working-with-tables/)
+- [Adicionar páginas PDF em Python](/pdf/pt/python-net/add-pages/)
diff --git a/pt/python-net/advanced-operations/working-with-operators/_index.md b/pt/python-net/advanced-operations/working-with-operators/_index.md
new file mode 100644
index 0000000000..702c1633f1
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-operators/_index.md
@@ -0,0 +1,183 @@
+---
+title: Trabalhar com Operadores PDF em Python
+linktitle: Trabalhando com Operadores
+type: docs
+weight: 90
+url: /pt/python-net/working-with-operators/
+description: Aprenda como usar operadores PDF de baixo nível em Python para manipulação precisa de fluxo de conteúdo e controle de gráficos.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Use operadores PDF de baixo nível para controle de fluxo de conteúdo em Python
+Abstract: Este artigo explica como trabalhar com operadores PDF de baixo nível no Aspose.PDF for Python via .NET. Aprenda como manipular fluxos de conteúdo diretamente, posicionar gráficos com precisão usando classes de operador e remover objetos desenhados das páginas PDF em fluxos de trabalho Python.
+---
+
+## Introdução aos Operadores PDF e Seu Uso
+
+Um operador é uma palavra‑chave PDF que especifica alguma ação a ser executada, como pintar uma forma gráfica na página. Uma palavra‑chave de operador se diferencia de um objeto nomeado pela ausência de um caractere de barra inicial (2Fh). Operadores são significativos somente dentro do fluxo de conteúdo.
+
+Um fluxo de conteúdo é um objeto de fluxo PDF cujo dados consistem em instruções que descrevem os elementos gráficos a serem pintados em uma página. Mais detalhes sobre operadores PDF podem ser encontrados no [Especificação PDF](https://opensource.adobe.com/dc-acrobat-sdk-docs/).
+
+Use esta página quando precisar de controle direto sobre fluxos de conteúdo PDF em Python, como posicionar gráficos em coordenadas exatas, encapsular alterações de estado gráfico ou remover operadores de desenho específicos de uma página.
+
+## Adicionar Imagens com Classes de Operadores
+
+Use classes de operadores de baixo nível quando precisar posicionar o conteúdo de imagem com muita precisão em um fluxo de página PDF, sem depender de abstrações de layout de nível superior.
+
+Este método fornece controle granular sobre o posicionamento de imagens dentro de um PDF ao manipular diretamente o fluxo de conteúdo com operadores gráficos de baixo nível. É particularmente útil quando o posicionamento preciso e a transformação de imagens são necessários, tais como:
+
+- adicionar marcas d'água ou logotipos em locais específicos.
+- sobrepor imagens ao conteúdo existente com alinhamento exato.
+- implementar layouts personalizados que não são alcançáveis com abstrações de nível mais alto.
+
+Ao usar operadores como GSave, ConcatenateMatrix, Do e GRestore, os desenvolvedores podem garantir que as imagens sejam renderizadas com precisão e sem efeitos colaterais indesejados no conteúdo de outras páginas.
+
+- O [GSave](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/gsave/) operador salva o estado gráfico atual do PDF.
+- O [ConcatenateMatrix](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/concatenatematrix/) (concatenate matrix) operador é usado para definir como uma imagem deve ser posicionada na página PDF.
+- O [Do](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/do/) operador desenha a imagem na página.
+- O [GRestore](https://reference.aspose.com/pdf/python-net/aspose.pdf.operators/grestore/) o operador restaura o estado gráfico.
+
+Para adicionar uma imagem em um arquivo PDF:
+
+1. Abrir o Documento PDF
+1. Definir coordenadas de posicionamento da imagem
+1. Acessar a página alvo
+1. Carregar a imagem em um fluxo
+1. Salvar o estado gráfico atual
+1. Criar um Retângulo e Matriz de Transformação
+1. Aplicar a Matriz de Transformação
+1. Desenhar a Imagem
+1. Restaurar o Estado Gráfico Anterior
+1. Salvar o Documento PDF Modificado
+
+O trecho de código a seguir mostra como usar os operadores PDF:
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_image_using_pdf_operators(infile, imagefile, outfile):
+ with ap.Document(infile) as document:
+ lower_left_x = 100
+ lower_left_y = 100
+ upper_right_x = 200
+ upper_right_y = 200
+
+ page = document.pages[1]
+
+ with open(imagefile, "rb") as image_stream:
+ page.resources.images.add(image_stream)
+
+ page.contents.append(ap.operators.GSave())
+
+ rectangle = ap.Rectangle(
+ lower_left_x, lower_left_y, upper_right_x, upper_right_y, True
+ )
+ matrix = ap.Matrix(
+ [
+ rectangle.urx - rectangle.llx,
+ 0,
+ 0,
+ rectangle.ury - rectangle.lly,
+ rectangle.llx,
+ rectangle.lly,
+ ]
+ )
+
+ page.contents.append(ap.operators.ConcatenateMatrix(matrix))
+
+ x_image = page.resources.images[len(page.resources.images)]
+
+ page.contents.append(ap.operators.Do(x_image.name))
+
+ page.contents.append(ap.operators.GRestore())
+
+ document.save(outfile)
+```
+
+## Desenhar XForm na Página usando Operadores
+
+Este exemplo usou o poder dos XForms e dos operadores gráficos para reutilizar de forma eficiente o conteúdo gráfico dentro de um PDF. Ao encapsular a imagem em um XForm, ela pode ser desenhada várias vezes sem duplicar os dados da imagem, resultando em tamanhos de arquivo menores e melhor desempenho. Essa abordagem é particularmente benéfica quando:
+
+- a mesma imagem ou gráfico precisa aparecer várias vezes em um documento.
+- É necessário um controle preciso sobre a colocação e transformação de gráficos.
+- A otimização do PDF para desempenho e tamanho é uma prioridade.
+
+Ao gerenciar o estado gráfico com GSave e GRestore, e usar matrizes de transformação com ConcatenateMatrix, esta técnica garante que cada gráfico seja renderizado corretamente e de forma independente.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def draw_xform_on_page(infile, imagefile, outfile):
+ with ap.Document(infile) as document:
+ page_contents = document.pages[1].contents
+
+ page_contents.insert(1, ap.operators.GSave())
+ page_contents.append(ap.operators.GRestore())
+
+ page_contents.append(ap.operators.GSave())
+
+ form = ap.XForm.create_new_form(document.pages[1], document)
+ document.pages[1].resources.forms.append(form)
+
+ form.contents.append(ap.operators.GSave())
+ form.contents.append(ap.operators.ConcatenateMatrix(200, 0, 0, 200, 0, 0))
+
+ with open(imagefile, "rb") as image_stream:
+ form.resources.images.add(image_stream)
+
+ x_image = form.resources.images[len(form.resources.images)]
+ form.contents.append(ap.operators.Do(x_image.name))
+ form.contents.append(ap.operators.GRestore())
+
+ # Draw XForm at (100, 500)
+ page_contents.append(ap.operators.GSave())
+ page_contents.append(ap.operators.ConcatenateMatrix(1, 0, 0, 1, 100, 500))
+ page_contents.append(ap.operators.Do(form.name))
+ page_contents.append(ap.operators.GRestore())
+
+ # Draw XForm at (100, 300)
+ page_contents.append(ap.operators.GSave())
+ page_contents.append(ap.operators.ConcatenateMatrix(1, 0, 0, 1, 100, 300))
+ page_contents.append(ap.operators.Do(form.name))
+ page_contents.append(ap.operators.GRestore())
+
+ page_contents.append(ap.operators.GRestore())
+
+ document.save(outfile)
+```
+
+## Remover objetos gráficos usando classes de operador
+
+O trecho de código a seguir mostra como remover gráficos. Observe que, se o arquivo PDF contiver rótulos de texto para os gráficos, eles podem permanecer no arquivo PDF ao usar esta abordagem. Portanto, procure os operadores gráficos por um método alternativo para excluir essas imagens.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_graphics_objects(infile, outfile):
+ with ap.Document(infile) as document:
+ page = document.pages[1]
+ # Collect operators to remove in single pass
+ # Operator codes: S=Stroke, h=ClosePathStroke, f=Fill'
+ graphics_operators = {"S", "h", "f"}
+ operators_to_remove = [
+ op for op in page.contents if str(op) in graphics_operators
+ ]
+
+ page.contents.delete(operators_to_remove)
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Operações avançadas de PDF em Python](/pdf/pt/python-net/advanced-operations/)
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Trabalhar com imagens em PDF usando Python](/pdf/pt/python-net/working-with-images/)
+- [Trabalhe com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
diff --git a/pt/python-net/advanced-operations/working-with-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/_index.md
index 8b1f27dca7..554be451f5 100644
--- a/pt/python-net/advanced-operations/working-with-pages/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/_index.md
@@ -1,164 +1,34 @@
---
-title: Trabalhando com Páginas de PDF em Python
-linktitle: Trabalhando com Páginas
+title: Trabalhar com páginas PDF em Python
+linktitle: Trabalhando com páginas
type: docs
weight: 20
url: /pt/python-net/working-with-pages/
-description: Como adicionar páginas, adicionar cabeçalhos e rodapés, adicionar marcas d'água você pode saber nesta seção. Aspose.PDF para Python via .NET explica a você todos os detalhes sobre este tópico.
-lastmod: "2023-04-19"
+description: Aprenda como adicionar, mover, girar, recortar, extrair, aplicar carimbo e gerenciar páginas PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar páginas PDF em Python
+Abstract: Esta seção mostra como trabalhar com páginas PDF usando Aspose.PDF for Python via .NET. Ela abrange a adição, exclusão, movimentação, extração, rotação, redimensionamento, recorte e aplicação de carimbo em páginas, bem como o gerenciamento de propriedades de página, cabeçalhos, rodapés e numeração.
---
-
+Use esta seção quando precisar executar operações de PDF ao nível de página em Python.
-**Aspose.PDF for Python via .NET** permite que você insira uma página em um documento PDF em qualquer local do arquivo, bem como adicione páginas ao final de um arquivo PDF. Esta seção mostra como adicionar páginas a um PDF sem o Acrobat Reader. Você pode adicionar texto ou imagens nos cabeçalhos e rodapés do seu arquivo PDF e escolher diferentes cabeçalhos em seu documento com a biblioteca Python da Aspose. Além disso, tente cortar páginas em um documento PDF programaticamente usando Python.
+Com **Aspose.PDF for Python via .NET**, você pode inserir, excluir, mover, extrair, girar, redimensionar e recortar páginas, e então aplicar cabeçalhos, rodapés, números de página, marcas d'água e carimbos para fluxos de trabalho de layout e revisão.
-Esta seção ensina como adicionar marcas d'água em seu arquivo PDF usando a classe Artifact. Você verificará o exemplo de programação para esta tarefa. Adicione o número da página usando a classe [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/). Para adicionar um carimbo em seu documento, use as classes [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) e [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/). Use a adição de uma marca d'água para criar imagens de fundo em seu arquivo PDF com **Aspose.PDF for Python via .NET**.
+## Tarefas de Página Cobertas
+As tarefas a seguir são cobertas:
-Você pode fazer o seguinte:
-
-- [Adicionar Páginas](/pdf/pt/python-net/add-pages/) - adicionar páginas no local desejado ou ao final de um arquivo PDF e excluir uma página do seu documento.
-- [Mover Páginas](/pdf/pt/python-net/move-pages/) - mover páginas de um documento para outro.
-- [Excluir Páginas](/pdf/pt/python-net/delete-pages/) - excluir página do seu arquivo PDF usando a coleção PageCollection.
-- [Alterar Tamanho da Página](/pdf/pt/python-net/change-page-size/) - você pode alterar o tamanho da página do PDF com um trecho de código usando a biblioteca Aspose.PDF.
-- [Rotacionar Páginas](/pdf/pt/python-net/rotate-pages/) - você pode alterar a orientação das páginas em um arquivo PDF existente.
-- [Dividir Páginas](/pdf/pt/python-net/split-document/) - você pode dividir arquivos PDF em um ou vários PDFs.
-- [Adicionar Cabeçalhos e/ou Rodapés](/pdf/pt/python-net/add-headers-and-footers-of-pdf-file/) - adicionar texto ou imagens nos cabeçalhos e rodapés do seu arquivo PDF.
-- [Cortar Páginas](/pdf/pt/python-net/crop-pages/) - você pode cortar páginas em um documento PDF programaticamente com diferentes Propriedades de Página.
-
-- [Adicionar Marca d'água](/pdf/pt/python-net/add-watermarks/) - adicionar marcas d'água no seu arquivo PDF com a Classe Artifact.
-- [Adicionar Numeração de Página em Arquivo PDF](/pdf/pt/python-net/add-page-number/) - A classe PageNumberStamp ajudará você a adicionar um número de página no seu arquivo PDF.
-- [Adicionar Fundos](/pdf/pt/python-net/add-backgrounds/) - imagens de fundo podem ser usadas para adicionar uma marca d'água.
-- [Carimbar](/pdf/pt/python-net/stamping/) - você pode usar a classe ImageStamp para adicionar um carimbo de imagem a um arquivo PDF e a classe TextStamp para adicionar um texto.
-- [Obter e Definir Propriedades da Página](/pdf/pt/python-net/get-and-set-page-properties/) - esta seção mostra como obter o número de páginas em um arquivo PDF, obter informações sobre propriedades de página do PDF, como cor, e definir propriedades da página.
-
-
\ No newline at end of file
+- [Adicionando Páginas](/pdf/pt/python-net/add-pages/) - inserir páginas em posições específicas ou anexar páginas ao final de um documento.
+- [Movendo Páginas](/pdf/pt/python-net/move-pages/) - mover páginas dentro de um documento ou entre documentos.
+- [Excluindo Páginas](/pdf/pt/python-net/delete-pages/) - remover páginas de um documento PDF.
+- [Extraindo Páginas](/pdf/pt/python-net/extract-pages/) - extrair páginas selecionadas para um novo arquivo PDF.
+- [Rotacionando Páginas](/pdf/pt/python-net/rotate-pages/) - alterar a orientação da página em um arquivo PDF existente.
+- [Alterando o Tamanho da Página](/pdf/pt/python-net/change-page-size/) - redimensionar as dimensões da página em um documento PDF.
+- [Adicionando Cabeçalhos e Rodapés](/pdf/pt/python-net/add-headers-and-footers-of-pdf-file/) - adicionar texto, imagens ou conteúdo estruturado de cabeçalho/rodapé recorrente.
+- [Recortando Páginas PDF](/pdf/pt/python-net/crop-pages/) - cortar o conteúdo da página usando configurações de geometria da página.
+- [Obter e Definir Propriedades da Página](/pdf/pt/python-net/get-and-set-page-properties/) - acessar e modificar várias propriedades das páginas PDF, como tamanho, rotação e atributos de cor.
+- [Carimbagem](/pdf/pt/python-net/stamping/) - aplicar carimbos de texto, imagem, página e número de página nas páginas PDF.
diff --git a/pt/python-net/advanced-operations/working-with-pages/add-backgrounds/_index.md b/pt/python-net/advanced-operations/working-with-pages/add-backgrounds/_index.md
deleted file mode 100644
index 9bfcded61e..0000000000
--- a/pt/python-net/advanced-operations/working-with-pages/add-backgrounds/_index.md
+++ /dev/null
@@ -1,170 +0,0 @@
----
-title: Adicionar fundo ao PDF com Python
-linktitle: Adicionar fundos
-type: docs
-weight: 20
-url: /pt/python-net/add-backgrounds/
-description: Adicione imagem de fundo ao seu arquivo PDF com Python. Use a classe BackgroundArtifact.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-Imagens de fundo podem ser usadas para adicionar uma marca d'água ou outro design sutil aos documentos. No Aspose.PDF para Python via .NET, cada documento PDF é uma coleção de páginas e cada página contém uma coleção de artefatos. A classe [BackgroundArtifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/backgroundartifact/) pode ser usada para adicionar uma imagem de fundo a um objeto de página.
-
-O trecho de código a seguir mostra como adicionar uma imagem de fundo às páginas do PDF usando o objeto BackgroundArtifact com Python.
-
-```python
-
- import aspose.pdf as ap
-
- # Criar um novo objeto Document
- document = ap.Document()
-
- # Adicionar uma nova página ao objeto documento
- page = document.pages.add()
-
- # Criar objeto Background Artifact
- background = ap.BackgroundArtifact()
-
- # Especificar a imagem para o objeto backgroundartifact
- background.background_image = io.FileIO(input_image_file)
-
- # Adicionar backgroundartifact à coleção de artefatos da página
- page.artifacts.append(background)
-
- # Salvar o documento
- document.save(output_pdf)
-```
-
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/add-page-number/_index.md b/pt/python-net/advanced-operations/working-with-pages/add-page-number/_index.md
deleted file mode 100644
index 99e86a1fc3..0000000000
--- a/pt/python-net/advanced-operations/working-with-pages/add-page-number/_index.md
+++ /dev/null
@@ -1,182 +0,0 @@
----
-title: Adicionar Número de Página ao PDF com Python
-linktitle: Adicionar Número de Página
-type: docs
-weight: 30
-url: /pt/python-net/add-page-number/
-description: Aspose.PDF para Python via .NET permite que você adicione Carimbo de Número de Página ao seu arquivo PDF usando a classe PageNumberStamp.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-All the documents must have page numbers in it. The page number makes it easier for the reader to locate different parts of the document. **Aspose.PDF para Python via .NET** permite adicionar números de página com [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/).
-
-Você pode usar a classe [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) para adicionar uma marca de número de página em um arquivo PDF.
- [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) class fornece propriedades necessárias para criar um carimbo baseado em número de página como formato, margens, alinhamentos, número inicial etc. Para adicionar um carimbo de número de página, você precisa criar um objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) e um objeto [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) usando as propriedades necessárias. Depois disso, você pode chamar o método [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) da [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) para adicionar o carimbo no PDF. Você também pode definir os atributos de fonte do carimbo de número de página. O trecho de código a seguir mostra como adicionar números de página em um arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
-
- # Criar carimbo de número de página
- page_number_stamp = ap.PageNumberStamp()
- # Se o carimbo é de fundo
- page_number_stamp.background = False
- page_number_stamp.format = "Página # de " + str(len(document.pages))
- page_number_stamp.bottom_margin = 10
- page_number_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- page_number_stamp.starting_number = 1
- # Definir propriedades do texto
- page_number_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
- page_number_stamp.text_state.font_size = 14.0
- page_number_stamp.text_state.font_style = ap.text.FontStyles.BOLD
- page_number_stamp.text_state.font_style = ap.text.FontStyles.ITALIC
- page_number_stamp.text_state.foreground_color = ap.Color.aqua
-
- # Adicionar carimbo à página específica
- document.pages[1].add_stamp(page_number_stamp)
-
- # Salvar documento de saída
- document.save(output_pdf)
-```
-
-## Exemplo ao Vivo
-
-[Adicionar números de página em PDF](https://products.aspose.app/pdf/page-number) é uma aplicação web gratuita online que permite investigar como a funcionalidade de adicionar números de página funciona.
-
-[](https://products.aspose.app/pdf/page-number)
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/add-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/add-pages/_index.md
index bb9556b8ef..7854e195ef 100644
--- a/pt/python-net/advanced-operations/working-with-pages/add-pages/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/add-pages/_index.md
@@ -1,133 +1,96 @@
---
-title: Adicionar Páginas em PDF com Python
-linktitle: Adicionar Páginas
+title: Adicionar páginas PDF em Python
+linktitle: Adicionando páginas
type: docs
weight: 10
url: /pt/python-net/add-pages/
-description: Este artigo ensina como inserir (adicionar) uma página no local desejado em um arquivo PDF. Aprenda a mover, remover (excluir) páginas de um arquivo PDF usando C#.
-lastmod: "2022-02-17"
+description: Aprenda como adicionar ou inserir páginas em documentos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar ou inserir páginas PDF com Python
+Abstract: Este artigo explica como adicionar páginas a arquivos PDF usando Aspose.PDF for Python via .NET. Aprenda como inserir páginas em branco em posições específicas, anexar páginas ao final de um documento e importar uma página de outro PDF usando as APIs Document e PageCollection.
---
-
-
-
-Aspose.PDF para Python via .NET API fornece total flexibilidade para trabalhar com páginas em um documento PDF usando Python. Ele mantém todas as páginas de um documento PDF em [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) que pode ser usada para trabalhar com páginas PDF. Aspose.PDF para Python via .NET permite que você insira uma página em um documento PDF em qualquer local no arquivo, bem como adicione páginas ao final de um arquivo PDF. Esta seção mostra como adicionar páginas a um PDF usando Python.
-
-## Adicionar ou Inserir Página em um Arquivo PDF
-
-Aspose.PDF para Python via .NET permite que você insira uma página em um documento PDF em qualquer local no arquivo, bem como adicione páginas ao final de um arquivo PDF.
-
-### Inserir Página Vazia em um Arquivo PDF no Local Desejado
-Para inserir uma página vazia em um arquivo PDF:
+Aspose.PDF for Python via .NET oferece operações flexíveis em nível de página para documentos PDF. Você pode gerenciar páginas através de [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) e adicionar páginas a um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) em posições específicas ou ao final do arquivo.
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de entrada.
+Use esta página quando precisar inserir novas páginas em branco em um PDF existente ou acrescentar páginas ao final de um documento durante fluxos de trabalho de geração.
-1. Chame o método [insert](https://reference.aspose.com/pdf/net/aspose.pdf/pagecollection/methods/insert) da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) com o índice especificado.
-1. Salve o PDF de saída usando o método [save](https://reference.aspose.com/pdf/net/aspose.pdf.document/save/methods/4).
+## Adicionar ou Inserir Páginas em um Arquivo PDF
-O trecho de código a seguir mostra como inserir uma página em um arquivo PDF.
+Aspose.PDF for Python via .NET suporta tanto a inserção de página em um índice específico quanto a anexação de páginas ao final de um PDF.
-```python
+### Inserir uma Página Vazia em um Arquivo PDF
+
+Para inserir uma página vazia em um arquivo PDF:
+
+1. Abrir um existente [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando métodos apropriados.
+1. Insira uma nova página vazia em um índice específico usando o [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) `insert()` método.
+1. Salvar o modificado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para o caminho de saída desejado.
- import aspose.pdf as ap
+Inserir uma página vazia em um arquivo PDF existente em uma posição especificada:
- # Abrir documento
- document = ap.Document(input_pdf)
- # Inserir uma página vazia em um PDF
+```python
+import aspose.pdf as ap
+
+def insert_empty_page(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
document.pages.insert(2)
- # Salvar arquivo de saída
- document.save(output_pdf)
+ document.save(output_file_name)
```
-### Adicionar uma Página Vazia no Final de um Arquivo PDF
-
-Às vezes, você quer garantir que um documento termine em uma página vazia. Este tópico explica como inserir uma página vazia no final do documento PDF.
+### Adicionar uma Página em Branco ao Final de um Arquivo PDF
-Para inserir uma página vazia no final de um arquivo PDF:
+Às vezes, você deseja garantir que um documento termine em uma página em branco. Este tópico explica como inserir uma página em branco ao final do documento PDF.
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de entrada.
+Para inserir uma página em branco ao final de um arquivo PDF:
-1. Chame o método [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) sem nenhum parâmetro.
-1. Salve o PDF de saída usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Abrir um existente [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando métodos apropriados.
+1. Adicione uma nova página em branco ao final do documento usando o [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) `add()` método.
+1. Salvar o atualizado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
O trecho de código a seguir mostra como inserir uma página vazia no final de um arquivo PDF.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
+def add_empty_page_to_end(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ document.pages.add()
+ document.save(output_file_name)
+```
- # Abrir documento
- document = ap.Document(input_pdf)
+### Adicionar uma página de outro documento PDF
- # Inserir uma página vazia no final de um arquivo PDF
- document.pages.add()
+Com Aspose.PDF for Python via .NET, você pode criar um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/), adicione uma página inicial e, em seguida, importe uma página de outro PDF para ela.
+
+1. Criar um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Adicionar um novo em branco [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) e escreva algum texto nele usando [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/).
+1. Abra outro existente [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Copiar um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) do documento.
+1. Cole a página copiada no seu documento principal usando [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Salve o arquivo combinado.
+
+```python
+import aspose.pdf as ap
+
+def add_page_from_another_document(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document()
+ page = document.pages.add()
+ text_fragment = ap.text.TextFragment("This is first page!")
+ page.paragraphs.add(text_fragment)
+
+ another_document = ap.Document(input_file_name)
+ document.pages.add(another_document.pages[1])
+
+ document.save(output_file_name)
+```
+
+## Tópicos Relacionados da Página
- # Salvar arquivo de saída
- document.save(output_pdf)
\ No newline at end of file
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Mover páginas PDF em Python](/pdf/pt/python-net/move-pages/)
+- [Excluir páginas de PDF em Python](/pdf/pt/python-net/delete-pages/)
+- [Extrair páginas de PDF em Python](/pdf/pt/python-net/extract-pages/)
diff --git a/pt/python-net/advanced-operations/working-with-pages/add-watermarks/_index.md b/pt/python-net/advanced-operations/working-with-pages/add-watermarks/_index.md
deleted file mode 100644
index 866d5dcc8c..0000000000
--- a/pt/python-net/advanced-operations/working-with-pages/add-watermarks/_index.md
+++ /dev/null
@@ -1,187 +0,0 @@
----
-title: Adicionar marca d'água ao PDF usando Python
-linktitle: Adicionar marca d'água
-type: docs
-weight: 40
-url: /pt/python-net/add-watermarks/
-description: Este artigo explica os recursos de trabalhar com artefatos e obter marcas d'água em PDFs programaticamente usando Python.
-lastmod: "2023-04-17"
-sitemap:
- changefreq: "monthly"
- priority: 0.7
----
-
-
-
-**Aspose.PDF para Python via .NET** permite adicionar marcas d'água ao seu documento PDF usando Artefatos. Por favor, verifique este artigo para resolver sua tarefa.
-
-Para trabalhar com artefatos, o Aspose.PDF possui duas classes: [Artifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) e [ArtifactCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifactcollection/).
-
-Para obter todos os artefatos em uma página específica, a classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) possui a propriedade Artifacts. Este tópico explica como trabalhar com artefatos em arquivos PDF.
-
-## Trabalhando com Artefatos
-
-A classe [Artifact](https://reference.aspose.com/pdf/python-net/aspose.pdf/artifact/) contém as seguintes propriedades:
-
-**contents** – Obtém uma coleção de operadores internos de artefato. Seu tipo suportado é System.Collections.ICollection.
-**form** – Obtém o XForm de um artefato (se XForm for usado). Artefatos de marcas d'água, cabeçalho e rodapé contêm XForm que mostra todos os conteúdos do artefato.
-
-**image** – Obtém a imagem de um artefato (se uma imagem estiver presente, caso contrário, nula).
-**text** – Obtém o texto de um artefato.
-**rectangle** – Obtém a posição de um artefato na página.
-**rotation** – Obtém a rotação de um artefato (em graus, valor positivo indica rotação no sentido anti-horário).
-**opacity** – Obtém a opacidade de um artefato. Os valores possíveis estão na faixa de 0…1, onde 1 é completamente opaco.
-
-## Exemplos de Programação: Como Adicionar Marca D'água em Arquivos PDF
-
-O trecho de código a seguir mostra como obter cada marca d'água na primeira página de um arquivo PDF com Python.
-
-```python
- import aspose.pdf as ap
-
- document = ap.Document(input_pdf)
- artifact = ap.WatermarkArtifact()
-
- ts = ap.text.TextState()
- ts.font_size = 72
- ts.foreground_color = ap.Color.blue
- ts.font = ap.text.FontRepository.find_font("Courier")
-
- artifact.set_text_and_state("WATERMARK", ts)
- artifact.artifact_horizontal_alignment = ap.HorizontalAlignment.CENTER
- artifact.artifact_vertical_alignment = ap.VerticalAlignment.CENTER
- artifact.rotation = 45
- artifact.opacity = 0.5
- artifact.is_background = True
- document.pages[1].artifacts.append(artifact)
- document.save(output_pdf)
-```
-
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md
index 1383480d9c..bc154364ea 100644
--- a/pt/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/adding-headers-and-footers-of-pdf-file/_index.md
@@ -1,308 +1,343 @@
---
-title: Adicionar Cabeçalho e Rodapé ao PDF usando Python
-linktitle: Adicionar Cabeçalho e Rodapé ao PDF
+title: Adicionar Cabeçalhos e Rodapés de PDF em Python
+linktitle: Adicionando Cabeçalho e Rodapé ao PDF
type: docs
weight: 50
url: /pt/python-net/add-headers-and-footers-of-pdf-file/
-description: Aspose.PDF para Python via .NET permite que você adicione cabeçalhos e rodapés ao seu arquivo PDF usando a classe TextStamp.
-lastmod: "2023-04-17"
+description: Aprenda como adicionar cabeçalhos e rodapés a arquivos PDF em Python usando texto, imagens e conteúdo estruturado.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicione cabeçalhos e rodapés a arquivos PDF com Python
+Abstract: Este artigo mostra como adicionar cabeçalhos e rodapés a documentos PDF com Aspose.PDF for Python via .NET. Ele abrange texto, numeração de páginas, HTML, imagem, tabela e conteúdo de cabeçalho e rodapé baseado em LaTeX.
---
-
-
-
-**Aspose.PDF for Python via .NET** permite que você adicione cabeçalho e rodapé em seu arquivo PDF existente. Você pode adicionar imagens ou texto a um documento PDF. Além disso, tente adicionar diferentes cabeçalhos em um arquivo PDF com Python.
-
-## Adicionando Texto no Cabeçalho do Arquivo PDF
-
-Você pode usar a classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) para adicionar texto no cabeçalho de um arquivo PDF. A classe TextStamp fornece as propriedades necessárias para criar um carimbo baseado em texto, como tamanho da fonte, estilo da fonte e cor da fonte, etc. Para adicionar texto no cabeçalho, você precisa criar um objeto Document e um objeto TextStamp usando as propriedades necessárias. Depois disso, você pode chamar o método 'add_stamp' da Página para adicionar o texto no cabeçalho do PDF.
-
-Você precisa definir a propriedade [top_margin](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties) de forma que ajuste o texto na área do cabeçalho do seu PDF. Você também precisa definir 'horizontal_alignment' para Center e 'vertical_alignment' para Top.
-
-O seguinte trecho de código mostra como adicionar texto no cabeçalho de um arquivo PDF com Python:
-```python
+Use esta página para adicionar conteúdo de cabeçalho e rodapé consistentes em todas as páginas PDF com **Aspose.PDF for Python via .NET**.
+
+Você pode criar cabeçalhos e rodapés com [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/), [`HtmlFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlfragment/), [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/), [`Image`](https://reference.aspose.com/pdf/python-net/aspose.pdf/image/), e [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) objetos, então aplique-os através de [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) em cada página.
+
+## Adicionando Cabeçalhos e Rodapés como Fragmentos de Texto
- import aspose.pdf as ap
+Adicione cabeçalhos e rodapés de texto simples a todas as páginas de um PDF. Ele cria [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objetos, inserções [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textfragment/) elementos neles, define [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) para posicionamento adequado, e anexa-os a cada página no documento. O resultado é um PDF onde cada página exibe texto de cabeçalho e rodapé consistentes.
- # Abrir documento
- document = ap.Document(input_pdf)
+O trecho de código a seguir demonstra como adicionar cabeçalhos e rodapés como fragmentos de texto em um PDF usando Python:
- # Criar cabeçalho
- textStamp = ap.TextStamp("Texto do Cabeçalho")
- # Definir propriedades do carimbo
- textStamp.top_margin = 10
- textStamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- textStamp.vertical_alignment = ap.VerticalAlignment.TOP
- # Adicionar cabeçalho em todas as páginas
- for page in document.pages:
- page.add_stamp(textStamp)
+1. Crie fragmentos de texto para o cabeçalho e o rodapé.
+1. Crie objetos HeaderFooter e adicione os fragmentos de texto a eles.
+1. Defina as configurações de margem para controlar a colocação do cabeçalho e do rodapé.
+1. Carregue o documento PDF a partir do arquivo de entrada.
+1. Iterar por todas as páginas do documento.
+1. Atribua o cabeçalho e o rodapé a cada página.
+1. Salve o PDF modificado no arquivo de saída.
- # Salvar documento atualizado
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_text(input_file, output_file):
+ # Create header text
+ header_text = ap.text.TextFragment("Demo header")
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_text)
+
+ # Create footer text
+ footer_text = ap.text.TextFragment("Demo footer")
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_text)
+
+ # Set header margin
+ margin = ap.MarginInfo()
+ margin.left = 50
+ margin.top = 20
+ header.margin = margin
+
+ # Set footer margin
+ footer.margin = margin
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Adicionando Texto no Rodapé do Arquivo PDF
+Este método é útil para adicionar títulos consistentes, indicadores de página ou avisos legais na parte superior e inferior de cada página. Você também pode estendê-lo para incluir imagens ou conteúdo dinâmico, como números de página.
-Você pode usar a classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) para adicionar texto no rodapé de um arquivo PDF.
- Classe TextStamp fornece propriedades necessárias para criar um carimbo baseado em texto, como tamanho da fonte, estilo da fonte e cor da fonte, etc. Para adicionar texto no rodapé, você precisa criar um objeto Document e um objeto TextStamp usando as propriedades necessárias. Após isso, você pode chamar o método 'add_stamp' da Page para adicionar o texto no rodapé do PDF.
+## Adicionando Cabeçalhos e Rodapés para Numeração de Páginas
-O trecho de código a seguir mostra como adicionar texto no rodapé de um arquivo PDF com Python:
+Adicione numeração automática de páginas aos cabeçalhos e rodapés de um documento PDF usando Aspose.PDF for Python. Usando as variáveis internas $p (número da página atual) e $P (número total de páginas), o script insere dinamicamente a numeração de páginas em cada página. Os cabeçalhos exibem o formato ‘Page X from Y’, enquanto os rodapés mostram ‘Page X / Y’. The [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) garante o posicionamento adequado em cada página.
-```python
+1. Crie um TextFragment para o cabeçalho usando "Página $p de $P" para exibir a página atual e o total de páginas.
+1. Crie um objeto HeaderFooter e adicione o texto do cabeçalho a ele.
+1. Crie um TextFragment para o rodapé usando "Page $p / $P" para um estilo de numeração alternativo.
+1. Crie um objeto Footer e adicione o texto do rodapé.
+1. Defina as configurações de margem (esquerda = 50, superior = 20) e aplique-as tanto ao cabeçalho quanto ao rodapé.
+1. Abra o documento PDF a partir do arquivo de entrada.
+1. Percorra todas as páginas e atribua o cabeçalho e o rodapé a cada página.
+1. Salve o PDF atualizado no caminho de saída.
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
- # Criar rodapé
- textStamp = ap.TextStamp("Texto do Rodapé")
- # Definir propriedades do carimbo
- textStamp.bottom_margin = 10
- textStamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- textStamp.vertical_alignment = ap.VerticalAlignment.BOTTOM
- # Adicionar rodapé em todas as páginas
- for page in document.pages:
- page.add_stamp(textStamp)
-
- # Salvar arquivo PDF atualizado
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def using_header_and_footer_for_page_numbering(input_file, output_file):
+ # Create header text
+ header_text = ap.text.TextFragment("Page $p from $P")
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_text)
+
+ # Create footer text
+ footer_text = ap.text.TextFragment("Page $p / $P")
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_text)
+
+ # Create margins
+ margin = ap.MarginInfo()
+ margin.left = 50
+ margin.top = 20
+
+ # Set header margin
+ header.margin = margin
+ # Set footer margin
+ footer.margin = margin
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Adicionando Imagem no Cabeçalho do Arquivo PDF
+## Adicionando Cabeçalhos e Rodapés como Fragmentos HTML
+
+Aplicar cabeçalhos e rodapés formatados em HTML a cada página de um documento PDF usando Aspose.PDF for Python. Ao usar [`HtmlFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlfragment/), o script permite que a formatação de texto rico — como negrito e itálico — apareça no cabeçalho e no rodapé. [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) é aplicado para posicionamento adequado, e os mesmos elementos formatados são anexados a cada página no documento.
-Você pode usar a classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) para adicionar imagem no cabeçalho de um arquivo PDF. Classe Image Stamp fornece as propriedades necessárias para criar um selo baseado em imagem, como tamanho de fonte, estilo de fonte e cor de fonte, etc. Para adicionar uma imagem no cabeçalho, você precisa criar um objeto Document e um objeto Image Stamp usando as propriedades necessárias. Depois disso, você pode chamar o método 'add_stamp' da Página para adicionar a imagem no cabeçalho do PDF.
+O trecho de código a seguir demonstra como adicionar cabeçalhos e rodapés como fragmentos HTML a um PDF usando Python:
-O seguinte trecho de código mostra como adicionar uma imagem no cabeçalho de um arquivo PDF com Python:
+1. Crie um trecho de cabeçalho HTML usando HtmlFragment—incluindo texto estilizado como '' para negrito.
+1. Crie um objeto HeaderFooter e adicione o cabeçalho HTML a ele.
+1. Crie um trecho de rodapé HTML usando '' para estilo itálico.
+1. Crie um objeto Footer e adicione o HTML do rodapé a ele.
+1. Configure as margens (esquerda = 50, superior = 20) e atribua-as tanto ao cabeçalho quanto ao rodapé.
+1. Carregue o documento PDF usando 'ap.Document()'.
+1. Percorra todas as páginas e atribua o cabeçalho e o rodapé a cada uma.
+1. Salve o PDF modificado no caminho de saída especificado.
```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_html(input_file, output_file):
+ # Create header HTML
+ header_html = ap.HtmlFragment("This is an HTML Header")
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_html)
+
+ # Create footer HTML
+ footer_html = ap.HtmlFragment("Powered by Aspose.PDF")
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_html)
+
+ # Set header margin
+ margin = ap.MarginInfo()
+ margin.left = 50
+ margin.top = 20
+ header.margin = margin
+
+ # Set footer margin
+ footer.margin = margin
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
+```
+
+Usar HtmlFragment permite formatação rica com estilos embutidos ou marcação HTML, oferecendo mais flexibilidade de design em comparação com texto simples.
- import aspose.pdf as ap
+## Adicionando Cabeçalhos e Rodapés como Imagens
- # Abrir documento
- document = ap.Document(input_pdf)
+Adicionar cabeçalhos e rodapés baseados em imagem a cada página de um documento PDF usando Aspose.PDF for Python. O mesmo arquivo de imagem é usado tanto para o cabeçalho quanto para o rodapé em todas as páginas. [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) posiciona as imagens, e a imagem ajusta‑se automaticamente para caber dentro da área de cabeçalho/rodapé.
- # Criar cabeçalho
- image_stamp = ap.ImageStamp(input_image)
- # Definir propriedades do selo
- image_stamp.top_margin = 10
- image_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- image_stamp.vertical_alignment = ap.VerticalAlignment.TOP
- # Adicionar cabeçalho em todas as páginas
- for page in document.pages:
- page.add_stamp(image_stamp)
+O seguinte trecho de código demonstra como adicionar cabeçalhos e rodapés como imagens a um PDF usando Python:
- # Salvar documento atualizado
- document.save(output_pdf)
+1. Carregue a imagem em um objeto ‘ap.Image’ e prepare-a para uso como cabeçalho.
+1. Crie um objeto HeaderFooter e anexe a imagem do cabeçalho a ele.
+1. Carregue a mesma imagem novamente para usar como rodapé.
+1. Crie um objeto Footer e adicione a imagem do rodapé a ele.
+1. Carregue o documento PDF de entrada usando 'ap.Document()'.
+1. Iterar por todas as páginas do documento.
+1. Aplicar margens (esquerda = 50) para posicionar tanto o cabeçalho quanto o rodapé.
+1. Atribua o cabeçalho e o rodapé a cada página no PDF.
+1. Salve o PDF atualizado no arquivo de saída especificado.
+
+Esta técnica é ideal para aplicar logotipos ou marcas d'água em documentos, na área de cabeçalho/rodapé.
+
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_image(input_file, image_file, output_file):
+ # Create header image
+ header_image = ap.Image()
+ header_image.file = image_file
+ # Create header
+ header = ap.HeaderFooter()
+ header.paragraphs.add(header_image)
+
+ # Create footer image
+ footer_image = ap.Image()
+ footer_image.file = image_file
+
+ # Create footer
+ footer = ap.HeaderFooter()
+ footer.paragraphs.add(footer_image)
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Set header margin
+ margin = ap.MarginInfo()
+ margin.left = 50
+ header.margin = margin
+
+ # Set footer margin
+ footer.margin = margin
+
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Adicionando Imagem no Rodapé do Arquivo PDF
+## Adicionando Cabeçalhos e Rodapés como Tabela
-Você pode usar a classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) para adicionar uma imagem no rodapé de um arquivo PDF. [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) class fornece as propriedades necessárias para criar um carimbo baseado em imagem, como tamanho da fonte, estilo da fonte e cor da fonte, etc. Para adicionar uma imagem no rodapé, você precisa criar um objeto Document e um objeto Image Stamp usando as propriedades necessárias. Depois disso, você pode chamar o método 'add_stamp' da Página para adicionar a imagem no rodapé do PDF.
+Adicione cabeçalhos e rodapés estruturados, baseados em tabelas, a todas as páginas de um documento PDF usando Aspose.PDF for Python. [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) objetos oferecem melhor controle de layout, alinhamento e formatação consistente para cabeçalhos e rodapés complexos. O texto do cabeçalho está centralizado enquanto o texto do rodapé está alinhado à esquerda, ambos usando fonte Arial 12pt. As larguras das colunas são calculadas dinamicamente com base nas dimensões da página para garantir o posicionamento adequado.
-O seguinte trecho de código mostra como adicionar uma imagem no rodapé de um arquivo PDF com Python:
+Este trecho de código adiciona cabeçalhos e rodapés (usando tabelas) a cada página de um documento PDF com Aspose.PDF for Python via .NET.
-```python
+1. Definir estilos de texto usando [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/) para cabeçalho e rodapé (fonte, tamanho, alinhamento).
+1. Criar [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objetos para o cabeçalho e rodapé.
+1. Construir o cabeçalho [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) com uma única linha e uma célula contendo o texto do cabeçalho.
+1. Construa o rodapé [`Table`](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) com uma única linha e célula contendo o texto do rodapé.
+1. Adicione as tabelas ao correspondente [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objetos.
+1. Definir rodapé [`MarginInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) para posicionamento horizontal adequado.
+1. Abrir o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando métodos apropriados.
+1. Itere por todas as páginas e atribua o cabeçalho e rodapé baseados em tabela a cada página.
+1. Salvar o modificado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para o arquivo de saída.
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
- # Criar rodapé
- image_stamp = ap.ImageStamp(input_image)
- # Definir propriedades do carimbo
- image_stamp.bottom_margin = 10
- image_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- image_stamp.vertical_alignment = ap.VerticalAlignment.BOTTOM
- # Adicionar rodapé em todas as páginas
- for page in document.pages:
- page.add_stamp(image_stamp)
-
- # Salvar arquivo PDF atualizado
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_table(input_file, output_file):
+ text_state_header = ap.text.TextState()
+ text_state_header.font = ap.text.FontRepository.find_font("Arial")
+ text_state_header.font_size = 12
+ text_state_header.horizontal_alignment = ap.HorizontalAlignment.CENTER
+ text_state_footer = ap.text.TextState()
+ text_state_footer.font = ap.text.FontRepository.find_font("Arial")
+ text_state_footer.font_size = 12
+ text_state_footer.horizontal_alignment = ap.HorizontalAlignment.LEFT
+ # Create header
+ header = ap.HeaderFooter()
+ # Create footer
+ footer = ap.HeaderFooter()
+ # Create header Table
+ table_header = ap.Table()
+ table_header.column_widths = str(594 - header.margin.left - header.margin.right)
+ header_row = table_header.rows.add()
+ header_row.cells.add("This is a Table Header", text_state_header)
+ # Create footer Table
+ table = ap.Table()
+ table.column_widths = str(594 - footer.margin.left - footer.margin.right)
+ table.rows.add().cells.add("Powered by Aspose.PDF", text_state_footer)
+ header.paragraphs.add(table_header)
+ footer.paragraphs.add(table)
+ # Set footer margin
+ footer.margin.left = 150
+
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ for i in range(1, len(document.pages) + 1):
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-## Adicionando diferentes Cabeçalhos em um Arquivo PDF
+## Adicionando Cabeçalhos e Rodapés como LaTeX
-Sabemos que podemos adicionar TextStamp na seção de Cabeçalho/Rodapé do documento usando as propriedades [top_margin](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties) ou [bottom_margin](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties), mas às vezes podemos ter a necessidade de adicionar múltiplos cabeçalhos/rodapés em um único documento PDF. **Aspose.PDF para Python via .NET** explica como fazer isso.
+Adicionar cabeçalhos e rodapés contendo conteúdo formatado em LaTeX a todas as páginas de um documento PDF usando Aspose.PDF for Python. LaTeX permite a renderização de símbolos matemáticos, datas, marcas de copyright e outras formatações avançadas. O cabeçalho inclui uma data dinâmica, enquanto o rodapé exibe um símbolo de copyright juntamente com o número da página atual e a contagem total de páginas.
-Para realizar essa necessidade, iremos criar objetos TextStamp individuais (o número de objetos depende do número de Cabeçalhos/Rodapés necessários) e os adicionaremos ao documento PDF.
- Podemos também especificar diferentes informações de formatação para cada objeto de carimbo individual. No exemplo a seguir, criamos um objeto Documento e três objetos TextStamp e, em seguida, usamos o método 'add_stamp' da Página para adicionar o texto na seção de cabeçalho do PDF. O trecho de código a seguir mostra como adicionar uma imagem no rodapé de um arquivo PDF com Aspose.PDF para Python:
+O seguinte trecho de código mostra como usar [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) nos cabeçalhos e rodapés de um PDF usando Aspose.PDF for Python via .NET.
-```python
+1. Abrir o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando métodos apropriados.
+1. Determine o número total de páginas a ser usado em rodapés dinâmicos.
+1. Iterar por todas as páginas do documento.
+1. Criar um [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objeto para o cabeçalho.
+1. Criar um [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para o texto do cabeçalho que contém comandos LaTeX (por exemplo, `\\today\\`).
+1. Criar um [`HeaderFooter`](https://reference.aspose.com/pdf/python-net/aspose.pdf/headerfooter/) objeto para o rodapé.
+1. Criar um [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para o texto do rodapé incluindo símbolos LaTeX e numeração de páginas.
+1. Adicionar o [`TeXFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para o objeto de cabeçalho/rodapé correspondente.
+1. Vincule o cabeçalho e o rodapé à página atual.
+1. Salvar o modificado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para o arquivo de saída.
- import aspose.pdf as ap
-
- # Criar três carimbos
- stamp1 = ap.TextStamp("Cabeçalho 1")
- stamp2 = ap.TextStamp("Cabeçalho 2")
- stamp3 = ap.TextStamp("Cabeçalho 3")
-
- # Definir alinhamento do carimbo (colocar carimbo no topo da página, centralizado horizontalmente)
- stamp1.vertical_alignment = ap.VerticalAlignment.TOP
- stamp1.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Especificar o estilo da fonte como Negrito
- stamp1.text_state.font_style = ap.text.FontStyles.BOLD
- # Definir a informação da cor do texto como vermelho
- stamp1.text_state.foreground_color = ap.Color.red
- # Especificar o tamanho da fonte como 14
- stamp1.text_state.font_size = 14
-
- # Agora precisamos definir o alinhamento vertical do segundo objeto carimbo como Top
- stamp2.vertical_alignment = ap.VerticalAlignment.TOP
- # Definir informação de alinhamento Horizontal para carimbo como Centralizado
- stamp2.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Definir o fator de zoom para o objeto carimbo
- stamp2.zoom = 10
-
- # Definir a formatação do terceiro objeto carimbo
- # Especificar a informação de alinhamento Vertical para o objeto carimbo como TOPO
- stamp3.vertical_alignment = ap.VerticalAlignment.TOP
- # Definir a informação de alinhamento Horizontal para o objeto carimbo como Centralizado
- stamp3.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Definir o ângulo de rotação para o objeto carimbo
- stamp3.rotate_angle = 35
- # Definir rosa como cor de fundo para o carimbo
- stamp3.text_state.background_color = ap.Color.pink
- # Alterar a informação da fonte do carimbo para Verdana
- stamp3.text_state.font = ap.text.FontRepository.find_font("Verdana")
- # Primeiro carimbo é adicionado na primeira página;
- document.pages[1].add_stamp(stamp1)
- # Segundo carimbo é adicionado na segunda página;
- document.pages[2].add_stamp(stamp2)
- # Terceiro carimbo é adicionado na terceira página.
- document.pages[3].add_stamp(stamp3)
-
- # Salvar o documento atualizado
- document.save(output_pdf)
+```python
+import aspose.pdf as ap
+
+def add_header_and_footer_as_latex(input_file, output_file):
+ # Open PDF document
+ with ap.Document(input_file) as document:
+ page_count = len(document.pages)
+ for i in range(1, page_count + 1):
+ # Create header
+ header = ap.HeaderFooter()
+ h_latex_text = "This is a LaTeX Header. \\today\\"
+ h_l_text = ap.TeXFragment(h_latex_text, True)
+ # Create footer
+ footer = ap.HeaderFooter()
+ f_latex_text = (
+ f"\\copyright\\ 2025 My Company -- Page \\thepage\\ is {page_count}"
+ )
+ f_l_text = ap.TeXFragment(f_latex_text, True)
+
+ header.paragraphs.add(h_l_text)
+ footer.paragraphs.add(f_l_text)
+ # Bind the header and footer to the page
+ document.pages[i].header = header
+ document.pages[i].footer = footer
+
+ # Save PDF document
+ document.save(output_file)
```
-
\ No newline at end of file
+## Tópicos de página relacionados
+
+- [Trabalhe com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Adicionar numeração de páginas ao PDF em Python](/pdf/pt/python-net/add-page-number/)
+- [Carimbar páginas PDF em Python](/pdf/pt/python-net/stamping/)
+- [Formatar documentos PDF em Python](/pdf/pt/python-net/formatting-pdf-document/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/change-page-size/_index.md b/pt/python-net/advanced-operations/working-with-pages/change-page-size/_index.md
index a1ec9ddb23..58620f2050 100644
--- a/pt/python-net/advanced-operations/working-with-pages/change-page-size/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/change-page-size/_index.md
@@ -1,172 +1,120 @@
---
-title: Alterar Tamanho da Página do PDF com Python
-linktitle: Alterar Tamanho da Página do PDF
+title: Alterar o tamanho da página PDF em Python
+linktitle: Alterando o tamanho da página
type: docs
-weight: 60
+weight: 40
url: /pt/python-net/change-page-size/
-description: Alterar Tamanho da Página do seu documento PDF usando a biblioteca Aspose.PDF para Python via .NET.
-lastmod: "2023-04-17"
+description: Aprenda como ler e alterar as dimensões da página PDF em Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "weekly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Alterando o tamanho da página usando Python
+Abstract: Este artigo demonstra como ler e modificar as dimensões de páginas PDF usando Aspose.PDF. O exemplo Get Page Size recupera a largura e a altura de uma página PDF específica, permitindo que os usuários inspecionem o layout da página, validem a formatação ou analisem a estrutura do documento. O exemplo Set Page Size mostra como alterar as dimensões de uma página — como converter a primeira página para o tamanho A4 — exibindo também as propriedades das caixas (CropBox, TrimBox, ArtBox, BleedBox, MediaBox) antes e depois da modificação.
---
-
-
-
-## Alterar Tamanho da Página PDF
-
-O Aspose.PDF para Python via .NET permite que você altere o tamanho da página PDF com linhas simples de código em suas aplicações Python. Este tópico explica como atualizar/alterar as dimensões (tamanho) da página de um arquivo PDF existente.
-
-A classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) contém o método [set_page_size()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) que permite definir o tamanho da página. O trecho de código abaixo atualiza as dimensões da página em alguns passos simples:
-
-1. Carregar o arquivo PDF de origem.
-1. Obter as páginas no objeto [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. Obter uma determinada página.
-1. Chamar o método set_page_size() para atualizar suas dimensões.
-1. Chamar o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para gerar o arquivo PDF com as dimensões da página atualizadas.
-```python
+Aspose.PDF for Python via .NET permite que você altere o tamanho da página PDF com linhas simples de código. Este tópico mostra como atualizar as dimensões da página usando o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) e [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) APIs.
+
+Use este guia quando precisar redimensionar páginas PDF existentes, normalizar dimensões do documento ou inspecionar as configurações da caixa de página em Python.
+
+{{% alert color="primary" %}}
+
+Observe que as propriedades de altura e largura usam pontos como unidade básica, onde 1 polegada = 72 pontos e 1 cm = 1/2,54 polegada = 0,3937 polegada = 28,3 pontos.
+
+{{% /alert %}}
+
+## Defina o tamanho da página de um PDF para A4
+
+O exemplo atualiza o tamanho da primeira página em um documento PDF para as dimensões padrão A4. Ele também imprime as dimensões das caixas da página (CropBox, TrimBox, ArtBox, BleedBox, MediaBox) antes e depois do redimensionamento, para que você possa verificar as alterações.
- import aspose.pdf as ap
+O trecho de código a seguir mostra como alterar as dimensões da página PDF para o tamanho A4:
- document = ap.Document(input_pdf)
+1. Acesse o primeiro [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) do [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Exiba os tamanhos das caixas da página antes da modificação (CropBox, TrimBox, ArtBox, BleedBox, MediaBox).
+1. Aplique as dimensões A4 (597.6 × 842.4 pontos) usando a API de página.
+1. Exiba os tamanhos atualizados das caixas de página.
+1. Salve o modificado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para o caminho de saída especificado.
- # Obter página específica
+```python
+import aspose.pdf as ap
+
+def set_page_size(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ # Get particular page
page = document.pages[1]
- # Definir o tamanho da página como A4 (11.7 x 8.3 pol) e no Aspose.Pdf, 1 polegada = 72 pontos
- # Portanto, as dimensões A4 em pontos serão (842.4, 597.6)
+ # Set the page size as A4 (8.3 x 11.7 in) and in Aspose.Pdf, 1 inch = 72 points
+ # So A4 dimensions in points will be (597.6, 842.4) for portrait orientation
+ print("Before set")
+ print(f"CropBox: {page.crop_box.width} x {page.crop_box.height}")
+ print(f"TrimBox: {page.trim_box.width} x {page.trim_box.height}")
+ print(f"ArtBox: {page.art_box.width} x {page.art_box.height}")
+ print(f"BleedBox: {page.bleed_box.width} x {page.bleed_box.height}")
+ print(f"MediaBox: {page.media_box.width} x {page.media_box.height}")
+
page.set_page_size(597.6, 842.4)
+ print("After set")
+ print(f"CropBox: {page.crop_box.width} x {page.crop_box.height}")
+ print(f"TrimBox: {page.trim_box.width} x {page.trim_box.height}")
+ print(f"ArtBox: {page.art_box.width} x {page.art_box.height}")
+ print(f"BleedBox: {page.bleed_box.width} x {page.bleed_box.height}")
+ print(f"MediaBox: {page.media_box.width} x {page.media_box.height}")
+
+ # Save the updated document
+ document.save(output_file_name)
+```
+
+## Obter tamanho da página PDF
+
+Este trecho lê um PDF e recupera as dimensões (largura e altura) da primeira página. Ele usa o [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) API para extrair o limite da página [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) e imprime seu tamanho no console. Isso é útil para inspecionar o layout da página, verificar formatos ou preparar documentos para processamento adicional.
- # Salvar o documento atualizado
- document.save(output_pdf)
+1. Carregue o PDF como um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Acesse o primeiro [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Recupere o retângulo delimitador da página usando `get_page_rect()`.
+1. Extraia os valores de largura e altura.
+1. Imprima as dimensões da página.
+
+```python
+import aspose.pdf as ap
+
+def get_page_size(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+
+ # Get particular page
+ page = document.pages[1]
+ rectangle = page.get_page_rect(True)
+ print(f"{rectangle.width} : {rectangle.height}")
+```
+
+### Obter tamanho da página PDF antes e depois da rotação
+
+Recupere as dimensões de uma página PDF antes e depois de aplicar uma rotação de 90°. Isso demonstra como a rotação afeta a largura e a altura e como usar `get_page_rect()` com ou sem consideração de rotação.
+
+1. Abra o PDF como um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Acesse o primeiro [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Aplicar uma rotação de 90° usando `page.rotate = ap.Rotation.ON90` (veja o [`Rotation`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rotation/) enum).
+1. Recupere o retângulo da página sem rotação usando `get_page_rect(False)` e imprima sua largura e altura.
+1. Recuperar o retângulo da página considerando a rotação usando `get_page_rect(True)` e imprima sua largura e altura.
+1. Compare como as dimensões mudam devido à rotação.
+
+```python
+import aspose.pdf as ap
+
+def get_page_size_rotation(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ # Get particular page
+ page = document.pages[1]
+ page.rotate = ap.Rotation.ON90
+ rectangle = page.get_page_rect(False)
+ print(f"{rectangle.width} : {rectangle.height}")
+ rectangle = page.get_page_rect(True)
+ print(f"{rectangle.width} : {rectangle.height}")
```
+## Tópicos Relacionados da Página
-
\ No newline at end of file
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Recortar páginas PDF em Python](/pdf/pt/python-net/crop-pages/)
+- [Obter e definir propriedades de página PDF em Python](/pdf/pt/python-net/get-and-set-page-properties/)
+- [Rotacionar páginas PDF em Python](/pdf/pt/python-net/rotate-pages/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/crop-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/crop-pages/_index.md
index a1421d9974..28e869888f 100644
--- a/pt/python-net/advanced-operations/working-with-pages/crop-pages/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/crop-pages/_index.md
@@ -1,177 +1,94 @@
---
-title: Cortar Páginas de PDF programaticamente Python
-linktitle: Cortar Páginas
+title: Recortar páginas PDF em Python
+linktitle: Recorte de páginas PDF
type: docs
weight: 70
url: /pt/python-net/crop-pages/
-description: Você pode obter propriedades de página, como largura, altura, bleed-, crop- e trimbox usando Aspose.PDF para Python via .NET.
-lastmod: "2023-04-17"
+description: Aprenda como recortar páginas PDF e ajustar as caixas de recorte, corte, sangria e mídia em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como acessar e modificar propriedades de página em PDF usando Python
+Abstract: O artigo fornece uma visão geral de como acessar e modificar propriedades de página em um documento PDF usando Aspose.PDF for Python. Ele descreve várias propriedades de página, incluindo a media box, bleed box, trim box, art box e crop box, explicando seus papéis na definição das dimensões e limites de uma página PDF para impressão e exibição. A media box representa o maior tamanho de página, enquanto a bleed box garante a cobertura da tinta além da borda da página para o corte. A trim box indica o tamanho final do documento após o corte, e a art box envolve o conteúdo real da página. A crop box define a área visível no Adobe Acrobat. O artigo inclui um trecho de código Python demonstrando como definir uma nova crop box, juntamente com as demais caixas, para uma página específica em um documento PDF. Exemplos visuais ilustram a aparência da página antes e depois da aplicação do recorte, mostrando a aplicação prática da modificação dessas propriedades.
---
-
-
-
-## Obter Propriedades da Página
-
-Cada página em um arquivo PDF possui várias propriedades, como largura, altura, bleed-, crop- e trimbox. O Aspose.PDF para Python permite acessar essas propriedades.
-
-- **media_box**: A media box é a maior caixa de página. Ela corresponde ao tamanho da página (por exemplo, A4, A5, Carta dos EUA, etc.) selecionado quando o documento foi impresso em PostScript ou PDF. Em outras palavras, a media box determina o tamanho físico do meio no qual o documento PDF é exibido ou impresso.
-- **bleed_box**: Se o documento tiver bleed, o PDF também terá uma bleed box. Bleed é a quantidade de cor (ou arte) que se estende além da borda de uma página. É usado para garantir que, quando o documento for impresso e cortado no tamanho ("refilado"), a tinta vá até a borda da página. Mesmo que a página seja cortada incorretamente - cortada ligeiramente fora das marcas de corte - não aparecerão bordas brancas na página.
+
+## Obter propriedades da página
+
+Cada página em um arquivo PDF possui várias propriedades, como largura, altura, bleed-, crop- e trimbox. Aspose.PDF for Python permite que você acesse essas propriedades.
+
+Use esta página quando precisar reduzir a área visível da página, preparar arquivos para fluxos de trabalho de impressão ou inspecionar a geometria das caixas da página em documentos PDF.
+
+- **media_box**: A media box é a maior caixa da página. Ela corresponde ao tamanho da página (por exemplo A4, A5, US Letter, etc.) selecionado quando o documento foi impresso para PostScript ou PDF. Em outras palavras, a media box determina o tamanho físico da mídia na qual o documento PDF é exibido ou impresso.
+- **bleed_box**: Se o documento tem bleed, o PDF também terá uma bleed box. Bleed é a quantidade de cor (ou arte) que se estende além da borda de uma página. É usado para garantir que, quando o documento é impresso e cortado ao tamanho (\"trimmed\"), a tinta chegue até a borda da página. Mesmo que a página seja cortada incorretamente - ligeiramente fora das marcas de corte - não aparecerão bordas brancas na página.
- **trim_box**: A trim box indica o tamanho final de um documento após a impressão e o corte.
-- **art_box**: A art box é a caixa desenhada ao redor do conteúdo real das páginas em seus documentos.
- Esta caixa de página é usada ao importar documentos PDF em outras aplicações.
-- **crop_box**: A caixa de corte é o tamanho da "página" em que seu documento PDF é exibido no Adobe Acrobat. Na visualização normal, apenas o conteúdo da caixa de corte é exibido no Adobe Acrobat. Para descrições detalhadas dessas propriedades, leia a especificação Adobe.Pdf, particularmente em 10.10.1 Limites de Página.
+- **art_box**: A caixa de arte é a caixa desenhada ao redor do conteúdo real das páginas em seus documentos. Esta caixa de página é usada ao importar documentos PDF em outras aplicações.
+- **crop_box**: A crop box é o tamanho "página" no qual seu documento PDF é exibido no Adobe Acrobat. Na visualização normal, apenas o conteúdo da crop box é exibido no Adobe Acrobat. Para descrições detalhadas dessas propriedades, lea a especificação Adobe.Pdf, particularmente 10.10.1 Limites de Página.
-O trecho abaixo mostra como recortar a página:
+Cortar o primeiro [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) de um PDF para uma área retangular específica usando Aspose.PDF for Python. A função ajusta várias caixas de página—`crop_box`, `trim_box`, `art_box`, e `bleed_box`—para garantir resultados visuais consistentes. O recorte pode ser útil para remover margens indesejadas ou focar em uma região específica de uma página.
-```python
+1. Carregue o PDF como um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) (usar `ap.Document()`).
+1. Defina o retângulo de corte usando [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) com as coordenadas desejadas (em pontos).
+1. Defina o [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/)'s `crop_box`, `trim_box`, `art_box`, e `bleed_box` para o retângulo definido.
+1. Salvar o modificado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para um novo arquivo de saída.
- import aspose.pdf as ap
+```python
+import sys
+import aspose.pdf as ap
+from os import path
- document = ap.Document(input_pdf)
+def crop_page(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
- # Criar novo Retângulo Box
new_box = ap.Rectangle(200, 220, 2170, 1520, True)
document.pages[1].crop_box = new_box
document.pages[1].trim_box = new_box
document.pages[1].art_box = new_box
document.pages[1].bleed_box = new_box
- document.save(output_pdf)
+ document.save(output_file_name)
```
-Neste exemplo, usamos um arquivo de amostra [aqui](crop_page.pdf). Inicialmente, nossa página se parece com a mostrada na Figura 1.
-
-
-Após a alteração, a página ficará como a Figura 2.
-
-
-
\ No newline at end of file
+Neste exemplo, usamos um arquivo de amostra [aqui](crop_page.pdf). Inicialmente, nossa página parece como mostrada na Figura 1.
+
+
+Depois da alteração, a página ficará como a Figura 2.
+
+
+## Recortar página PDF com base no conteúdo da primeira imagem
+
+Cortar o primeiro [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) dinamicamente com base nos limites da primeira imagem encontrada na página. Usando [`ImagePlacementAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf/imageplacementabsorber/), o script identifica a primeira imagem e ajusta a página `crop_box` para corresponder às dimensões da imagem. Essa abordagem é útil quando você deseja focar em conteúdo visual específico em vez de coordenadas predefinidas.
+
+1. Carregue o PDF como um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Localizar imagens na primeira página usando [`ImagePlacementAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf/imageplacementabsorber/).
+1. Verificar se as imagens existem:
+ - Se encontrado, definir o [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) `crop_box` para corresponder ao da primeira imagem [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/).
+ - Se não, mantenha a página inalterada e notifique o usuário.
+1. Salvar o modificado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para o arquivo de saída especificado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def crop_page_by_content(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
+ # Find first image on first page using ImagePlacementAbsorber
+ absorber = ap.ImagePlacementAbsorber()
+ document.pages[1].accept(absorber)
+
+ if len(absorber.image_placements) > 0:
+ first_image = absorber.image_placements[1]
+ document.pages[1].crop_box = first_image.rectangle
+ else:
+ print("No images found on the first page")
+ document.save(output_file_name)
+```
+
+## Tópicos Relacionados da Página
+
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Alterar tamanho da página PDF em Python](/pdf/pt/python-net/change-page-size/)
+- [Obter e definir propriedades da página PDF em Python](/pdf/pt/python-net/get-and-set-page-properties/)
+- [Girar páginas PDF em Python](/pdf/pt/python-net/rotate-pages/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.pdf b/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.pdf
new file mode 100644
index 0000000000..2bc27a2ac8
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.pdf differ
diff --git a/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.png b/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.png
new file mode 100644
index 0000000000..d61426415a
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page.png differ
diff --git a/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page2.png b/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page2.png
new file mode 100644
index 0000000000..04ebc7427e
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-pages/crop-pages/crop_page2.png differ
diff --git a/pt/python-net/advanced-operations/working-with-pages/delete-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/delete-pages/_index.md
index e87d8b9e6c..a727705223 100644
--- a/pt/python-net/advanced-operations/working-with-pages/delete-pages/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/delete-pages/_index.md
@@ -1,164 +1,64 @@
---
-title: Excluir Páginas de PDF programaticamente Python
-linktitle: Excluir Páginas de PDF
+title: Excluir páginas PDF em Python
+linktitle: Excluindo páginas PDF
type: docs
weight: 80
url: /pt/python-net/delete-pages/
-description: Você pode excluir páginas do seu arquivo PDF usando a biblioteca Aspose.PDF para Python via .NET.
-lastmod: "2023-04-17"
+description: Aprenda como excluir páginas de arquivos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir uma ou mais páginas PDF em Python
+Abstract: Este artigo explica como remover páginas de arquivos PDF usando Aspose.PDF for Python via .NET. Aprenda como excluir uma única página ou várias páginas de um documento usando a PageCollection API e, em seguida, salvar o PDF atualizado.
---
-
+Você pode excluir páginas de um arquivo PDF usando Aspose.PDF for Python via .NET. Para excluir uma página específica, use o [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) de um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-Você pode excluir páginas de um arquivo PDF usando Aspose.PDF para Python via .NET. Para excluir uma página específica da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+Use este fluxo de trabalho quando precisar remover páginas indesejadas de um PDF antes de compartilhar, arquivar ou combinar documentos.
-## Excluir Página do Arquivo PDF
+## Excluir página do arquivo PDF
+
+Aspose.PDF for Python via .NET exclui a página 2 do PDF de entrada e salva o Document atualizado em um novo arquivo. Esse recurso é útil para remover páginas indesejadas ou confidenciais sem alterar o restante do documento.
+
+1. Carregue o PDF de entrada como um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Exclua a página usando o [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Chame o [`Document.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método para salvar o arquivo PDF atualizado.
-1. Chame o método [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) e especifique o índice da página
-1. Chame o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) para salvar o arquivo PDF atualizado
O trecho de código a seguir mostra como excluir uma página específica do arquivo PDF usando Python.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
+def delete_page(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ document.pages.delete(2)
+ document.save(output_file_name)
+```
- # Abrir documento
- document = ap.Document(input_pdf)
+## Excluir várias páginas de um documento PDF
- # Excluir uma página específica
- document.pages.delete(2)
+Excluir várias páginas permite remover um conjunto de páginas especificadas em uma única operação, o que é mais eficiente do que excluir páginas uma a uma. O PDF resultante é salvo em um novo arquivo, preservando o documento original.
- # Salvar PDF atualizado
- document.save(output_pdf)
+1. Carregue o PDF de entrada como um [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Excluir as páginas listadas no array pages usando o [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Salvar o atualizado [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para um novo arquivo.
+
+```python
+import aspose.pdf as ap
+
+def delete_multiple_pages(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ # Example: delete pages 2, 3, and 4.
+ pages = [2, 3, 4]
+ document.pages.delete(pages)
+ document.save(output_file_name)
```
-
\ No newline at end of file
+## Tópicos Relacionados à Página
+
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Adicionar páginas PDF em Python](/pdf/pt/python-net/add-pages/)
+- [Mover páginas PDF em Python](/pdf/pt/python-net/move-pages/)
+- [Extrair páginas PDF em Python](/pdf/pt/python-net/extract-pages/)
diff --git a/pt/python-net/advanced-operations/working-with-pages/extract-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/extract-pages/_index.md
new file mode 100644
index 0000000000..912a435d11
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-pages/extract-pages/_index.md
@@ -0,0 +1,64 @@
+---
+title: Extrair Páginas PDF em Python
+linktitle: Extraindo Páginas PDF
+type: docs
+weight: 80
+url: /pt/python-net/extract-pages/
+description: Aprenda como extrair páginas PDF individuais ou múltiplas para novos arquivos em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como extrair páginas PDF usando Python
+Abstract: Este artigo explica como extrair páginas de arquivos PDF usando Aspose.PDF for Python via .NET. Aprenda como copiar uma única página ou várias páginas para um novo documento usando indexação de páginas baseada em 1 e a API PageCollection.
+---
+
+## Extrair Página Única de um PDF
+
+Extrair uma página específica de um documento PDF e salvá‑la como um novo arquivo. Usando a biblioteca Aspose.PDF, o script copia a página desejada para um novo PDF, deixando o documento original inalterado. Isso é útil para dividir PDFs ou isolar páginas importantes para distribuição.
+
+1. Carregue o PDF de origem usando o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) API (`ap.Document()`).
+1. Crie um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para armazenar a página extraída.
+1. Adicionar o desejado [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) do documento fonte para o novo PDF usando o documento de destino [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (`dst_document.pages.add(...)`).
+ - Neste exemplo, a página 2 é extraída (indexação baseada em 1).
+1. Salvar o novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com a página extraída para o arquivo de saída especificado.
+
+```python
+import aspose.pdf as ap
+
+def extract_page(input_file_name: str, output_file_name: str) -> None:
+ src_document = ap.Document(input_file_name)
+ dst_document = ap.Document()
+ dst_document.pages.add(src_document.pages[2])
+ dst_document.save(output_file_name)
+```
+
+## Extrair Múltiplas Páginas de um PDF
+
+Extrair várias páginas específicas de um documento PDF e salvá‑las em um novo arquivo. Usando a biblioteca Aspose.PDF, as páginas selecionadas são copiadas para um novo PDF enquanto o documento original permanece intacto. Isso é útil para criar PDFs menores contendo apenas as seções relevantes de um documento maior.
+
+1. Carregue o PDF de origem usando o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) API (`ap.Document()`).
+1. Crie um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para armazenar as páginas extraídas.
+1. Selecione as páginas a extrair (neste exemplo, páginas 2 e 3 usando indexação baseada em 1).
+1. Adicione cada selecionado [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) do documento fonte para o novo PDF usando seu [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Salvar o novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com as páginas extraídas para o arquivo de saída especificado.
+
+```python
+import aspose.pdf as ap
+
+def extract_multiple_pages(input_file_name: str, output_file_name: str) -> None:
+ document = ap.Document(input_file_name)
+ pages = [2, 3]
+ another_document = ap.Document()
+ for page_index in pages:
+ another_document.pages.add(document.pages[page_index])
+ another_document.save(output_file_name)
+```
+
+## Tópicos de Página Relacionados
+
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Excluir páginas PDF em Python](/pdf/pt/python-net/delete-pages/)
+- [Mover páginas PDF em Python](/pdf/pt/python-net/move-pages/)
+- [Dividir arquivos PDF em Python](/pdf/pt/python-net/split-document/)
diff --git a/pt/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md b/pt/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md
index 898035019d..17133fb576 100644
--- a/pt/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/get-and-set-page-properties/_index.md
@@ -1,348 +1,158 @@
---
-title: Obter e Definir Propriedades de Página usando Python
-linktitle: Obter e Definir Propriedades de Página
+title: Obter e Definir Propriedades de Página PDF em Python
+linktitle: Obtendo e Definindo Propriedades de Página
type: docs
weight: 90
url: /pt/python-net/get-and-set-page-properties/
-description: Esta seção mostra como obter o número de páginas em um arquivo PDF, obter informações sobre propriedades de página de PDF, como cor, e definir propriedades de página.
-lastmod: "2023-04-17"
+description: Aprenda como inspecionar e atualizar as propriedades de página PDF, como tamanho, contagem e informações de cor, em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como Obter e Definir propriedades de página usando Python
+Abstract: Este artigo discute as capacidades do Aspose.PDF for Python via .NET, focando na leitura e definição de propriedades de página em arquivos PDF usando Python. O artigo cobre várias funcionalidades, incluindo a determinação do número de páginas em um PDF, o acesso e modificação de propriedades de página e o tratamento de informações de cores. Para obter o número de páginas, a classe `Document` e a coleção `PageCollection` são usadas, com trechos de código demonstrando como recuperar a contagem de páginas, mesmo sem salvar o documento. O artigo explica diferentes propriedades de página, como MediaBox, BleedBox, TrimBox, ArtBox e CropBox, e fornece exemplos de código para acessar essas propriedades. Além disso, cobre a recuperação de uma página específica de um PDF e sua gravação como um documento separado, bem como a determinação do tipo de cor de cada página. Os exemplos ao longo do texto são implementados em Python, ilustrando aplicações práticas desses recursos.
---
-
-
-
-Aspose.PDF para Python via .NET permite que você leia e defina propriedades de páginas em um arquivo PDF em suas aplicações Python. Esta seção mostra como obter o número de páginas em um arquivo PDF, obter informações sobre propriedades de páginas PDF, como cor, e definir propriedades de páginas. Os exemplos dados estão em Python.
-
-## Obter Número de Páginas em um Arquivo PDF
-
-Ao trabalhar com documentos, você frequentemente quer saber quantas páginas eles contêm. Com o Aspose.PDF isso não leva mais do que duas linhas de código.
+
+Aspose.PDF for Python via .NET permite que você leia e defina propriedades de páginas em um arquivo PDF em suas aplicações Python. Esta seção mostra como obter o número de páginas em um arquivo PDF, obter informações sobre propriedades de página do PDF, como cor, e definir propriedades de página. Os exemplos utilizam o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) e [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) APIs e são escritas em Python.
+
+Use este guia quando precisar inspecionar metadados de página, determinar a contagem de páginas ou atualizar características ao nível da página como parte de tarefas de análise ou normalização de documentos.
+
+## Obter número de páginas em um arquivo PDF
+
+Ao trabalhar com documentos, você costuma querer saber quantas páginas eles contêm. Com Aspose.PDF isso leva no máximo duas linhas de código.
Para obter o número de páginas em um arquivo PDF:
-1. Abra o arquivo PDF usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Em seguida, use a propriedade Count da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (do objeto Document) para obter o número total de páginas no documento.
+1. Abra o arquivo PDF usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Em seguida, use o [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) propriedade Count da collection (do objeto Document) para obter o número total de páginas no documento.
O trecho de código a seguir mostra como obter o número de páginas de um arquivo PDF.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
+def get_page_count(input_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
- # Obter contagem de páginas
- print("Contagem de Páginas:", str(len(document.pages)))
+ # Get page count
+ print("Page Count:", str(len(document.pages)))
```
-
### Obter contagem de páginas sem salvar o documento
-Às vezes, geramos arquivos PDF em tempo real e, durante a criação do arquivo PDF, podemos nos deparar com a necessidade (criação de Índice etc.) de obter a contagem de páginas do arquivo PDF sem salvar o arquivo no sistema ou fluxo. Portanto, para atender a essa necessidade, um método [process_paragraphs()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) foi introduzido na classe Document. Por favor, veja o trecho de código a seguir que mostra as etapas para obter a contagem de páginas sem salvar o documento.
+Às vezes, geramos os arquivos PDF dinamicamente e, durante a criação do arquivo PDF, podemos nos deparar com a necessidade (criar Sumário, etc.) de obter a contagem de páginas do arquivo PDF sem salvar o arquivo no sistema ou em um stream. Portanto, para atender a essa necessidade, um método [process_paragraphs()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) foi introduzido na classe Document. Por favor, dê uma olhada no trecho de código a seguir que mostra as etapas para obter a contagem de páginas sem salvar o documento.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
-
- # Instanciar instância do Documento
+def get_page_count_without_saving(input_file_name):
+ # Instantiate Document instance
document = ap.Document()
- # Adicionar página à coleção de páginas do arquivo PDF
+ # Add page to pages collection of PDF file
page = document.pages.add()
- # Criar instância de loop
- for i in range(0, 300):
- # Adicionar TextFragment à coleção de parágrafos do objeto página
- page.paragraphs.add(ap.text.TextFragment("Teste de contagem de páginas"))
- # Processar os parágrafos no arquivo PDF para obter contagem de páginas precisa
+ # Create loop instance
+ for _ in range(0, 300):
+ # Add TextFragment to paragraphs collection of page object
+ page.paragraphs.add(ap.text.TextFragment("Pages count test"))
+ # Process the paragraphs in PDF file to get accurate page count
document.process_paragraphs()
- # Imprimir número de páginas no documento
- print("Número de páginas no documento =", str(len(document.pages)))
+ # Print number of pages in document
+ print("Number of pages in document =", str(len(document.pages)))
```
+## Obter propriedades da página
-## Obter Propriedades da Página
+Cada página em um arquivo PDF possui várias propriedades, como largura, altura, bleed-, crop- e trimbox. Aspose.PDF permite que você acesse essas propriedades.
-Cada página em um arquivo PDF possui uma série de propriedades, como largura, altura, bleed-, crop- e trimbox. Aspose.PDF permite que você acesse essas propriedades.
+### Entendendo as Propriedades da Página: a Diferença entre Artbox, BleedBox, CropBox, MediaBox, TrimBox e a propriedade Rect
-### **Entendendo as Propriedades da Página: a Diferença entre a propriedade Artbox, BleedBox, CropBox, MediaBox, TrimBox e Rect**
-
-- **Media box**: A media box é a maior caixa de página. Ela corresponde ao tamanho da página (por exemplo, A4, A5, Carta dos EUA, etc.) selecionado quando o documento foi impresso em PostScript ou PDF. Em outras palavras, a media box determina o tamanho físico do meio no qual o documento PDF é exibido ou impresso.
-- **Bleed box**: Se o documento tiver sangramento, o PDF também terá uma bleed box.
- Bleed é a quantidade de cor (ou arte) que se estende além da borda de uma página. É usado para garantir que, quando o documento for impresso e cortado no tamanho (“aparado”), a tinta vá até a borda da página. Mesmo que a página seja mal aparada - cortada ligeiramente fora das marcas de corte - não aparecerão bordas brancas na página.
-- **Caixa de corte**: A caixa de corte indica o tamanho final de um documento após impressão e aparo.
-- **Caixa de arte**: A caixa de arte é a caixa desenhada ao redor do conteúdo real das páginas em seus documentos. Esta caixa de página é usada ao importar documentos PDF em outras aplicações.
-- **Caixa de recorte**: A caixa de recorte é o tamanho da “página” em que seu documento PDF é exibido no Adobe Acrobat. No modo de exibição normal, apenas o conteúdo da caixa de recorte é exibido no Adobe Acrobat.
- Para descrições detalhadas dessas propriedades, leia a especificação Adobe.Pdf, particularmente 10.10.1 Limites de Página.
-- **Page.Rect**: a interseção (retângulo visível comum) do MediaBox e DropBox. A imagem abaixo ilustra essas propriedades.
+- **Media box**: A caixa de mídia é a maior caixa de página. Ela corresponde ao tamanho da página (por exemplo A4, A5, US Letter, etc.) selecionado quando o documento foi impresso para PostScript ou PDF. Em outras palavras, a caixa de mídia determina o tamanho físico do suporte no qual o documento PDF é exibido ou impresso.
+- **Bleed box**: Se o documento tem sangria, o PDF também terá uma caixa de sangria. Sangria é a quantidade de cor (ou arte) que se estende além da borda de uma página. É usada para garantir que, quando o documento for impresso e cortado ao tamanho (“recortado”), a tinta chegue até a borda da página. Mesmo se a página for cortada incorretamente - cortada ligeiramente fora das marcas de corte - não aparecerão bordas brancas na página.
+- **Trim box**: A caixa de corte indica o tamanho final de um documento após a impressão e o corte.
+- **Art box**: A caixa de arte é a caixa desenhada ao redor do conteúdo real das páginas em seus documentos. Essa caixa de página é usada ao importar documentos PDF em outras aplicações.
+- **Crop box**: A crop box é o tamanho de “página” no qual seu documento PDF é exibido no Adobe Acrobat. Na visualização normal, apenas o conteúdo da crop box é exibido no Adobe Acrobat.
+ Para descrições detalhadas dessas propriedades, leia a especificação Adobe.Pdf, particularmente 10.10.1 Page Boundaries.
+-- **Page.Rect**: a interseção (retângulo comumente visível) da MediaBox e DropBox (`Page.rect`). Veja o [`Rectangle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) tipo para propriedades de retângulo. A imagem abaixo ilustra essas propriedades.
Para mais detalhes, por favor visite [esta página](http://www.enfocus.com/manuals/ReferenceGuide/PP/10/enUS/en-us/concept/c_aa1095731.html).
-### **Acessando Propriedades da Página**
+### Acessando Propriedades da Página
-A classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) fornece todas as propriedades relacionadas a uma página específica do PDF. Todas as páginas dos arquivos PDF estão contidas na coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+O [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) classe fornece todas as propriedades relacionadas a uma página PDF específica. Todas as páginas dos arquivos PDF estão contidas no do [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) do objeto [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) coleção.
-A partir daí, é possível acessar objetos Page individuais usando seu índice, ou percorrer a coleção, usando um loop foreach, para obter todas as páginas. Uma vez que uma página individual é acessada, podemos obter suas propriedades. O trecho de código a seguir mostra como obter propriedades de página.
+A partir daí, é possível acessar cada indivíduo `Page` objetos usando seu índice, ou percorrer a coleção para obter todas as páginas. Uma vez que uma página individual é acessada, podemos obter suas propriedades. O trecho de código a seguir mostra como obter as propriedades da página (a `Page` API).
```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
- # Obter página específica
+import sys
+import aspose.pdf as ap
+from os import path
+
+def get_page_properties(input_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+ # Get particular page
page = document.pages[1]
- # Obter propriedades da página
- print(
- "ArtBox : Altura={},Largura={},LLX={},LLY={},URX={},URY={}".format(
- page.art_box.height,
- page.art_box.width,
- page.art_box.llx,
- page.art_box.lly,
- page.art_box.urx,
- page.art_box.ury,
- )
- )
- print(
- "BleedBox : Altura={},Largura={},LLX={},LLY={},URX={},URY={}".format(
- page.bleed_box.height,
- page.bleed_box.width,
- page.bleed_box.llx,
- page.bleed_box.lly,
- page.bleed_box.urx,
- page.bleed_box.ury,
- )
- )
- print(
- "CropBox : Altura={},Largura={},LLX={},LLY={},URX={},URY={}".format(
- page.crop_box.height,
- page.crop_box.width,
- page.crop_box.llx,
- page.crop_box.lly,
- page.crop_box.urx,
- page.crop_box.ury,
- )
- )
- print(
- "MediaBox : Altura={},Largura={},LLX={},LLY={},URX={},URY={}".format(
- page.media_box.height,
- page.media_box.width,
- page.media_box.llx,
- page.media_box.lly,
- page.media_box.urx,
- page.media_box.ury,
- )
- )
- print(
- "TrimBox : Altura={},Largura={},LLX={},LLY={},URX={},URY={}".format(
- page.trim_box.height,
- page.trim_box.width,
- page.trim_box.llx,
- page.trim_box.lly,
- page.trim_box.urx,
- page.trim_box.ury,
- )
- )
- print(
- "Rect : Altura={},Largura={},LLX={},LLY={},URX={},URY={}".format(
- page.rect.height,
- page.rect.width,
- page.rect.llx,
- page.rect.lly,
- page.rect.urx,
- page.rect.ury,
- )
- )
- print("Número da Página :", page.number)
- print("Girar :", page.rotate)
-```
-
-## Obter uma Página Específica do Arquivo PDF
-Aspose.PDF para Python permite [dividir um PDF em páginas individuais](/pdf/pt/python-net/split-pdf-document/) e salvá-las como arquivos PDF. Obter uma página especificada em um arquivo PDF e salvá-la como um novo PDF é uma operação muito semelhante: abrir o documento fonte, acessar a página, criar um novo documento e adicionar a página a este.
-
-A [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection) do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document) mantém as páginas no arquivo PDF. Para obter uma página específica desta coleção:
-
-1. Especifique o índice da página usando a propriedade Pages.
-1. Crie um novo objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-1. Adicione o objeto [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) ao novo objeto Document.
-1. Salve a saída usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-
-O trecho de código a seguir mostra como obter uma página específica de um arquivo PDF e salvá-la como um novo arquivo.
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
+ # Get page properties
+ boxes = {
+ "ArtBox": page.art_box,
+ "BleedBox": page.bleed_box,
+ "CropBox": page.crop_box,
+ "MediaBox": page.media_box,
+ "TrimBox": page.trim_box,
+ "Rect": page.rect,
+ }
- # Obter página específica
- page = document.pages[2]
+ # Print box properties
+ for box_name, box in boxes.items():
+ print(
+ f"{box_name} : Height={box.height},Width={box.width},LLX={box.llx},LLY={box.lly},URX={box.urx},URY={box.ury}"
+ )
- # Salvar a página como arquivo PDF
- new_document = ap.Document()
- new_document.pages.add(page)
- new_document.save(output_pdf)
+ # Print other page properties
+ print(f"Page Number : {page.number}")
+ print(f"Rotate : {page.rotate}")
```
-## Determinar Cor da Página
+## Determinar cor da página
-A classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) fornece as propriedades relacionadas a uma página específica em um documento PDF, incluindo qual tipo de cor - RGB, preto e branco, escala de cinza ou indefinido - a página utiliza.
+O [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) A classe fornece as propriedades relacionadas a uma página específica em um documento PDF, incluindo o tipo de cor - RGB, preto e branco, escala de cinza ou indefinido - que a página utiliza.
-Todas as páginas dos arquivos PDF estão contidas pela coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
- O documento abaixo está em formato markdown com trechos de código. Veja a tradução do texto para o português:
+Todas as páginas dos arquivos PDF são contidas por [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) coleção. O [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) a propriedade especifica a cor dos elementos na página. Para obter ou determinar as informações de cor para uma página PDF específica, use o [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) do objeto [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) propriedade.
-A propriedade [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) especifica a cor dos elementos na página. Para obter ou determinar a informação de cor para uma página específica do PDF, use a propriedade [color_type](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) do objeto [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
-
-O trecho de código a seguir mostra como iterar através das páginas individuais de um arquivo PDF para obter informações de cor.
+O trecho de código a seguir mostra como iterar através de cada página individual de um arquivo PDF para obter informações de cor.
```python
-
- import aspose.pdf as ap
-
- # Abrir arquivo PDF de origem
- document = ap.Document(input_pdf)
- # Iterar através de todas as páginas do arquivo PDF
- for page_n in range(0, len(document.pages)):
- page_number = page_n + 1
- # Obter a informação do tipo de cor para uma página específica do PDF
+import sys
+import aspose.pdf as ap
+from os import path
+
+def get_page_color_type(input_file_name):
+ # Open source PDF file
+ document = ap.Document(input_file_name)
+ # Iterate through all the page of PDF file
+ for page_number in range(1, len(document.pages) + 1):
+ # Get the color type information for particular PDF page
page_color_type = document.pages[page_number].color_type
- if page_color_type == ap.ColorType.BLACK_AND_WHITE:
- print("Página # " + str(page_number) + " é Preto e branco.")
-
- if page_color_type == ap.ColorType.GRAYSCALE:
- print("Página # " + str(page_number) + " é Escala de Cinza.")
-
- if page_color_type == ap.ColorType.RGB:
- print("Página # " + str(page_number) + " é RGB.")
-
- if page_color_type == ap.ColorType.UNDEFINED:
- print("Cor da Página # " + str(page_number) + " não está definida.")
+ color_type_map = {
+ ap.ColorType.BLACK_AND_WHITE: "Black and white",
+ ap.ColorType.GRAYSCALE: "Gray Scale",
+ ap.ColorType.RGB: "RGB",
+ ap.ColorType.UNDEFINED: "undefined",
+ }
+ color_description = color_type_map.get(page_color_type, "unknown")
+ print(f"Page # {page_number} is {color_description}.")
```
-{
- "@context": "http://schema.org",
- "@type": "SoftwareApplication",
- "name": "Aspose.PDF for Python via .NET Library",
- "image": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "url": "https://www.aspose.com/",
- "publisher": {
- "@type": "Organization",
- "name": "Aspose.PDF",
- "url": "https://products.aspose.com/pdf",
- "logo": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "alternateName": "Aspose",
- "sameAs": [
- "https://facebook.com/aspose.pdf/",
- "https://twitter.com/asposepdf",
- "https://www.youtube.com/channel/UCmV9sEg_QWYPi6BJJs7ELOg/featured",
- "https://www.linkedin.com/company/aspose",
- "https://stackoverflow.com/questions/tagged/aspose",
- "https://aspose.quora.com/",
- "https://aspose.github.io/"
- ],
- "contactPoint": [
- {
- "@type": "ContactPoint",
- "telephone": "+1 903 306 1676",
- "contactType": "vendas",
- "areaServed": "US",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+44 141 628 8900",
- "contactType": "vendas",
- "areaServed": "GB",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+61 2 8006 6987",
- "contactType": "vendas",
- "areaServed": "AU",
- "availableLanguage": "en"
- }
- ]
- },
- "offers": {
- "@type": "Offer",
- "price": "1199",
- "priceCurrency": "USD"
- },
- "applicationCategory": "Biblioteca de Manipulação de PDF para Python",
- "downloadUrl": "https://www.nuget.org/packages/Aspose.PDF/",
- "operatingSystem": "Windows, MacOS, Linux",
- "screenshot": "https://docs.aspose.com/pdf/python-net/create-pdf-document/example.png",
- "softwareVersion": "2022.1",
- "aggregateRating": {
- "@type": "AggregateRating",
- "ratingValue": "5",
- "ratingCount": "16"
- }
-}
\ No newline at end of file
+## Tópicos de Página Relacionados
+
+- [Trabalhe com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Alterar tamanho da página PDF em Python](/pdf/pt/python-net/change-page-size/)
+- [Cortar páginas PDF em Python](/pdf/pt/python-net/crop-pages/)
+- [Rotacionar páginas PDF em Python](/pdf/pt/python-net/rotate-pages/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/move-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/move-pages/_index.md
index 760b59f4c1..8ecd2bb9fd 100644
--- a/pt/python-net/advanced-operations/working-with-pages/move-pages/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/move-pages/_index.md
@@ -1,226 +1,110 @@
---
-title: Mover Páginas de PDF programaticamente via Python
-linktitle: Mover Páginas de PDF
+title: Mover páginas PDF em Python
+linktitle: Movendo páginas PDF
type: docs
weight: 100
url: /pt/python-net/move-pages/
-description: Tente mover páginas para a localização desejada ou para o final de um arquivo PDF usando Aspose.PDF para Python via .NET.
-lastmod: "2023-04-17"
+description: Aprenda como mover páginas PDF dentro de um documento ou entre documentos em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mover páginas PDF entre documentos em Python
+Abstract: Este artigo explica como mover páginas em PDFs usando Aspose.PDF for Python via .NET. Aprenda como mover uma única página ou várias páginas para outro documento e como reposicionar uma página dentro do mesmo PDF usando as APIs Document e PageCollection.
---
-
-
-
-## Movendo uma Página de um Documento PDF para Outro
-
-Este tópico explica como mover uma página de um documento PDF para o final de outro documento usando Python.
-Para mover uma página, devemos:
-
-1. Criar um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de origem.
-1. Criar um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de destino.
-1. Obter a Página da coleção do [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) página ao documento de destino.
-1. Salvar o PDF de saída usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-1. [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) página no documento de origem.
-
-1. Salve o PDF de origem usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-
-O snippet de código a seguir mostra como mover uma página.
-```python
+## Mover uma Página de um Documento PDF para Outro
- import aspose.pdf as ap
+Aspose.PDF for Python permite mover uma página (não apenas copiá‑la) de um PDF para outro. Ele remove a página selecionada do documento original e, em seguida, a adiciona a um novo arquivo PDF.
- srcDocument = ap.Document(src_file_name)
- dstDocument = ap.Document(dst_File_name)
- page = srcDocument.pages[2]
- dstDocument.pages.add(page)
- # Salvar arquivo de saída
- dstDocument.save(dst_File_name_new)
- srcDocument.pages.delete(2)
- srcDocument.save(src_file_name_new)
-```
+Pense nisso como recortar uma página de um livro e colá‑la em outro — a página deixa de existir no arquivo original após a movimentação.
-## Movendo um Conjunto de Páginas de um Documento PDF para Outro
+1. Abra o documento PDF de origem usando o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Selecione uma página específica para mover (neste caso, página 2) — isso se refere a um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Crie um novo documento PDF (instancie outro [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)).
+1. Adicione a página selecionada ao novo documento PDF usando o documento de destino [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (por exemplo, `another_document.pages.add(page)`).
+1. Exclua a página do documento original por meio de seu [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) (por exemplo, `document.pages.delete(index)`).
+1. Salve ambos os documentos.
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de origem.
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de destino.
-1. Defina um array com os números das páginas a serem movidas.
-1. Execute um loop através do array:
+O trecho de código a seguir mostra como mover uma página.
-1. Obter Página da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) página ao documento de destino.
-1. Salvar o PDF de saída usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
-1. [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) página no documento de origem usando array.
-1. Salvar o PDF de origem usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+```python
+import aspose.pdf as ap
+
+def move_page_from_one_document_to_another(
+ input_file_name: str, output_file_name: str
+) -> None:
+
+ document = ap.Document(input_file_name)
+ page = document.pages[2]
+ another_document = ap.Document()
+ another_document.pages.add(page)
+ document.pages.delete(2)
+ document.save(input_file_name.replace(".pdf", "_new.pdf"))
+ another_document.save(output_file_name)
+```
-O seguinte trecho de código mostra como inserir uma página vazia no final de um arquivo PDF.
+## Mover várias páginas de um PDF Document para outro
-```python
+Ao contrário da cópia, esta operação transfere as páginas selecionadas — removendo-as do arquivo de origem e salvando-as em um novo PDF.
- import aspose.pdf as ap
+1. Crie um novo documento de destino vazio (`Document`).
+1. Selecione várias páginas (neste caso, as páginas 1 e 3) do documento de origem [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Percorra as páginas selecionadas e adicione cada uma ao documento de destino [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Salve o documento de destino contendo as páginas movidas.
+1. Exclua as páginas movidas do documento de origem usando seu [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Salve o documento fonte modificado com um novo nome de arquivo para preservar ambas as versões.
- srcDocument = ap.Document(input_pdf)
- dstDocument = ap.Document()
- pages = [1, 3]
+O trecho de código a seguir mostra como mover várias páginas.
+
+```python
+import aspose.pdf as ap
+
+def move_multiple_pages_from_one_document_to_another(
+ input_file_name: str, output_file_name: str
+) -> None:
+ src_document = ap.Document(input_file_name)
+ dst_document = ap.Document()
+ pages = [1, 2]
for page_index in pages:
- page = srcDocument.pages[page_index]
- dstDocument.pages.add(page)
- # Salvar arquivos de saída
- dstDocument.save(output_pdf_1)
- srcDocument.pages.delete(pages)
- srcDocument.save(output_pdf_2)
+ page = src_document.pages[page_index]
+ dst_document.pages.add(page)
+ # Save output files
+ dst_document.save(output_file_name)
+ src_document.pages.delete(pages)
+ src_document.save(input_file_name.replace(".pdf", "_new.pdf"))
```
+## Mover uma página para um novo local no mesmo documento PDF
-## Movendo uma Página para um novo local no Documento PDF atual
+Ele mostra como mover uma página específica para uma posição diferente dentro do mesmo documento — uma necessidade comum ao reorganizar ou editar layouts de PDF.
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o arquivo PDF de origem.
-1. Obtenha a Página da coleção [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
-1. [add()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) página para o novo local (por exemplo, para o final).
-1. [delete()](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/#methods) página na localização anterior.
-1. Salve o PDF de saída usando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Carregue o documento PDF de entrada usando o [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Selecione a página que você deseja mover (página 2) — isso é um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Adicione ao final do documento usando o documento [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Exclua a página original de sua localização anterior via o [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/).
+1. Salve o documento modificado como um novo arquivo.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
+def move_page_in_new_location_in_same_document(
+ input_file_name: str, output_file_name: str
+) -> None:
+ src_document = ap.Document(input_file_name)
- srcDocument = ap.Document(input_pdf)
+ page = src_document.pages[2]
+ src_document.pages.add(page)
+ src_document.pages.delete(2)
- page = srcDocument.pages[2]
- srcDocument.pages.add(page)
- srcDocument.pages.delete(2)
-
- # Salvar arquivo de saída
- srcDocument.save(output_pdf)
+ # Save output file
+ src_document.save(output_file_name)
```
-
\ No newline at end of file
+## Tópicos de Página Relacionados
+
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Adicionar páginas PDF em Python](/pdf/pt/python-net/add-pages/)
+- [Excluir páginas PDF em Python](/pdf/pt/python-net/delete-pages/)
+- [Extrair páginas PDF em Python](/pdf/pt/python-net/extract-pages/)
diff --git a/pt/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md b/pt/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md
index 57333ddff3..7dcfa6c9aa 100644
--- a/pt/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/rotate-pages/_index.md
@@ -1,173 +1,44 @@
---
-title: Rotacionar Páginas de PDF Usando Python
-linktitle: Rotacionar Páginas de PDF
+title: Rotacionar Páginas PDF em Python
+linktitle: Rotacionando Páginas PDF
type: docs
weight: 110
url: /pt/python-net/rotate-pages/
-description: Este tópico descreve como rotacionar a orientação da página em um arquivo PDF existente programaticamente com Python.
-lastmod: "2023-04-17"
+description: Aprenda como rotacionar páginas PDF e alterar a orientação da página em Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como rotacionar Páginas em PDF com Python
+Abstract: Este artigo fornece um guia sobre como atualizar ou alterar programaticamente a orientação das páginas de um arquivo PDF existente usando Python. Utilizando Aspose.PDF for Python via .NET, os usuários podem alternar facilmente entre orientações paisagem e retrato ajustando as propriedades MediaBox da página. O artigo inclui um trecho de código Python que demonstra como iterar pelas páginas de um documento PDF, modificar suas dimensões e posições MediaBox e ajustar o CropBox, se necessário. Além disso, explica como definir o ângulo de rotação das páginas usando o método 'rotate' para alcançar a orientação desejada. O processo termina com a gravação do arquivo PDF atualizado.
---
-
+Este tópico descreve como atualizar ou alterar a orientação das páginas de um arquivo PDF existente programaticamente com Python.
-Este tópico descreve como atualizar ou alterar a orientação das páginas em um arquivo PDF existente programaticamente com Python.
+Use esta página quando precisar alternar páginas entre orientação retrato e paisagem ou aplicar ângulos de rotação ao conteúdo PDF existente.
## Alterar Orientação da Página
-O Aspose.PDF para Python via .NET suporta ótimos recursos como alterar a orientação da página de paisagem para retrato e vice-versa. Para alterar a orientação da página, defina o MediaBox da página usando o seguinte trecho de código. Você também pode alterar a orientação da página definindo o ângulo de rotação usando o método 'rotate'.
+Esta função rotaciona cada página de um PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) 90 graus no sentido horário usando Aspose.PDF for Python.
+É útil para corrigir problemas de orientação de página, como documentos digitalizados que estão de lado. O PDF original permanece inalterado, e a versão rotacionada é salva como um novo arquivo.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
-
- doc = ap.Document(input_pdf)
- for page in doc.pages:
- r = page.media_box
- newHeight = r.width
- newWidth = r.height
- newLLX = r.llx
- # Precisamos mover a página para cima para compensar a mudança no tamanho da página
- # (a borda inferior da página é 0,0 e as informações geralmente são colocadas a partir do
- # topo da página. É por isso que movemos a borda inferior para cima na diferença entre
- # a altura antiga e a nova.
- newLLY = r.lly + (r.height - newHeight)
- page.media_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
- # Às vezes, também precisamos definir o CropBox (se ele foi definido no arquivo original)
- page.crop_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
-
- # Definindo o ângulo de rotação da página
+def rotate_page(infile, outfile):
+ document = ap.Document(infile)
+ for page in document.pages:
page.rotate = ap.Rotation.ON90
- # Salvar arquivo de saída
- doc.save(output_pdf)
+ document.save(outfile)
```
+## Tópicos Relacionados à Página
-{
- "@context": "http://schema.org",
- "@type": "SoftwareApplication",
- "name": "Aspose.PDF para Python via .NET Library",
- "image": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "url": "https://www.aspose.com/",
- "publisher": {
- "@type": "Organization",
- "name": "Aspose.PDF",
- "url": "https://products.aspose.com/pdf",
- "logo": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "alternateName": "Aspose",
- "sameAs": [
- "https://facebook.com/aspose.pdf/",
- "https://twitter.com/asposepdf",
- "https://www.youtube.com/channel/UCmV9sEg_QWYPi6BJJs7ELOg/featured",
- "https://www.linkedin.com/company/aspose",
- "https://stackoverflow.com/questions/tagged/aspose",
- "https://aspose.quora.com/",
- "https://aspose.github.io/"
- ],
- "contactPoint": [
- {
- "@type": "ContactPoint",
- "telephone": "+1 903 306 1676",
- "contactType": "vendas",
- "areaServed": "US",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+44 141 628 8900",
- "contactType": "vendas",
- "areaServed": "GB",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+61 2 8006 6987",
- "contactType": "vendas",
- "areaServed": "AU",
- "availableLanguage": "en"
- }
- ]
- },
- "offers": {
- "@type": "Offer",
- "price": "1199",
- "priceCurrency": "USD"
- },
- "applicationCategory": "Biblioteca de Manipulação de PDF para Python",
- "downloadUrl": "https://www.nuget.org/packages/Aspose.PDF/",
- "operatingSystem": "Windows, MacOS, Linux",
- "screenshot": "https://docs.aspose.com/pdf/python-net/create-pdf-document/example.png",
- "softwareVersion": "2022.1",
- "aggregateRating": {
- "@type": "AggregateRating",
- "ratingValue": "5",
- "ratingCount": "16"
- }
-}
\ No newline at end of file
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
+- [Alterar o tamanho da página PDF em Python](/pdf/pt/python-net/change-page-size/)
+- [Cortar páginas de PDF em Python](/pdf/pt/python-net/crop-pages/)
+- [Obter e definir propriedades de página de PDF em Python](/pdf/pt/python-net/get-and-set-page-properties/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/stamping/_index.md b/pt/python-net/advanced-operations/working-with-pages/stamping/_index.md
index b94b4f93e9..ea3411ff8d 100644
--- a/pt/python-net/advanced-operations/working-with-pages/stamping/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/stamping/_index.md
@@ -1,86 +1,29 @@
---
-title: Stamping com Aspose.PDF usando Python
-linktitle: Stamping
+title: Carimbar Páginas PDF em Python
+linktitle: Carimbagem
type: docs
weight: 120
url: /pt/python-net/stamping/
-description: Esta seção descreve como adicionar carimbos de imagem e carimbos de texto a uma página PDF via Python.
-lastmod: "2023-04-17"
+description: Aprenda como adicionar numeração de páginas, carimbos de página, carimbos de imagem e carimbos de texto a páginas PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar carimbos a PDF usando Python
+Abstract: Este artigo discute o conceito e a aplicação de carimbos em documentos PDF, que são semelhantes a carimbos de borracha em documentos de papel, fornecendo informações adicionais e aprimorando a segurança do documento. Ele destaca o uso de **Aspose.PDF for Python via .NET** para adicionar carimbos de imagem ou texto a PDFs. O artigo inclui orientações sobre como adicionar carimbos de imagem, controlar a qualidade da imagem e usar carimbos de imagem como plano de fundo, bem como instruções para adicionar carimbos de texto, definir alinhamento e preencher texto contornado em um PDF. Os leitores podem explorar duas seções para instruções detalhadas - \u0022Add Image stamps in PDF page\u0022 e \u0022Add Text stamps in the PDF File\u0022.
---
-
+Um carimbo em um documento PDF é análogo à aplicação de um carimbo de borracha em um documento de papel.
+O carimbo no arquivo PDF fornece informações adicionais para o arquivo PDF, como proteger o arquivo PDF para que seja usado por outros e confirmar a segurança do conteúdo do arquivo PDF. **Aspose.PDF for Python via .NET** permite adicionar carimbo de imagem ou texto ao seu documento PDF.
-Um carimbo em um documento PDF é análogo a aplicar um carimbo de borracha em um documento de papel.
-O carimbo no arquivo PDF fornece informações adicionais para o arquivo PDF, como proteger o arquivo PDF para ser usado por outros e confirmar a segurança do conteúdo do arquivo PDF. **Aspose.PDF para Python via .NET** permite adicionar imagem ou texto como carimbo em seu documento PDF.
+Use esta seção quando precisar adicionar sobreposições, como números de página, marcas d'água, logotipos ou marcadores de texto, em páginas PDF existentes.
+
+Consulte as seções a seguir para aprender como adicionar um carimbo com Python:
+
+- [Adicionando carimbos de imagem em páginas PDF](/pdf/pt/python-net/image-stamps-in-pdf-page/) - adicionar carimbo de imagem, controlar a qualidade da imagem, usar o carimbo de imagem como plano de fundo do seu arquivo PDF.
+- [Adicionando carimbos de texto no arquivo PDF](/pdf/pt/python-net/text-stamps-in-the-pdf-file/) - adicionar selo de texto, definir alinhamento para o objeto TextStamp, preencher texto de traço como selo no arquivo PDF.
+- [Adicionando selos de página no arquivo PDF](/pdf/pt/python-net/page-stamps-in-the-pdf-file/) - adicionar selos de página para sobrepor páginas inteiras ou seções, útil para marca d'água, versionamento de documentos ou adicionar planos de fundo personalizados a arquivos PDF.
+- [Adicionando selos de número de página no arquivo PDF](/pdf/pt/python-net/add-page-number/) - adicionar números de página ao seu documento PDF, personalizar sua aparência e controlar sua colocação.
-Verifique as seções a seguir para aprender como adicionar um carimbo com Python:
-- [Adicionar carimbos de imagem na página PDF](/pdf/pt/python-net/image-stamps-in-pdf-page/) - adicionar carimbo de imagem, controlar a qualidade da imagem, carimbo de imagem como plano de fundo do seu arquivo PDF.
-- [Adicionar carimbos de texto no arquivo PDF](/pdf/pt/python-net/text-stamps-in-the-pdf-file/) - adicionar carimbo de texto, definir alinhamento para o objeto TextStamp, preencher texto como carimbo no arquivo PDF.
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-number/_index.md b/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-number/_index.md
new file mode 100644
index 0000000000..a8e23e956e
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-number/_index.md
@@ -0,0 +1,118 @@
+---
+title: Adicionar Números de Página ao PDF em Python
+linktitle: Adicionando Número de Página
+type: docs
+weight: 30
+url: /pt/python-net/add-page-number/
+description: Aprenda como adicionar carimbos de número de página a documentos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar Número de Página ao PDF usando Python
+Abstract: Este artigo discute a importância de adicionar números de página aos documentos para facilitar a navegação e apresenta a biblioteca Aspose.PDF for Python via .NET como uma ferramenta para alcançar isso em arquivos PDF. A biblioteca utiliza a classe PageNumberStamp, que oferece propriedades para personalizar o carimbo de número de página, incluindo formato, margens, alinhamentos e número inicial. O processo envolve criar um objeto Document e um objeto PageNumberStamp, configurar as propriedades desejadas e aplicar o carimbo às páginas PDF usando o método add_stamp(). O artigo fornece um exemplo de código Python demonstrando como configurar e aplicar carimbos de número de página com atributos de fonte personalizáveis.
+---
+
+Todos os documentos devem ter números de página. O número de página facilita ao leitor localizar diferentes partes do documento.
+
+**Aspose.PDF for Python via .NET** permite que você adicione números de página com [PageNumberStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/).
+
+## Adicionando carimbo de número de página a um PDF
+
+Adicione carimbos de número de página dinâmicos a um PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) usando Aspose.PDF for Python. O [`PageNumberStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/) objeto permite exibir automaticamente o número da página atual junto com o número total de páginas. O exemplo mostra como criar um carimbo de número de página, personalizar sua aparência (fonte, tamanho, estilo, cor, alinhamento e margens) usando [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/), e aplicá-lo a um específico [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) no PDF via o [`Page.add_stamp()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) método. Os valores de alinhamento vêm de [`HorizontalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/horizontalalignment/) enum, e cor/fonte/estilo estão disponíveis através de [`Color`](https://reference.aspose.com/pdf/python-net/aspose.pdf/color/) e [`FontStyles`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/fontstyles/) (fontes descobertas via [`FontRepository.find_font()`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/fontrepository/#methods)). Essa funcionalidade é útil para gerar documentos profissionais numerados e automatizar a paginação em fluxos de trabalho PDF.
+
+1. Abra o documento PDF.
+1. Crie um carimbo de número de página.
+1. Defina as propriedades do carimbo.
+1. Personalize o estilo do texto.
+1. Aplicar o carimbo a uma página.
+1. Salvar o PDF modificado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_page_num_stamp(input_file_name, output_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+
+ # Create page number stamp
+ page_number_stamp = ap.PageNumberStamp()
+ # Whether the stamp is background
+ page_number_stamp.background = False
+ page_number_stamp.format = "Page # of " + str(len(document.pages))
+ page_number_stamp.bottom_margin = 10
+ page_number_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
+ page_number_stamp.starting_number = 1
+ # Set text properties
+ page_number_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
+ page_number_stamp.text_state.font_size = 14.0
+ page_number_stamp.text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
+ page_number_stamp.text_state.foreground_color = ap.Color.blue_violet
+
+ # Add stamp to particular page
+ document.pages[1].add_stamp(page_number_stamp)
+
+ # Save output document
+ document.save(output_file_name)
+```
+
+## Adicionando números de página em algarismos romanos a um PDF
+
+Adicione números de página no formato de algarismos romanos a todas as páginas de um documento PDF. Os números de página são adicionados como marcas usando [`PageNumberStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagenumberstamp/), com fonte, tamanho, estilo, cor e alinhamento personalizáveis. Use o [`NumberingStyle`](https://reference.aspose.com/pdf/python-net/aspose.pdf/numberingstyle/) enum para escolher algarismos romanos ou outros esquemas de numeração. A numeração também pode começar a partir de qualquer valor especificado.
+
+1. Abra o documento PDF.
+1. Crie um carimbo de número de página.
+1. Configurar propriedades do carimbo.
+1. Definir a aparência do texto.
+1. Aplicar o carimbo a todas as páginas.
+1. Salvar o PDF modificado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_page_num_stamp_roman(input_file_name, output_file_name):
+ # Open document
+ document = ap.Document(input_file_name)
+
+ # Create page number stamp
+ page_number_stamp = ap.PageNumberStamp()
+ # Whether the stamp is background
+ page_number_stamp.background = False
+ page_number_stamp.bottom_margin = 10
+ page_number_stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
+ page_number_stamp.starting_number = 42
+ page_number_stamp.numbering_style = ap.NumberingStyle.NUMERALS_ROMAN_UPPERCASE
+
+ # Set text properties
+ page_number_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
+ page_number_stamp.text_state.font_size = 14.0
+ page_number_stamp.text_state.font_style = ap.text.FontStyles.BOLD
+ page_number_stamp.text_state.foreground_color = ap.Color.blue_violet
+
+ # Add stamp to particular page
+ for page in document.pages:
+ page.add_stamp(page_number_stamp)
+
+ # Save output document
+ document.save(output_file_name)
+```
+
+## Exemplo ao Vivo
+
+[Adicionar números de página ao PDF](https://products.aspose.app/pdf/page-number) é um aplicativo web gratuito online que permite investigar como funciona a funcionalidade de adicionar números de página.
+
+[](https://products.aspose.app/pdf/page-number)
+
+## Tópicos Relacionados a Carimbos
+
+- [Carimbar páginas de PDF em Python](/pdf/pt/python-net/stamping/)
+- [Adicionar carimbos de página ao PDF em Python](/pdf/pt/python-net/page-stamps-in-the-pdf-file/)
+- [Adicionar carimbos de imagem ao PDF em Python](/pdf/pt/python-net/image-stamps-in-pdf-page/)
+- [Adicionar carimbos de texto ao PDF em Python](/pdf/pt/python-net/text-stamps-in-the-pdf-file/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-number/page_number.png b/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-number/page_number.png
new file mode 100644
index 0000000000..d718abd250
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-number/page_number.png differ
diff --git a/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-stamp/_index.md b/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-stamp/_index.md
new file mode 100644
index 0000000000..e76a611e21
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-pages/stamping/add-page-stamp/_index.md
@@ -0,0 +1,48 @@
+---
+title: Adicionar Selos de Página ao PDF em Python
+linktitle: Adicionando Selos de Página
+type: docs
+weight: 30
+url: /pt/python-net/page-stamps-in-the-pdf-file/
+description: Aprenda como adicionar selos de página PDF como sobreposições ou fundos em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar Selos de Página ao PDF usando Python
+Abstract: Este artigo explica como adicionar um selo de página a um documento PDF usando Aspose.PDF for Python. Um selo de página permite sobrepor ou subpor conteúdo — como logotipos, marcas d'água ou anotações — a uma página específica em um PDF. O exemplo mostra como abrir um PDF existente, criar um objeto PdfPageStamp a partir de outra página PDF, configurá‑lo como um selo de fundo e aplicá‑lo a uma página em particular. O PDF com selo é então salvo como um novo documento. Esta técnica é útil para branding, marca d'água ou para enfatizar conteúdo ao nível de página em fluxos de trabalho automatizados de PDF.
+---
+
+Aspose.PDF for Python via .NET mostra como aplicar um selo de página (marca d'água ou sobreposição) a uma página específica em um PDF [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). O carimbo de página pode ser uma página PDF existente usada como camada de fundo ou de primeiro plano (veja [`PdfPageStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf.pdfpagestamp/)). Isso é útil para adicionar logotipos, marcas d'água ou outro conteúdo de página repetitivo.
+
+1. Abra o documento PDF usando `ap.Document()` (veja [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)).
+1. Criar um `PdfPageStamp` objeto usando a página PDF ou arquivo a ser usado como selo (ver [`PdfPageStamp`](https://reference.aspose.com/pdf/python-net/aspose.pdf.pdfpagestamp/)).
+1. Defina as propriedades do selo, por exemplo, `background = True` para colocá-lo atrás do conteúdo.
+1. Adicionar o carimbo a uma página específica usando `document.pages[page_number].add_stamp(page_stamp)` (veja [`Page.add_stamp()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) e [`PageCollection`](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/)).
+1. Salve o PDF modificado no arquivo de saída especificado usando [`Document.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_page_stamp(input_file_name, page_stamp_name, output_file_name):
+ # Open PDF document
+ document = ap.Document(input_file_name)
+
+ page_stamp = ap.PdfPageStamp(page_stamp_name, 1)
+ page_stamp.background = True
+
+ # Add stamp to particular page
+ document.pages[1].add_stamp(page_stamp)
+
+ document.save(output_file_name)
+```
+
+## Tópicos Relacionados de Carimbagem
+
+- [Carimbar páginas PDF em Python](/pdf/pt/python-net/stamping/)
+- [Adicionar números de página ao PDF em Python](/pdf/pt/python-net/add-page-number/)
+- [Adicionar carimbos de imagem ao PDF em Python](/pdf/pt/python-net/image-stamps-in-pdf-page/)
+- [Adicionar carimbos de texto ao PDF em Python](/pdf/pt/python-net/text-stamps-in-the-pdf-file/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md b/pt/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md
index 4407504f13..5add5e194f 100644
--- a/pt/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/stamping/image-stamps-in-pdf-page/_index.md
@@ -1,101 +1,38 @@
---
-title: Adicionar Carimbos de Imagem em PDF usando Python
-linktitle: Carimbos de Imagem em Arquivo PDF
+title: Adicionar Selos de Imagem ao PDF em Python
+linktitle: Selos de Imagem em Arquivo PDF
type: docs
weight: 10
url: /pt/python-net/image-stamps-in-pdf-page/
-description: Adicione o Carimbo de Imagem em seu documento PDF usando a classe ImageStamp com a biblioteca Aspose.PDF para Python.
-lastmod: "2023-04-17"
+description: Aprenda como adicionar selos de imagem às páginas de PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar selos de imagem em PDF usando Python
+Abstract: Este artigo fornece um guia abrangente sobre como adicionar carimbos de imagem a arquivos PDF usando a biblioteca Aspose.PDF para Python. Ele detalha o uso da classe `ImageStamp`, que permite a personalização de carimbos baseados em imagem, incluindo propriedades como altura, largura, opacidade e rotação. O processo envolve a criação de um objeto `Document` e de um objeto `ImageStamp` com as propriedades desejadas, e então a adição do carimbo a uma página específica do PDF usando o método `add_stamp()`. O artigo inclui trechos de código Python que demonstram como aplicar um carimbo de imagem a um PDF e controlar sua qualidade usando a propriedade `quality`, que ajusta a qualidade da imagem em termos percentuais. Além disso, o artigo explica como usar carimbos de imagem como fundos em caixas flutuantes com a classe `FloatingBox`, fornecendo outro exemplo de código para mostrar como isso pode ser implementado. Este guia serve como um recurso útil para desenvolvedores que desejam aprimorar PDFs com carimbos de imagem usando Aspose.PDF.
---
-
-
-
-## Adicionar Carimbo de Imagem em Arquivo PDF
-
-Você pode usar a classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) para adicionar um carimbo de imagem a um arquivo PDF. A classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) fornece as propriedades necessárias para criar um carimbo baseado em imagem, como altura, largura, opacidade e assim por diante.
-
-Para adicionar um carimbo de imagem:
-
-1. Crie um objeto Document e um objeto ImageStamp usando as propriedades necessárias.
-1. Chame o método [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) da classe [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) para adicionar o carimbo ao PDF.
-O trecho de código a seguir mostra como adicionar um carimbo de imagem no arquivo PDF.
+## Adicionando Image Stamp em Arquivo PDF
-```python
+Você pode usar o [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) classe para adicionar um carimbo de imagem a um arquivo PDF. O [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) classe fornece as propriedades necessárias para criar um carimbo baseado em imagem, como altura, largura, opacidade e assim por diante. O carimbo pode ser posicionado, redimensionado, girado e torná‑lo parcialmente transparente, permitindo marca d'água, branding ou anotações.
+
+O trecho de código a seguir mostra como adicionar um carimbo de imagem no arquivo PDF.
- import aspose.pdf as ap
+1. Carregue o PDF usando 'ap.Document()'.
+1. Crie um carimbo de imagem com 'ImageStamp()'.
+1. Configure as propriedades do carimbo.
+1. Adicione o carimbo à página de destino.
+1. Salve o PDF modificado.
- # Abrir documento
- document = ap.Document(input_pdf)
+```python
+import sys
+import aspose.pdf as ap
+from os import path
- # Criar carimbo de imagem
+def add_image_stamp(infile, input_image_file, outfile):
+ document = ap.Document(infile)
image_stamp = ap.ImageStamp(input_image_file)
image_stamp.background = True
image_stamp.x_indent = 100
@@ -104,133 +41,85 @@ O trecho de código a seguir mostra como adicionar um carimbo de imagem no arqui
image_stamp.width = 300
image_stamp.rotate = ap.Rotation.ON270
image_stamp.opacity = 0.5
- # Adicionar carimbo a uma página específica
- document.pages[1].add_stamp(image_stamp)
- # Salvar documento de saída
- document.save(output_pdf)
+ document.pages[1].add_stamp(image_stamp)
+ document.save(outfile)
```
+## Controlar a Qualidade da Imagem ao Adicionar Marca
-## Controlar a Qualidade da Imagem ao Adicionar Carimbo
+Ao adicionar uma imagem como objeto de carimbo, você pode controlar a qualidade da imagem. O [quality](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/#properties) propriedade da [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) classe é usada para esse propósito. Ela indica a qualidade da imagem em porcentagem (valores válidos são 0..100).
+Ao definir a propriedade quality, você pode reduzir a resolução da imagem para otimizar o tamanho do PDF ou manter maior fidelidade para clareza.
-Ao adicionar uma imagem como um objeto de carimbo, você pode controlar a qualidade da imagem. A propriedade [quality](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/#properties) da classe [ImageStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/) é usada para esse propósito. Ela indica a qualidade da imagem em porcentagem (valores válidos são 0..100).
+1. Abra o documento PDF.
+1. Crie um carimbo de imagem.
+1. Defina a qualidade da imagem.
+1. Adicione o carimbo à página de destino.
+1. Salve o PDF modificado.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
+def add_image_stamp_with_quality_control(infile, input_image_file, outfile):
+ document = ap.Document(infile)
- # Criar carimbo de imagem
- image_stamp = ap.ImageStamp(input_jpg)
+ image_stamp = ap.ImageStamp(input_image_file)
image_stamp.quality = 10
- # Adicionar carimbo a uma página específica
- document.pages[1].add_stamp(image_stamp)
- # Salvar documento de saída
- document.save(output_pdf)
+ document.pages[1].add_stamp(image_stamp)
+ document.save(outfile)
```
-## Carimbo de Imagem como Fundo em Caixa Flutuante
+## Image Stamp como Plano de Fundo em Caixa Flutuante
-A API Aspose.PDF para Python permite adicionar carimbo de imagem como fundo em uma caixa flutuante.
- O atributo [background](https://reference.aspose.com/pdf/python-net/aspose.pdf/imagestamp/#properties) da classe [FloatingBox](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/) pode ser usado para definir a imagem de fundo para um caixa flutuante, como mostrado no exemplo de código a seguir.
+Criar um [FloatingBox](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/) em um PDF e aplicar uma imagem como fundo. Também mostra como adicionar texto, definir bordas, cor de fundo e posicionar a caixa precisamente na página. Isso é útil para criar conteúdo PDF visualmente rico, como balões de chamada, banners ou seções destacadas com texto sobre imagens.
-```python
+1. Abrir ou criar um documento PDF.
+1. Criar um objeto 'FloatingBox'.
+1. Adicionar conteúdo de texto à caixa.
+1. Definir borda da caixa e cor de fundo.
+1. Adicionar uma imagem de fundo.
+1. Adicionar o FloatingBox à página.
+1. Salvar o documento PDF.
- import aspose.pdf as ap
-
- # Instanciar objeto Document
- document = ap.Document()
- # Adicionar página ao documento PDF
- page = document.pages.add()
- # Criar objeto FloatingBox
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def add_image_as_background_in_floating_box(infile, input_image_file, outfile):
+ document = ap.Document(infile)
+ page = document.pages[1]
+ # Create FloatingBox object
box = ap.FloatingBox(200.0, 100.0)
- # Definir posição à esquerda para FloatingBox
+ # Set left position for FloatingBox
box.left = 40
- # Definir posição superior para FloatingBox
+ # Set Top position for FloatingBox
box.top = 80
- # Definir o alinhamento horizontal para FloatingBox
+ # Set the Horizontal alignment for FloatingBox
box.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Adicionar fragmento de texto à coleção de parágrafos de FloatingBox
- box.paragraphs.add(ap.text.TextFragment("texto principal"))
- # Definir borda para FloatingBox
+ # Add text fragment to paragraphs collection of FloatingBox
+ box.paragraphs.add(ap.text.TextFragment("Text in Floating Box"))
+ # Set border for FloatingBox
box.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
img = ap.Image()
img.file = input_image_file
- # Adicionar imagem de fundo
+ # Add background image
box.background_image = img
- # Definir cor de fundo para FloatingBox
+ # Set background color for FloatingBox
box.background_color = ap.Color.yellow
- # Adicionar FloatingBox à coleção de parágrafos do objeto page
+ # Add FloatingBox to paragraphs collection of page object
page.paragraphs.add(box)
- # Salvar o documento PDF
- document.save(output_pdf)
+ # Save the PDF document
+ document.save(outfile)
```
-
\ No newline at end of file
+## Tópicos Relacionados ao Carimbo
+
+- [Carimbar Páginas PDF em Python](/pdf/pt/python-net/stamping/)
+- [Adicionar Carimbos de Página ao PDF em Python](/pdf/pt/python-net/page-stamps-in-the-pdf-file/)
+- [Adicionar selos de texto ao PDF em Python](/pdf/pt/python-net/text-stamps-in-the-pdf-file/)
+- [Adicionar numeração de páginas ao PDF em Python](/pdf/pt/python-net/add-page-number/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md
index e9248e1d0b..a4880f6c83 100644
--- a/pt/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md
+++ b/pt/python-net/advanced-operations/working-with-pages/stamping/text-stamps-in-pdf-file/_index.md
@@ -1,257 +1,65 @@
---
-title: Adicionar Carimbos de Texto em PDF via Python
-linktitle: Carimbos de Texto em Arquivo PDF
+title: Adicionar Selos de Texto ao PDF em Python
+linktitle: Selos de texto em arquivo PDF
type: docs
weight: 20
url: /pt/python-net/text-stamps-in-the-pdf-file/
-description: Adicione um carimbo de texto a um documento PDF usando a classe TextStamp com a biblioteca Aspose.PDF para Python.
-lastmod: "2023-04-17"
+description: Aprenda como adicionar selos de texto a documentos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como adicionar selos de Texto em PDF usando Python
+Abstract: Este artigo fornece um guia abrangente sobre como adicionar selos de texto a arquivos PDF usando a biblioteca Aspose.PDF para Python. Ele descreve o uso da classe `TextStamp` para criar selos de texto personalizáveis com propriedades como tamanho da fonte, estilo, cor e alinhamento. O artigo inclui trechos de código que demonstram como adicionar um selo de texto simples, configurar o alinhamento do texto e aplicar modos avançados de renderização, como texto preenchido contornado. A primeira seção explica a criação de um objeto `Document` e `TextStamp`, a definição das propriedades de texto e a adição do selo a uma página específica. A segunda seção apresenta a propriedade `text_alignment` para alinhar o texto horizontal e verticalmente, fornecendo um exemplo de código que centraliza o texto em uma página PDF. A seção final discute os modos de renderização, demonstrando como adicionar texto preenchido contornado usando um objeto `TextState` para definir a cor do contorno e o modo de renderização antes de vinculá-lo a um selo. Cada seção é acompanhada de exemplos práticos para facilitar a compreensão e a implementação.
---
-
+## Adicionando selo de Texto com Python
-## Adicionar Carimbo de Texto com Python
+Você pode usar [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) classe para adicionar um carimbo de texto em um arquivo PDF. [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) A classe fornece propriedades necessárias para criar um carimbo baseado em texto, como tamanho da fonte, estilo da fonte e cor da fonte etc. Para adicionar um carimbo de texto, você precisa criar um objeto Document e um objeto TextStamp usando as propriedades requeridas. Depois disso, você pode chamar [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) método da Page para adicionar o carimbo no PDF. O trecho de código a seguir mostra como adicionar um carimbo de texto no arquivo PDF. Isso é útil para adicionar anotações, marcas d'água ou rótulos às páginas PDF.
-Você pode usar a classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) para adicionar um carimbo de texto em um arquivo PDF. A classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) fornece propriedades necessárias para criar um carimbo baseado em texto, como tamanho da fonte, estilo da fonte e cor da fonte, etc. Para adicionar um carimbo de texto, você precisa criar um objeto Document e um objeto TextStamp usando as propriedades necessárias. Após isso, você pode chamar o método [add_stamp()](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#methods) da Página para adicionar o carimbo no PDF. O trecho de código a seguir mostra como adicionar um carimbo de texto no arquivo PDF.
+1. Abra o documento PDF.
+1. Crie um objeto TextStamp.
+1. Defina o comportamento de fundo do stamp.
+1. Posicione o stamp na página.
+1. Gire o stamp se necessário.
+1. Defina as propriedades do texto.
+1. Adicione o carimbo a uma página.
+1. Salve o documento PDF modificado.
```python
+import sys
+import aspose.pdf as ap
+from os import path
- import aspose.pdf as ap
+def add_text_stamp(input_file_name, output_file_name):
+ document = ap.Document(input_file_name)
- # Abrir documento
- document = ap.Document(input_pdf)
-
- # Criar carimbo de texto
- text_stamp = ap.TextStamp("Carimbo de Exemplo")
- # Definir se o carimbo é de fundo
+ # Create text stamp
+ text_stamp = ap.TextStamp("Sample Stamp")
+ # Set whether stamp is background
text_stamp.background = True
- # Definir origem
+ # Set origin
text_stamp.x_indent = 100
text_stamp.y_indent = 100
- # Rotacionar carimbo
+ # Rotate stamp
text_stamp.rotate = ap.Rotation.ON90
- # Definir propriedades do texto
+ # Set text properties
text_stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
text_stamp.text_state.font_size = 14.0
- text_stamp.text_state.font_style = ap.text.FontStyles.BOLD
- text_stamp.text_state.font_style = ap.text.FontStyles.ITALIC
- text_stamp.text_state.foreground_color = ap.Color.aqua
- # Adicionar carimbo a uma página específica
- document.pages[1].add_stamp(text_stamp)
-
- # Salvar documento de saída
- document.save(output_pdf)
-```
-
-
-## Definir alinhamento para o objeto TextStamp
-
-Adicionar marcas d'água a documentos PDF é um dos recursos frequentemente exigidos e o Aspose.PDF para Python é totalmente capaz de adicionar marcas d'água de imagem, bem como de texto. Temos uma classe chamada [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/) que fornece o recurso de adicionar carimbos de texto sobre o arquivo PDF. Recentemente, houve a necessidade de suportar o recurso de especificar o alinhamento do texto ao usar o objeto TextStamp. Portanto, para atender a esse requisito, introduzimos a propriedade [text_alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties) na classe [TextStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/). Usando essa propriedade, podemos especificar o alinhamento de texto [horizontal_alignment](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstamp/#properties).
-
-Os trechos de código a seguir mostram um exemplo de como carregar um documento PDF existente e adicionar TextStamp sobre ele.
-
-```python
-
- import aspose.pdf as ap
-
- # Instanciar objeto Document com arquivo de entrada
- doc = ap.Document(input_pdf)
- # Instanciar objeto FormattedText com string de exemplo
- text = ap.facades.FormattedText("This")
- # Adicionar nova linha de texto ao FormattedText
- text.add_new_line_text("is sample")
- text.add_new_line_text("Center Aligned")
- text.add_new_line_text("TextStamp")
- text.add_new_line_text("Object")
- # Criar objeto TextStamp usando FormattedText
- stamp = ap.TextStamp(text)
- # Especificar o Alinhamento Horizontal do carimbo de texto como Alinhado ao Centro
- stamp.horizontal_alignment = ap.HorizontalAlignment.CENTER
- # Especificar o Alinhamento Vertical do carimbo de texto como Alinhado ao Centro
- stamp.vertical_alignment = ap.VerticalAlignment.CENTER
- # Especificar o Alinhamento Horizontal do Texto do TextStamp como Alinhado ao Centro
- stamp.text_alignment = ap.HorizontalAlignment.CENTER
- # Definir margem superior para o objeto de carimbo
- stamp.top_margin = 20
- # Adicionar o objeto de carimbo sobre a primeira página do documento
- doc.pages[1].add_stamp(stamp)
-
- # Salvar o documento atualizado
- doc.save(output_pdf)
-```
-
-
-## Preencher Texto de Contorno como Carimbo em Arquivo PDF
-
-Implementamos a configuração do modo de renderização para cenários de adição e edição de texto. Para renderizar texto de contorno, por favor, crie um objeto TextState para transferir propriedades avançadas. Defina a cor para o contorno. Depois, defina o modo de renderização de texto. O próximo passo é vincular o TextState e adicionar o Carimbo.
-
-O trecho de código a seguir demonstra a adição de Texto de Contorno Preenchido:
-
-```python
-
- import aspose.pdf as ap
-
- # Criar objeto TextState para transferir propriedades avançadas
- ts = ap.text.TextState()
- # Definir cor para o contorno
- ts.stroking_color = ap.Color.gray
- # Definir modo de renderização de texto
- ts.rendering_mode = ap.text.TextRenderingMode.STROKE_TEXT
- # Carregar um documento PDF de entrada
- file_stamp = ap.facades.PdfFileStamp(ap.Document(input_pdf))
-
- stamp = ap.facades.Stamp()
- stamp.bind_logo(
- ap.facades.FormattedText(
- "PAGO INTEGRALMENTE",
- ap.facades.FontColor(100, 100, 100),
- ap.facades.FontStyle.TIMES_ROMAN,
- ap.facades.EncodingType.WINANSI,
- True,
- 78.0,
- )
+ text_stamp.text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
)
+ text_stamp.text_state.foreground_color = ap.Color.dark_green
+ # Add stamp to particular page
+ document.pages[1].add_stamp(text_stamp)
- # Vincular TextState
- stamp.bind_text_state(ts)
- # Definir origem X,Y
- stamp.set_origin(100, 100)
- stamp.opacity = 5
- stamp.blending_space = ap.facades.BlendingColorSpace.DEVICE_RGB
- stamp.rotation = 45.0
- stamp.is_background = False
- # Adicionar Carimbo
- file_stamp.add_stamp(stamp)
- file_stamp.save(output_pdf)
- file_stamp.close()
+ document.save(output_file_name)
```
+## Tópicos Relacionados ao Carimbo
-{
- "@context": "http://schema.org",
- "@type": "SoftwareApplication",
- "name": "Aspose.PDF para Python via .NET Library",
- "image": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "url": "https://www.aspose.com/",
- "publisher": {
- "@type": "Organization",
- "name": "Aspose.PDF",
- "url": "https://products.aspose.com/pdf",
- "logo": "https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg",
- "alternateName": "Aspose",
- "sameAs": [
- "https://facebook.com/aspose.pdf/",
- "https://twitter.com/asposepdf",
- "https://www.youtube.com/channel/UCmV9sEg_QWYPi6BJJs7ELOg/featured",
- "https://www.linkedin.com/company/aspose",
- "https://stackoverflow.com/questions/tagged/aspose",
- "https://aspose.quora.com/",
- "https://aspose.github.io/"
- ],
- "contactPoint": [
- {
- "@type": "ContactPoint",
- "telephone": "+1 903 306 1676",
- "contactType": "vendas",
- "areaServed": "US",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+44 141 628 8900",
- "contactType": "vendas",
- "areaServed": "GB",
- "availableLanguage": "en"
- },
- {
- "@type": "ContactPoint",
- "telephone": "+61 2 8006 6987",
- "contactType": "vendas",
- "areaServed": "AU",
- "availableLanguage": "en"
- }
- ]
- },
- "offers": {
- "@type": "Offer",
- "price": "1199",
- "priceCurrency": "USD"
- },
- "applicationCategory": "Biblioteca de Manipulação de PDF para Python",
- "downloadUrl": "https://www.nuget.org/packages/Aspose.PDF/",
- "operatingSystem": "Windows, MacOS, Linux",
- "screenshot": "https://docs.aspose.com/pdf/python-net/create-pdf-document/example.png",
- "softwareVersion": "2022.1",
- "aggregateRating": {
- "@type": "AggregateRating",
- "ratingValue": "5",
- "ratingCount": "16"
- }
-}
\ No newline at end of file
+- [Carimbar páginas PDF em Python](/pdf/pt/python-net/stamping/)
+- [Adicionar carimbos de página ao PDF em Python](/pdf/pt/python-net/page-stamps-in-the-pdf-file/)
+- [Adicionar carimbos de imagem ao PDF em Python](/pdf/pt/python-net/image-stamps-in-pdf-page/)
+- [Adicionar números de página ao PDF em Python](/pdf/pt/python-net/add-page-number/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-tables/_index.md b/pt/python-net/advanced-operations/working-with-tables/_index.md
index a85ca816a8..9cb07ccf00 100644
--- a/pt/python-net/advanced-operations/working-with-tables/_index.md
+++ b/pt/python-net/advanced-operations/working-with-tables/_index.md
@@ -1,152 +1,29 @@
---
-title: Trabalhando com Tabelas em PDF usando Python
-linktitle: Trabalhando com Tabelas
+title: Work with Tables in PDF using Python
+linktitle: Working with Tables
type: docs
weight: 50
url: /pt/python-net/working-with-tables/
-description: Esta seção descreve como adicionar e extrair uma tabela, como manipular e uma tabela usando a biblioteca Python.
-lastmod: "2023-09-17"
+description: Learn how to add, extract, integrate, manipulate, and remove tables in PDF documents using Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Add, extract, integrate, and manage PDF tables in Python
+Abstract: This section explains how to work with tables in PDF documents using Aspose.PDF for Python via .NET. Learn how to create and insert tables, extract tabular data, integrate tables with data sources, modify table content, and remove tables from existing PDF files in Python workflows.
---
-
+**Aspose.PDF for Python via .NET** provides complete tools for working with tables in PDF files. You can create and add tables, control table layout and page flow, extract tabular data, update existing tables, and remove one or multiple tables from existing PDFs.
-**Aspose.PDF para Python via .NET** permite que você trabalhe com tabelas em arquivo PDF de forma avançada. Esta ferramenta perfeita ajuda a lidar com a simplicidade dos PDFs extraindo tabelas. Com o recurso de biblioteca Python, você pode facilmente criar ou adicionar tabela em um documento PDF existente, determinar se a tabela será quebrada na página atual, extrair tabela e remover tabelas de PDFs existentes.
+Use esta seção quando precisar criar relatórios baseados em tabelas, extrair dados estruturados de PDFs ou atualizar conteúdo tabular em documentos existentes com Python.
-Você é capaz de fazer o seguinte:
+## Tarefas de Tabela Cobertas
-- [Criar ou Adicionar Tabela em Documento PDF existente](/pdf/pt/python-net/add-table-in-existing-pdf-document/) - crie sua tabela no arquivo pdf mesclando as colunas ou linhas considerando bordas, margens e preenchimento.
-- [Extrair uma Tabela de Documento PDF existente](/pdf/pt/python-net/extract-table-from-existing-pdf-document/) - você pode extrair tabela do arquivo PDF.
-- [Manipular Tabelas em PDF existente](/pdf/pt/python-net/manipulate-tables-in-existing-pdf/) - manipule tabelas no seu PDF usando TableAbsorber.
+Você pode fazer o seguinte:
-- [Remover Tabelas de PDF existente](/pdf/pt/python-net/remove-tables-from-existing-pdf/) - remova tabela ou múltiplas tabelas do documento PDF.
-
-
\ No newline at end of file
+- [Adicionar Tabelas](/pdf/pt/python-net/adding-tables/) - criar tabelas em arquivos PDF, incluindo linhas/colunas mescladas, bordas, margens e preenchimento.
+- [Extrair Tabelas](/pdf/pt/python-net/extracting-table/) - extrair dados de tabela de arquivos PDF existentes.
+- [Integração de Tabelas com Fontes de Dados](/pdf/pt/python-net/integrate-table/) - construir tabelas a partir de bancos de dados e dados de DataFrames pandas em Python.
+- [Manipulação de Tabelas](/pdf/pt/python-net/manipulating-tables/) - inspecionar e atualizar tabelas existentes dentro de documentos PDF.
+- [Remoção de Tabelas](/pdf/pt/python-net/removing-tables/) - remover uma ou várias tabelas de documentos PDF.
diff --git a/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md
index 4569be5826..8cd5003e33 100644
--- a/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/_index.md
@@ -1,565 +1,841 @@
---
-title: Criar ou Adicionar Tabela em PDF usando Python
-linktitle: Criar ou Adicionar Tabela
+title: Adicionar tabelas ao PDF em Python
+linktitle: Adicionando tabelas
type: docs
weight: 10
-url: /pt/python-net/add-table-in-existing-pdf-document/
-description: Aspose.PDF para Python via .NET é uma biblioteca usada para criar, ler e editar Tabelas em PDF. Verifique outras funções avançadas neste tópico.
-lastmod: "2023-02-17"
+url: /pt/python-net/adding-tables/
+description: Saiba como adicionar e configurar tabelas em documentos PDF existentes em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicione e formate tabelas em documentos PDF com Python.
+Abstract: Este artigo explica como adicionar e configurar tabelas em documentos PDF usando Aspose.PDF for Python via .NET. Ele cobre a criação de tabelas, bordas, margens, preenchimento, mesclagem de linhas e colunas, comportamento AutoFit, manipulação da largura da tabela, inserção de imagens nas células e controle de renderização entre páginas.
---
-
-
-
-## Criando Tabela usando Python
-
-Tabelas são importantes ao trabalhar com documentos PDF. Elas oferecem ótimos recursos para exibir informações de maneira sistemática. O namespace Aspose.PDF contém classes chamadas [Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/), [Cell](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/) e [Row](https://reference.aspose.com/pdf/python-net/aspose.pdf/row/) que fornecem funcionalidade para criar tabelas ao gerar documentos PDF do zero.
-
-A tabela pode ser criada criando um objeto da Classe Table.
-```python
+Adicionar tabelas a documentos PDF existentes é uma necessidade comum para apresentação de dados, conteúdo estruturado e relatórios. **Aspose.PDF for Python via .NET** fornece uma API prática para inserir e formatar tabelas em PDFs existentes.
+
+Este guia fornece exemplos passo a passo para criação de tabelas, dimensionamento de colunas, bordas, linhas e células, e salvamento do documento modificado. Também aborda opções avançadas como bordas de células, margens, preenchimento e configurações AutoFit para dimensionamento dinâmico de tabelas.
+
+Use esta página quando precisar adicionar novas tabelas a PDFs existentes e controlar o comportamento de layout em Python.
+
+## Criando Tabelas Básicas
+
+### Criando Tabela
+
+Este exemplo demonstra como criar uma Tabela em um documento PDF com bordas e várias linhas.
+
+1. Crie um novo documento PDF.
+1. Adiciona uma página em branco ao documento.
+1. Inicializar a Tabela.
+1. Defina a borda geral da tabela.
+1. Defina a borda para células individuais.
+1. Adicionar linhas e células.
+1. Insira a tabela na página.
+1. Salve o PDF no caminho especificado.
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def create_table(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+ # Initializes a new instance of the Table
table = ap.Table()
-```
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.light_gray)
+ # Create a loop to add 10 rows
+ for row_count in range(10):
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ row.cells.add("Column (" + str(row_count) + ", 1)")
+ row.cells.add("Column (" + str(row_count) + ", 2)")
+ row.cells.add("Column (" + str(row_count) + ", 3)")
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
-### Adicionando Tabela em Documento PDF Existente
+ # Save updated document containing table object
+ document.save(outfile)
+```
-Para adicionar uma tabela a um arquivo PDF existente com Aspose.PDF para Python via .NET, siga os seguintes passos:
+### Adicionando Imagens às Células da Tabela
-1. Carregue o arquivo fonte.
-1. Inicialize uma tabela e defina suas colunas e linhas.
-1. Defina a configuração da tabela (definimos as bordas).
-1. Preencha a tabela.
-1. Adicione a tabela a uma página.
-1. Salve o arquivo.
+Este trecho de código demonstra como inserir imagens nas células de uma Tabela em um documento PDF.
-Os snippets de código a seguir mostram como adicionar texto em um arquivo PDF existente.
+1. Crie um novo documento PDF.
+1. Inicializar a Tabela.
+1. Defina larguras das colunas em pontos.
+1. Um fragmento de texto é adicionado à primeira célula.
+1. Uma instância de 'ap.Image()' é adicionada à segunda célula.
+1. Defina o caminho para o arquivo de imagem com 'img.file'.
+1. Os 'img.fix_width' e 'img.fix_height' controlam o tamanho da imagem dentro da célula.
+1. Insira a Tabela na página PDF.
+1. Salvar o PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
+def add_image(image: str, outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
+ # Set width for table cells
+ table.column_widths = "200 100"
- # Carregar documento PDF de origem
- doc = ap.Document(input_file)
- # Inicializa uma nova instância da Tabela
+ # Create row object and add it to table instance
+ row = table.rows.add()
+ # Create cell object and add it to row instance
+ cell = row.cells.add()
+ # Add textfragment to paragraphs collection of cell object
+ cell.paragraphs.add(ap.text.TextFragment(image))
+ # Create an image instance
+ img = ap.Image()
+ # Set image type as SVG
+ # Path for source file
+ img.file = image
+ # Set width for image instance
+ img.fix_width = 50
+ # Set height for image instance
+ img.fix_height = 50
+ # Add another cell to row object
+ cell = row.cells.add()
+ # Add SVG image to paragraphs collection of recently added cell instance
+ cell.paragraphs.add(img)
+
+ # Add table to paragraphs collection of page object
+ page.paragraphs.add(table)
+ # Save PDF file
+ document.save(outfile)
+```
+
+Você pode adicionar imagens SVG em células de tabela em um documento PDF:
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_svg_image(images: list[str], outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
table = ap.Table()
- # Definir a cor da borda da tabela como Cinza Claro
- table.border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.from_rgb(apd.Color.light_gray))
- # Definir a borda para as células da tabela
- table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 5, ap.Color.from_rgb(apd.Color.light_gray))
- # Criar um loop para adicionar 10 linhas
- for row_count in range(0, 10):
- # Adicionar linha à tabela
+ # Set width for table cells
+ table.column_widths = "200 100"
+ for image in images:
+ # Create row object and add it to table instance
row = table.rows.add()
- # Adicionar células à tabela
- row.cells.add("Coluna (" + str(row_count) + ", 1)")
- row.cells.add("Coluna (" + str(row_count) + ", 2)")
- row.cells.add("Coluna (" + str(row_count) + ", 3)")
- # Adicionar objeto de tabela à primeira página do documento de entrada
- doc.pages[1].paragraphs.add(table)
- # Salvar documento atualizado contendo o objeto de tabela
- doc.save(output_file)
+ # Create cell object and add it to row instance
+ cell = row.cells.add()
+ # Add textfragment to paragraphs collection of cell object
+ cell.paragraphs.add(ap.text.TextFragment(image))
+ # Create an image instance
+ img = ap.Image()
+ # Set image type as SVG
+ img.file_type = ap.ImageFileType.SVG
+ # Path for source file
+ img.file = image
+ # Set width for image instance
+ img.fix_width = 50
+ # Set height for image instance
+ img.fix_height = 50
+ # Add another cell to row object
+ cell = row.cells.add()
+ # Add SVG image to paragraphs collection of recently added cell instance
+ cell.paragraphs.add(img)
+
+ # Add table to paragraphs collection of page object
+ page.paragraphs.add(table)
+ # Save PDF file
+ document.save(outfile)
```
### ColSpan e RowSpan em Tabelas
-Aspose.PDF para Python via .NET fornece a propriedade [col_span](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/#properties) para mesclar as colunas em uma tabela e a propriedade [row_span](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/#properties) para mesclar as linhas.
+Este exemplo mostra como mesclar células de tabela vertical e horizontalmente para criar layouts de tabela complexos.
-
-Nós usamos a propriedade `col_span` ou `row_span` no objeto `Cell`, que cria a célula da tabela. Após aplicar as propriedades necessárias, a célula criada pode ser adicionada à tabela.
+1. Defina a borda geral da tabela.
+1. Defina as bordas padrão da célula.
+1. Mesclar duas células horizontalmente em uma.
+1. Mesclar a célula verticalmente em duas linhas.
+1. A linha 5 contabiliza o rowspan ao ignorar a coluna mesclada.
+1. Insira a tabela na página.
+1. Salvar o PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
+def add_rowspan_or_colspan(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
- # Inicializa o objeto Document chamando seu construtor vazio
- pdf_document = ap.Document()
- pdf_document.pages.add()
- # Inicializa uma nova instância da Tabela
+ # Initializes a new instance of the Table
table = ap.Table()
- # Define a cor da borda da tabela como LightGray
+ # Set the table border color as LightGray
table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.black)
- # Define a borda para as células da tabela
+ # Set the border for table cells
table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.black)
- # Adiciona a 1ª linha à tabela
+ # Add 1st row to table
row1 = table.rows.add()
- for cellCount in range(1, 5):
- # Adiciona células à tabela
- row1.cells.add("Teste 1" + str(cellCount))
+ for cell_count in range(1, 5):
+ # Add table cells
+ row1.cells.add("Test 1" + str(cell_count))
- # Adiciona a 2ª linha à tabela
+ # Add 2nd row to table
row2 = table.rows.add()
- row2.cells.add("Teste 2 1")
- cell = row2.cells.add("Teste 2 2")
+ row2.cells.add("Test 2 1")
+ cell = row2.cells.add("Test 2 2")
cell.col_span = 2
- row2.cells.add("Teste 2 4")
+ row2.cells.add("Test 2 4")
- # Adiciona a 3ª linha à tabela
+ # Add 3rd row to table
row3 = table.rows.add()
- row3.cells.add("Teste 3 1")
- row3.cells.add("Teste 3 2")
- row3.cells.add("Teste 3 3")
- row3.cells.add("Teste 3 4")
+ row3.cells.add("Test 3 1")
+ row3.cells.add("Test 3 2")
+ row3.cells.add("Test 3 3")
+ row3.cells.add("Test 3 4")
- # Adiciona a 4ª linha à tabela
+ # Add 4th row to table
row4 = table.rows.add()
- row4.cells.add("Teste 4 1")
- cell = row4.cells.add("Teste 4 2")
+ row4.cells.add("Test 4 1")
+ cell = row4.cells.add("Test 4 2")
cell.row_span = 2
- row4.cells.add("Teste 4 3")
- row4.cells.add("Teste 4 4")
+ row4.cells.add("Test 4 3")
+ row4.cells.add("Test 4 4")
- # Adiciona a 5ª linha à tabela
+ # Add 5th row to table
row5 = table.rows.add()
- row5.cells.add("Teste 5 1")
- row5.cells.add("Teste 5 3")
- row5.cells.add("Teste 5 4")
-
- # Adiciona o objeto tabela à primeira página do documento de entrada
- pdf_document.pages[1].paragraphs.add(table)
- # Salva o documento atualizado contendo o objeto tabela
- pdf_document.save(output_file)
-```
-
+ row5.cells.add("Test 5 1")
+ row5.cells.add("Test 5 3")
+ row5.cells.add("Test 5 4")
-O resultado do código de execução abaixo é a tabela mostrada na imagem a seguir:
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```

-## Trabalhando com Bordas, Margens e Espaçamento Interno
-
-Note que também suporta o recurso de definir estilo de borda, margens e espaçamento interno para tabelas. Antes de entrar em mais detalhes técnicos, é importante entender os conceitos de borda, margens e espaçamento interno, que são apresentados abaixo em um diagrama:
-
-
-
-Na figura acima, você pode ver que as bordas da tabela, linha e célula se sobrepõem. Usando Aspose.PDF, uma tabela pode ter margens e as células podem ter espaçamentos internos. Para definir margens de célula, temos que definir o espaçamento interno da célula.
-
-### Bordas
-
-Para definir as bordas dos objetos [Tabela](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/), [Linha](https://reference.aspose.com/pdf/python-net/aspose.pdf/row/) e [Célula](https://reference.aspose.com/pdf/python-net/aspose.pdf/cell/), use as propriedades Table.border, Row.border e Cell.border.
- Os bordas das células também podem ser definidas usando a propriedade [default_cell_border](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) da classe [Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/) ou Row. Todas as propriedades relacionadas às bordas discutidas acima são atribuídas a uma instância da classe Row, que é criada chamando seu construtor. A classe Row tem muitas sobrecargas que aceitam quase todos os parâmetros necessários para personalizar a borda.
+### Aplicando Bordas a Tabelas e Células
-### Margens ou Padding
+Este exemplo mostra como definir o preenchimento das células, as margens da tabela e controlar a quebra de linha para o texto nas células da tabela.
-O padding das células pode ser gerenciado usando a propriedade [default_cell_padding](https://reference.aspose.com/pdf/python-net/aspose.pdf/row/#properties) da classe Table. Todas as propriedades relacionadas ao padding são atribuídas a uma instância da classe [MarginInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) que recebe informações sobre os parâmetros `left`, `right`, `top` e `bottom` para criar margens personalizadas.
-No exemplo a seguir, a largura da borda da célula é definida para 0,1 ponto, a largura da borda da tabela é definida para 1 ponto e o preenchimento da célula é definido para 5 pontos.
-
-
+1. Defina as larguras das colunas.
+1. Defina as bordas da tabela e das células.
+1. Defina o preenchimento interno das células para espaçamento consistente.
+1. Aplique o preenchimento a todas as células por padrão.
+1. Adicionar Texto e Controlar a Quebra.
+1. Adicionar linhas e células.
+1. Salvar o PDF.
```python
-
- import aspose.pdf as ap
-
- # Instanciar o objeto Document chamando seu construtor vazio
- doc = ap.Document()
- page = doc.pages.add()
- # Instanciar um objeto de tabela
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_borders(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
tab1 = ap.Table()
- # Adicionar a tabela na coleção de parágrafos da seção desejada
+ # Add the table in paragraphs collection of the desired section
page.paragraphs.add(tab1)
- # Definir larguras das colunas da tabela
+ # Set with column widths of the table
tab1.column_widths = "50 50 50"
- # Definir borda padrão da célula usando o objeto BorderInfo
+ # Set default cell border using BorderInfo object
tab1.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
- # Definir borda da tabela usando outro objeto BorderInfo personalizado
+ # Set table border using another customized BorderInfo object
tab1.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Criar objeto MarginInfo e definir suas margens esquerda, inferior, direita e superior
+ # Create MarginInfo object and set its left, bottom, right and top margins
margin = ap.MarginInfo()
margin.top = 5
margin.left = 5
margin.right = 5
margin.bottom = 5
- # Definir o preenchimento padrão da célula para o objeto MarginInfo
+ # Set the default cell padding to the MarginInfo object
tab1.default_cell_padding = margin
- # Criar linhas na tabela e depois células nas linhas
+ # Create rows in the table and then cells in the rows
row1 = tab1.rows.add()
row1.cells.add("col1")
row1.cells.add("col2")
row1.cells.add()
- my_text = ap.text.TextFragment("col3 com string de texto grande")
- # Row1.Cells.Add("col3 com string de texto grande para ser colocada dentro da célula")
- row1.cells[2].paragraphs.add(my_text)
+ text = ap.text.TextFragment("col3 with large text string")
+ row1.cells[2].paragraphs.add(text)
row1.cells[2].is_word_wrapped = False
row2 = tab1.rows.add()
row2.cells.add("item1")
row2.cells.add("item2")
row2.cells.add("item3")
- # Salvar o Pdf
- doc.save(output_file)
+ # Save updated document containing table object
+ document.save(outfile)
```
+
-Para criar uma tabela com canto arredondado, use o valor [rounded_border_radius](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/#properties) da [classe BorderInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/) e defina o estilo do canto da tabela como arredondado.
+## Layout de Tabela e Dimensionamento
-```python
-
- import aspose.pdf as ap
-
- tab1 = ap.Table()
- graph = ap.GraphInfo()
- graph.color = ap.Color.red
- # Cria um objeto BorderInfo em branco
- b_info = ap.BorderInfo(ap.BorderSide.ALL, graph)
- # Define a borda como uma borda arredondada onde o raio do arredondamento é 15
- b_info.rounded_border_radius = 15
- # Define o estilo do canto da tabela como Arredondado
- tab1.corner_style = ap.BorderCornerStyle.ROUND
- # Define as informações da borda da tabela
- tab1.border = b_info
-```
+### Ajuste automático de colunas e linhas
-## Aplicando Diferentes Configurações de AutoAjuste a uma Tabela
+Este trecho de código mostra como ajustar automaticamente a largura das colunas da tabela para caber na página.
+Observe que no parâmetro table.column_widths = "50 50 50" - são pontos. Mas você também pode especificar centímetros (cm), polegadas ou %.
-Ao projetar uma tabela usando uma ferramenta visual como o Microsoft Word, você frequentemente utilizará um dos recursos de AutoAjuste para ajustar convenientemente o tamanho da tabela à largura desejada.
- Por exemplo, você pode usar a opção "AUTO_FIT_TO_WINDOW" para ajustar a largura da tabela à página ou AUTO_FIT_TO_CONTENT. Por padrão, ao usar o Aspose.Pdf para criar uma nova tabela, ele emprega o [column_adjustment](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) com um valor "Customized". No trecho de código a seguir, configuramos os parâmetros do objeto [MarginInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/margininfo/) e objetos [BorderInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/) na tabela. Teste o exemplo e avalie o resultado.
+1. Definir larguras de coluna iniciais.
+1. Ajusta automaticamente as colunas para caber na largura da página.
+1. Defina bordas de célula e de tabela.
+1. O 'table.default_cell_padding' utiliza 'MarginInfo()' para um espaçamento consistente dentro das células.
+1. Adicionar linhas com 'table.rows.add()', e adicionar células com 'row.cells.add()'.
+1. Salvar o PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def auto_fit(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
- import aspose.pdf as ap
+ page.paragraphs.add(table)
+
+ table.column_widths = "50 50 50"
+ table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_WINDOW
+
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
+
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Instanciar o objeto Pdf chamando seu construtor vazio
- doc = ap.Document()
- # Criar a seção no objeto Pdf
- sec1 = doc.pages.add()
- # Instanciar um objeto de tabela
- tab1 = ap.Table()
- # Adicionar a tabela na coleção de parágrafos da seção desejada
- sec1.paragraphs.add(tab1)
- # Definir as larguras das colunas da tabela
- tab1.column_widths = "50 50 50"
- tab1.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_WINDOW
- # Definir a borda padrão da célula usando o objeto BorderInfo
- tab1.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
- # Definir a borda da tabela usando outro objeto BorderInfo personalizado
- tab1.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Criar objeto MarginInfo e definir suas margens esquerda, inferior, direita e superior
margin = ap.MarginInfo()
margin.top = 5
margin.left = 5
margin.right = 5
margin.bottom = 5
- # Definir o preenchimento padrão da célula para o objeto MarginInfo
- tab1.default_cell_padding = margin
- # Criar linhas na tabela e depois células nas linhas
- row1 = tab1.rows.add()
+
+ table.default_cell_padding = margin
+
+ row1 = table.rows.add()
row1.cells.add("col1")
row1.cells.add("col2")
row1.cells.add("col3")
- row2 = tab1.rows.add()
+ row2 = table.rows.add()
row2.cells.add("item1")
row2.cells.add("item2")
row2.cells.add("item3")
- # Salvar documento atualizado contendo o objeto tabela
- doc.save(output_file)
+
+ document.save(outfile)
```
-### Obter Largura da Tabela
+### Criar tabelas PDF complexas com células mescladas e colunas repetidas
-Às vezes, é necessário obter a largura da tabela dinamicamente. A classe Aspose.PDF.Table tem um método [get_width()](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#methods) para essa finalidade. Por exemplo, você não definiu a largura das colunas da tabela explicitamente e definiu [column_adjustment](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) como 'AUTO_FIT_TO_CONTENT'. Nesse caso, você pode obter a largura da tabela da seguinte forma.
+Crie uma tabela avançada em um PDF usando Python e Aspose.PDF. Ela inclui células de cabeçalho mescladas, fundos coloridos, colunas repetidas e um grande conjunto de dados estruturado. A tabela está configurada para lidar com quebras verticais e layouts complexos para documentos em estilo de relatório.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
+def add_table_hide_borders(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
- # Criar um novo documento
- doc = ap.Document()
- # Adicionar página no documento
- page = doc.pages.add()
- # Inicializar nova tabela
+ # Instantiate a table object that will be nested inside outerTable that will break inside the same page
table = ap.Table()
- table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_CONTENT
- # Adicionar linha na tabela
+ table.broken = ap.TableBroken.VERTICAL
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL)
+ table.repeating_columns_count = 2
+ page.paragraphs.add(table)
+
+ # Add header Row
row = table.rows.add()
- # Adicionar célula na tabela
- cell = row.cells.add("Texto da Célula 1")
- cell = row.cells.add("Texto da Célula 2")
- # Obter largura da tabela
- print(table.get_width())
+ cell = row.cells.add("header 1")
+ cell.col_span = 2
+ cell.background_color = ap.Color.light_gray
+ row.cells.add("header 3")
+
+ cell2 = row.cells.add("header 4")
+ cell2.col_span = 2
+ cell2.background_color = ap.Color.light_blue
+ row.cells.add("header 6")
+
+ cell3 = row.cells.add("header 7")
+ cell3.col_span = 2
+ cell3.background_color = ap.Color.light_green
+ cell4 = row.cells.add("header 9")
+
+ cell4.col_span = 3
+ cell4.background_color = ap.Color.light_coral
+ row.cells.add("header 12")
+ row.cells.add("header 13")
+ row.cells.add("header 14")
+ row.cells.add("header 15")
+ row.cells.add("header 16")
+ row.cells.add("header 17")
+
+ row_counter = 0
+ while row_counter < 3:
+ # Create rows in the table and then cells in the rows
+ row1 = table.rows.add()
+ row1.cells.add("col " + str(row_counter) + ", 1")
+ row1.cells.add("col " + str(row_counter) + ", 2")
+ row1.cells.add("col " + str(row_counter) + ", 3")
+ row1.cells.add("col " + str(row_counter) + ", 4")
+ row1.cells.add("col " + str(row_counter) + ", 5")
+ row1.cells.add("col " + str(row_counter) + ", 6")
+ row1.cells.add("col " + str(row_counter) + ", 7")
+ row1.cells.add("col " + str(row_counter) + ", 8")
+ row1.cells.add("col " + str(row_counter) + ", 9")
+ row1.cells.add("col " + str(row_counter) + ", 10")
+ row1.cells.add("col " + str(row_counter) + ", 11")
+ row1.cells.add("col " + str(row_counter) + ", 12")
+ row1.cells.add("col " + str(row_counter) + ", 13")
+ row1.cells.add("col " + str(row_counter) + ", 14")
+ row1.cells.add("col " + str(row_counter) + ", 15")
+ row1.cells.add("col " + str(row_counter) + ", 16")
+ row1.cells.add("col " + str(row_counter) + ", 17")
+ row_counter += 1
+
+ document.save(outfile)
```
-## Adicionar Imagem SVG à Célula da Tabela
+
+
+### Estilizando cantos da tabela
-Aspose.PDF para Python via .NET fornece a capacidade de inserir células de tabela em um arquivo PDF.
- When constructing a table, you can include both text and images within these cells. Additionally, the API offers the functionality to transform SVG files into PDF format. By leveraging these functionalities together, you can load an SVG image and place it within a table cell.
+Aspose.PDF for Python via .NET mostra como aplicar cantos arredondados em uma tabela e personalizar o raio da borda.
+
+1. Crie uma nova instância de tabela.
+1. Inicialize uma borda para todos os lados.
+1. Defina o raio do canto.
+1. Aplique o estilo de canto arredondado.
+1. Adicionar linhas e células.
+1. Insira a tabela na página PDF com 'page.paragraphs.add(table)'.
+1. Salvar o documento PDF.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
-Ao construir uma tabela, você pode incluir tanto texto quanto imagens dentro dessas células. Além disso, a API oferece a funcionalidade de transformar arquivos SVG em formato PDF. Ao utilizar essas funcionalidades em conjunto, você pode carregar uma imagem SVG e colocá-la dentro de uma célula da tabela.
+def create_table_with_round_corner(outfile: str) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
-The following code excerpt demonstrates the process of creating a table object and embedding an SVG image inside one of its cells.
+ # Create a table
+ table = ap.Table()
+
+ # Create a blank BorderInfo object
+ b_info = ap.BorderInfo(ap.BorderSide.ALL)
+
+ # Set the border a rounded border where radius of round is 15
+ b_info.rounded_border_radius = 15
+
+ # Set the table corner style as Round
+ table.corner_style = ap.BorderCornerStyle.ROUND
+
+ # Set the table border information
+ table.border = b_info
+
+ # Create a loop to add 10 rows
+ for row_count in range(0, 10):
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ row.cells.add("Column (" + str(row_count) + ", 1)")
+ row.cells.add("Column (" + str(row_count) + ", 2)")
+ row.cells.add("Column (" + str(row_count) + ", 3)")
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```
-O trecho de código a seguir demonstra o processo de criação de um objeto de tabela e a incorporação de uma imagem SVG dentro de uma de suas células.
+## Adicionando Conteúdo a Tabelas
+
+### Usando Fragmentos HTML em Células
+
+Este exemplo mostra como inserir conteúdo formatado em HTML em células de tabela.
+
+1. Definir bordas da tabela e das células.
+1. Adicionar conteúdo HTML.
+1. Adicionar Linhas. Um loop adiciona várias linhas com conteúdo formatado em HTML em cada célula.
+1. Insira a tabela na página PDF com 'page.paragraphs.add(table)'.
+1. Salvar o documento PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_html_fragments(outfile: str) -> None:
+ # Instantiate Document object
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
+ table = ap.Table()
+
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.5, ap.Color.light_gray
+ )
+ # Create a loop to add 10 rows
+ row_count = 1
+ while row_count < 10:
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.HtmlFragment(f"Column ({row_count}, 1)")
+ )
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.HtmlFragment(f"Column ({row_count}, 2)")
+ )
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.HtmlFragment(
+ f"Column ({row_count}, 3)"
+ )
+ )
+ row_count += 1
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```
+
+### Usando fragmentos LaTeX em células
+
+Este exemplo mostra como inserir conteúdo formatado em LaTeX nas células de tabelas para expressões matemáticas ou estilizadas.
+
+1. Definir bordas da tabela e das células.
+1. Adicionar conteúdo LaTeX.
+1. Adicionar linhas. Um loop adiciona várias linhas com conteúdo formatado em LaTeX em cada célula.
+1. Insira a tabela na página PDF com 'page.paragraphs.add(table)'.
+1. Salvar o documento PDF.
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+def add_latex_fragments(outfile: str) -> None:
# Instantiate Document object
- # Instanciar objeto Documento
- doc = ap.Document()
- # Create an image instance
- # Criar uma instância de imagem
- img = ap.Image()
- # Set image type as SVG
- # Definir tipo de imagem como SVG
- img.file_type = ap.ImageFileType.SVG
- # Path for source file
- # Caminho para o arquivo de origem
- img.file = DIR_INPUT_TABLE + "SVGToPDF.svg"
- # Set width for image instance
- # Definir largura para a instância de imagem
- img.fix_width = 50
- # Set height for image instance
- # Definir altura para a instância de imagem
- img.fix_height = 50
- # Create table instance
- # Criar instância de tabela
+ document = ap.Document()
+ page = document.pages.add()
+ # Instantiate a table object
table = ap.Table()
- # Set width for table cells
- # Definir largura para as células da tabela
- table.column_widths = "100 100"
- # Create row object and add it to table instance
- # Criar objeto linha e adicioná-lo à instância de tabela
- row = table.rows.add()
- # Create cell object and add it to row instance
- # Criar objeto célula e adicioná-lo à instância de linha
- cell = row.cells.add()
- # Add textfragment to paragraphs collection of cell object
- # Adicionar fragmento de texto à coleção de parágrafos do objeto célula
- cell.paragraphs.add(ap.text.TextFragment("First cell"))
- # Add another cell to row object
- # Adicionar outra célula ao objeto linha
- cell = row.cells.add()
- # Add SVG image to paragraphs collection of recently added cell instance
- # Adicionar imagem SVG à coleção de parágrafos da instância de célula recentemente adicionada
- cell.paragraphs.add(img)
- # Create page object and add it to pages collection of document instance
- # Criar objeto página e adicioná-lo à coleção de páginas da instância de documento
- page = doc.pages.add()
- # Add table to paragraphs collection of page object
- # Adicionar tabela à coleção de parágrafos do objeto página
+
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.ALL, 0.5, ap.Color.light_gray
+ )
+ # Create a loop to add 10 rows
+ row_count = 1
+ while row_count < 10:
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ cell = row.cells.add()
+ cell.paragraphs.add(ap.LatexFragment(f"Column $\\mathbf{{({row_count}, 1)}}$"))
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.LatexFragment(f"Column $\\textcolor{{red}}{{({row_count}, 2)}}$")
+ )
+
+ cell = row.cells.add()
+ cell.paragraphs.add(
+ ap.LatexFragment(f"Column $\\underline{{({row_count}, 3)}}$")
+ )
+ row_count += 1
+
+ # Add table object to first page of input document
page.paragraphs.add(table)
- # Save PDF file
- # Salvar arquivo PDF
- doc.save(output_file)
+ # Save updated document containing table object
+ document.save(outfile)
```
-## Inserir uma Quebra de Página entre as linhas da tabela
+## Recursos avançados de tabela
+
+### Inserir Quebras de Página Automáticas em uma Tabela PDF
-Por padrão, quando você cria uma tabela dentro de um arquivo PDF, a tabela se estenderá por várias páginas se ultrapassar a margem inferior da tabela. No entanto, há situações em que precisamos impor quebras de página após um número específico de linhas terem sido adicionadas à tabela. O trecho de código a seguir descreve o processo de inserção de uma quebra de página quando 10 linhas foram incluídas na tabela.
+Criar uma tabela grande em um PDF usando Python e Aspose.PDF, com quebras de página automáticas após um número específico de linhas. Ele constrói uma tabela de várias linhas, aplica bordas e força linhas selecionadas a começarem em uma nova página para melhor controle de layout.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- import aspose.pdf as ap
-
- # Instanciar a instância do Documento
- doc = ap.Document()
- # Adicionar página à coleção de páginas do arquivo PDF
- doc.pages.add()
- # Criar instância da tabela
- tab = ap.Table()
- # Definir estilo de borda para a tabela
- tab.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
- # Definir estilo de borda padrão para a tabela com cor de borda como Vermelho
- tab.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
- # Especificar a largura das colunas da tabela
- tab.column_widths = "100 100"
- # Criar um loop para adicionar 200 linhas à tabela
- for counter in range(0, 201):
+def insert_page_break(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+
+ # Add page
+ page = document.pages.add()
+
+ # Create table instance
+ table = ap.Table()
+
+ # Set border style for table
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
+
+ # Set default border style for table with border color as Red
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)
+
+ # Specify table columns width
+ table.column_widths = "100 100"
+
+ # Create a loop to add 200 rows for table
+ for counter in range(201):
row = ap.Row()
- tab.rows.add(row)
+ table.rows.add(row)
+
cell1 = ap.Cell()
- cell1.paragraphs.add(ap.text.TextFragment("Célula " + str(counter) + ", 0"))
+ cell1.paragraphs.add(ap.text.TextFragment(f"Cell {counter}, 0"))
row.cells.add(cell1)
+
cell2 = ap.Cell()
- cell2.paragraphs.add(ap.text.TextFragment("Célula " + str(counter) + ", 1"))
+ cell2.paragraphs.add(ap.text.TextFragment(f"Cell {counter}, 1"))
row.cells.add(cell2)
- # Quando 10 linhas são adicionadas, renderizar nova linha em nova página
+
+ # When 10 rows are added, render new row in new page
if counter % 10 == 0 and counter != 0:
row.is_in_new_page = True
- # Adicionar tabela à coleção de parágrafos do arquivo PDF
- doc.pages[1].paragraphs.add(tab)
- # Salvar o documento PDF
- doc.save(output_file)
-```
+ # Add table to paragraphs collection of PDF file
+ page.paragraphs.add(table)
-## Renderizar uma Tabela em uma Nova Página
+ # Save PDF document
+ document.save(outfile)
+```
-Por padrão, parágrafos são adicionados à coleção de Parágrafos de um objeto Page. No entanto, é possível renderizar uma tabela em uma nova página ao invés de diretamente após o objeto de nível de parágrafo adicionado anteriormente na página.
+### Repetindo linhas de cabeçalho em várias páginas
-### Exemplo: Como Renderizar uma Tabela em uma Nova Página usando Python
+Este exemplo mostra como criar uma tabela que se estende por várias páginas, mantendo as linhas de cabeçalho visíveis em cada página.
-Para renderizar uma tabela em uma nova página, use a propriedade [is_in_new_page](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) na classe [BaseParagraph](https://reference.aspose.com/pdf/python-net/aspose.pdf/baseparagraph/). O trecho de código a seguir mostra como fazer isso.
+1. Inicializar a Tabela.
+1. Repetir linhas de cabeçalho incluindo fonte, tamanho e cor.
+1. Defina larguras das colunas e aplique bordas à tabela.
+1. Adicionar linhas de cabeçalho.
+1. Adicione muitas linhas de dados para forçar a tabela a se estender por várias páginas.
+1. Insira a tabela na página PDF com 'page.paragraphs.add(table)'.
+1. Salvar o documento PDF.
```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def add_repeating_rows(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Instantiate a table object
+ table = ap.Table()
+
+ # Set the table to break across pages
+ table.broken = ap.TableBroken.VERTICAL
+
+ # Set number of repeating header rows
+ table.repeating_rows_count = 2
+
+ text_state = ap.text.TextState()
+ text_state.font_size = 12
+ text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ text_state.foreground_color = ap.Color.red
+ table.repeating_rows_style = text_state
+
+ # Set column widths
+ table.column_widths = "100 100 100"
+
+ # Set borders
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.black)
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 1, ap.Color.black)
+
+ # Add header rows that will repeat on each page
+ header_row1 = table.rows.add()
+ header_row1.cells.add("Header 1-1")
+ header_row1.cells.add("Header 1-2")
+ header_row1.cells.add("Header 1-3")
+
+ # Set background color for header rows
+ for cell in header_row1.cells:
+ cell.background_color = ap.Color.light_gray
+
+ header_row2 = table.rows.add()
+ header_row2.cells.add("Header 2-1")
+ header_row2.cells.add("Header 2-2")
+ header_row2.cells.add("Header 2-3")
+
+ for cell in header_row2.cells:
+ cell.background_color = ap.Color.light_blue
+
+ # Add many data rows to force table across multiple pages
+ for i in range(1, 101):
+ row = table.rows.add()
+ row.cells.add(f"Data {i}-1")
+ row.cells.add(f"Data {i}-2")
+ row.cells.add(f"Data {i}-3")
+
+ # Add table to page
+ page.paragraphs.add(table)
+
+ # Save document
+ document.save(outfile)
+```
+
+### Colunas Repetidas
+
+A função 'add_repeating_columns' cria um documento PDF com uma tabela que possui colunas repetidas. Ela configura uma tabela com bordas, adiciona cabeçalhos, preenche linhas de dados e salva o arquivo PDF gerado no local especificado. Definir essa propriedade fará com que a tabela seja quebrada para a próxima página por colunas e repita a quantidade de colunas especificada no início da próxima página.
+
+1. Inicializa um novo documento PDF.
+1. Adiciona uma página com dimensões personalizadas.
+1. Definir estilo da borda da tabela.
+1. Inicializar Tabela.
+1. Adicionar tabela à página PDF.
+1. Adicionar linha de cabeçalho.
+1. Adicionar linhas de dados.
+1. Salvar PDF Document.
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
- doc = ap.Document()
- page_info = doc.page_info
- margin_info = page_info.margin
+def add_repeating_columns(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
- margin_info.left = 37
- margin_info.right = 37
- margin_info.top = 37
- margin_info.bottom = 37
+ # Add page
+ page = document.pages.add()
+ page.set_page_size(ap.PageSize.a5.height, ap.PageSize.a5.width)
- page_info.is_landscape = True
+ # Define border
+ border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, ap.Color.light_gray)
+ # Create table
table = ap.Table()
- table.column_widths = "50 100"
- # Página adicionada.
- cur_page = doc.pages.add()
- for i in range(1, 121):
+ table.broken = ap.TableBroken.VERTICAL_IN_SAME_PAGE
+ table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_CONTENT
+ table.repeating_columns_count = 5
+ table.border = border
+ table.default_cell_border = border
+
+ # Add table to page
+ page.paragraphs.add(table)
+
+ # Add header row
+ row = table.rows.add()
+ for i in range(1, 6):
+ cell = row.cells.add(f"header {i}")
+ cell.background_color = ap.Color.light_gray
+
+ for i in range(6, 18):
+ row.cells.add(f"header {i}")
+
+ # Add data rows
+ for row_counter in range(1, 6):
row = table.rows.add()
- row.fixed_row_height = 15
- cell1 = row.cells.add()
- cell1.paragraphs.add(ap.text.TextFragment("Conteúdo 1"))
- cell2 = row.cells.add()
- cell2.paragraphs.add(ap.text.TextFragment("HHHHH"))
- paragraphs = cur_page.paragraphs
- paragraphs.add(table)
-
- table1 = ap.Table()
- table1.column_widths = "100 100"
- for i in range(1, 11):
- row = table1.rows.add()
- cell1 = row.cells.add()
- cell1.paragraphs.add(ap.text.TextFragment("LAAAAAAA"))
- cell2 = row.cells.add()
- cell2.paragraphs.add(ap.text.TextFragment("LAAGGGGGG"))
- table1.is_in_new_page = True
- # Eu quero manter a tabela 1 na próxima página, por favor...
- paragraphs.add(table1)
- doc.save(output_file)
+ for i in range(1, 6):
+ cell = row.cells.add(f"cell {row_counter},{i}")
+ cell.background_color = ap.Color.light_gray
+ for i in range(6, 18):
+ row.cells.add(f"cell {row_counter},{i}")
+
+ # Save PDF document
+ document.save(outfile)
+```
+
+### Criar uma Tabela PDF com Células de Texto Rotacionadas
+
+Crie uma tabela em um PDF usando Python e Aspose.PDF com texto girado em diferentes ângulos dentro de cada célula. É útil para cabeçalhos verticais, layouts criativos, tabelas compactas e formatação personalizada de relatórios.
+
+```python
+import aspose.pdf as ap
+from aspose.pdf import Color, HorizontalAlignment
+from os import path
+import sys
+
+def rotated_text_table(outfile: str) -> None:
+ # Create PDF document
+ document = ap.Document()
+
+ # Add page
+ page = document.pages.add()
+
+ # Initializes a new instance of the Table
+ table = ap.Table()
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, Color.black)
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.5, Color.black)
+
+ # Add 1st row to table
+ row1 = table.rows.add()
+ row1.min_row_height = 200
+
+ for cell_count in range(4):
+ # Add table cells
+ cell = row1.cells.add()
+
+ tf = ap.text.TextFragment(f"Cell 1 {cell_count - 1}")
+ tf.text_state.rotation = 90 * cell_count
+ tf.horizontal_alignment = HorizontalAlignment.CENTER
+
+ cell.paragraphs.add(tf)
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+
+ # Save result
+ document.save(outfile)
```
+## Tópicos de Tabela Relacionados
-
\ No newline at end of file
+- [Trabalhar com tabelas em PDF usando Python](/pdf/pt/python-net/working-with-tables/)
+- [Extrair tabelas de documentos PDF](/pdf/pt/python-net/extracting-table/)
+- [Integre tabelas PDF com fontes de dados](/pdf/pt/python-net/integrate-table/)
+- [Manipular tabelas em PDFs existentes](/pdf/pt/python-net/manipulating-tables/)
diff --git a/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/colspan_rowspan.png b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/colspan_rowspan.png
new file mode 100644
index 0000000000..d8bc203285
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/colspan_rowspan.png differ
diff --git a/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/margin-border.png b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/margin-border.png
new file mode 100644
index 0000000000..70b66bc129
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/margin-border.png differ
diff --git a/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/set-border-style-margins-and-padding-of-table_1.png b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/set-border-style-margins-and-padding-of-table_1.png
new file mode 100644
index 0000000000..08b2a1af1c
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-tables/add-table-in-existing-pdf-document/set-border-style-margins-and-padding-of-table_1.png differ
diff --git a/pt/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md
index c1c34b0d42..33881d0982 100644
--- a/pt/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md
+++ b/pt/python-net/advanced-operations/working-with-tables/extract-table-from-existing-pdf-document/_index.md
@@ -1,101 +1,64 @@
---
-title: Extrair Tabela de Documento PDF
-linktitle: Extrair Tabela
+title: Extrair tabelas de PDF em Python
+linktitle: Extrair tabela
type: docs
weight: 20
-url: /pt/python-net/extract-table-from-existing-pdf-document/
-description: Aspose.PDF para Python via .NET possibilita realizar várias manipulações com as tabelas contidas em seu documento PDF.
-lastmod: "2023-02-17"
+url: /pt/python-net/extracting-table/
+description: Aprenda como extrair dados de tabela de documentos PDF existentes em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extrair dados de tabela de arquivos PDF com Python
+Abstract: Este artigo explica como extrair tabelas de documentos PDF usando Aspose.PDF for Python via .NET. Ele mostra como usar `TableAbsorber` para detectar tabelas por página, iterar linhas e células e recuperar o texto das células para análise e processamento de dados a jusante.
---
-
+## Extrair tabela de PDF
-## Extrair Tabela de PDF
+Extrair tabelas de PDFs é útil para geração de relatórios, migração de dados e fluxos de trabalho analíticos. Com Aspose.PDF for Python via .NET, você pode detectar e ler o conteúdo de tabelas de documentos PDF existentes de forma eficiente.
-Extrair tabelas de PDFs usando Python pode ser incrivelmente útil para extração e análise de dados. Com a biblioteca Aspose.PDF para Python via .NET, você pode trabalhar eficientemente com tabelas incorporadas em documentos PDF para várias tarefas relacionadas a dados.
+Este trecho de código abre um arquivo PDF existente, verifica cada página em busca de tabelas e extrai o conteúdo de texto das células. Ele usa `TableAbsorber` para detectar tabelas e então iterar pelas linhas e células para imprimir o texto extraído.
-```python
+1. Carrega o PDF em um objeto ap.Document.
+1. Itera pelas páginas.
+1. Cria um objeto TableAbsorber.
+1. Itera pelas tabelas.
+1. Iterar através de linhas e células.
+1. Extrair e imprimir texto das células.
+
+Este exemplo lê um PDF, encontra todas as tabelas e imprime o conteúdo das células linha por linha.
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+from os import path
+import sys
- # Carregar documento PDF de origem
- pdf_document = ap.Document(input_file)
- for page in pdf_document.pages:
+def extract(infile: str) -> None:
+ """Extract and print all tables from a PDF file."""
+ document = ap.Document(infile)
+ for page in document.pages:
absorber = ap.text.TableAbsorber()
absorber.visit(page)
for table in absorber.table_list:
+ print("Table ----")
for row in table.row_list:
+ print("Row:")
+ row_txt = ""
for cell in row.cell_list:
+ cell_txt = ""
text_fragment_collection = cell.text_fragments
for fragment in text_fragment_collection:
- txt = ""
for seg in fragment.segments:
- txt += seg.text
- print(txt)
\ No newline at end of file
+ cell_txt += seg.text
+ row_txt += " | "
+ row_txt += cell_txt
+ print(row_txt)
+```
+
+## Tópicos Relacionados à Tabela
+
+- [Trabalhar com tabelas em PDF usando Python](/pdf/pt/python-net/working-with-tables/)
+- [Adicionar tabelas ao PDF usando Python](/pdf/pt/python-net/adding-tables/)
+- [Integrar tabelas PDF com fontes de dados](/pdf/pt/python-net/integrate-table/)
+- [Remover tabelas de PDFs existentes](/pdf/pt/python-net/removing-tables/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-tables/integrate-table-in-existing-pdf-document/_index.md b/pt/python-net/advanced-operations/working-with-tables/integrate-table-in-existing-pdf-document/_index.md
new file mode 100644
index 0000000000..a8fb0db274
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-tables/integrate-table-in-existing-pdf-document/_index.md
@@ -0,0 +1,103 @@
+---
+title: Integrar Tabelas PDF com Fontes de Dados em Python
+linktitle: Integrar Tabela
+type: docs
+weight: 30
+url: /pt/python-net/integrate-table/
+description: Saiba como integrar tabelas PDF com fontes de dados, como bancos de dados e pandas DataFrames, em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Integrar tabelas PDF com bancos de dados e DataFrames usando Python
+Abstract: Este artigo explica como integrar tabelas PDF com fontes de dados externas usando Aspose.PDF for Python via .NET. Aprenda a criar tabelas PDF a partir de pandas DataFrames e outras fontes estruturadas, inseri‑las em documentos e controlar o fluxo da tabela ao renderizar em várias páginas PDF em Python.
+---
+
+## Criar PDF a partir de DataFrame
+
+O `create_pdf_from_dataframe` A função cria um novo PDF e insere uma tabela gerada a partir de um DataFrame do pandas. Essa abordagem é útil para fluxos de trabalho de relatórios onde seus dados já existem em formato tabular.
+
+A função executa as seguintes etapas:
+
+1. Crie um documento PDF vazio com `ap.Document()`.
+1. Adicione uma página ao documento.
+1. Converta o DataFrame em uma tabela Aspose.PDF chamando `create_table_from_dataframe(df, max_rows)`.
+1. Adicionar a tabela à página com `page.paragraphs.add(table)`.
+1. Salvar o PDF no caminho de saída.
+
+```python
+from os import path
+import sys
+
+import pandas as pd
+import aspose.pdf as ap
+from config import set_license, initialize_data_dir
+
+def create_pdf_from_dataframe(
+ outfile: str, df: pd.DataFrame, max_rows: int = 20
+) -> None:
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ table = create_table_from_dataframe(df, max_rows)
+
+ # Add table object to first page of input document
+ page.paragraphs.add(table)
+ document.save(outfile)
+```
+
+## Criar Tabela a partir de DataFrame
+
+O `create_table_from_dataframe` função converte um DataFrame em um Aspose.PDF `Table` objeto que você pode adicionar a qualquer página.
+
+Ele faz o seguinte:
+
+1. Criar um vazio `ap.Table()` instância.
+1. Defina bordas de tabela e célula para formatação consistente.
+1. Adicione uma linha de cabeçalho usando os nomes das colunas do DataFrame.
+1. Adicionar linhas de dados de `df.head(max_rows)`.
+1. Retorne o objeto de tabela preenchido.
+
+```python
+from os import path
+import sys
+
+import pandas as pd
+import aspose.pdf as ap
+from config import set_license, initialize_data_dir
+
+def create_table_from_dataframe(df: pd.DataFrame, max_rows: int = 20) -> ap.Table:
+ """Create an Aspose.PDF table from a pandas DataFrame."""
+ # Initializes a new instance of the Table
+ table = ap.Table()
+ # Set the table border color as LightGray
+ table.border = ap.BorderInfo(ap.BorderSide.ALL, 1, ap.Color.light_gray)
+ # Set the border for table cells
+ table.default_cell_border = ap.BorderInfo(
+ ap.BorderSide.BOTTOM, 1, ap.Color.light_gray
+ )
+
+ # Add header row with column names
+ header_row = table.rows.add()
+ header_row.is_row_broken = False # Prevent header row from being split across pages
+ for column_name in df.columns:
+ cell = header_row.cells.add(str(column_name))
+ cell.background_color = ap.Color.light_gray
+
+ # Add data rows
+ for row_data in df.head(max_rows).itertuples(index=False):
+ row = table.rows.add()
+ for value in row_data:
+ row.cells.add(str(value))
+
+ return table
+```
+
+## Tópicos Relacionados à Tabela
+
+- [Trabalhe com tabelas em PDF usando Python](/pdf/pt/python-net/working-with-tables/)
+- [Adicionar tabelas ao PDF usando Python](/pdf/pt/python-net/adding-tables/)
+- [Extrair tabelas de documentos PDF](/pdf/pt/python-net/extracting-table/)
+- [Manipular tabelas em PDFs existentes](/pdf/pt/python-net/manipulating-tables/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md b/pt/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md
index a3580fc53f..7a39cd7d4d 100644
--- a/pt/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-tables/manipulate-tables-in-existing-pdf/_index.md
@@ -1,325 +1,114 @@
---
-title: Manipular Tabelas em PDF existente
+title: Manipular Tabelas em Documentos PDF Existentes
linktitle: Manipular Tabelas
type: docs
weight: 40
-url: /pt/python-net/manipulate-tables-in-existing-pdf/
-lastmod: "2023-02-17"
+url: /pt/python-net/manipulating-tables/
+description: Aprenda como inspecionar e modificar tabelas em documentos PDF existentes usando Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "weekly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Inspecione e modifique tabelas PDF existentes com Python
+Abstract: Este artigo explica como manipular tabelas já presentes em documentos PDF usando Aspose.PDF for Python via .NET. Aprenda como localizar tabelas com TableAbsorber, acessar linhas e células específicas, atualizar o conteúdo de texto da tabela e salvar o PDF modificado em Python.
---
-
+## Manipular Tabelas em PDF Existente
-## Manipular tabelas em PDF existente
+Aspose.PDF for Python via .NET permite que você atualize tabelas que já existem em um documento PDF. Você pode usar o [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) classe para encontrar tabelas em uma página, acessar linhas e células, alterar o conteúdo de texto e salvar o arquivo atualizado.
-Uma das primeiras funcionalidades suportadas pelo Aspose.PDF para Python via .NET é a sua capacidade de Trabalhar com Tabelas e fornece ótimo suporte para adicionar tabelas em arquivos PDF sendo gerados do zero ou em qualquer arquivo PDF existente. Nesta nova versão, implementamos uma nova funcionalidade de pesquisa e análise de tabelas simples que já existem na página de um documento PDF. Uma nova classe chamada [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) fornece essas capacidades. O uso do TableAbsorber é muito semelhante à classe existente [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/). O trecho de código a seguir mostra as etapas para atualizar o conteúdo em uma célula específica da tabela.
+Use esta página quando precisar atualizar o conteúdo de tabelas existentes em PDFs sem recriar o layout completo do documento.
-```python
+## Localizar e Substituir Texto em Células de Tabela PDF
- import aspose.pdf as ap
+Este exemplo encontra a primeira tabela na página 1, acessa a primeira célula, substitui seu texto e salva o PDF de saída.
- # Carregar arquivo PDF existente
- pdf_document = ap.Document(input_file)
- # Criar objeto TableAbsorber para encontrar tabelas
- absorber = ap.text.TableAbsorber()
- # Visitar a primeira página com o absorvedor
- absorber.visit(pdf_document.pages[1])
- # Obter acesso à primeira tabela na página, sua primeira célula e fragmentos de texto nela
- fragment = absorber.table_list[0].row_list[0].cell_list[0].text_fragments[1]
- # Alterar o texto do primeiro fragmento de texto na célula
- fragment.text = "olá mundo"
- pdf_document.save(output_file)
-```
+1. Abra o PDF de entrada.
+1. Crie um TableAbsorber e visite a página 1.
+1. Certifique‑se de que pelo menos uma tabela seja detectada.
+1. Acesse a primeira célula na primeira linha da primeira tabela.
+1. Certifique‑se de que a célula contenha fragmentos de texto e, em seguida, atualize o primeiro fragmento.
+1. Salve o PDF modificado.
+```python
+import aspose.pdf as ap
-## Substituir tabela antiga por uma nova em documento PDF
+def replace_cell_text(infile: str, outfile: str) -> None:
+ """Replace text in the first cell of the first detected table."""
+ # Open PDF document
+ document = ap.Document(infile)
-Caso você precise encontrar uma tabela específica e substituí-la pela desejada, você pode usar o método [replace()](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/#methods) da classe [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) para fazer isso. O exemplo a seguir demonstra a funcionalidade de substituir a tabela dentro de um documento PDF:
+ # Create TableAbsorber object to find tables
+ absorber = ap.text.TableAbsorber()
-```python
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
- import aspose.pdf as ap
+ if len(absorber.table_list) == 0:
+ raise ValueError("No tables were found on page 1.")
- # Carregar documento PDF existente
- pdf_document = ap.Document(input_file)
- # Criar objeto TableAbsorber para encontrar tabelas
- absorber = ap.text.TableAbsorber()
- # Visitar a primeira página com o absorvedor
- absorber.visit(pdf_document.pages[1])
- # Obter a primeira tabela na página
- table = absorber.table_list[0]
- # Criar nova tabela
- new_table = ap.Table()
- new_table.column_widths = "100 100 100"
- new_table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 1)
+ first_cell = absorber.table_list[0].row_list[0].cell_list[0]
+ if len(first_cell.text_fragments) == 0:
+ raise ValueError("The target cell has no text fragments.")
- row = new_table.rows.add()
- row.cells.add("Col 1")
- row.cells.add("Col 2")
- row.cells.add("Col 3")
+ # Change text of the first text fragment in the cell
+ first_cell.text_fragments[0].text = "New Value"
- # Substituir a tabela pela nova
- absorber.replace(pdf_document.pages[1], table, new_table)
- # Salvar documento
- pdf_document.save(output_file)
+ # Save PDF document
+ document.save(outfile)
```
+## Substituir uma Tabela Existente por uma Nova Tabela
-## Como determinar se a tabela vai quebrar na página atual
+Você também pode substituir uma tabela detectada por uma recém-criada. Essa abordagem é útil quando tanto a estrutura quanto o conteúdo precisam ser alterados.
-Este código gera um documento PDF contendo uma tabela, calcula o espaço disponível na página e verifica se adicionar mais linhas à tabela levará a uma quebra de página com base nas restrições de espaço. O resultado é salvo em um arquivo de saída.
+O código abaixo abre um PDF, encontra a primeira tabela na página 1, cria uma tabela de substituição, troca a tabela antiga pela nova e salva o resultado.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
+def replace_table(infile: str, outfile: str) -> None:
+ """Replace an entire table with a new one."""
+ # Open PDF document
+ document = ap.Document(infile)
- # Instanciar um objeto da classe PDF
- pdf = ap.Document()
- # Adicionar a seção à coleção de seções do documento PDF
- page = pdf.pages.add()
- # Instanciar um objeto de tabela
- table1 = ap.Table()
- table1.margin.top = 300
- # Adicionar a tabela na coleção de parágrafos da seção desejada
- page.paragraphs.add(table1)
- # Definir as larguras das colunas da tabela
- table1.column_widths = "100 100 100"
- # Definir borda de célula padrão usando o objeto BorderInfo
- table1.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 0.1)
- # Definir borda da tabela usando outro objeto BorderInfo personalizado
- table1.border = ap.BorderInfo(ap.BorderSide.ALL, 1)
- # Criar objeto MarginInfo e definir suas margens esquerda, inferior, direita e superior
- margin = ap.MarginInfo()
- margin.top = 5
- margin.left = 5
- margin.right = 5
- margin.bottom = 5
- # Definir o preenchimento de célula padrão para o objeto MarginInfo
- table1.default_cell_padding = margin
- # Se você aumentar o contador para 17, a tabela irá quebrar
- # Porque não pode ser acomodada mais nesta página
- for row_counter in range(0, 17):
- # Criar linhas na tabela e depois células nas linhas
- row1 = table1.rows.add()
- row1.cells.add("col " + str(row_counter) + ", 1")
- row1.cells.add("col " + str(row_counter) + ", 2")
- row1.cells.add("col " + str(row_counter) + ", 3")
- # Obter a informação de altura da página
- page_height = pdf.page_info.height
- # Obter a informação total de altura das margens superior e inferior da página,
- # Margem superior da tabela e altura da tabela.
- total_objects_height = page.page_info.margin.top + page.page_info.margin.bottom + table1.margin.top + \
- table1.get_height(None)
- # Exibir a altura da página, altura da tabela, margem superior da tabela e
- # Informações sobre as margens superior e inferior da página
- print("Altura do documento PDF = " + str(pdf.page_info.height) + "\nInformação da Margem Superior = " + str(page.page_info.margin.top)
- + "\nInformação da Margem Inferior = " + str(page.page_info.margin.bottom) + "\n\nInformação da Margem Superior da Tabela = "
- + str(table1.margin.top) + "\nAltura Média da Linha = " + str(table1.rows[0].min_row_height) + " \nAltura da Tabela "
- + str(table1.get_height(None)) + "\n ----------------------------------------" + "\nAltura Total da Página ="
- + str(page_height) + "\nAltura cumulativa incluindo a Tabela =" + str(total_objects_height))
- # Verificar se subtrairmos a soma da margem superior da página + margem inferior da página
- # + Margem superior da tabela e altura da tabela da altura da página e é menor
- # Que 10 (uma linha média pode ser maior que 10)
- if (page_height - total_objects_height) <= 10:
- # Se o valor for menor que 10, então exibir a mensagem.
- # Que mostra que outra linha não pode ser colocada e se adicionarmos uma nova
- # Linha, a tabela irá quebrar. Isso depende do valor da altura da linha.
- print("Altura da Página - Altura dos Objetos < 10, então a tabela irá quebrar")
- # Salvar o documento PDF
- pdf.save(output_file)
-```
+ # Create TableAbsorber object to find tables
+ absorber = ap.text.TableAbsorber()
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
-## Adicionar Coluna Repetida na Tabela
+ if len(absorber.table_list) == 0:
+ raise ValueError("No tables were found on page 1.")
-Na classe [Aspose.Pdf.Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/), você pode definir um [repeating_rows_count](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) que repetirá linhas se a tabela for muito longa verticalmente e transbordar para a próxima página. No entanto, em alguns casos, as tabelas são muito largas para caber em uma única página e precisam ser continuadas na próxima página. Para atender a esse propósito, implementamos a propriedade [repeating_columns_count](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties) na classe [Aspose.Pdf.Table](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/). Definir essa propriedade fará com que a tabela quebre para a próxima página em colunas e repita a contagem de colunas especificada no início da próxima página. O trecho de código a seguir mostra o uso da propriedade [repeating_columns_count](https://reference.aspose.com/pdf/python-net/aspose.pdf/table/#properties):
+ # Get first table on the page
+ old_table = absorber.table_list[0]
-```python
+ # Create new table
+ new_table = ap.Table()
+ new_table.column_widths = "100 100 100"
+ new_table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL, 1.0)
+
+ row = new_table.rows.add()
+ row.cells.add("Col 1")
+ row.cells.add("Col 2")
+ row.cells.add("Col 3")
+ row = new_table.rows.add()
+ row.cells.add("Col 12")
+ row.cells.add("Col 22")
+ row.cells.add("Col 32")
- import aspose.pdf as ap
+ # Replace the old table with the new one
+ absorber.replace(document.pages[1], old_table, new_table)
- # Criar um novo documento
- doc = ap.Document()
- page = doc.pages.add()
- # Instanciar uma tabela externa que ocupa toda a página
- outer_table = ap.Table()
- outer_table.column_widths = "100%"
- outer_table.horizontal_alignment = ap.HorizontalAlignment.LEFT
- # Instanciar um objeto de tabela que será aninhado dentro de outerTable que quebrará dentro da mesma página
- my_table = ap.Table()
- my_table.broken = ap.TableBroken.VERTICAL_IN_SAME_PAGE
- my_table.column_adjustment = ap.ColumnAdjustment.AUTO_FIT_TO_CONTENT
- # Adicionar a outerTable aos parágrafos da página
- # Adicionar minha tabela à outerTable
- page.paragraphs.add(outer_table)
- body_row = outer_table.rows.add()
- body_cell = body_row.cells.add()
- body_cell.paragraphs.add(my_table)
- my_table.repeating_columns_count = 5
- page.paragraphs.add(my_table)
- # Adicionar Linha de Cabeçalho
- row = my_table.rows.add()
- row.cells.add("cabeçalho 1")
- row.cells.add("cabeçalho 2")
- row.cells.add("cabeçalho 3")
- row.cells.add("cabeçalho 4")
- row.cells.add("cabeçalho 5")
- row.cells.add("cabeçalho 6")
- row.cells.add("cabeçalho 7")
- row.cells.add("cabeçalho 11")
- row.cells.add("cabeçalho 12")
- row.cells.add("cabeçalho 13")
- row.cells.add("cabeçalho 14")
- row.cells.add("cabeçalho 15")
- row.cells.add("cabeçalho 16")
- row.cells.add("cabeçalho 17")
- for row_counter in range(0, 6):
- # Criar linhas na tabela e depois células nas linhas
- row1 = my_table.rows.add()
- row1.cells.add("col " + str(row_counter) + ", 1")
- row1.cells.add("col " + str(row_counter) + ", 2")
- row1.cells.add("col " + str(row_counter) + ", 3")
- row1.cells.add("col " + str(row_counter) + ", 4")
- row1.cells.add("col " + str(row_counter) + ", 5")
- row1.cells.add("col " + str(row_counter) + ", 6")
- row1.cells.add("col " + str(row_counter) + ", 7")
- row1.cells.add("col " + str(row_counter) + ", 11")
- row1.cells.add("col " + str(row_counter) + ", 12")
- row1.cells.add("col " + str(row_counter) + ", 13")
- row1.cells.add("col " + str(row_counter) + ", 14")
- row1.cells.add("col " + str(row_counter) + ", 15")
- row1.cells.add("col " + str(row_counter) + ", 16")
- row1.cells.add("col " + str(row_counter) + ", 17")
- doc.save(output_file)
+ # Save PDF document
+ document.save(outfile)
```
+## Tópicos Relacionados à Tabela
-
\ No newline at end of file
+- [Trabalhe com tabelas em PDF usando Python](/pdf/pt/python-net/working-with-tables/)
+- [Adicionar tabelas ao PDF usando Python](/pdf/pt/python-net/adding-tables/)
+- [Extrair tabelas de documentos PDF](/pdf/pt/python-net/extracting-table/)
+- [Remover tabelas de PDFs existentes](/pdf/pt/python-net/removing-tables/)
diff --git a/pt/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md b/pt/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md
index 20c0dd1a4b..7767f76a63 100644
--- a/pt/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-tables/remove-tables-from-existing-pdf/_index.md
@@ -1,195 +1,75 @@
---
-title: Remover Tabelas de PDF Existente
+title: Remover Tabelas de Documentos PDF Existentes
linktitle: Remover Tabelas
+description: Aprenda como remover uma ou mais tabelas de documentos PDF existentes em Python.
+lastmod: "2026-05-20"
type: docs
weight: 50
-url: /pt/python-net/remove-tables-from-existing-pdf/
-lastmod: "2023-02-17"
+url: /pt/python-net/removing-tables/
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir uma ou várias tabelas de arquivos PDF com Python
+Abstract: Este artigo explica como remover tabelas de documentos PDF existentes usando Aspose.PDF for Python via .NET. Ele apresenta `TableAbsorber` para localizar tabelas e demonstra como excluir uma única tabela ou remover todas as tabelas detectadas de uma página.
---
-
+## Remover Tabela de documento PDF
-{{% alert color="primary" %}}
+Aspose.PDF for Python permite que você remova uma tabela de um PDF. Ele abre um PDF existente, detecta a primeira tabela na primeira página com `TableAbsorber`, exclui essa tabela usando `remove()`, e salva o PDF atualizado em um novo arquivo.
-Aspose.PDF para Python via .NET oferece as capacidades de inserir/criar Tabela dentro do documento PDF enquanto está sendo gerado do zero ou você também pode adicionar o objeto tabela em qualquer documento PDF existente. No entanto, você pode ter um requisito para [Manipular Tabelas em PDF existente](https://docs.aspose.com/pdf/python-net/manipulate-tables-in-existing-pdf/) onde você pode atualizar os conteúdos nas células de tabela existentes. No entanto, você pode se deparar com um requisito para remover objetos de tabela de um documento PDF existente.
-
-{{% /alert %}}
-
-Para remover as tabelas, precisamos usar a classe [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) para obter as tabelas em um PDF existente e então chamar [remove()](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/#methods).
-
-## Remover Tabela do documento PDF
-
-Nós adicionamos uma nova função, ou seja.
- [remove()](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/#methods) para a classe existente [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) a fim de remover a tabela do documento PDF. Uma vez que o absorvedor encontra com sucesso as tabelas na página, ele se torna capaz de removê-las. Por favor, verifique o trecho de código a seguir mostrando como remover uma tabela de um documento PDF:
+Use esta página quando precisar limpar PDFs com muitas tabelas, remover conteúdo tabular desatualizado ou simplificar documentos antes da redistribuição.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
+def remove_one_table(infile: str, outfile: str) -> None:
+ # Load existing PDF document
+ document = ap.Document(infile)
- # Carregar documento PDF existente
- pdf_document = ap.Document(input_file)
- # Criar objeto TableAbsorber para encontrar tabelas
+ # Create TableAbsorber object to find tables
absorber = ap.text.TableAbsorber()
- # Visitar a primeira página com o absorvedor
- absorber.visit(pdf_document.pages[1])
- # Obter a primeira tabela na página
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
+ # Get first table on the page
table = absorber.table_list[0]
- # Remover a tabela
+ # Remove the table
absorber.remove(table)
- # Salvar PDF
- pdf_document.save(output_file)
+ # Save PDF
+ document.save(outfile)
```
-## Remover Múltiplas Tabelas de um Documento PDF
+## Remover todas as Tabelas do documento PDF
-Às vezes, um documento PDF pode conter mais de uma tabela e você pode ter a necessidade de remover múltiplas tabelas dele. Para remover várias tabelas de um documento PDF, por favor use o seguinte trecho de código:
+Com nossa biblioteca, você pode remover todas as tabelas de uma página específica em um PDF. O código abre um PDF existente, detecta todas as tabelas na segunda página com TableAbsorber, itera pelas tabelas detectadas, remove cada uma e, em seguida, salva o PDF modificado em um novo arquivo. É útil quando você precisa remover em massa tabelas de uma página enquanto mantém o restante do conteúdo do PDF intacto.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
+def remove_all_tables(infile: str, outfile: str) -> None:
+ # Load existing PDF document
+ document = ap.Document(infile)
- # Carregar documento PDF existente
- pdf_document = ap.Document(input_file)
- # Criar objeto TableAbsorber para encontrar tabelas
+ # Create TableAbsorber object to find tables
absorber = ap.text.TableAbsorber()
- # Visitar a segunda página com o absorvedor
- absorber.visit(pdf_document.pages[1])
- # Obter cópia da coleção de tabelas
- tables = absorber.table_list
- # Percorrer a cópia da coleção e remover tabelas
+ # Visit first page with absorber
+ absorber.visit(document.pages[1])
+ # Loop through the copy of collection and removing tables
+ tables = list(absorber.table_list)
for table in tables:
absorber.remove(table)
- # Salvar documento
- pdf_document.save(output_file)
+
+ # Save document
+ document.save(outfile)
```
-
\ No newline at end of file
+## Tópicos Relacionados à Tabela
+
+- [Trabalhar com tabelas em PDF usando Python](/pdf/pt/python-net/working-with-tables/)
+- [Adicionar tabelas ao PDF usando Python](/pdf/pt/python-net/adding-tables/)
+- [Extrair tabelas de documentos PDF](/pdf/pt/python-net/extracting-table/)
+- [Manipular tabelas em PDFs existentes](/pdf/pt/python-net/manipulating-tables/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/_index.md b/pt/python-net/advanced-operations/working-with-text/_index.md
index 6ea01887b8..69cef3752b 100644
--- a/pt/python-net/advanced-operations/working-with-text/_index.md
+++ b/pt/python-net/advanced-operations/working-with-text/_index.md
@@ -1,155 +1,31 @@
---
-title: Trabalhando com Texto em PDF usando Python
+title: Trabalhar com Texto em PDF usando Python
linktitle: Trabalhando com Texto
type: docs
weight: 30
url: /pt/python-net/working-with-text/
-description: Esta seção explica várias técnicas de manipulação de texto. Aprenda como adicionar, substituir, girar, pesquisar texto usando Aspose.PDF para Python.
-lastmod: "2024-01-17"
+description: Aprenda como adicionar, pesquisar, formatar, substituir, girar e inspecionar texto em documentos PDF usando Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar, formatar, pesquisar, substituir e girar texto PDF em Python
+Abstract: Esta seção explica como trabalhar com texto em documentos PDF usando Aspose.PDF for Python via .NET. Aprenda como adicionar e formatar texto, criar dicas de ferramenta e layouts de texto flutuantes, pesquisar e extrair texto, substituir texto existente e girar elementos de texto em fluxos de trabalho Python.
---
-
+ Todos nós às vezes precisamos adicionar texto a um arquivo PDF. Por exemplo, você pode querer colocar uma tradução abaixo do texto principal, adicionar uma legenda ao lado de uma imagem ou preencher um formulário de inscrição. Também é útil quando todos os elementos de texto podem ser formatados no seu estilo preferido. As operações comuns de texto incluem adicionar texto, formatar texto, substituir texto e girar texto em um documento. **Aspose.PDF for Python via .NET** fornece tudo o que você precisa para trabalhar com conteúdo de texto em PDF.
-Nós todos às vezes precisamos adicionar texto a um arquivo PDF. Por exemplo, quando você quer adicionar uma tradução abaixo do texto principal, colocar uma legenda ao lado de uma imagem ou simplesmente preencher um formulário de inscrição. Também é útil se todos os elementos de texto puderem ser formatados no estilo que você desejar. As manipulações de texto mais populares no seu arquivo PDF são: adicionar texto ao PDF, formatar texto dentro do arquivo PDF, substituir e rotacionar texto no seu documento. **Aspose.PDF para Python via .NET** é a melhor solução que tem tudo o que você precisa para interagir com o conteúdo do PDF.
+Use esta seção quando precisar gerar, formatar, inspecionar ou modificar texto diretamente dentro das páginas PDF em aplicações Python.
-Você é capaz de fazer o seguinte:
+## Tarefas de Texto Cobertas
-- [Adicionar Texto ao arquivo PDF](/pdf/pt/python-net/add-text-to-pdf-file/) - adicionar texto ao seu PDF, usar fontes de stream e arquivos, adicionar uma string HTML, adicionar um hyperlink, etc.
-- [Tooltip em PDF](/pdf/pt/python-net/pdf-tooltip/) - você pode adicionar um tooltip ao texto pesquisado adicionando um botão invisível usando Python.
-- [Formatação de Texto dentro do PDF](/pdf/pt/python-net/text-formatting-inside-pdf/) - Muitos recursos que você pode adicionar ao seu documento ao formatar o texto dentro dele.
- Adicionar indentação de linha, adicionar borda de texto, adicionar sublinhado, adicionar nova linha com a biblioteca Aspose.PDF.
-- [Substituir Texto em PDF](/pdf/pt/python-net/replace-text-in-pdf/) - para substituir texto em todas as páginas de um documento PDF. Primeiro, você precisa usar TextFragmentAbsorber.
-- [Rotacionar Texto Dentro do PDF](/pdf/pt/python-net/rotate-text-inside-pdf/) - rotacionar texto dentro do PDF usando a propriedade de rotação da Classe TextFragment.
-- [Buscar e Obter Texto das Páginas do Documento PDF](/pdf/pt/python-net/search-and-get-text-from-pdf/) - você pode usar a classe TextFragmentAbsorber para buscar e obter texto das páginas.
-- [Determinar Quebra de Linha](/pdf/pt/python-net/determine-line-break/) - este tópico explica como rastrear a quebra de linha de fragmentos de texto de várias linhas.
+ Você pode fazer o seguinte:
-
\ No newline at end of file
+- [Adicionar Texto ao arquivo PDF](/pdf/pt/python-net/add-text-to-pdf-file/) - adicionar texto ao seu PDF, usar fontes de stream e arquivos, adicionar uma string HTML, adicionar um hyperlink, etc.
+- [Tooltip PDF](/pdf/pt/python-net/pdf-tooltip/) - você pode adicionar uma dica de ferramenta ao texto pesquisado adicionando um botão invisível usando Python.
+- [Usando FloatingBox](/pdf/pt/python-net/floating-box/) - coloque texto estilizado e outro conteúdo dentro de um contêiner flutuante.
+- [Substituir Texto em PDF](/pdf/pt/python-net/replace-text-in-pdf/) - substitua ou remova texto existente em um arquivo PDF.
+- [Rotacionar Texto Dentro do PDF](/pdf/pt/python-net/rotate-text-inside-pdf/) - girar fragmentos de texto e parágrafos dentro de um PDF.
+- [Pesquisar e Obter Texto do PDF](/pdf/pt/python-net/search-and-get-text-from-pdf/) - pesquisar texto e inspecionar detalhes de texto extraído das páginas.
+- [Formatação de Texto dentro do PDF](/pdf/pt/python-net/text-formatting-inside-pdf/) - controlar espaçamento entre linhas, bordas, recuo e estilo de texto.
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-a-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-text/add-text-to-a-pdf-file/_index.md
deleted file mode 100644
index 467f3ab7c3..0000000000
--- a/pt/python-net/advanced-operations/working-with-text/add-text-to-a-pdf-file/_index.md
+++ /dev/null
@@ -1,843 +0,0 @@
----
-title: Adicionar Texto ao PDF usando Python
-linktitle: Adicionar Texto ao PDF
-type: docs
-weight: 10
-url: /pt/python-net/add-text-to-pdf-file/
-description: Este artigo descreve vários aspectos do trabalho com texto no Aspose.PDF. Aprenda como adicionar texto ao PDF, adicionar fragmentos HTML ou usar fontes OTF personalizadas.
-lastmod: "2024-02-17"
-sitemap:
- changefreq: "monthly"
- priority: 0.7
----
-
-
-
-## Adicionando Texto
-
-1. Abra o documento PDF de entrada usando Aspose.PDF.
-1. Selecione a página específica à qual você deseja adicionar o texto.
-1. Crie um objeto TextFragment. Um fragmento de texto é criado com o conteúdo 'texto principal'. Este fragmento é posicionado nas coordenadas (100, 600) na página.
-1. Configurando Propriedades do Texto. Várias propriedades do texto são definidas, como tamanho da fonte, tipo de fonte (Times New Roman), cor de fundo (cinza claro) e cor de primeiro plano (vermelho).
-1. Crie o Objeto TextBuilder. Um objeto TextBuilder é instanciado com a página selecionada.
-1. Anexe o Fragmento de Texto. O fragmento de texto criado anteriormente é anexado à página PDF usando o objeto TextBuilder.
-1. Chame o método [document.save](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e salve o arquivo PDF de saída.
-
-O snippet de código a seguir mostra como adicionar texto em um arquivo PDF existente:
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document(input_pdf)
-
- # Obter página específica
- page = document.pages[1]
-
- # Criar fragmento de texto
- text_fragment = ap.text.TextFragment("main text")
- text_fragment.position = ap.text.Position(100, 600)
-
- # Definir propriedades do texto
- text_fragment.text_state.font_size = 12
- text_fragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
- text_fragment.text_state.background_color = ap.Color.light_gray
- text_fragment.text_state.foreground_color = ap.Color.red
-
- # Criar objeto TextBuilder
- builder = ap.text.TextBuilder(page)
-
- # Anexar o fragmento de texto à página PDF
- builder.append_text(text_fragment)
-
- # Salvar documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Carregando Fonte a partir de Stream
-
-O trecho de código a seguir mostra como carregar uma fonte a partir de um objeto stream ao adicionar texto a um documento PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Carregar arquivo PDF de entrada
- document = ap.Document()
- document.pages.add()
- # Criar objeto construtor de texto para a primeira página do documento
- text_builder = ap.text.TextBuilder(document.pages[1])
- # Criar fragmento de texto com uma string de exemplo
- text_fragment = ap.text.TextFragment("Hello world")
-
- if input_ttf != "":
- # Carregar a fonte TrueType no objeto stream
- font_stream = open(input_ttf, "rb")
- # Definir o nome da fonte para a string de texto
- text_fragment.text_state.font = ap.text.FontRepository.open_font(
- font_stream, ap.text.FontTypes.TTF
- )
- # Especificar a posição do Fragmento de Texto
- text_fragment.position = ap.text.Position(10, 10)
- # Adicionar o texto ao TextBuilder para que ele possa ser colocado sobre o arquivo PDF
- text_builder.append_text(text_fragment)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Adicionar Texto usando TextParagraph
-
-O trecho de código a seguir mostra como adicionar texto em um documento PDF usando a classe [TextParagraph](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/).
-
-```python
-
- import aspose.pdf as ap
-
- # Abrir documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do objeto Document
- page = document.pages.add()
- builder = ap.text.TextBuilder(page)
- # Criar parágrafo de texto
- paragraph = ap.text.TextParagraph()
- # Definir indentação das linhas subsequentes
- paragraph.subsequent_lines_indent = 20
- # Especificar o local para adicionar o TextParagraph
- paragraph.rectangle = ap.Rectangle(100, 300, 200, 700, False)
- # Especificar o modo de quebra de linha
- paragraph.formatting_options.wrap_mode = (
- ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
- )
- # Criar fragmento de texto
- fragment1 = ap.text.TextFragment("the quick brown fox jumps over the lazy dog")
- fragment1.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
- fragment1.text_state.font_size = 12
- # Adicionar fragmento ao parágrafo
- paragraph.append_line(fragment1)
- # Adicionar parágrafo
- builder.append_paragraph(paragraph)
-
- # Salvar documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Adicionar Hiperlink ao TextSegment
-
-Este código demonstra como criar conteúdo dinâmico e interativo em um documento PDF, incluindo hiperlinks para recursos externos.
-
-Uma página PDF pode consistir em um ou mais objetos TextFragment, onde cada objeto TextFragment pode ter uma ou mais instâncias de [TextSegment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textsegment/).
-
-Por favor, tente usar o seguinte trecho de código para realizar este requisito:
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância de documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do arquivo PDF
- page1 = document.pages.add()
- # Criar instância de TextFragment
- tf = ap.text.TextFragment("Sample Text Fragment")
- # Definir alinhamento horizontal para TextFragment
- tf.horizontal_alignment = ap.HorizontalAlignment.RIGHT
- # Criar um textsegment com texto de exemplo
- segment = ap.text.TextSegment(" ... Text Segment 1...")
- # Adicionar segmento à coleção de segmentos do TextFragment
- tf.segments.append(segment)
- # Criar um novo TextSegment
- segment = ap.text.TextSegment("Link to Google")
- # Adicionar segmento à coleção de segmentos do TextFragment
- tf.segments.append(segment)
- # Definir hiperlink para TextSegment
- segment.hyperlink = ap.WebHyperlink("www.google.com")
- # Definir cor de primeiro plano para o segmento de texto
- segment.text_state.foreground_color = ap.Color.blue
- # Definir formatação de texto como itálico
- segment.text_state.font_style = ap.text.FontStyles.ITALIC
- # Criar outro objeto TextSegment
- segment = ap.text.TextSegment("TextSegment without hyperlink")
- # Adicionar segmento à coleção de segmentos do TextFragment
- tf.segments.append(segment)
- # Adicionar TextFragment à coleção de parágrafos do objeto de página
- page1.paragraphs.add(tf)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Usar Fonte OTF
-
-Aspose.PDF para Python via .NET oferece a funcionalidade de usar fontes Customizadas/TrueType ao criar/manipular conteúdos de arquivos PDF para que os conteúdos do arquivo sejam exibidos usando fontes diferentes das fontes padrão do sistema.
-
-```python
-
- import aspose.pdf as ap
-
- # Criar nova instância de documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do arquivo PDF
- page = document.pages.add()
- # Criar instância de TextFragment com texto de exemplo
- fragment = ap.text.TextFragment("Texto de exemplo na fonte OTF")
- # Ou você pode até especificar o caminho da fonte OTF no diretório do sistema
- fragment.text_state.font = ap.text.FontRepository.open_font(input_otf)
- # Especificar para incluir a fonte dentro do arquivo PDF, para que seja exibida corretamente,
- # Mesmo que a fonte específica não esteja instalada/presente na máquina de destino
- fragment.text_state.font.is_embedded = True
- # Adicionar TextFragment à coleção de parágrafos da instância de Page
- page.paragraphs.add(fragment)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Adicionar String HTML usando DOM
-
-O próximo código Python utiliza a biblioteca Aspose.PDF para criar um documento PDF com um fragmento HTML.
-
-1. Instanciar Documento. Uma instância da classe Document é criada, representando o documento PDF.
-1. Adicionar Página ao documento PDF.
-1. Instanciar um objeto HtmlFragment com conteúdo HTML.
-1. Definir Margens para o fragmento HTML. Neste caso, a margem inferior é definida para 10 pontos e a margem superior é definida para 200 pontos.
-1. Adicionar Fragmento HTML à Página.
-1. Salvar Arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Instanciar objeto Document
- doc = ap.Document()
- # Adicionar uma página à coleção de páginas do arquivo PDF
- page = doc.pages.add()
- # Instanciar HtmlFragment com conteúdos HTML
- title = ap.HtmlFragment("Tabela")
- # Definir informações de margem inferior
- title.margin.bottom = 10
- # Definir informações de margem superior
- title.margin.top = 200
- # Adicionar Fragmento HTML à coleção de parágrafos da página
- page.paragraphs.add(title)
- # Salvar arquivo PDF
- doc.save(output_pdf)
-```
-
-
-### Estilo de linha personalizado para Nota de Rodapé
-
-O exemplo a seguir demonstra como adicionar Notas de Rodapé na parte inferior da página do Pdf e definir um estilo de linha personalizado.
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância de Documento
- doc = ap.Document()
- # Adicionar página à coleção de páginas do PDF
- page = doc.pages.add()
- # Criar objeto GraphInfo
- graph = ap.GraphInfo()
- # Definir a largura da linha como 2
- graph.line_width = 2
- # Definir a cor para o objeto gráfico
- graph.color = ap.Color.red
- # Definir o valor do array de traços como 3
- graph.dash_array = [3]
- # Definir o valor da fase de traço como 1
- graph.dash_phase = 1
- # Definir o estilo da linha da nota de rodapé para a página como gráfico
- page.note_line_style = graph
- # Criar instância de TextFragment
- text = ap.text.TextFragment("Hello World")
- # Definir valor da Nota de Rodapé para o TextFragment
- text.foot_note = ap.Note("nota de rodapé para texto de teste 1")
- # Adicionar TextFragment à coleção de parágrafos da primeira página do documento
- page.paragraphs.add(text)
- # Criar segundo TextFragment
- text = ap.text.TextFragment("Aspose.Pdf for .NET")
- # Definir Nota de Rodapé para o segundo fragmento de texto
- text.foot_note = ap.Note("nota de rodapé para texto de teste 2")
- # Adicionar segundo fragmento de texto à coleção de parágrafos do arquivo PDF
- page.paragraphs.add(text)
- # Salvar o documento PDF resultante.
- doc.save(output_pdf)
-```
-
-
-### Personalizar rótulo da Nota de Rodapé
-
-O próximo trecho de código mostra como criar um documento PDF com um fragmento de texto contendo uma nota de rodapé.
-
-Por padrão, o número da Nota de Rodapé é incremental a partir de 1. No entanto, podemos ter um requisito para definir um rótulo de Nota de Rodapé personalizado. Para atender a esse requisito, tente usar o seguinte trecho de código
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância do Documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do PDF
- page = document.pages.add()
- # Criar objeto GraphInfo
- graph = ap.GraphInfo()
- # Definir a largura da linha como 2
- graph.line_width = 2
- # Definir a cor para o objeto gráfico
- graph.color = ap.Color.red
- # Definir o valor do array de tracejado como 3
- graph.dash_array = [3]
- # Definir o valor da fase de tracejado como 1
- graph.dash_phase = 1
- # Definir o estilo da linha da nota de rodapé para a página como gráfico
- page.note_line_style = graph
- # Criar instância de TextFragment
- text = ap.text.TextFragment("Hello World")
- # Definir valor da Nota de Rodapé para o TextFragment
- text.foot_note = ap.Note("nota de rodapé para texto de teste 1")
- # Especificar rótulo personalizado para a Nota de Rodapé
- text.foot_note.text = " Aspose"
- # Adicionar TextFragment à coleção de parágrafos da primeira página do documento
- page.paragraphs.add(text)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Adicionando Imagem e Tabela à Nota de Rodapé
-
-Este código demonstra como criar um documento PDF com um fragmento de texto contendo uma nota de rodapé complexa que inclui uma imagem, texto e uma tabela usando Aspose.PDF para Python.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- page = document.pages.add()
- text = ap.text.TextFragment("algum texto")
- page.paragraphs.add(text)
-
- text.foot_note = ap.Note()
- image = ap.Image()
- image.file = input_jpg
- image.fix_height = 20
- text.foot_note.paragraphs.add(image)
- foot_note = ap.text.TextFragment("texto da nota de rodapé")
- foot_note.text_state.font_size = 20
- foot_note.is_in_line_paragraph = True
- text.foot_note.paragraphs.add(foot_note)
- table = ap.Table()
- table.rows.add().cells.add().paragraphs.add(ap.text.TextFragment("Linha 1 Célula 1"))
- text.foot_note.paragraphs.add(table)
-
- # Salvar documento PDF resultante.
- document.save(output_pdf)
-```
-
-## Como Criar Notas de Fim
-
-Uma Nota de Fim é uma citação de fonte que refere os leitores a um local específico no final do documento onde eles podem descobrir a fonte da informação ou palavras citadas ou mencionadas no documento.
- Quando se usam notas de fim, a sentença citada ou parafraseada ou o material resumido é seguido por um número sobrescrito.
-
-Este código demonstra como adicionar um fragmento de texto com uma nota de fim a um documento PDF usando Aspose.PDF para Python:
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância do Documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do PDF
- page = document.pages.add()
- # Criar instância do TextFragment
- text = ap.text.TextFragment("Hello World")
- # Definir valor da Nota de Fim para o TextFragment
- text.end_note = ap.Note("nota de fim de exemplo")
- # Especificar rótulo personalizado para a Nota de Rodapé
- text.end_note.text = " Aspose"
- # Adicionar TextFragment à coleção de parágrafos da primeira página do documento
- page.paragraphs.add(text)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-## Texto e Imagem como Parágrafo Embutido
-
-O layout padrão do arquivo PDF é o layout de fluxo (Topo-Esquerda para Baixo-Direita). Portanto, todo novo elemento adicionado ao arquivo PDF é adicionado no fluxo inferior direito. No entanto, podemos ter um requisito para exibir vários elementos de página, ou seja, Imagem e Texto no mesmo nível (um após o outro). Uma abordagem pode ser criar uma instância de Tabela e adicionar ambos os elementos a objetos de célula individualmente. No entanto, outra abordagem pode ser o parágrafo InLine. Ao definir a propriedade IsInLineParagraph da Imagem e Texto como verdadeira, esses parágrafos aparecerão como inline para outros elementos da página.
-
-O snippet de código a seguir mostra como adicionar texto e imagem como parágrafos InLine em um arquivo PDF.
-
-```python
-
- import aspose.pdf as ap
-
- # Instanciar a instância do Documento
- document = ap.Document()
- # Adicionar página à coleção de páginas da instância do Documento
- page = document.pages.add()
- # Criar TextFragment
- text = ap.text.TextFragment("Olá Mundo.. ")
- # Adicionar fragmento de texto à coleção de parágrafos do objeto Página
- page.paragraphs.add(text)
- # Criar uma instância de imagem
- image = ap.Image()
- # Definir imagem como parágrafo inline para que apareça logo após
- # O objeto de parágrafo anterior (TextFragment)
- image.is_in_line_paragraph = True
- # Especificar caminho do arquivo de imagem
- image.file = input_jpg
- # Definir altura da imagem (opcional)
- image.fix_height = 30
- # Definir largura da imagem (opcional)
- image.fix_width = 100
- # Adicionar imagem à coleção de parágrafos do objeto página
- page.paragraphs.add(image)
- # Re-inicializar o objeto TextFragment com diferentes conteúdos
- text = ap.text.TextFragment(" Olá novamente..")
- # Definir TextFragment como parágrafo inline
- text.is_in_line_paragraph = True
- # Adicionar o novo TextFragment criado à coleção de parágrafos da página
- page.paragraphs.add(text)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-## Especificar espaçamento de caracteres ao adicionar texto
-
-O próximo trecho de código mostra como gerar um documento PDF contendo um fragmento de texto com espaçamento aumentado entre caracteres.
-
-O texto pode ser adicionado dentro de uma coleção de parágrafos de arquivos PDF usando a instância TextFragment ou usando o objeto TextParagraph e até mesmo você pode carimbar o texto dentro do PDF usando a classe TextStamp.
-
-### Usando TextBuilder e TextFragment
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância de Documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do Documento
- document.pages.add()
- # Criar instância de TextBuilder
- builder = ap.text.TextBuilder(document.pages[1])
- # Criar instância de fragmento de texto com conteúdo de exemplo
- wide_fragment = ap.text.TextFragment("Texto com espaçamento aumentado entre caracteres")
- wide_fragment.text_state.apply_changes_from(ap.text.TextState("Arial", 12))
- # Especificar espaçamento de caracteres para TextFragment
- wide_fragment.text_state.character_spacing = 2.0
- # Especificar a posição do TextFragment
- wide_fragment.position = ap.text.Position(100, 650)
- # Anexar TextFragment à instância de TextBuilder
- builder.append_text(wide_fragment)
- # Salvar documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-### Usando TextParagraph
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância do Documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do Documento
- document.pages.add()
- # Criar instância do TextBuilder
- builder = ap.text.TextBuilder(document.pages[1])
- # Instanciar instância do TextParagraph
- paragraph = ap.text.TextParagraph()
- # Criar instância do TextState para especificar o nome e tamanho da fonte
- state = ap.text.TextState(12.0)
- state.font = ap.text.FontRepository.find_font("Arial")
- # Especificar o espaçamento entre caracteres
- state.character_spacing = 1.5
- # Adicionar texto ao objeto TextParagraph
- tt = "Este é um parágrafo com espaçamento entre caracteres"
- paragraph.append_line(tt, state)
- # Especificar a posição para o TextParagraph
- paragraph.position = ap.text.Position(100, 550)
- # Adicionar TextParagraph à instância do TextBuilder
- builder.append_paragraph(paragraph)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-### Usando TextStamp
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância do Documento
- document = ap.Document()
- # Adicionar página à coleção de páginas do Documento
- page = document.pages.add()
- # Instanciar instância do TextStamp com texto de exemplo
- stamp = ap.TextStamp("Este é um carimbo de texto com espaçamento entre caracteres")
- # Especificar o nome da fonte para o objeto Stamp
- stamp.text_state.font = ap.text.FontRepository.find_font("Arial")
- # Especificar o tamanho da fonte para o TextStamp
- stamp.text_state.font_size = 12
- # Especificar o espaçamento entre caracteres como 1
- stamp.text_state.character_spacing = 1
- # Definir o x_indent para o Stamp
- stamp.x_indent = 100
- # Definir o y_indent para o Stamp
- stamp.y_indent = 500
- # Adicionar carimbo textual à instância da página
- stamp.put(page)
- # Salvar o documento PDF resultante.
- document.save(output_pdf)
-```
-
-
-## Criar documento PDF com múltiplas colunas
-
-[Aspose.PDF para Python via .NET](https://docs.aspose.com/pdf/python-net/) também oferece o recurso de criar várias colunas dentro das páginas de documentos PDF. Para criar um arquivo PDF com múltiplas colunas, podemos fazer uso da classe FloatingBox, pois ela fornece a propriedade column_info para especificar o número de colunas dentro de FloatingBox e também podemos especificar o espaçamento entre as colunas e as larguras das colunas usando as propriedades column_spacing e width, respectivamente.
-
-Espaçamento de coluna significa o espaço entre as colunas e o espaçamento padrão entre as colunas é de 1,25 cm. Se a largura da coluna não for especificada, então o [Aspose.PDF para Python via .NET](https://docs.aspose.com/pdf/python-net/) calcula a largura de cada coluna automaticamente de acordo com o tamanho da página e o espaçamento entre colunas.
-
-Um exemplo é dado abaixo para demonstrar a criação de duas colunas com objetos de Gráficos (Linha) e eles são adicionados à coleção de parágrafos de FloatingBox, que é então adicionada à coleção de parágrafos da instância Page.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- # Especificar a informação da margem esquerda para o arquivo PDF
- document.page_info.margin.left = 40
- # Especificar a informação da margem direita para o arquivo PDF
- document.page_info.margin.right = 40
- page = document.pages.add()
-
- graph1 = ap.drawing.Graph(500, 2)
- # Adicionar a linha à coleção de parágrafos do objeto seção
- page.paragraphs.add(graph1)
-
- # Especificar as coordenadas para a linha
- pos1 = [1.0, 2.0, 500.0, 2.0]
- l1 = ap.drawing.Line(pos1)
- graph1.shapes.append(l1)
- # Criar variáveis de string com texto contendo tags html
- s = (
- ''
- + " Como Evitar Golpes de Dinheiro "
- + ""
- )
- # Criar parágrafos de texto contendo texto HTML
- heading_text = ap.HtmlFragment(s)
- page.paragraphs.add(heading_text)
-
- box = ap.FloatingBox()
- # Adicionar quatro colunas na seção
- box.column_info.column_count = 2
- # Definir o espaçamento entre as colunas
- box.column_info.column_spacing = "5"
-
- box.column_info.column_widths = "105 105"
- text1 = ap.text.TextFragment("Por Um Googler (O Blog Oficial do Google)")
- text1.text_state.font_size = 8
- text1.text_state.line_spacing = 2
- box.paragraphs.add(text1)
- text1.text_state.font_size = 10
-
- text1.text_state.font_style = ap.text.FontStyles.ITALIC
- # Criar um objeto de gráficos para desenhar uma linha
- graph2 = ap.drawing.Graph(50, 10)
- # Especificar as coordenadas para a linha
- pos2 = [1.0, 10.0, 100.0, 10.0]
- l2 = ap.drawing.Line(pos2)
- graph2.shapes.append(l2)
-
- # Adicionar a linha à coleção de parágrafos do objeto seção
- box.paragraphs.add(graph2)
-
- text2 = ap.text.TextFragment(
- "Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales."
- )
- box.paragraphs.add(text2)
- page.paragraphs.add(box)
- # Salvar arquivo PDF
- document.save(output_pdf)
-```
-
-
-## Trabalhando com Paradas de Tabulação Personalizadas
-
-Este trecho de código Python mostra como criar um documento PDF contendo fragmentos de texto organizados usando paradas de tabulação para simular uma estrutura de tabela.
-
-Aqui está um exemplo de como definir paradas de TAB personalizadas.
-
-```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- page = document.pages.add()
-
- ts = ap.text.TabStops()
- ts1 = ts.add(100.0)
- ts1.alignment_type = ap.text.TabAlignmentType.RIGHT
- ts1.leader_type = ap.text.TabLeaderType.SOLID
- ts2 = ts.add(200.0)
- ts2.alignment_type = ap.text.TabAlignmentType.CENTER
- ts2.leader_type = ap.text.TabLeaderType.DASH
- ts3 = ts.add(300.0)
- ts3.alignment_type = ap.text.TabAlignmentType.LEFT
- ts3.leader_type = ap.text.TabLeaderType.DOT
-
- header = ap.text.TextFragment(
- "Este é um exemplo de formação de tabela com paradas de TAB", ts
- )
- text0 = ap.text.TextFragment("#$TABCabeçalho1 #$TABCabeçalho2 #$TABCabeçalho3", ts)
-
- text1 = ap.text.TextFragment("#$TABdado11 #$TABdado12 #$TABdado13", ts)
- text2 = ap.text.TextFragment("#$TABdado21 ", ts)
- text2.segments.append(ap.text.TextSegment("#$TAB"))
- text2.segments.append(ap.text.TextSegment("dado22 "))
- text2.segments.append(ap.text.TextSegment("#$TAB"))
- text2.segments.append(ap.text.TextSegment("dado23"))
-
- page.paragraphs.add(header)
- page.paragraphs.add(text0)
- page.paragraphs.add(text1)
- page.paragraphs.add(text2)
-
- document.save(output_pdf)
-```
-
-
-## Como Adicionar Texto Transparente em PDF
-
-Um arquivo PDF contém objetos de Imagem, Texto, Gráfico, Anexos, Anotações e, ao criar TextFragment, você pode definir informações de cor de primeiro plano, cor de fundo, bem como formatação de texto. O Aspose.PDF para Python via .NET suporta o recurso de adicionar texto com canal de cor Alpha.
-
-O trecho de código a seguir mostra como adicionar texto com cor transparente.
-
-```python
-
- import aspose.pdf as ap
-
- # Criar instância do Documento
- document = ap.Document()
- # Criar página para a coleção de páginas do arquivo PDF
- page = document.pages.add()
-
- # Criar instância de TextFragment com valor de exemplo
- text = ap.text.TextFragment(
- "texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente texto transparente "
- )
- # Criar objeto de cor a partir do canal Alpha
- color = ap.Color.from_argb(30, 0, 255, 0)
- # Definir informações de cor para a instância de texto
- text.text_state.foreground_color = color
- # Adicionar texto à coleção de parágrafos da instância da página
- page.paragraphs.add(text)
-
- document.save(output_pdf)
-```
-
-
-## Especificar Espaçamento entre Linhas para Fontes
-
-Cada fonte tem um quadrado abstrato, cuja altura é a distância pretendida entre linhas de tipo no mesmo tamanho de tipo. Este quadrado é chamado de quadrado em e é a grade de design na qual os contornos dos glifos são definidos. Muitas letras da fonte de entrada têm pontos que são colocados fora dos limites do quadrado em da fonte, então para exibir a fonte corretamente, é necessário o uso de uma configuração especial.
-
-O próximo trecho de código carrega um PDF, adiciona um fragmento de texto com espaçamento entre linhas específico usando uma fonte TrueType, e salva o documento PDF modificado:
-
-```python
-
- import aspose.pdf as ap
-
- # Carregar arquivo PDF de entrada
- document = ap.Document()
- # Criar TextFormattingOptions com LineSpacingMode.FULL_SIZE
- options = ap.text.TextFormattingOptions()
- options.line_spacing = ap.text.TextFormattingOptions.LineSpacingMode.FULL_SIZE
-
- # Criar fragmento de texto com string de exemplo
- text_fragment = ap.text.TextFragment("Hello world")
-
- # Carregar a fonte TrueType no objeto stream
- font_stream = open(input_ttf, "rb")
- # Definir o nome da fonte para a string de texto
- text_fragment.text_state.font = ap.text.FontRepository.open_font(
- font_stream, ap.text.FontTypes.TTF
- )
- # Especificar a posição para o Fragmento de Texto
- text_fragment.position = ap.text.Position(100, 600)
- # Definir TextFormattingOptions do fragmento atual para predefinido (que aponta para LineSpacingMode.FULL_SIZE)
- text_fragment.text_state.formatting_options = options
- page = document.pages.add()
- page.paragraphs.add(text_fragment)
-
- # Salvar documento PDF resultante
- document.save(output_pdf)
-```
-
-
-## Obter Largura do Texto Dinamicamente
-
-Este trecho de código Python realiza uma comparação entre as medições de strings obtidas de um objeto de fonte e um objeto de estado de texto no Aspose.PDF:
-
-```python
-
- import math as ap
-
- font = ap.text.FontRepository.find_font("Arial")
- ts = ap.text.TextState()
- ts.font = font
- ts.font_size = 14
-
- if mt.fabs(font.measure_string("A", 14) - 9.337) > 0.001:
- print("Medição inesperada de string de fonte!")
-
- if mt.fabs(ts.measure_string("z") - 7.0) > 0.001:
- print("Medição inesperada de string de fonte!")
-
- c_code = ord("A")
- while c_code <= ord("z"):
- c = chr(c_code)
-
- fn_measure = font.measure_string(str(c), 14)
- ts_measure = ts.measure_string(str(c))
-
- print(str(c_code) + "-" + c + "-" + str(ts_measure))
-
- if mt.fabs(fn_measure - ts_measure) > 0.001:
- print("A medição da string de fonte e estado não coincide!")
-
- c_code += 1
-```
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/_index.md b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/_index.md
new file mode 100644
index 0000000000..3e39cbc8af
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/_index.md
@@ -0,0 +1,938 @@
+---
+title: Adicionar texto ao PDF em Python
+linktitle: Adicionar texto ao PDF
+type: docs
+weight: 10
+url: /pt/python-net/add-text-to-pdf-file/
+description: Aprenda como adicionar texto, fragmentos HTML, listas, links e fontes personalizadas a documentos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicione texto, links, HTML e fontes a arquivos PDF com Python
+Abstract: Este artigo explica como adicionar e formatar texto em documentos PDF usando Aspose.PDF for Python via .NET. Ele cobre técnicas principais, como posicionamento de texto, aplicação de configurações de fonte e estilo, inserção de links e listas, e uso de HTML, LaTeX e fontes personalizadas em fluxos de trabalho Python.
+---
+
+Este guia explica como adicionar conteúdo de texto a documentos PDF usando Aspose.PDF for Python via .NET. Você aprenderá técnicas essenciais de inserção de texto — desde colocar um fragmento de texto simples em uma posição específica, até estilizar (fonte, tamanho, cor, estilo), lidar com idiomas da direita para a esquerda (RTL), incorporar hiperlinks e trabalhar com layouts de parágrafos, listas e efeitos de transparência. O artigo também aborda cenários avançados, como usar fragmentos HTML ou LaTeX, fontes personalizadas e opções de formatação de texto, como espaçamento entre linhas e espaçamento entre caracteres.
+
+Quer você esteja criando anotações simples ou layouts tipográficos ricos, este recurso lhe fornece os blocos de construção fundamentais para trabalhar com texto em PDFs usando Aspose.PDF.
+
+## Inserção básica de texto
+
+Aspose.PDF for Python via .NET fornece uma API poderosa e flexível para manipular texto dentro de arquivos PDF.
+Se você precisar de rótulos estáticos simples, conteúdo ricamente formatado, texto multilíngue ou hyperlinks interativos, o toolkit permite que você faça tudo isso com código Python conciso.
+
+### Adicionar Texto Caso Simples
+
+Aspose.PDF for Python via .NET mostra como adicionar um fragmento de texto simples em uma posição específica em uma página. Você aprenderá como criar um novo documento PDF, adicionar uma página, inserir texto em coordenadas dadas e salvar o arquivo resultante.
+
+1. Criar um novo [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto.
+1. Usar `document.pages.add()` para criar um novo em branco [Página](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Criar um [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) com o conteúdo do texto.
+1. Defina a posição do texto usando o [`Position`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/position/) classe. Se você especificar `Position`, o texto será localizado em seu documento da esquerda para a direita e deslocado para baixo.
+1. Personalize a aparência do texto. Você pode definir o tamanho da fonte, cor, estilo da fonte e muito mais via o [`TextState`](https://reference.aspose.com/pdf/python-net/aspose.pdf/textstate/).
+1. Anexar o `TextFragment` para a coleção de parágrafos da página com `page.paragraphs.add(text_fragment)`.
+1. Salvar o documento.
+
+O seguinte trecho de código mostra como adicionar texto em um arquivo PDF existente:
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+# region Basic text insertion
+def add_text_simple_case(output_file_name):
+ # Create a new document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add a text fragment at a specific position
+ text_fragment = ap.text.TextFragment("Hello, Aspose!")
+ text_fragment.position = ap.text.Position(100, 600)
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+Este exemplo de código usa um TextFragment. Você também pode adicionar texto a uma página PDF usando um TextParagraph.
+O **[TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/)** é um único trecho de texto. Representa uma string de texto que pode ser colocada, estilizada e posicionada independentemente. É ideal quando você precisa adicionar conteúdo de texto pequeno e simples.
+
+O **[TextParagraph](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/)** é um grupo de TextFragments. Ele pode adicionar múltiplas linhas de texto. TextParagraph é um contêiner ou coleção de um ou mais objetos TextFragment. É ideal quando você precisa agrupar múltiplos fragments — por exemplo, para criar um bloco de texto com várias linhas, palavras ou elementos formatados.
+Um TextParagraph também gerencia o alinhamento de texto, o espaçamento entre linhas e o layout automático na página. O uso da linha vermelha só é possível com TextParagraph.
+
+Para mais informações sobre como trabalhar com texto, veja [Formatação de Texto dentro do PDF](/pdf/pt/python-net/text-formatting-inside-pdf/) e [Pesquisar e Obter Texto de PDF](/pdf/pt/python-net/search-and-get-text-from-pdf/).
+
+### Adicionar texto usando TextParagraph
+
+Aspose.PDF for Python via .NET pode adicionar um parágrafo de texto usando [`TextBuilder`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textbuilder/) e [`TextParagraph`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/) com opções de quebra.
+
+1. Criar um novo [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) e um em branco [Página](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) usando `document.pages.add()`.
+1. Ler texto de um arquivo ou usar o texto padrão.
+1. Criar um [`TextBuilder`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textbuilder/) para adicionar conteúdo ao nível de parágrafo com controle de layout e de quebra de linha.
+1. Criar um [`TextParagraph`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textparagraph/) e defina o modo de quebra (o exemplo usa `DISCRETIONARY_HYPHENATION`).
+1. Criar um [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/), aplique estilos e anexe o fragmento ao parágrafo.
+1. Anexe o parágrafo à página usando o `TextBuilder`.
+1. Salvar o documento.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_paragraph(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ lorem_path = LOREM_PATH
+ if os.path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as file:
+ text = file.read()
+ else:
+ text = "Lorem ipsum sample text not found."
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.first_line_indent = 20
+ paragraph.rectangle = ap.Rectangle(80, 800, 400, 200, True)
+ # paragraph.formatting_options.wrap_mode = TextFormattingOptions.WordWrapMode.BY_WORDS
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.DISCRETIONARY_HYPHENATION
+ )
+
+ fragment = ap.text.TextFragment(text)
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+
+ paragraph.append_line(fragment)
+ builder.append_paragraph(paragraph)
+
+ document.save(output_file_name)
+```
+
+
+
+### Adicionar parágrafos com recuos em PDF
+
+O trecho de código a seguir mostra como criar um novo documento PDF e adicionar dois parágrafos de texto com estilos de recuo diferentes:
+
+- O primeiro parágrafo demonstra um recuo de primeira linha (apenas a primeira linha está recuada).
+
+- O segundo parágrafo demonstra um recuo de linhas subsequentes (todas as linhas após a primeira são recuadas).
+
+Ele usa as classes 'TextParagraph', 'TextBuilder' e 'TextFragment' da Aspose.PDF para controlar com precisão o layout e a formatação.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_paragraphs_indents(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ lorem_path = LOREM_PATH
+ if os.path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as file:
+ text = file.read()
+ else:
+ text = "Lorem ipsum sample text not found."
+
+ fragment = ap.text.TextFragment(text)
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+
+ builder = ap.text.TextBuilder(page)
+ paragraph1 = ap.text.TextParagraph()
+ paragraph1.first_line_indent = 20
+ paragraph1.rectangle = ap.Rectangle(80, 800, 300, 50, True)
+ paragraph1.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ paragraph1.append_line(fragment)
+ builder.append_paragraph(paragraph1)
+
+ paragraph2 = ap.text.TextParagraph()
+ paragraph2.subsequent_lines_indent = 20
+ paragraph2.rectangle = ap.Rectangle(320, 800, 500, 50, True)
+ paragraph2.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ paragraph2.append_line(fragment)
+ builder.append_paragraph(paragraph2)
+ document.save(output_file_name)
+```
+
+### Adicionar uma nova linha de texto no PDF
+
+Aspose.PDF for Python via .NET permite inserir texto de várias linhas em um documento PDF usando as classes TextFragment, TextParagraph e TextBuilder.
+
+1. Criar um novo documento.
+1. Defina um TextFragment contendo um caractere de nova linha.
+1. Definir estilo de texto.
+1. Adicione o fragmento a um parágrafo.
+1. Posicione o parágrafo.
+1. Renderizar parágrafo na página.
+1. Salvar o documento.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_new_line(output_file):
+ """Add a new line of text to a PDF document."""
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Initialize new TextFragment with text containing required newline markers
+ text_fragment = ap.text.TextFragment("Applicant Name: " + os.linesep + " Joe Smoe")
+
+ # Set text fragment properties if necessary
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ text_fragment.text_state.background_color = ap.Color.light_gray
+ text_fragment.text_state.foreground_color = ap.Color.red
+
+ # Create TextParagraph object
+ par = ap.text.TextParagraph()
+
+ # Add new TextFragment to paragraph
+ par.append_line(text_fragment)
+
+ # Set paragraph position
+ par.position = ap.text.Position(100, 600)
+
+ # Create TextBuilder object
+ text_builder = ap.text.TextBuilder(page)
+
+ # Add the TextParagraph using TextBuilder
+ text_builder.append_paragraph(par)
+
+ # Save PDF document
+ document.save(output_file)
+```
+
+### Determinar Quebras de Linha e Notificações de Log em um PDF
+
+Mostra como criar um documento PDF contendo múltiplos fragmentos de texto e habilitar o registro de notificações do Aspose.PDF para monitorar eventos de layout — como quebras de linha e quebra de texto — durante a renderização.
+
+1. Crie um novo documento PDF.
+1. Ativar registro de notificações.
+1. Use document.pages.add() para criar a primeira página.
+1. Adicionar múltiplos fragmentos de texto.
+1. Use page.paragraphs.add(text) para renderizar cada fragmento de texto.
+1. Salvar o documento.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def determine_line_break(output_file):
+ """Create a PDF document with multiple text fragments and log notifications."""
+ # Create PDF document
+ document = ap.Document()
+
+ # Enable notification logging
+ document.enable_notification_logging = True
+
+ page = document.pages.add()
+
+ for i in range(4):
+ text = ap.text.TextFragment(
+ "Lorem ipsum \r\ndolor sit amet, consectetur adipiscing elit, "
+ "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. "
+ "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris "
+ "nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in "
+ "reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla "
+ "pariatur. Excepteur sint occaecat cupidatat non proident, sunt in "
+ "culpa qui officia deserunt mollit anim id est laborum."
+ )
+ text.text_state.font_size = 20
+ page.paragraphs.add(text)
+
+ # Save PDF document
+ document.save(output_file)
+
+ notifications = document.pages[1].get_notifications()
+ print(notifications)
+```
+
+### Medir a largura do texto dinamicamente em PDF
+
+Meça dinamicamente a largura de caracteres e strings em uma fonte específica usando Aspose.PDF for Python via .NET. Ele usa os métodos 'Font.measure_string()' e 'TextState.measure_string()' para verificar se as larguras das strings medidas são consistentes e precisas.
+
+1. Use 'FontRepository.find_font()' para recuperar o objeto de fonte Arial do repositório.
+1. Crie um objeto TextState para gerenciar as propriedades da fonte.
+1. Meça caracteres individuais.
+1. Compare os resultados de ambos os métodos para todos os caracteres entre 'A' e 'z'.
+1. Certifique-se de que ambas as abordagens de medição produzam os mesmos resultados.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def get_text_width_dynamically(output_file):
+ font = ap.text.FontRepository.find_font("Arial")
+ ts = ap.text.TextState()
+ ts.font = font
+ ts.font_size = 14
+
+ if math.fabs(font.measure_string("A", 14) - 9.337) > 0.001:
+ print("Unexpected font string measure!")
+
+ if math.fabs(ts.measure_string("z") - 7.0) > 0.001:
+ print("Unexpected font string measure!")
+
+ c_code = ord("A")
+ while c_code <= ord("z"):
+ c = chr(c_code)
+
+ fn_measure = font.measure_string(str(c), 14)
+ ts_measure = ts.measure_string(str(c))
+
+ if math.fabs(fn_measure - ts_measure) > 0.001:
+ print("Font and state string measuring doesn't match!")
+
+ c_code += 1
+```
+
+### Adicionar Texto com Hiperlinks
+
+Adicione hyperlinks clicáveis ao texto em um PDF usando Aspose.PDF for Python via .NET. Nossa biblioteca demonstra como adicionar múltiplos segmentos de texto dentro de um único TextFragment e aplicar um hyperlink a um segmento específico, e estilizar os segmentos de texto individualmente (por exemplo, cor, fonte itálica).
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Criar um TextFragment.
+1. Adicione vários objetos TextSegment. Cada segmento pode ter seu próprio conteúdo e estilo. Por exemplo, texto simples ou texto de hiperlink.
+1. Aplique um hyperlink a um segmento. Crie um objeto WebHyperlink com a URL desejada.
+1. Estilize o segmento. Personalize cor, estilo de fonte, tamanho, etc., usando text_state.
+1. Adicione o fragmento à página usando o 'page.paragraphs.add()'.
+1. Salvar o PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_with_hyperlink(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ fragment = ap.text.TextFragment("Sample Text Fragment")
+
+ segment = ap.text.TextSegment(" ... Text Segment 1...")
+ fragment.segments.append(segment)
+
+ segment = ap.text.TextSegment("Link to Aspose")
+ fragment.segments.append(segment)
+ segment.hyperlink = ap.WebHyperlink("https://products.aspose.com/pdf")
+ segment.text_state.foreground_color = ap.Color.blue
+ segment.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ segment = ap.text.TextSegment("TextSegment without hyperlink")
+ fragment.segments.append(segment)
+
+ page.paragraphs.add(fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Adicionar texto da direita para a esquerda (RTL) ao documento PDF
+
+RTL (da Direita para a Esquerda) é uma propriedade que indica a direção da escrita de texto, onde o texto é escrito da direita para a esquerda.
+Aspose.PDF for Python via .NET demonstra como adicionar texto da direita para a esquerda (RTL), como árabe ou hebraico, a um documento PDF.
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Crie um TextFragment com conteúdo RTL. Insira seu texto em árabe, hebraico ou outro idioma RTL como o conteúdo do fragmento.
+Defina a fonte e o estilo. Escolha uma fonte que suporte o script RTL (por exemplo, Tahoma, Arial Unicode MS). Defina font_size e foreground_color conforme necessário.
+1. Defina o alinhamento horizontal para a direita usando 'text_fragment.horizontal_alignment'.
+1. Adicionar o TextFragment à página.
+1. Salve o documento PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_with_rtl_text(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+ # Styled text fragment
+ text_fragment = ap.text.TextFragment(
+ "يعتبر خوجا نصر الدين شخصية فولكلورية من الشرق الإسلامي وبعض شعوب البحر الأبيض المتوسط والبلقان، وهو بطل القصص والحكايات القصيرة الفكاهية والساخرة، وأحيانًا الحكايات اليومية."
+ )
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Tahoma")
+ text_fragment.text_state.font_size = 14
+ text_fragment.text_state.foreground_color = ap.Color.blue
+ text_fragment.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+## Estilização de texto
+
+### Adicionar Texto com Estilização de Fonte
+
+Este é um exemplo mais avançado que demonstra a estilização de texto, a personalização de Font e texto de formato misto (usando segmentos de texto em sobrescrito). Aspose.PDF explica como aplicar propriedades de Font, como família de Font, tamanho, cor, negrito, itálico e sublinhado, a um fragmento de texto.
+Além disso, este trecho de código mostra como usar múltiplos segmentos de texto dentro de um único fragmento para criar expressões de texto complexas — por exemplo, incluindo caracteres subscritos ou sobrescritos, frequentemente necessários em fórmulas ou notações científicas.
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Crie um TextFragment para texto simples com estilo.
+1. Definir conteúdo de texto.
+1. Defina a posição usando as coordenadas Position(x, y).
+1. Aplique estilos via a 'text_state property' - font, font_size, foreground_color, font_style, underline.
+1. Crie uma expressão complexa com múltiplos objetos TextSegment. Cada TextSegment representa uma parte do texto que pode ter seu próprio estilo. Isso permite que você construa expressões, como fórmulas matemáticas ou químicas.
+1. Defina vários objetos TextState. Um para o texto principal (text_state_letters). Outro para texto em subscrito ou sobrescrito (text_state_index).
+1. Combine os segmentos de texto. Anexe cada segmento a um 'TextFragment' usando 'segments.append()'.
+1. Adicione ambos os objetos de texto à página. Use 'page.paragraphs.add()' para colocá-los no documento.
+1. Salve o documento final.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_with_font_styling(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Initialize an empty TextFragment to build a formula using segments
+ formula = ap.text.TextFragment()
+ text_fragment = ap.text.TextFragment("Hello, Aspose!")
+ text_fragment.position = ap.text.Position(100, 600)
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+ text_fragment.text_state.foreground_color = ap.Color.blue
+ text_fragment.text_state.font_style = (
+ ap.text.FontStyles.BOLD | ap.text.FontStyles.ITALIC
+ )
+ text_fragment.text_state.underline = True
+ text_fragment.horizontal_alignment = ap.HorizontalAlignment.LEFT
+
+ text_state_letters = ap.text.TextState()
+ text_state_letters.font = ap.text.FontRepository.find_font("Arial")
+ text_state_letters.font_size = 14
+ text_state_letters.foreground_color = ap.Color.blue
+ text_state_letters.font_style = ap.text.FontStyles.BOLD
+
+ text_state_index = ap.text.TextState()
+ text_state_index.font = ap.text.FontRepository.find_font("Arial")
+ text_state_index.font_size = 14
+ text_state_index.foreground_color = ap.Color.dark_red
+ # text_state_index.superscript = True
+ text_state_index.subscript = True
+
+ position = ap.text.Position(100, 500)
+
+ # Helper function to add segments
+ def add_segment(text, state):
+ seg = ap.text.TextSegment(text)
+ seg.text_state = state
+ seg.position = position
+ formula.segments.append(seg)
+
+ add_segment("S = a", text_state_letters)
+ add_segment("2n", text_state_index)
+ add_segment(" + a", text_state_letters)
+ add_segment("2n+1", text_state_index)
+ add_segment(" + a", text_state_letters)
+ add_segment("2n+2", text_state_index)
+ formula.horizontal_alignment = ap.HorizontalAlignment.LEFT
+
+ page.paragraphs.add(text_fragment)
+ page.paragraphs.add(formula)
+ document.save(output_file_name)
+```
+
+
+
+## Adicionar Texto transparente
+
+Adicione formas semitransparentes e texto a um documento PDF usando Aspose.PDF para Python.
+Ele cria um retângulo colorido com opacidade parcial e sobrepõe um TextFragment com cor de primeiro plano transparente.
+
+1. Inicialize um objeto Document e adicione uma página em branco para desenhar conteúdo.
+1. Use 'ap.drawing.Graph' para criar uma tela que permite desenhar formas.
+1. Adicione um retângulo com preenchimento semitransparente.
+1. Impedir o deslocamento da posição do canvas.
+1. Adicione o canvas à página. Insira as formas gráficas na coleção de parágrafos da página.
+1. Crie um fragmento de texto transparente.
+1. Insira o fragmento de texto na coleção de parágrafos da página.
+1. Salve o documento PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_transparent(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Create Graph object
+ canvas = ap.drawing.Graph(100.0, 400.0)
+
+ # Create rectangle with semi-transparent fill
+ rect = ap.drawing.Rectangle(100, 100, 400, 400)
+ rect.graph_info.fill_color = ap.Color.from_argb(128, 0xC5, 0xB5, 0xFF)
+ canvas.shapes.add(rect)
+
+ # Prevent position shift
+ canvas.is_change_position = False
+ page.paragraphs.add(canvas)
+
+ # Create transparent text
+ text = ap.text.TextFragment(
+ "This is the transparent text. "
+ "This is the transparent text. "
+ "This is the transparent text."
+ )
+ text.text_state.foreground_color = ap.Color.from_argb(30, 0, 255, 0)
+ page.paragraphs.add(text)
+
+ document.save(output_file_name)
+```
+
+### Adicionar Texto Invisível ao PDF
+
+Este exemplo demonstra como criar um documento PDF contendo texto visível e invisível. O texto invisível continua fazendo parte da estrutura do documento, mas está oculto da visualização, tornando-o útil para incorporar metadados, tags de acessibilidade ou conteúdo pesquisável sem alterar o layout.
+
+1. Criar PDF Document e Page.
+1. Crie um fragmento de texto com conteúdo visível repetido.
+1. Adicione um segundo TextFragment e marque-o como invisível.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_invisible(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add visible text
+ text1 = ap.text.TextFragment(
+ "This is the visible text. This is the visible text. This is the visible text."
+ )
+ page.paragraphs.add(text1)
+
+ # Create transparent text
+ text2 = ap.text.TextFragment(
+ "This is the invisible text. "
+ "This is the invisible text. "
+ "This is the invisible text."
+ )
+ text2.text_state.invisible = True
+ page.paragraphs.add(text2)
+
+ document.save(output_file_name)
+```
+
+### Adicionar texto com estilo de borda em PDF
+
+A biblioteca Aspose.PDF mostra como criar um documento PDF contendo um fragmento de texto estilizado com uma borda visível. O método aplica cores de fundo e de primeiro plano, configurações de Font e um stroke (border) ao redor do retângulo de texto para melhorar a ênfase visual.
+
+1. Criar um PDF Document e um Page.
+1. Criar e posicionar Fragmento de Texto. Adicionar um Fragmento de Texto com a mensagem e definir sua posição.
+1. Aplicar Estilização de Texto. Definir fonte para Times New Roman, tamanho 12. Aplicar um fundo cinza claro e cor de primeiro plano (texto) vermelha.
+1. Configurar estilo da borda.
+1. Adicionar texto à página. Use TextBuilder para acrescentar o texto formatado à página.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_border(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ # Get particular page
+ page = document.pages.add()
+ # Create text fragment
+ text_fragment = ap.text.TextFragment("This is sample text with border.")
+ text_fragment.position = ap.text.Position(10, 700)
+
+ # Set text properties
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.background_color = ap.Color.light_gray
+ text_fragment.text_state.foreground_color = ap.Color.red
+ # Set StrokingColor property for drawing border (stroking) around text rectangle.
+ # Note: This only affects the border if draw_text_rectangle_border is set to True.
+ text_fragment.text_state.stroking_color = ap.Color.dark_red
+ # Enable drawing of the text rectangle border
+ text_fragment.text_state.draw_text_rectangle_border = True
+
+ text_builder = ap.text.TextBuilder(page)
+ text_builder.append_text(text_fragment)
+
+ # Save PDF document
+ document.save(output_file_name)
+```
+
+### Adicionar texto tachado a um PDF
+
+Adicione formatação de tachado (strikeout) a um fragmento de texto em um documento PDF. Texto tachado é útil para indicar exclusões, revisões ou ênfase em documentos anotados.
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Criar e estilizar Fragmento de Texto.
+1. Aplicar formatação de cor e tachado. Defina o fundo como cinza claro, a cor do texto como vermelha e habilite o tachado.
+1. Posicione o Texto.
+1. Use 'TextBuilder' para anexar o texto formatado à página.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_strikeout_text(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Create text fragment
+ text_fragment = ap.text.TextFragment("This is sample strikeout text.")
+ # Set text properties
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ text_fragment.text_state.background_color = ap.Color.light_gray
+ text_fragment.text_state.foreground_color = ap.Color.red
+ text_fragment.text_state.strike_out = True
+ text_fragment.text_state.font_style = ap.text.FontStyles.BOLD
+ text_fragment.position = ap.text.Position(100, 600)
+
+ # Create TextBuilder object
+ text_builder = ap.text.TextBuilder(page)
+ text_builder.append_text(text_fragment)
+
+ # Save PDF document
+ document.save(output_file_name)
+```
+
+## Efeitos de cor avançados
+
+### Aplicando um Gradiente Axial ao Texto em um PDF
+
+Aspose.PDF for Python via .NET demonstra como aplicar um efeito de gradiente linear ao texto em um documento PDF. O gradiente axial transita suavemente do vermelho ao azul ao longo do texto, criando um cabeçalho visualmente impressionante. Esta técnica é ideal para títulos estilizados, branding ou elementos decorativos em layouts de documentos PDF.
+
+1. Inicialize um novo documento e adicione uma página em branco.
+1. Criar e Estilizar Fragmento de Texto. Adicionar título, definir posição, fonte e tamanho.
+1. Aplique sombreamento gradiente axial com 'GradientAxialShading'. Defina a cor de primeiro plano usando GradientAxialShading de vermelho para azul.
+1. Adicionar estilo de sublinhado.
+1. Insira o fragmento de texto estilizado na página.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def apply_gradient_axial_shading_to_text(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("PDF TITLE")
+ text_fragment.position = ap.text.Position(100, 600)
+ text_fragment.text_state.font_size = 36
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial Bold")
+
+ text_fragment.text_state.foreground_color = ap.Color()
+ text_fragment.text_state.foreground_color.pattern_color_space = (
+ ap.drawing.GradientAxialShading(ap.Color.red, ap.Color.blue)
+ )
+ text_fragment.text_state.underline = True
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+### Aplicando um Gradiente Radial ao Texto em um PDF
+
+Um gradiente radial cria uma transição de cores circular que se irradia a partir do centro do texto, oferecendo uma opção de estilo visualmente dinâmica para títulos, cabeçalhos ou elementos decorativos.
+
+1. Inicialize um novo documento e adicione uma página em branco.
+1. Criar e Estilizar Fragmento de Texto. Adicionar título, definir posição, fonte e tamanho.
+1. Aplicar Gradiente Radial com 'GradientRadialShading'. Definir a cor de primeiro plano usando GradientRadialShading de vermelho a azul.
+1. Adicionar estilo de sublinhado.
+1. Insira o fragmento de texto estilizado na página.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def apply_gradient_radial_shading_to_text(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("PDF TITLE")
+ text_fragment.position = ap.text.Position(100, 600)
+ text_fragment.text_state.font_size = 36
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial Bold")
+
+ # Apply radial gradient shading (red to blue)
+ text_fragment.text_state.foreground_color = ap.Color()
+ text_fragment.text_state.foreground_color.pattern_color_space = (
+ ap.drawing.GradientRadialShading(ap.Color.red, ap.Color.blue)
+ )
+ text_fragment.text_state.underline = True
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+## fragmentos HTML e LaTeX
+
+### Adicionar texto HTML ao Documento PDF
+
+A biblioteca Aspose.PDF for Python via .NET permite inserir conteúdo formatado em HTML em um documento PDF usando a classe HtmlFragment. Ao usar tags HTML, você pode renderizar texto com estilo, estruturado ou semelhante a fórmulas diretamente em um PDF.
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Crie uma instância da classe HtmlFragment e passe sua string HTML como parâmetro.
+1. Adicione o fragmento à página usando 'page.paragraphs.add()' para inserir o conteúdo HTML.
+1. Salvar o PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_html_fragment(output_file_name):
+ # Create a new document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add a text fragment at a specific position
+ text_fragment = ap.HtmlFragment("
S=a2n+a2
")
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Adicionar fragmento HTML estilizado com várias formatações a um documento PDF
+
+Podemos definir um fragmento HTML e definir o estilo do texto diretamente usando tags HTML. Incorporar conteúdo HTML estilizado em um documento PDF. Este trecho de código cria um novo arquivo PDF, adiciona uma página, insere um fragmento HTML com vários elementos de formatação (títulos, parágrafos, links e estilos embutidos), e salva o resultado no caminho especificado.
+
+1. Inicializa um novo objeto Document para representar o PDF.
+1. Anexa uma página em branco ao documento onde o conteúdo HTML será colocado.
+1. Prepare o conteúdo HTML. A string HTML contém um cabeçalho h1, um parágrafo de cor verde com texto em negrito, itálico e sublinhado, e um hyperlink para um site com tamanho de fonte aumentado.
+1. Criar Fragmento HTML. Envolva a string HTML em um objeto HtmlFragment.
+1. Inserir HTML na Página. Adiciona o fragmento HTML à coleção de parágrafos da página, renderizando o HTML como conteúdo PDF nativo.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_html_fragment(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+ html_content = """
+
Hello, Aspose!
+
This is a sample paragraph with bold, italic, and underlined text.
+
This paragraph is green.
+ Visit Aspose
+ """
+ html_fragment = ap.HtmlFragment(html_content)
+ page.paragraphs.add(html_fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Adicionar fragmento HTML com estado de texto substituído
+
+Como vimos no exemplo anterior, é possível definir estilos diretamente no código HTML. Isso tem suas vantagens, mas também algumas desvantagens. Suponha que estamos trabalhando com o HTML de um cliente e queremos unificar a aparência da nossa saída.
+Neste caso, podemos substituir o estilo do cliente usando nosso próprio TextState, como mostrado no exemplo a seguir.
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Prepare o conteúdo HTML. A string HTML contém um cabeçalho h1 com fonte Verdana, um parágrafo em verde com texto em negrito, itálico e sublinhado, e um hyperlink para um site com tamanho de fonte maior.
+1. Criar Fragmento HTML. Envolva a string HTML em um objeto HtmlFragment.
+1. Substitua a formatação de texto. Crie um objeto TextState e defina a Fonte, o Tamanho da Fonte e a Cor do Texto.
+1. Adicione o fragmento HTML à coleção de parágrafos da página.
+1. Salvar o Document.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_html_fragment_override_text_state(output_file_name):
+ document = ap.Document()
+ page = document.pages.add()
+ html_content = """
+
Hello, Aspose!
+
This is a sample paragraph with bold, italic, and underlined text.
+
This paragraph is green.
+ Visit Aspose
+ """
+ html_fragment = ap.HtmlFragment(html_content)
+ html_fragment.text_state = ap.text.TextState()
+ html_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ html_fragment.text_state.font_size = 14
+ html_fragment.text_state.foreground_color = ap.Color.red
+
+ page.paragraphs.add(html_fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Adicionar texto LaTeX ao documento PDF
+
+Adicionar expressões matemáticas formatadas em LaTeX a um documento PDF usando a classe TeXFragment no Aspose.PDF for Python via .NET.
+LaTeX é um poderoso sistema de composição tipográfica amplamente usado para criar documentos científicos e matemáticos. Usando o TeXFragment, você pode renderizar diretamente a notação e os símbolos matemáticos em LaTeX dentro de uma página PDF.
+
+1. Crie um novo documento e página usando 'Document()', e 'document.pages.add()' para adicionar uma página em branco.
+1. Use a classe TeXFragment para renderizar a sintaxe LaTeX diretamente.
+1. Adicione o conteúdo LaTeX ao layout do PDF com 'page.paragraphs.add()'.
+1. Salvar o PDF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def add_text_latex_fragment(output_file_name):
+ # Create a new document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Add a text fragment at a specific position
+ text_fragment = ap.TeXFragment(
+ "\\underbrace{\\overbrace{a+b}^6 \\cdot \\overbrace{c+d}^7}_\\text{example of text} = 42"
+ )
+
+ page.paragraphs.add(text_fragment)
+ document.save(output_file_name)
+```
+
+
+
+## Fontes personalizadas
+
+### Use uma Font personalizada a partir de um arquivo
+
+Este exemplo permite que você adicione texto a um arquivo PDF usando uma fonte OpenType personalizada no Aspose.PDF for Python via .NET. Ele mostra como criar um novo documento PDF, posicionar o texto com precisão na página e aplicar formatação personalizada, como tipo de fonte, tamanho, cor e estilo itálico.
+
+1. Crie um novo documento PDF e adicione uma página.
+1. Defina o conteúdo de texto que você deseja adicionar ao PDF.
+1. Defina a posição do texto.
+1. Adicione o TextFragment à página.
+1. Salve o documento PDF.
+
+Esta função funciona não apenas com fontes OTF, mas também com fontes TTF.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def use_custom_font_from_file(output_file_name):
+ font_path = os.path.join(FONT_DIR, "BriosoPro Italic.otf")
+ document = ap.Document()
+ page = document.pages.add()
+
+ fragment = ap.text.TextFragment("Hello, Aspose!")
+ fragment.position = ap.text.Position(100, 600)
+ fragment.text_state.font = ap.text.FontRepository.open_font(font_path)
+ fragment.text_state.font_size = 24
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ page.paragraphs.add(fragment)
+ document.save(output_file_name)
+```
+
+
+
+### Use uma Font personalizada a partir de um stream
+
+Este trecho de código demonstra como adicionar texto a um documento PDF usando uma fonte OpenType (OTF) personalizada incorporada com Aspose.PDF for Python via .NET. Ele mostra como abrir um arquivo de fonte como um fluxo, incorporá-lo ao PDF para garantir a disponibilidade da fonte em diferentes sistemas e aplicar formatação de texto, como tamanho da fonte, cor e estilo itálico. Essa abordagem é ideal para criar PDFs visualmente consistentes que preservam a tipografia mesmo quando compartilhados ou visualizados em dispositivos sem a fonte instalada.
+
+1. Carregue o arquivo de fonte como um fluxo binário.
+1. Abra e incorpore a fonte usando 'FontRepository.open_font'.
+1. Crie um novo documento PDF e adicione uma página.
+1. Adicionar um fragmento de texto estilizado com:
+ - Fonte personalizada incorporada.
+ - Estilo itálico e cor azul.
+ - Tamanho de fonte específico e posição.
+1. Salve o documento final em um caminho de saída especificado.
+
+```python
+import math
+import sys
+import os
+import aspose.pdf as ap
+
+def use_custom_font_from_stream(output_file_name):
+ font_path = os.path.join(FONT_DIR, "BriosoPro Italic.otf")
+ with open(font_path, "rb") as font_stream:
+ font = ap.text.FontRepository.open_font(font_stream, ap.text.FontTypes.OTF)
+ font.is_embedded = True
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ fragment = ap.text.TextFragment("Hello, Aspose!")
+ fragment.position = ap.text.Position(100, 600)
+ fragment.text_state.font = font
+ fragment.text_state.font_size = 14
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ page.paragraphs.add(fragment)
+ document.save(output_file_name)
+```
+
+Incorporar fontes garante renderização consistente em todas as plataformas, tornando essa abordagem ideal para branding, fidelidade de design e suporte multilíngue.
+
+## Tópicos de Texto Relacionados
+
+- [Trabalhe com texto em PDF usando Python](/pdf/pt/python-net/working-with-text/)
+- [Formatar texto PDF em Python](/pdf/pt/python-net/text-formatting-inside-pdf/)
+- [Substituir texto em PDF via Python](/pdf/pt/python-net/replace-text-in-pdf/)
+- [Pesquisar e extrair texto de PDF em Python](/pdf/pt/python-net/search-and-get-text-from-pdf/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_html.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_html.png
new file mode 100644
index 0000000000..701c621614
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_html.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_latex.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_latex.png
new file mode 100644
index 0000000000..c42c33a539
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/bullet_list_latex.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/character_spacing_simple.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/character_spacing_simple.png
new file mode 100644
index 0000000000..3d1ac22841
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/character_spacing_simple.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/custom_font.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/custom_font.png
new file mode 100644
index 0000000000..6415c929f0
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/custom_font.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/gradient_radial_shading.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/gradient_radial_shading.png
new file mode 100644
index 0000000000..c6eeb2c416
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/gradient_radial_shading.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_content.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_content.png
new file mode 100644
index 0000000000..742222d41e
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_content.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_fragment.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_fragment.png
new file mode 100644
index 0000000000..569d530709
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_fragment.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_override.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_override.png
new file mode 100644
index 0000000000..d10cdc2593
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/html_override.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/hyperlink_text.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/hyperlink_text.png
new file mode 100644
index 0000000000..137c29629b
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/hyperlink_text.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/latex_fragment.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/latex_fragment.png
new file mode 100644
index 0000000000..bc246cfc0f
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/latex_fragment.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/line_spacing.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/line_spacing.png
new file mode 100644
index 0000000000..eb284e2afa
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/line_spacing.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_html.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_html.png
new file mode 100644
index 0000000000..f04bb77a7d
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_html.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_latex.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_latex.png
new file mode 100644
index 0000000000..9fdb376e24
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/numbered_list_latex.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/rtl_text.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/rtl_text.png
new file mode 100644
index 0000000000..439ac9dbe3
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/rtl_text.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/styled_text.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/styled_text.png
new file mode 100644
index 0000000000..dff4a6b1a9
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/styled_text.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/text_paragraph.png b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/text_paragraph.png
new file mode 100644
index 0000000000..10cf9ea243
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/add-text-to-pdf-file/text_paragraph.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md b/pt/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md
index cf6a698e9f..9eb83dc594 100644
--- a/pt/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md
+++ b/pt/python-net/advanced-operations/working-with-text/add-tooltip-to-text/_index.md
@@ -1,295 +1,187 @@
---
-title: Tooltip em PDF usando Python
-linktitle: Tooltip em PDF
+title: Adicionar dicas de ferramenta ao texto PDF em Python
+linktitle: Dica de ferramenta PDF
type: docs
weight: 20
url: /pt/python-net/pdf-tooltip/
-description: Aprenda como adicionar tooltip ao fragmento de texto em PDF usando Python e Aspose.PDF
-lastmod: "2024-02-17"
+description: Aprenda como adicionar dicas de ferramenta a fragmentos de texto em documentos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar dicas de ferramenta interativas a fragmentos de texto PDF usando Python
+Abstract: Este artigo fornece dois exemplos em Python para adicionar ajuda interativa ao texto de PDF usando Aspose.PDF for Python via .NET. O primeiro exemplo adiciona tooltips aos fragmentos de texto correspondentes, colocando elementos `ButtonField` invisíveis e definindo `alternate_name`. O segundo exemplo cria um `TextBoxField` oculto que aparece ao passar o mouse, conectando eventos `HideAction` a um `ButtonField` invisível.
---
-
+## Adicionar Tooltip ao Texto Pesquisado em um PDF
-## Adicionar Tooltip ao Texto Pesquisado adicionando Botão Invisível
+Este trecho de código mostra como sobrepor invisível [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) elementos em específico [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) objetos em um PDF para exibir dicas de ferramenta quando o usuário passa o mouse sobre eles. Ele suporta mensagens de dica curtas e longas usando o `alternative_name` propriedade de `ButtonField`.
-Este código demonstra como adicionar tooltips a fragmentos de texto específicos em um documento PDF usando Aspose.PDF. Os tooltips são exibidos quando o cursor do mouse passa sobre o texto correspondente.
+Use esta página quando precisar tornar o texto do PDF mais interativo, adicionando ajuda ao passar o mouse, explicações inline ou notas contextuais.
-O trecho de código a seguir mostrará como alcançar essa funcionalidade:
+1. Criar um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Salvar o documento inicial.
+1. Reabrir o documento PDF.
+1. Pesquisar texto de destino usando [`TextFragmentAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/).
+1. Adicionar um invisível [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) com uma tooltip curta.
+1. Pesquisar o segundo texto-alvo.
+1. Adicionar um invisível [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) com uma dica de ferramenta longa sobre o fragmento correspondente.
+1. Salvar o documento final.
```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- document.pages.add().paragraphs.add(
- ap.text.TextFragment("Mova o cursor do mouse aqui para exibir um tooltip")
- )
- document.pages[1].paragraphs.add(
- ap.text.TextFragment(
- "Mova o cursor do mouse aqui para exibir um tooltip muito longo"
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+import sys
+from os import path
+
+# region PDF Tooltip
+def add_tool_tip_to_searched_text(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ document.pages.add().paragraphs.add(
+ ap.text.TextFragment("Move the mouse cursor here to display a tooltip")
)
- )
- document.save(output_pdf)
-
- # Abrir documento com texto
- document = ap.Document(output_pdf)
- # Criar objeto TextAbsorber para encontrar todas as frases que correspondem à expressão regular
- absorber = ap.text.TextFragmentAbsorber(
- "Mova o cursor do mouse aqui para exibir um tooltip"
- )
- # Aceitar o absorvedor para as páginas do documento
- document.pages.accept(absorber)
- # Obter os fragmentos de texto extraídos
- text_fragments = absorber.text_fragments
-
- # Percorrer os fragmentos
- for fragment in text_fragments:
- # Criar botão invisível na posição do fragmento de texto
- field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
- # O valor alternate_name será exibido como tooltip por um aplicativo visualizador
- field.alternate_name = "Tooltip para texto."
- # Adicionar campo de botão ao documento
- document.form.add(field)
-
- # Próximo será um exemplo de tooltip muito longo
- absorber = ap.text.TextFragmentAbsorber(
- "Mova o cursor do mouse aqui para exibir um tooltip muito longo"
- )
- document.pages.accept(absorber)
- text_fragments = absorber.text_fragments
-
- for fragment in text_fragments:
- field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
- # Definir texto muito longo
- field.alternate_name = (
- "Lorem ipsum dolor sit amet, consectetur adipiscing elit,"
- " sed do eiusmod tempor incididunt ut labore et dolore magna"
- " aliqua. Ut enim ad minim veniam, quis nostrud exercitation"
- " ullamco laboris nisi ut aliquip ex ea commodo consequat."
- " Duis aute irure dolor in reprehenderit in voluptate velit"
- " esse cillum dolore eu fugiat nulla pariatur. Excepteur sint"
- " occaecat cupidatat non proident, sunt in culpa qui officia"
- " deserunt mollit anim id est laborum."
+ document.pages[1].paragraphs.add(
+ ap.text.TextFragment(
+ "Move the mouse cursor here to display a very long tooltip"
+ )
)
- document.form.add(field)
+ document.save(outfile)
- # Salvar documento
- document.save(output_pdf)
+ # Open document with text
+ with ap.Document(outfile) as document:
+ # Create TextAbsorber object to find all the phrases matching the regular expression
+ absorber = ap.text.TextFragmentAbsorber(
+ "Move the mouse cursor here to display a tooltip"
+ )
+ # Accept the absorber for the document pages
+ document.pages.accept(absorber)
+ # Get the extracted text fragments
+ text_fragments = absorber.text_fragments
+
+ # Loop through the fragments
+ for fragment in text_fragments:
+ # Create invisible button on text fragment position
+ field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
+ # alternate_name value will be displayed as tooltip by a viewer application
+ field.alternate_name = "Tooltip for text."
+ # Add button field to the document
+ document.form.add(field)
+
+ # Next will be sample of very long tooltip
+ absorber = ap.text.TextFragmentAbsorber(
+ "Move the mouse cursor here to display a very long tooltip"
+ )
+ document.pages.accept(absorber)
+ text_fragments = absorber.text_fragments
+
+ for fragment in text_fragments:
+ field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
+ # Set very long text
+ field.alternate_name = (
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit,"
+ " sed do eiusmod tempor incididunt ut labore et dolore magna"
+ " aliqua. Ut enim ad minim veniam, quis nostrud exercitation"
+ " ullamco laboris nisi ut aliquip ex ea commodo consequat."
+ " Duis aute irure dolor in reprehenderit in voluptate velit"
+ " esse cillum dolore eu fugiat nulla pariatur. Excepteur sint"
+ " occaecat cupidatat non proident, sunt in culpa qui officia"
+ " deserunt mollit anim id est laborum."
+ )
+ document.form.add(field)
+
+ # Save document
+ document.save(outfile)
```
+## Criar um Bloco de Texto Oculto Que Aparece ao Passar o Mouse em um PDF
-## Criar um Bloco de Texto Oculto e Mostrá-lo ao Passar o Mouse
+Adicione texto flutuante interativo a um documento PDF. Ele sobrepõe um invisível [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/) em uma frase-alvo e revela um oculto [`TextBoxField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/) quando o usuário passa o mouse sobre ele. Esta técnica é ideal para ajuda contextual, anotações ou apresentação de conteúdo dinâmico.
-Este trecho de código Python mostra como adicionar texto flutuante a um documento PDF, que aparece quando o cursor do mouse passa sobre uma área específica.
-
-Primeiro, um novo documento PDF é criado, e um parágrafo contendo o texto "Mova o cursor do mouse aqui para exibir o texto flutuante" é adicionado a ele. O documento é então salvo.
-
-Em seguida, o documento salvo é reaberto, e um objeto TextAbsorber é criado para encontrar o fragmento de texto adicionado anteriormente. Este fragmento de texto é então usado para definir a posição e as características do campo de texto flutuante.
-
-Um objeto TextBoxField é criado para representar o campo de texto flutuante, e suas propriedades como posição, valor, status de somente leitura e visibilidade são configuradas adequadamente. Além disso, um nome único e características de aparência são atribuídos ao campo.
-
-O campo de texto flutuante é adicionado ao formulário do documento, e um campo de botão invisível é criado na posição do fragmento de texto original.
- Os eventos HideAction são atribuídos ao campo do botão, especificando que o campo de texto flutuante deve aparecer quando o cursor do mouse entrar em sua proximidade e desaparecer quando o cursor sair.
-
-Finalmente, o campo do botão é adicionado ao formulário do documento, e o documento modificado é salvo.
-
-Este trecho de código fornece um método para criar elementos de texto flutuantes interativos em um documento PDF usando Aspose.PDF para Python.
+1. Crie um novo documento PDF.
+1. Salve o PDF para que ele possa ser reaberto para configuração de interatividade.
+1. Reabrir o documento PDF.
+1. Localize o texto alvo usando [`TextFragmentAbsorber`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/).
+1. Crie um oculto [`TextBoxField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/textboxfield/).
+1. Adicione o campo oculto ao documento [`Form`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/form/) coleção.
+1. Crie um invisível [`ButtonField`](https://reference.aspose.com/pdf/python-net/aspose.pdf.forms/buttonfield/).
+1. Atribuir ações do mouse (`on_enter`, `on_exit`) usando [`HideAction`](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/hideaction/) para mostrar/ocultar o campo oculto.
+1. Salvar o documento final.
```python
-
- import aspose.pdf as ap
-
- document = ap.Document()
- document.pages.add().paragraphs.add(
- ap.text.TextFragment("Mova o cursor do mouse aqui para exibir o texto flutuante")
- )
- document.save(output_pdf)
-
- # Abrir documento com texto
- document = ap.Document(output_pdf)
- # Criar objeto TextAbsorber para encontrar todas as frases que correspondem à expressão regular
- absorber = ap.text.TextFragmentAbsorber(
- "Mova o cursor do mouse aqui para exibir o texto flutuante"
- )
- # Aceitar o absorvedor para as páginas do documento
- document.pages.accept(absorber)
- # Obter o primeiro fragmento de texto extraído
- text_fragments = absorber.text_fragments
- fragment = text_fragments[1]
-
- # Criar campo de texto oculto para texto flutuante no retângulo especificado da página
- floating_field = ap.forms.TextBoxField(
- fragment.page, ap.Rectangle(100.0, 700.0, 220.0, 740.0, False)
- )
- # Definir texto a ser exibido como valor do campo
- floating_field.value = 'Este é o "campo de texto flutuante".'
- # Recomendamos tornar o campo 'somente leitura' para este cenário
- floating_field.read_only = True
- # Definir flag 'oculto' para tornar o campo invisível na abertura do documento
- floating_field.flags |= ap.annotations.AnnotationFlags.HIDDEN
-
- # Definir um nome de campo único não é necessário, mas permitido
- floating_field.partial_name = "FloatingField_1"
-
- # Definir características de aparência do campo não é necessário, mas melhora
- floating_field.default_appearance = ap.annotations.DefaultAppearance(
- "Helv", 10, ap.Color.blue.to_rgb()
- )
- floating_field.characteristics.background = ap.Color.light_blue.to_rgb()
- floating_field.characteristics.border = ap.Color.dark_blue.to_rgb()
- floating_field.border = ap.annotations.Border(floating_field)
- floating_field.border.width = 1
- floating_field.multiline = True
-
- # Adicionar campo de texto ao documento
- document.form.add(floating_field)
- # Criar botão invisível na posição do fragmento de texto
- button_field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
- # Criar nova ação de ocultação para o campo especificado (anotação) e flag de invisibilidade.
- # (Você também pode referir-se ao campo flutuante pelo nome se especificado anteriormente.)
- # Adicionar ações de entrada/saída do mouse no campo do botão invisível
-
- button_field.actions.on_enter = ap.annotations.HideAction(
- floating_field.partial_name, False
- )
- button_field.actions.on_exit = ap.annotations.HideAction(
- floating_field.partial_name
- )
-
- # Adicionar campo do botão ao documento
- document.form.add(button_field)
-
- # Salvar documento
- document.save(output_pdf)
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+import sys
+from os import path
+
+def create_hidden_text_block(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add paragraph with text
+ document.pages.add().paragraphs.add(
+ ap.text.TextFragment("Move the mouse cursor here to display floating text")
+ )
+ # Save PDF document
+ document.save(outfile)
+
+ # Open document with text
+ with ap.Document(outfile) as document:
+ # Create TextAbsorber object to find all the phrases matching the regular expression
+ absorber = ap.text.TextFragmentAbsorber(
+ "Move the mouse cursor here to display floating text"
+ )
+ # Accept the absorber for the document pages
+ document.pages.accept(absorber)
+ # Get the first extracted text fragment
+ text_fragments = absorber.text_fragments
+ fragment = text_fragments[1]
+
+ # Create hidden text field for floating text in the specified rectangle of the page
+ floating_field = ap.forms.TextBoxField(
+ fragment.page, ap.Rectangle(100.0, 700.0, 220.0, 740.0, False)
+ )
+ # Set text to be displayed as field value
+ floating_field.value = 'This is the "floating text field".'
+ # We recommend to make field 'readonly' for this scenario
+ floating_field.read_only = True
+ # Set 'hidden' flag to make field invisible on document opening
+ floating_field.flags |= ap.annotations.AnnotationFlags.HIDDEN
+
+ # Setting a unique field name isn't necessary but allowed
+ floating_field.partial_name = "FloatingField_1"
+
+ # Setting characteristics of field appearance isn't necessary but makes it better
+ floating_field.default_appearance = ap.annotations.DefaultAppearance(
+ "Helv", 10, drawing.Color.blue
+ )
+ floating_field.characteristics.background = drawing.Color.light_blue
+ floating_field.characteristics.border = drawing.Color.dark_blue
+ floating_field.border = ap.annotations.Border(floating_field)
+ floating_field.border.width = 1
+ floating_field.multiline = True
+
+ # Add text field to the document
+ document.form.add(floating_field)
+ # Create invisible button on text fragment position
+ button_field = ap.forms.ButtonField(fragment.page, fragment.rectangle)
+ # Create new hide action for specified field (annotation) and invisibility flag.
+ # (You also may refer floating field by the name if you specified it above.)
+ # Add actions on mouse enter/exit at the invisible button field
+
+ button_field.actions.on_enter = ap.annotations.HideAction(floating_field, False)
+ button_field.actions.on_exit = ap.annotations.HideAction(floating_field)
+
+ # Add button field to the document
+ document.form.add(button_field)
+
+ # Save document
+ document.save(outfile)
```
-
\ No newline at end of file
+## Tópicos de Texto Relacionados
+
+- [Trabalhe com texto em PDF usando Python](/pdf/pt/python-net/working-with-text/)
+- [Use FloatingBox para layout de texto PDF em Python](/pdf/pt/python-net/floating-box/)
+- [Pesquisar e extrair texto de PDF em Python](/pdf/pt/python-net/search-and-get-text-from-pdf/)
+- [Adicionando texto ao PDF](/pdf/pt/python-net/add-text-to-pdf-file/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/determine-line-break/_index.md b/pt/python-net/advanced-operations/working-with-text/determine-line-break/_index.md
deleted file mode 100644
index 19f29367cb..0000000000
--- a/pt/python-net/advanced-operations/working-with-text/determine-line-break/_index.md
+++ /dev/null
@@ -1,185 +0,0 @@
----
-title: Determinar Quebra de Linha
-linktitle: Determinar Quebra de Linha
-type: docs
-weight: 70
-url: /pt/python-net/determine-line-break/
-description: Saiba mais sobre como determinar uma quebra de linha de TextFragment multi-linha usando Python
-lastmod: "2024-02-17"
-sitemap:
- changefreq: "weekly"
- priority: 0.7
----
-
-
-
-## Acompanhar Quebra de Linha de TextFragment Multilinha
-
-O próximo trecho de código mostra como acompanhar o comportamento de quebra de linha de um TextFragment multilinha dentro de um documento PDF.
-
-A função track_line_breaking() é definida para demonstrar essa funcionalidade. Ela começa especificando caminhos de arquivo de saída tanto para o documento PDF gerado quanto para um arquivo de texto correspondente que conterá informações sobre a quebra de linha.
-
-Dentro da função, um novo objeto de documento PDF é criado, e uma nova página é adicionada a ele. Subsequentemente, um loop é utilizado para gerar quatro instâncias de um TextFragment contendo um texto com quebras de linha ("\r\n") inseridas dentro da string para simular texto multilinha.
-
-Cada TextFragment é configurado com um tamanho de fonte de 20 pontos antes de ser adicionado aos parágrafos da página.
-
-Depois que todos os TextFragments são adicionados, o documento é salvo.
-
-A função então procede para extrair notificações sobre a quebra de linha da segunda página do documento PDF gerado usando o método get_notifications().
- Estas notificações são escritas em um arquivo de texto especificado anteriormente.
-
-Este trecho de código ilustra como criar um documento PDF contendo texto em várias linhas e, em seguida, extrair informações sobre o comportamento da quebra de linha, fornecendo insights sobre como o texto é disposto dentro do documento.
-
-```python
-
- import aspose.pdf as ap
-
- def track_line_breaking():
- """Acompanhar a Quebra de Linha de TextFragment de Múltiplas Linhas"""
- output_pdf = DIR_OUTPUT_TEXTS + "track_line_breaking.pdf"
- output_txt = DIR_OUTPUT_TEXTS + "track_line_breaking.txt"
-
- # Criar novo objeto de documento
- document = ap.Document()
- page = document.pages.add()
-
- for i in range(4):
- text = ap.text.TextFragment(
- "Lorem ipsum \r\ndolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
- )
- text.text_state.font_size = 20
- page.paragraphs.add(text)
- document.save(output_pdf)
-
- notifications = document.pages[1].get_notifications()
- with open(output_txt, "w") as f:
- f.write(notifications)
-```
-
-
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/floating-box/_index.md b/pt/python-net/advanced-operations/working-with-text/floating-box/_index.md
new file mode 100644
index 0000000000..b9e631de0b
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-text/floating-box/_index.md
@@ -0,0 +1,304 @@
+---
+title: Usar FloatingBox para Layout de PDF em Python
+linktitle: Usando FloatingBox
+type: docs
+weight: 30
+url: /pt/python-net/floating-box/
+description: Aprenda a usar FloatingBox para layout de texto, conteúdo em várias colunas e posicionamento preciso em documentos PDF com Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Crie e posicione containers FloatingBox estilizados em PDF com Python.
+Abstract: Este artigo explica como usar FloatingBox no Aspose.PDF for Python via .NET. Aprenda como colocar texto e outros conteúdos em contêineres flutuantes estilizados, controlar layout, bordas, alinhamento e recorte, e criar designs de página PDF mais estruturados em Python.
+---
+
+## Uso Básico do FloatingBox
+
+O [`FloatingBox`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/) classe é um contêiner para colocar texto e outro conteúdo em uma página PDF. Ele oferece controle mais forte sobre layout, bordas e estilo do que parágrafos de texto regulares. Se o conteúdo exceder o tamanho da caixa, o comportamento de recorte é controlado pelas configurações da caixa.
+
+Use esta página quando precisar de contêineres de texto estruturados, layouts de múltiplas colunas e posicionamento preciso em documentos PDF com Aspose.PDF for Python via .NET.
+
+1. Criar um novo [`Document`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Adicionar um [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) para o documento.
+1. Criar um [`FloatingBox`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/).
+1. Defina a borda da caixa usando [`BorderInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderinfo/) e [`BorderSide`](https://reference.aspose.com/pdf/python-net/aspose.pdf/borderside/).
+1. Repetição da caixa de controle com o [`is_need_repeating`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) propriedade.
+1. Adicionar conteúdo de texto usando [`TextFragment`](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/).
+1. Adicionar o `FloatingBox` para o [`Page`](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/).
+1. Salve o documento PDF final usando [`Document.save()`](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+
+```python
+import aspose.pdf as ap
+
+def create_and_add_floating_box(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Create and fill box
+ box = ap.FloatingBox(400, 30)
+ box.border = ap.BorderInfo(ap.BorderSide.ALL, 1.5, ap.Color.dark_green)
+ box.is_need_repeating = False
+ phrase = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quam odio, sollicitudin ac mauris vel, suscipit pellentesque nisi."
+ box.paragraphs.add(ap.text.TextFragment(phrase))
+ # Add box
+ page.paragraphs.add(box)
+ document.save(outfile)
+```
+
+No exemplo acima, o `FloatingBox` é criado com uma largura de 400 pt e uma altura de 30 pt.
+O texto intencionalmente excede a altura disponível, portanto parte dele é cortada.
+
+
+
+O [`is_need_repeating`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) propriedade com um valor de `False` limita a renderização de texto a uma única página.
+
+Se você definir esta propriedade como `True`, o texto flui para as páginas subsequentes na mesma posição.
+
+
+
+## Recursos Avançados de FloatingBox
+
+### Suporte a múltiplas colunas
+
+#### Layout de várias colunas (caso simples)
+
+`FloatingBox` suporta layout de várias colunas. Para criar esse layout, você deve definir os valores de [`ColumnInfo`](https://reference.aspose.com/pdf/python-net/aspose.pdf/columninfo/) propriedades.
+
+* `column_widths` é uma cadeia de caracteres que define a largura de cada coluna em pontos.
+* `column_spacing` é uma string que define a largura do espaço entre colunas.
+* `column_count` é o número de colunas.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def multi_column_layout(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Set margin settings
+ page.page_info.margin = ap.MarginInfo(36, 18, 36, 18)
+ column_count = 3
+ spacing = 10
+ width = (
+ page.page_info.width
+ - page.page_info.margin.left
+ - page.page_info.margin.right
+ - (column_count - 1) * spacing
+ )
+ column_width = width / 3
+ # Create FloatingBox
+ box = ap.FloatingBox()
+ box.is_need_repeating = True
+ box.column_info.column_widths = f"{column_width} {column_width} {column_width}"
+ box.column_info.column_spacing = f"{spacing}"
+ box.column_info.column_count = 3
+ phrase = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quam odio, sollicitudin ac mauris vel, suscipit pellentesque nisi."
+ paragraphs = [
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ ]
+ for paragraph in paragraphs:
+ box.paragraphs.add(ap.text.TextFragment(paragraph))
+ # Add a box to a page
+ page.paragraphs.add(box)
+ # Save PDF document
+ document.save(outfile)
+```
+
+O exemplo gera parágrafos de amostra e os coloca em três colunas. O conteúdo continua em páginas adicionais até que todos os parágrafos sejam renderizados.
+
+#### Layout de múltiplas colunas com início de coluna forçado
+
+Este exemplo usa a mesma configuração de múltiplas colunas, mas força cada parágrafo adicionado a começar em uma nova coluna. Para fazer isso, defina `is_first_paragraph_in_column = True` em cada `TextFragment` antes de adicioná-lo ao `FloatingBox`.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def multi_column_layout_2(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Set margin settings
+ page.page_info.margin = ap.MarginInfo(36, 18, 36, 18)
+ column_count = 3
+ spacing = 10
+ width = (
+ page.page_info.width
+ - page.page_info.margin.left
+ - page.page_info.margin.right
+ - (column_count - 1) * spacing
+ )
+ column_width = width / 3
+ # Create FloatingBox
+ box = ap.FloatingBox()
+ box.is_need_repeating = True
+ box.column_info.column_widths = f"{column_width} {column_width} {column_width}"
+ box.column_info.column_spacing = f"{spacing}"
+ box.column_info.column_count = 3
+ phrase = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quam odio, sollicitudin ac mauris vel, suscipit pellentesque nisi."
+ paragraphs = [
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ phrase,
+ ]
+ for paragraph in paragraphs:
+ text = ap.text.TextFragment(paragraph)
+ text.is_first_paragraph_in_column = True
+ box.paragraphs.add(text)
+ # Add a box to a page
+ page.paragraphs.add(box)
+ # Save PDF document
+ document.save(outfile)
+```
+
+### Suporte de fundo
+
+Aplicar uma cor de fundo a um `FloatingBox` em um documento PDF usando Aspose.PDF for Python via .NET.
+Ao atribuir um [`Color`](https://reference.aspose.com/pdf/python-net/aspose.pdf/color/) para `background_color`, você pode destacar conteúdo para cabeçalhos, chamadas ou seções estilizadas.
+
+Este trecho de código mostra como criar uma caixa de texto verde-clara simples com conteúdo de exemplo.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def background_support(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Create and fill box
+ box = ap.FloatingBox(400, 30)
+ box.background_color = ap.Color.light_green
+ box.is_need_repeating = False
+ box.paragraphs.add(ap.text.TextFragment("text example"))
+ # Add box
+ page.paragraphs.add(box)
+ # Save PDF document
+ document.save(outfile)
+```
+
+### Suporte de posicionamento
+
+A posição de um `FloatingBox` na página é controlado por `positioning_mode`, `left`, e `top`.
+Quando `positioning_mode` é:
+
+* [`ParagraphPositioningMode.DEFAULT`](https://reference.aspose.com/pdf/python-net/aspose.pdf/paragraphpositioningmode/) (padrão)
+
+A localização depende dos elementos adicionados anteriormente. Adicionar um novo parágrafo afeta o fluxo dos elementos subsequentes. Se [`left`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) ou [`top`](https://reference.aspose.com/pdf/python-net/aspose.pdf/floatingbox/#properties) são diferentes de zero, eles também são aplicados.
+
+* [`ParagraphPositioningMode.ABSOLUTE`](https://reference.aspose.com/pdf/python-net/aspose.pdf/paragraphpositioningmode/)
+
+A localização é definida por `left` e `top`; não depende de elementos anteriores e não afeta o fluxo dos posteriores.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def offset_support(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+ # Create and fill box
+ box = ap.FloatingBox(400, 30)
+ box.top = 45
+ box.left = 15
+ box.positioning_mode = ap.ParagraphPositioningMode.ABSOLUTE
+ box.border = ap.BorderInfo(ap.BorderSide.ALL, 1.5, ap.Color.dark_green)
+ box.paragraphs.add(ap.text.TextFragment("text example 1"))
+ page.paragraphs.add(ap.text.TextFragment("text example 2"))
+ # Add the box to the page
+ page.paragraphs.add(box)
+ page.paragraphs.add(ap.text.TextFragment("text example 3"))
+ document.save(outfile)
+```
+
+### Alinhar Caixas Flutuantes com Alinhamento Vertical e Horizontal em PDF
+
+Alinhar `FloatingBox` elementos em uma página PDF usando [`VerticalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/verticalalignment/) e [`HorizontalAlignment`](https://reference.aspose.com/pdf/python-net/aspose.pdf/horizontalalignment/) no Aspose.PDF for Python via .NET. Isso ajuda você a posicionar contêineres flutuantes nas posições superior, central ou inferior para layouts de página, blocos de cabeçalho/rodapé ou notas laterais.
+
+1. Crie um novo documento PDF.
+1. Adicione uma página ao documento.
+1. Adicione o primeiro `FloatingBox` com alinhamento inferior direito.
+1. Adicionar o segundo `FloatingBox` com alinhamento à direita central.
+1. Adicionar o terceiro `FloatingBox` com alinhamento superior direito.
+1. Salve o documento.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def align_text_to_float(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Add page to pages collection of PDF
+ page = document.pages.add()
+
+ # Create float box
+ float_box = ap.FloatingBox(100, 100)
+ # Set settings to float box
+ float_box.vertical_alignment = ap.VerticalAlignment.BOTTOM
+ float_box.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ float_box.paragraphs.add(ap.text.TextFragment("FloatingBox_bottom"))
+ float_box.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.blue)
+ # Add float box
+ page.paragraphs.add(float_box)
+
+ # Create float box
+ float_box_2 = ap.FloatingBox(100, 100)
+ # Set settings to float box
+ float_box_2.vertical_alignment = ap.VerticalAlignment.CENTER
+ float_box_2.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ float_box_2.paragraphs.add(ap.text.TextFragment("FloatingBox_center"))
+ float_box_2.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.blue)
+ # Add float box
+ page.paragraphs.add(float_box_2)
+
+ # Create float box
+ float_box_3 = ap.FloatingBox(100, 100)
+ # Set settings to float box
+ float_box_3.vertical_alignment = ap.VerticalAlignment.TOP
+ float_box_3.horizontal_alignment = ap.HorizontalAlignment.RIGHT
+ float_box_3.paragraphs.add(ap.text.TextFragment("FloatingBox_top"))
+ float_box_3.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.blue)
+ # Add float box
+ page.paragraphs.add(float_box_3)
+
+ # Save the document
+ document.save(outfile)
+```
+
+## Tópicos de Texto Relacionados
+
+* [Trabalhe com texto em PDF usando Python](/pdf/pt/python-net/working-with-text/)
+* [Adicionar texto ao PDF](/pdf/pt/python-net/add-text-to-pdf-file/)
+* [Formatar texto PDF em Python](/pdf/pt/python-net/text-formatting-inside-pdf/)
+* [Adicionar dicas de ferramenta ao texto PDF em Python](/pdf/pt/python-net/pdf-tooltip/)
diff --git a/pt/python-net/advanced-operations/working-with-text/floating-box/image01.png b/pt/python-net/advanced-operations/working-with-text/floating-box/image01.png
new file mode 100644
index 0000000000..362771c51d
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/floating-box/image01.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/floating-box/image02.png b/pt/python-net/advanced-operations/working-with-text/floating-box/image02.png
new file mode 100644
index 0000000000..c179e185fb
Binary files /dev/null and b/pt/python-net/advanced-operations/working-with-text/floating-box/image02.png differ
diff --git a/pt/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md b/pt/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md
index 149502ee16..0a8c9e50c2 100644
--- a/pt/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-text/replace-text-an-a-pdf/_index.md
@@ -1,83 +1,28 @@
---
-title: Substituir Texto em PDF via Python
+title: Substituir Texto em PDF com Python
linktitle: Substituir Texto em PDF
type: docs
weight: 40
url: /pt/python-net/replace-text-in-pdf/
-description: Saiba mais sobre várias maneiras de substituir e remover texto da biblioteca Aspose.PDF para Python via .NET.
-lastmod: "2024-02-17"
+description: Aprenda como substituir, reorganizar e remover texto em documentos PDF usando Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+aliases:
+ - /python-net/replace-text-in-a-pdf-document/
+TechArticle: true
+AlternativeHeadline: Substitua, remova e ajuste o conteúdo de texto em PDF usando Python
+Abstract: Este artigo aborda fluxos de trabalho práticos de substituição de texto em documentos PDF usando Aspose.PDF for Python via .NET. Inclui a substituição de texto em várias páginas, a limitação da substituição a regiões específicas, o ajuste do layout do texto durante a substituição, o trabalho com correspondência baseada em expressões regulares, a substituição de fontes e a remoção de conteúdo de texto quando necessário.
---
-
-
-
-## Substituir Texto em todas as páginas de um documento PDF
+
+Estes exemplos mostram como **modificar ou remover texto em um PDF existente**.
+
+Use esta página quando precisar atualizar valores de texto, remover conteúdo indesejado ou aplicar regras de substituição de texto em páginas de PDF.
+
+## Substituir texto existente
+
+### Substituir texto em todas as páginas do documento PDF
{{% alert color="primary" %}}
@@ -85,475 +30,478 @@ Você pode tentar encontrar e substituir o texto no documento usando Aspose.PDF
{{% /alert %}}
-Para substituir texto em todas as páginas de um documento PDF, você primeiro precisa usar o [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) para encontrar a frase específica que deseja substituir. Depois disso, você precisa percorrer todos os TextFragments para substituir o texto e alterar quaisquer outros atributos. Uma vez feito isso, você só precisa salvar o PDF de saída usando o método Save do objeto Document. O trecho de código a seguir mostra como substituir texto em todas as páginas de um documento PDF.
+A substituição de texto é uma necessidade comum ao atualizar ou corrigir o conteúdo em documentos PDF existentes — por exemplo, alterar nomes de produtos, corrigir erros de digitação ou atualizar a terminologia em várias páginas.
-```python
+O Aspose.PDF for Python via .NET oferece um método poderoso e eficiente para pesquisar e substituir texto programaticamente através do [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) classe.
- import aspose.pdf as ap
+Este exemplo demonstra como encontrar todas as ocorrências de uma frase específica (neste caso, "Black cat") e substituí‑las por uma nova frase ("White dog") em todo o documento PDF.
- # Abrir documento
- document = ap.Document(input_pdf)
+1. Especifique frases de busca e substituição. Defina o texto que você deseja encontrar e o texto pelo qual deseja substituí-lo.
+1. Carregue o PDF Document.
+1. Crie um Text Absorber. Um TextFragmentAbsorber é inicializado com a frase de pesquisa. Ele varre o documento em busca de todas as ocorrências da frase fornecida.
+1. Aplicar o Absorber a Todas as Páginas. Isso percorre todas as páginas e coleta fragmentos de texto correspondentes à frase.
+1. Substitua cada fragmento encontrado. Cada ocorrência de "Black cat" deve ser alterada para "White dog".
+1. Salvar o PDF Atualizado.
- # Criar objeto TextAbsorber para encontrar todas as instâncias da frase de busca de entrada
- absorber = ap.text.TextFragmentAbsorber("format")
+```python
+import sys
+import aspose.pdf as ap
+from os import path
- # Aceitar o absorvedor para todas as páginas
- document.pages.accept(absorber)
+def replace_text_on_all_pages(infile, outfile):
+ search_phrase = "PDF"
+ replace_phrase = "pdf"
- # Obter os fragmentos de texto extraídos
- collection = absorber.text_fragments
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber(search_phrase)
+ document.pages.accept(absorber)
- # Percorrer os fragmentos
- for text_fragment in collection:
- # Atualizar texto e outras propriedades
- text_fragment.text = "FORMAT"
- text_fragment.text_state.font = ap.text.FontRepository.find_font("Verdana")
- text_fragment.text_state.font_size = 22
- text_fragment.text_state.foreground_color = ap.Color.blue
- text_fragment.text_state.background_color = ap.Color.green
+ for fragment in absorber.text_fragments:
+ fragment.text = replace_phrase
- # Salvar o documento
- document.save(output_pdf)
+ document.save(outfile)
```
+### Substituir texto em região de página específica
+
+Às vezes, pode ser necessário substituir texto apenas dentro de uma área específica de uma página PDF, em vez de pesquisar todo o documento — por exemplo, atualizar um cabeçalho, rodapé ou uma célula de tabela em uma posição conhecida.
+
+A biblioteca Aspose.PDF for Python via .NET habilita esta funcionalidade ao utilizar o [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) em conjunto com a pesquisa de texto baseada em região.
-## Substituir Texto em uma Região Específica da Página
+Este exemplo demonstra como encontrar e substituir todas as ocorrências de uma frase alvo dentro de uma região retangular definida em uma página específica.
-Para substituir texto em uma região específica da página, primeiro, precisamos instanciar o objeto TextFragmentAbsorber, especificar a região da página usando a propriedade TextSearchOptions.Rectangle e então iterar por todos os TextFragments para substituir o texto. Uma vez que essas operações são concluídas, só precisamos salvar o PDF de saída usando o método Save do objeto Document. O seguinte trecho de código mostra como substituir texto em todas as páginas de um documento PDF.
+1. Especifique frases de busca e substituição.
+1. Carregue o PDF Document.
+1. Crie um Text Absorber para pesquisa. Inicialize um TextFragmentAbsorber para encontrar o texto desejado.
+1. Restrinja a Área de Busca. O retângulo especifica os limites de coordenadas x e y na página.
+1. Aplique o Absorber a uma página específica. Isso realiza a pesquisa e coleta fragmentos de texto correspondentes dentro da área especificada.
+1. Substitua o texto encontrado. Cada ocorrência de 'doc' na região definida torna‑se 'DOC'.
+1. Salvar o PDF Atualizado.
```python
-// carregar arquivo PDF
-Aspose.PDF.Document pdf = new Aspose.PDF.Document("c:/pdftest/programaticallyproducedpdf.pdf");
+import sys
+import aspose.pdf as ap
+from os import path
-// instanciar objeto TextFragment Absorber
-Aspose.PDF.Text.TextFragmentAbsorber TextFragmentAbsorberAddress = new Aspose.PDF.Text.TextFragmentAbsorber();
+def replace_text_in_particular_page_region(infile, outfile):
+ search_phrase = "doc"
+ replace_phrase = "DOC"
-// buscar texto dentro dos limites da página
-TextFragmentAbsorberAddress.TextSearchOptions.LimitToPageBounds = true;
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber(search_phrase)
+ absorber.text_search_options.limit_to_page_bounds = True
+ absorber.text_search_options.rectangle = ap.Rectangle(300, 442, 500, 742, True)
+ document.pages[1].accept(absorber)
+
+ for fragment in absorber.text_fragments:
+ fragment.text = replace_phrase
+
+ document.save(outfile)
+```
-// especificar a região da página para as Opções de Busca de Texto
-TextFragmentAbsorberAddress.TextSearchOptions.Rectangle = new Aspose.PDF.Rectangle(100, 100, 200, 200);
+### Redimensionar e deslocar texto sem alterar o tamanho da fonte
-// buscar texto a partir da primeira página do arquivo PDF
-pdf.Pages[1].Accept(TextFragmentAbsorberAddress);
+Ao substituir texto em um PDF, às vezes você deseja ajustar ou reposicionar o novo texto dentro de uma área específica sem modificar o tamanho da fonte.
+Aspose.PDF for Python via .NET fornece opções para ajustar o layout e o espaçamento do texto mantendo o tamanho da Font original intacto.
-// iterar por cada TextFragment
-foreach( Aspose.PDF.Text.TextFragment tf in TextFragmentAbsorberAddress.TextFragments)
-{
- // atualizar texto para caracteres em branco
- tf.Text = "";
-}
+1. Carregue o PDF Document.
+1. Colete todos os fragmentos de texto na página usando um 'TextFragmentAbsorber'.
+1. Selecione o Fragmento para Modificar.
+1. Desloque e redimensione o retângulo de texto.
+1. Ajustar espaçamento de texto. Habilite o ajuste de espaçamento para que o texto se encaixe dentro do retângulo modificado.
+1. Substitua o texto do fragmento.
+1. Salvar o PDF Atualizado.
-// salvar arquivo PDF atualizado após substituir texto
-pdf.Save("c:/pdftest/TextUpdated.pdf");
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_resize_and_shift_without_changing_font_size(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ rect = fragment.rectangle
+ rect.llx += 50
+ rect.urx -= 50
+ fragment.replace_options.rectangle = rect
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
```
+### Redimensionar e deslocar um parágrafo no PDF
-## Substituir Texto Com Base em uma Expressão Regular
+Ao trabalhar com PDFs, às vezes é necessário substituir ou expandir um parágrafo mantendo-o visualmente alinhado com o layout da página. O Aspose.PDF permite redimensionar o retângulo delimitador do parágrafo e ajustar o espaçamento para acomodar o novo texto, tudo isso sem alterar o tamanho da fonte.
-Se você deseja substituir algumas frases com base em uma expressão regular, primeiro precisa encontrar todas as frases que correspondem a essa expressão regular específica usando TextFragmentAbsorber. Você terá que passar a expressão regular como um parâmetro para o construtor TextFragmentAbsorber. Você também precisa criar um objeto TextSearchOptions que especifica se a expressão regular está sendo usada ou não. Assim que você obtiver as frases correspondentes em TextFragments, você precisa percorrer todas elas e atualizar conforme necessário. Finalmente, você precisa salvar o PDF atualizado usando o método Save do objeto Document. O trecho de código a seguir mostra como substituir texto com base em uma expressão regular.
+1. Carregue o PDF Document.
+1. Use 'TextFragmentAbsorber' para coletar todos os fragmentos de texto na página.
+1. Selecione o Fragmento para Modificar.
+1. Redimensione e desloque o parágrafo. Use a caixa de mídia da página para determinar os limites e ajustar o retângulo.
+1. Ajustar espaçamento. Isso modifica o espaçamento entre palavras/letras em vez de mudar o tamanho da fonte.
+1. Substitua o texto do fragmento.
+1. Salvar o PDF Modificado.
```python
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório dos documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Abrir documento
-Document pdfDocument = new Document(dataDir + "SearchRegularExpressionPage.pdf");
-
-// Criar objeto TextAbsorber para encontrar todas as frases que correspondem à expressão regular
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\\d{4}-\\d{4}"); // Como 1999-2000
-
-// Definir opção de pesquisa de texto para especificar o uso de expressão regular
-TextSearchOptions textSearchOptions = new TextSearchOptions(true);
-textFragmentAbsorber.TextSearchOptions = textSearchOptions;
-
-// Aceitar o absorvedor para uma única página
-pdfDocument.Pages[1].Accept(textFragmentAbsorber);
-
-// Obter os fragmentos de texto extraídos
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-
-// Percorrer os fragmentos
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- // Atualizar texto e outras propriedades
- textFragment.Text = "Nova Frase";
- // Definir para uma instância de um objeto.
- textFragment.TextState.Font = FontRepository.FindFont("Verdana");
- textFragment.TextState.FontSize = 22;
- textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Blue);
- textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
-}
-dataDir = dataDir + "ReplaceTextonRegularExpression_out.pdf";
-pdfDocument.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_resize_and_shift_paragraph(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ rect = document.pages[1].media_box
+ rect.llx += 20
+ rect.urx -= 20
+ rect.ury -= 20
+ fragment.replace_options.rectangle = rect
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
```
+### Substituir Texto e Expandir Automaticamente a Fonte para Preencher a Área de Destino
-## Substituir fontes em arquivo PDF existente
+Substitua texto em um PDF enquanto redimensiona e expande automaticamente a fonte para preencher uma área retangular específica. Usando a biblioteca Aspose.PDF for Python via .NET, o código ajusta dinamicamente o tamanho da fonte e o espaçamento para que o novo conteúdo de texto se encaixe perfeitamente dentro de uma caixa delimitadora definida — sem cálculos manuais de fonte.
-Aspose.PDF para Python via .NET suporta a capacidade de substituir texto em documento PDF. No entanto, às vezes você tem a necessidade de apenas substituir a fonte sendo usada dentro do documento PDF. Então, ao invés de substituir o texto, apenas a fonte sendo usada é substituída. Uma das sobrecargas do construtor TextFragmentAbsorber aceita um objeto TextEditOptions como argumento e podemos usar o valor RemoveUnusedFonts da enumeração TextEditOptions.FontReplace para cumprir nossos requisitos. O trecho de código a seguir mostra como substituir a fonte dentro do documento PDF.
+1. Carregue o PDF.
+1. Capturar Fragmentos de Texto.
+1. Selecione um Fragmento Específico.
+1. Definir Retângulo de Destino.
+1. Ativar opções de ajuste de texto.
+1. Substituir Texto.
+1. Salvar o Document.
```python
-// Para exemplos completos e arquivos de dados, por favor visite https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório dos documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Carregar arquivo PDF de origem
-Document pdfDocument = new Document(dataDir + "ReplaceTextPage.pdf");
-// Procurar fragmentos de texto e definir a opção de edição como remover fontes não utilizadas
-TextFragmentAbsorber absorber = new TextFragmentAbsorber(new TextEditOptions(TextEditOptions.FontReplace.RemoveUnusedFonts));
-
-// Aceitar o absorvedor para todas as páginas
-pdfDocument.Pages.Accept(absorber);
-// Percorrer todos os TextFragments
-foreach (TextFragment textFragment in absorber.TextFragments)
-{
- // Se o nome da fonte for ArialMT, substituir o nome da fonte por Arial
- if (textFragment.TextState.Font.FontName == "Arial,Bold")
- {
- textFragment.TextState.Font = FontRepository.FindFont("Arial");
- }
-
-}
-
-dataDir = dataDir + "ReplaceFonts_out.pdf";
-// Salvar documento atualizado
-pdfDocument.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_resize_and_expand_font(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ fragment.replace_options.rectangle = ap.Rectangle(100, 300, 512, 692, True)
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.replace_options.font_size_adjustment_action = (
+ ap.text.TextReplaceOptions.FontSizeAdjustment.SCALE_TO_FILL
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
```
+### Substituir texto e ajustá-lo em um retângulo
+
+Substitua texto em um documento PDF garantindo que o novo conteúdo caiba dentro da área retangular do texto original, reduzindo automaticamente o tamanho da fonte quando necessário.
+
+Usando a biblioteca Aspose.PDF for Python via .NET, esta função ajusta tanto o layout do texto quanto o tamanho da Font dinamicamente, preservando a estrutura do Document enquanto impede o overflow.
+
+1. Crie um objeto TextFragmentAbsorber para extrair todos os fragmentos de texto da primeira página.
+1. Acesse um Fragmento de Texto Específico.
+1. Definir a Área de Substituição.
+1. Configure as opções de ajuste de texto. Defina duas opções principais de substituição:
+ - Ajuste de tamanho da fonte - 'SHRINK_TO_FIT' reduz automaticamente o tamanho da fonte se o novo texto for muito longo.
+ - Ajuste de espaçamento - 'ADJUST_SPACE_WIDTH' mantém o espaçamento proporcional.
+1. Substitua o Texto.
+1. Salvar o PDF Modificado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_and_fit_text_into_rectangle(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.visit(document.pages[1])
+ fragment = absorber.text_fragments[1]
+ text = fragment.text
+ fragment.replace_options.rectangle = fragment.rectangle
+ fragment.replace_options.font_size_adjustment_action = (
+ ap.text.TextReplaceOptions.FontSizeAdjustment.SHRINK_TO_FIT
+ )
+ fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ fragment.text = f"{text} {text}"
+ document.save(outfile)
+```
-## A Substituição de Texto deve reorganizar automaticamente o Conteúdo da Página
+### Substituir Automaticamente Texto de Espaço Reservado e Reorganizar Layout do PDF
-Aspose.PDF para Python via .NET suporta o recurso de buscar e substituir texto dentro do arquivo PDF. No entanto, recentemente alguns clientes encontraram problemas durante a substituição de texto quando um determinado TextFragment é substituído por conteúdos menores e alguns espaços extras são exibidos no PDF resultante ou, no caso do TextFragment ser substituído por uma string maior, as palavras se sobrepõem ao conteúdo existente da página. Assim, a exigência era introduzir um mecanismo que, uma vez que o texto dentro de um documento PDF seja substituído, os conteúdos deveriam ser reorganizados.
+Substitua o texto de espaço reservado dentro de um PDF (por exemplo, modelos ou formulários) por dados reais, como nomes ou informações da empresa.
+Ele ajusta automaticamente o layout da página para caber o novo texto enquanto aplica formatação personalizada (Font, cor, tamanho).
-Para atender aos cenários acima mencionados, o Aspose.PDF para Python via .NET foi aprimorado para que tais problemas não apareçam ao substituir texto dentro do arquivo PDF. O seguinte trecho de código mostra como substituir texto dentro de um arquivo PDF e os conteúdos da página devem ser reorganizados automaticamente.
+1. Importar e carregar o PDF.
+1. Crie um Text Absorber para o Placeholder.
+1. Aplique o Absorber a todas as páginas.
+1. Iterar pelos fragmentos de texto encontrados.
+1. Aplicar Formatação de Texto Personalizada.
+1. Salvar o Documento Atualizado.
```python
-// Para exemplos completos e arquivos de dados, por favor vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório dos documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Carregar arquivo PDF de origem
-Document doc = new Document(dataDir + "ExtractTextPage.pdf");
-// Criar objeto TextFragment Absorber com expressão regular
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("[TextFragmentAbsorber,companyname,Textbox,50]");
-doc.Pages.Accept(textFragmentAbsorber);
-// Substituir cada TextFragment
-foreach (TextFragment textFragment in textFragmentAbsorber.TextFragments)
-{
- // Definir a fonte do fragmento de texto que está sendo substituído
- textFragment.TextState.Font = FontRepository.FindFont("Arial");
- // Definir o tamanho da fonte
- textFragment.TextState.FontSize = 12;
- textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Navy;
- // Substituir o texto com uma string maior do que o espaço reservado
- textFragment.Text = "This is a Larger String for the Testing of this issue";
-}
-dataDir = dataDir + "RearrangeContentsUsingTextReplacement_out.pdf";
-// Salvar PDF resultante
-doc.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def automatically_rearrange_page_contents(input_file, output_file):
+ document = ap.Document(input_file)
+
+ absorber = ap.text.TextFragmentAbsorber("[Long_placeholder_Long_placeholder]")
+ document.pages.accept(absorber)
+
+ for text_fragment in absorber.text_fragments:
+ # text_fragment.text = "John Smith"
+ text_fragment.text = "John Smith, South Development Studio"
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Calibri")
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.foreground_color = ap.Color.navy
+
+ # Save PDF document
+ document.save(output_file)
```
+### Substituir texto com base em uma expressão regular
-## Renderização de Símbolos Substituíveis durante a criação de PDF
+Ao trabalhar com documentos PDF, pode ser necessário substituir texto que segue um padrão em vez de uma frase específica — por exemplo, números de telefone, códigos ou formatos semelhantes a datas.
-Símbolos substituíveis são símbolos especiais em uma string de texto que podem ser substituídos pelo conteúdo correspondente em tempo de execução. Os símbolos substituíveis atualmente suportados pelo novo Modelo de Objeto de Documento do namespace Aspose.PDF são `$P`, `$p,` `\n`, `\r`. O `$p` e `$P` são usados para lidar com a numeração de páginas em tempo de execução. `$p` é substituído pelo número da página onde a classe atual do Parágrafo está. `$P` é substituído pelo número total de páginas no documento. Ao adicionar `TextFragment` à coleção de parágrafos de documentos PDF, ele não suporta quebra de linha dentro do texto. No entanto, para adicionar texto com uma quebra de linha, use `TextFragment` com `TextParagraph`:
+Aspose.PDF for Python via .NET permite que você execute tais substituições usando expressões regulares (regex) com a classe TextFragmentAbsorber.
-- use "\r\n" ou Environment.NewLine em TextFragment em vez de um único "\n";
-- crie um objeto TextParagraph. Ele adicionará texto com divisão de linha;
-- adicione o TextFragment com TextParagraph.AppendLine;
-- adicione o TextParagraph com TextBuilder.AppendParagraph.
+Este exemplo demonstra como encontrar padrões de texto (neste caso, qualquer texto que corresponda ao formato ####-####, como 1234-5678) e substituí‑los com uma string formatada 'ABC1-2XZY'. Também mostra como personalizar a fonte, a cor e o tamanho do texto substituído.
+
+O trecho de código a seguir mostra como substituir texto com base em uma expressão regular.
+
+1. Carregue o PDF Document.
+1. Crie um Absorvedor de Texto baseado em Regex. Inicialize o TextFragmentAbsorber com um padrão de expressão regular.
+1. Ativar o Modo de Expressão Regular. O parâmetro 'True' ativa o modo de pesquisa por expressão regular.
+1. Aplique o Absorber a uma Página. Isso varre a página em busca de todos os fragmentos de texto que correspondem ao padrão regex definido.
+1. Substitua cada correspondência por um novo texto e aplique estilo personalizado.
+1. Salvar o Documento Modificado.
```python
-// Para exemplos completos e arquivos de dados, por favor vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+import sys
+import aspose.pdf as ap
+from os import path
+
+def replace_text_based_on_regex(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber(r"\d{4}-\d{4}")
+ absorber.text_search_options = ap.text.TextSearchOptions(True)
+ document.pages[1].accept(absorber)
+
+ for fragment in absorber.text_fragments:
+ fragment.text = "ABC1-2XZY"
+ fragment.text_state.font = ap.text.FontRepository.find_font("Verdana")
+ fragment.text_state.font_size = 12
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.background_color = ap.Color.light_green
+
+ document.save(outfile)
+```
-Aspose.Pdf.Document pdfApplicationDoc = new Aspose.Pdf.Document();
-Aspose.Pdf.Page applicationFirstPage = (Aspose.Pdf.Page)pdfApplicationDoc.Pages.Add();
+## Substituir fontes ou remover fontes não usadas
-// Inicializar novo TextFragment com texto contendo marcadores de nova linha necessários
-Aspose.Pdf.Text.TextFragment textFragment = new Aspose.Pdf.Text.TextFragment("Nome do Candidato: " + Environment.NewLine + " Joe Smoe");
+### Substituir fontes em arquivo PDF existente
-// Defina as propriedades do fragmento de texto, se necessário
-textFragment.TextState.FontSize = 12;
-textFragment.TextState.Font = Aspose.Pdf.Text.FontRepository.FindFont("TimesNewRoman");
-textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
-textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Red;
+Ocasionalmente, você precisa padronizar ou atualizar fontes em um PDF — por exemplo, substituindo uma fonte desatualizada ou proprietária por uma mais acessível. A biblioteca Aspose.PDF for Python via .NET permite detectar e substituir fontes programaticamente, garantindo tipografia consistente e compatibilidade de documentos.
-// Criar objeto TextParagraph
-TextParagraph par = new TextParagraph();
+Este exemplo demonstra como substituir todas as instâncias de uma fonte específica (por exemplo, 'Arial-BoldMT') por outra fonte (por exemplo, 'Verdana') em todo um documento PDF.
-// Adicionar novo TextFragment ao parágrafo
-par.AppendLine(textFragment);
+O trecho de código a seguir mostra como substituir a fonte dentro do documento PDF:
+
+1. Abra o PDF Document.
+1. Inicialize um TextFragmentAbsorber.
+1. Use o Absorber para extrair fragmentos de texto de cada página do documento.
+1. Identificar e substituir fontes. O script verifica se a fonte atual de um fragmento é 'Arial-BoldMT'. Se verdadeiro, substitui-a pela fonte 'Verdana' usando o método FontRepository.find_font().
+1. Salvar o Documento Modificado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
-// Definir posição do parágrafo
-par.Position = new Aspose.Pdf.Text.Position(100, 600);
+def replace_fonts(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ document.pages.accept(absorber)
-// Criar objeto TextBuilder
-TextBuilder textBuilder = new TextBuilder(applicationFirstPage);
-// Adicionar o TextParagraph usando TextBuilder
-textBuilder.AppendParagraph(par);
+ for fragment in absorber.text_fragments:
+ if fragment.text_state.font.font_name == "Arial-BoldMT":
+ fragment.text_state.font = ap.text.FontRepository.find_font("Verdana")
-dataDir = dataDir + "RenderingReplaceableSymbols_out.pdf";
-pdfApplicationDoc.Save(dataDir);
+ document.save(outfile)
```
+### Remover fontes não utilizadas
-## Símbolos substituíveis na área de Cabeçalho/Rodapé
+Com o tempo, os documentos PDF podem acumular fontes não usadas ou incorporadas que aumentam o tamanho do arquivo e desaceleram o processamento. Essas fontes não usadas frequentemente permanecem mesmo após edições ou substituições de texto, especialmente ao trabalhar com PDFs grandes ou complexos.
-Símbolos substituíveis também podem ser colocados dentro da seção de Cabeçalho/Rodapé do arquivo PDF. Por favor, veja o trecho de código a seguir para detalhes sobre como adicionar um símbolo substituível na seção de rodapé.
+A biblioteca Aspose.PDF for Python via .NET fornece uma maneira eficiente de remover fontes redundantes usando a classe TextEditOptions. Isso não apenas otimiza o seu documento, mas também garante que ele use somente as fontes realmente aplicadas ao texto visível.
+
+O método 'remove_unused_fonts()' é uma maneira simples, porém poderosa, de otimizar arquivos PDF removendo dados de fontes redundantes.
+
+Este exemplo demonstra como:
+
+- Escaneie um PDF em busca de fontes não usadas.
+- Remova-os com segurança.
+- Reatribua os fragmentos de texto ativos para uma fonte consistente (por exemplo, Times New Roman).
+
+1. Abra o PDF Document.
+1. Configure as Opções de Edição de Texto. Isso instrui o motor a eliminar quaisquer Font incorporados que não estejam sendo usados no texto visível.
+1. Crie um TextAbsorber com Opções. Um TextFragmentAbsorber extrai fragmentos de texto do documento para edição.
+1. Reatribua uma Fonte Padrão. Depois que o absorvedor coletar todos os fragmentos, itere sobre eles e aplique uma fonte consistente.
+1. Salvar o PDF limpo.
```python
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-Document doc = new Document();
-Page page = doc.Pages.Add();
-
-MarginInfo marginInfo = new MarginInfo();
-marginInfo.Top = 90;
-marginInfo.Bottom = 50;
-marginInfo.Left = 50;
-marginInfo.Right = 50;
-// Atribuir a instância marginInfo à propriedade Margin de sec1.PageInfo
-page.PageInfo.Margin = marginInfo;
-
-HeaderFooter hfFirst = new HeaderFooter();
-page.Header = hfFirst;
-hfFirst.Margin.Left = 50;
-hfFirst.Margin.Right = 50;
-
-// Instanciar um parágrafo de texto que armazenará o conteúdo a ser exibido como cabeçalho
-TextFragment t1 = new TextFragment("título do relatório");
-t1.TextState.Font = FontRepository.FindFont("Arial");
-t1.TextState.FontSize = 16;
-t1.TextState.ForegroundColor = Aspose.Pdf.Color.Black;
-t1.TextState.FontStyle = FontStyles.Bold;
-t1.TextState.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Center;
-t1.TextState.LineSpacing = 5f;
-hfFirst.Paragraphs.Add(t1);
-
-TextFragment t2 = new TextFragment("Nome_Relatório");
-t2.TextState.Font = FontRepository.FindFont("Arial");
-t2.TextState.ForegroundColor = Aspose.Pdf.Color.Black;
-t2.TextState.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Center;
-t2.TextState.LineSpacing = 5f;
-t2.TextState.FontSize = 12;
-hfFirst.Paragraphs.Add(t2);
-
-// Criar um objeto HeaderFooter para a seção
-HeaderFooter hfFoot = new HeaderFooter();
-// Definir o objeto HeaderFooter para rodapé ímpar e par
-page.Footer = hfFoot;
-hfFoot.Margin.Left = 50;
-hfFoot.Margin.Right = 50;
-
-// Adicionar um parágrafo de texto contendo o número da página atual do total de páginas
-TextFragment t3 = new TextFragment("Gerado na data de teste");
-TextFragment t4 = new TextFragment("nome do relatório ");
-TextFragment t5 = new TextFragment("Página $p de $P");
-
-// Instanciar um objeto tabela
-Table tab2 = new Table();
-
-// Adicionar a tabela na coleção de parágrafos da seção desejada
-hfFoot.Paragraphs.Add(tab2);
-
-// Definir larguras das colunas da tabela
-tab2.ColumnWidths = "165 172 165";
-
-// Criar linhas na tabela e depois células nas linhas
-Row row3 = tab2.Rows.Add();
-
-row3.Cells.Add();
-row3.Cells.Add();
-row3.Cells.Add();
-
-// Definir o alinhamento vertical do texto como centralizado
-row3.Cells[0].Alignment = Aspose.Pdf.HorizontalAlignment.Left;
-row3.Cells[1].Alignment = Aspose.Pdf.HorizontalAlignment.Center;
-row3.Cells[2].Alignment = Aspose.Pdf.HorizontalAlignment.Right;
-
-row3.Cells[0].Paragraphs.Add(t3);
-row3.Cells[1].Paragraphs.Add(t4);
-row3.Cells[2].Paragraphs.Add(t5);
-
-// Sec1.Paragraphs.Add(New Text("Aspose.Total for Java is a compilation of every Java component offered by Aspose. It is compiled on a#$NL" + "daily basis to ensure it contains the most up to date versions of each of our Java components. #$NL " + "Using Aspose.Total for Java developers can create a wide range of applications. #$NL #$NL #$NP" + "Aspose.Total for Java is a compilation of every Java component offered by Aspose. It is compiled on a#$NL" + "daily basis to ensure it contains the most up to date versions of each of our Java components. #$NL " + "Using Aspose.Total for Java developers can create a wide range of applications. #$NL #$NL #$NP" + "Aspose.Total for Java is a compilation of every Java component offered by Aspose. It is compiled on a#$NL" + "daily basis to ensure it contains the most up to date versions of each of our Java components. #$NL " + "Using Aspose.Total for Java developers can create a wide range of applications. #$NL #$NL"))
-Table table = new Table();
-
-table.ColumnWidths = "33% 33% 34%";
-table.DefaultCellPadding = new MarginInfo();
-table.DefaultCellPadding.Top = 10;
-table.DefaultCellPadding.Bottom = 10;
-
-// Adicionar a tabela na coleção de parágrafos da seção desejada
-page.Paragraphs.Add(table);
-
-// Definir borda de célula padrão usando o objeto BorderInfo
-table.DefaultCellBorder = new BorderInfo(BorderSide.All, 0.1f);
-
-// Definir borda da tabela usando outro objeto BorderInfo personalizado
-table.Border = new BorderInfo(BorderSide.All, 1f);
-
-table.RepeatingRowsCount = 1;
-
-// Criar linhas na tabela e depois células nas linhas
-Row row1 = table.Rows.Add();
-
-row1.Cells.Add("col1");
-row1.Cells.Add("col2");
-row1.Cells.Add("col3");
-const string CRLF = "\r\n";
-for (int i = 0; i <= 10; i++)
-{
- Row row = table.Rows.Add();
- row.IsRowBroken = true;
- for (int c = 0; c <= 2; c++)
- {
- Cell c1;
- if (c == 2)
- c1 = row.Cells.Add("Aspose.Total for Java is a compilation of every Java component offered by Aspose. It is compiled on a" + CRLF + "daily basis to ensure it contains the most up to date versions of each of our Java components. " + CRLF + "daily basis to ensure it contains the most up to date versions of each of our Java components. " + CRLF + "Using Aspose.Total for Java developers can create a wide range of applications.");
- else
- c1 = row.Cells.Add("item1" + c);
- c1.Margin = new MarginInfo();
- c1.Margin.Left = 30;
- c1.Margin.Top = 10;
- c1.Margin.Bottom = 10;
- }
-}
-
-dataDir = dataDir + "ReplaceableSymbolsInHeaderFooter_out.pdf";
-doc.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_unused_fonts(input_file, output_file):
+ # Open PDF document
+ document = ap.Document(input_file)
+
+ # Initialize text edit options to remove unused fonts
+ options = ap.text.TextEditOptions(
+ ap.text.TextEditOptions.FontReplace.REMOVE_UNUSED_FONTS
+ )
+
+ # Create a TextFragmentAbsorber with the specified options
+ absorber = ap.text.TextFragmentAbsorber(options)
+ document.pages.accept(absorber)
+
+ # Iterate through all TextFragments
+ for text_fragment in absorber.text_fragments:
+ text_fragment.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+
+ # Save the updated PDF document
+ document.save(output_file)
```
+## Remover todo o Texto
+
+### Remover texto do PDF
+
+Remova todo o conteúdo de texto de um arquivo PDF mantendo as imagens, formas e estruturas de layout intactas.
+Ao usar TextFragmentAbsorber, o código varre eficientemente todo o documento e exclui cada fragmento de texto encontrado em cada página.
-## Remover Fontes Não Utilizadas de Arquivo PDF
+1. Carregue o PDF Document.
+1. Um objeto TextFragmentAbsorber é criado para detectar e manipular fragmentos de texto no PDF.
+1. Remover todo o conteúdo de texto. O método 'absorber.remove_all_text()' remove cada elemento de texto do documento carregado, deixando os componentes não textuais intocados.
+1. Salvar o Documento Atualizado.
-O Aspose.PDF para Python via .NET suporta o recurso de incorporar fontes ao criar um documento PDF, assim como a capacidade de incorporar fontes em arquivos PDF existentes. A partir do Aspose.PDF para Python via .NET 7.3.0, ele também permite que você remova fontes duplicadas ou não utilizadas de documentos PDF.
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_all_text_using_absorber1(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.remove_all_text(document)
+ document.save(outfile)
+```
-Para substituir fontes, use a seguinte abordagem:
+### Remover todo o Texto de uma Página Específica
-1. Chame a classe [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber).
-1. Chame o parâmetro TextEditOptions.FontReplace.RemoveUnusedFonts da classe TextFragmentAbsorber. (Isso remove as fontes que se tornaram não utilizadas durante a substituição de fontes).
-1. Defina a fonte individualmente para cada fragmento de texto.
+Remova todo o texto de uma única página de um documento PDF usando a classe TextFragmentAbsorber no Aspose.PDF.
+Ao contrário da remoção de todo o documento, este método realiza a limpeza de texto ao nível da página, deletando texto apenas da página escolhida, enquanto deixa todas as demais páginas intactas.
-O seguinte trecho de código substitui a fonte para todos os fragmentos de texto de todas as páginas do documento e remove fontes não utilizadas.
+1. Carregue o arquivo PDF.
+1. Crie uma instância de TextFragmentAbsorber.
+1. Remover todo o texto da primeira página.
+1. Salvar o PDF Modificado.
```python
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Carregar arquivo PDF de origem
-Document doc = new Document(dataDir + "ReplaceTextPage.pdf");
-TextFragmentAbsorber absorber = new TextFragmentAbsorber(new TextEditOptions(TextEditOptions.FontReplace.RemoveUnusedFonts));
-doc.Pages.Accept(absorber);
-
-// Iterar por todos os TextFragments
-foreach (TextFragment textFragment in absorber.TextFragments)
-{
- textFragment.TextState.Font = FontRepository.FindFont("Arial, Bold");
-}
-
-dataDir = dataDir + "RemoveUnusedFonts_out.pdf";
-// Salvar documento atualizado
-doc.Save(dataDir);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_all_text_using_absorber2(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.remove_all_text(document.pages[1])
+ document.save(outfile)
```
+### Remover todo o texto de uma área específica na página PDF
+
+Remova todo o texto de uma região retangular específica em uma página usando o TextFragmentAbsorber do Aspose.PDF.
+Em vez de limpar uma página inteira, este método realiza a remoção direcionada de texto, permitindo controle preciso sobre qual parte da página é afetada.
-## Remover Todo o Texto do Documento PDF
+1. Carregue o PDF Document.
+1. Crie um TextFragmentAbsorber.
+1. Defina a Área Alvo (Retângulo).
+1. Remover Texto da Região Especificada.
+1. Preserve o resto do documento.
+1. Salvar o PDF Modificado.
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_all_text_using_absorber3(infile, outfile):
+ with ap.Document(infile) as document:
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.remove_all_text(
+ document.pages[1], ap.Rectangle(10, 200, 120, 600, True)
+ )
+ document.save(outfile)
+```
-### Remover Todo o Texto usando Operadores
+### Remova todo o Texto oculto de um documento PDF
-Em algumas operações de texto, você precisa remover todo o texto do documento PDF e, para isso, normalmente precisa definir o texto encontrado como valor de string vazia. A questão é que alterar o texto para uma multidão de fragmentos de texto invoca uma série de operações de verificação e ajuste de posição do texto. Elas são essenciais nos cenários de edição de texto. A dificuldade é que você não pode determinar quantos fragmentos de texto serão removidos no cenário em que eles são processados em um loop.
+Remova todo o texto de uma região retangular específica em uma página usando o TextFragmentAbsorber do Aspose.PDF.
+Em vez de limpar uma página inteira, este método realiza a remoção direcionada de texto, permitindo controle preciso sobre qual parte da página é afetada.
-Portanto, recomendamos usar outra abordagem para o cenário de remoção de todo o texto das páginas do PDF. Considere o seguinte trecho de código que funciona muito rápido.
+1. Carregue o PDF Document.
+1. Crie um TextFragmentAbsorber.
+1. Defina a Área Alvo (Retângulo).
+1. Remover Texto da Região Especificada.
+1. Preserve o resto do documento.
+1. Salvar o PDF Modificado.
```python
-// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Abrir documento
-Document pdfDocument = new Document(dataDir + "RemoveAllText.pdf");
-// Loop através de todas as páginas do Documento PDF
-for (int i = 1; i <= pdfDocument.Pages.Count; i++)
-{
- Page page = pdfDocument.Pages[i];
- OperatorSelector operatorSelector = new OperatorSelector(new Aspose.Pdf.Operators.TextShowOperator());
- // Selecionar todo o texto na página
- page.Contents.Accept(operatorSelector);
- // Excluir todo o texto
- page.Contents.Delete(operatorSelector.Selected);
-}
-// Salvar o documento
-pdfDocument.Save(dataDir + "RemoveAllText_out.pdf", Aspose.Pdf.SaveFormat.Pdf);
+import sys
+import aspose.pdf as ap
+from os import path
+
+def remove_hidden_text(infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ text_absorber = ap.text.TextFragmentAbsorber()
+ # This option can be used to prevent other text fragments from moving after hidden text replacement
+ text_absorber.text_replace_options = ap.text.TextReplaceOptions(
+ ap.text.TextReplaceOptions.ReplaceAdjustment.NONE
+ )
+ document.pages.accept(text_absorber)
+ # Remove hidden text
+ for fragment in text_absorber.text_fragments:
+ if fragment.text_state.invisible:
+ fragment.text = ""
+ # Save PDF document
+ document.save(outfile)
```
+## Tópicos de Texto Relacionados
-
\ No newline at end of file
+- [Trabalhe com texto em PDF usando Python](/pdf/pt/python-net/working-with-text/)
+- [Adicionando texto ao PDF](/pdf/pt/python-net/add-text-to-pdf-file/)
+- [Pesquisar e extrair texto de PDF em Python](/pdf/pt/python-net/search-and-get-text-from-pdf/)
+- [Formatar texto PDF em Python](/pdf/pt/python-net/text-formatting-inside-pdf/)
diff --git a/pt/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md b/pt/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md
index 1c5659a35b..88dbf4c1ad 100644
--- a/pt/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-text/rotate-text-inside-pdf/_index.md
@@ -1,315 +1,288 @@
---
-title: Girar Texto Dentro de PDF usando Python
-linktitle: Girar Texto Dentro de PDF
+title: Rotacionar Texto PDF em Python
+linktitle: Rotacionar Texto Dentro do PDF
type: docs
weight: 50
url: /pt/python-net/rotate-text-inside-pdf/
-description: Aprenda diferentes maneiras de girar texto em PDF. Aspose.PDF permite girar texto em qualquer ângulo, girar fragmento de texto ou um parágrafo inteiro.
-lastmod: "2024-02-17"
+description: Aprenda como rotacionar fragmentos de texto e parágrafos dentro de documentos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Rotacione fragmentos de texto e parágrafos em documentos PDF com Python
+Abstract: Este artigo explica como girar texto em documentos PDF usando Aspose.PDF for Python via .NET. Ele mostra como definir a propriedade `rotation` em `TextFragment`, criar conteúdo girado com `TextBuilder` e `TextParagraph`, e adicionar texto girado diretamente aos parágrafos da página para diferentes cenários de layout.
---
-
-
-
-## Rotacionar Texto Dentro de um PDF usando a Propriedade de Rotação
-
-Usando a propriedade Rotation da Classe [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment), você pode rotacionar texto em vários ângulos. A rotação de texto pode ser usada em diferentes cenários de geração de documentos. Você pode especificar o ângulo de rotação em graus para rotacionar o texto conforme sua necessidade. Por favor, verifique os diferentes cenários a seguir, nos quais você pode implementar a rotação de texto.
-
-## Implementar Rotação usando TextFragment e TextBuilder
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor visite https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Inicializar objeto documento
-Document pdfDocument = new Document();
-// Obter página específica
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-// Criar fragmento de texto
-TextFragment textFragment1 = new TextFragment("texto principal");
-textFragment1.Position = new Position(100, 600);
-// Definir propriedades do texto
-textFragment1.TextState.FontSize = 12;
-textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Criar fragmento de texto rotacionado
-TextFragment textFragment2 = new TextFragment("texto rotacionado");
-textFragment2.Position = new Position(200, 600);
-// Definir propriedades do texto
-textFragment2.TextState.FontSize = 12;
-textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-textFragment2.TextState.Rotation = 45;
-// Criar fragmento de texto rotacionado
-TextFragment textFragment3 = new TextFragment("texto rotacionado");
-textFragment3.Position = new Position(300, 600);
-// Definir propriedades do texto
-textFragment3.TextState.FontSize = 12;
-textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-textFragment3.TextState.Rotation = 90;
-// criar objeto TextBuilder
-TextBuilder textBuilder = new TextBuilder(pdfPage);
-// Anexar o fragmento de texto à página PDF
-textBuilder.AppendText(textFragment1);
-textBuilder.AppendText(textFragment2);
-textBuilder.AppendText(textFragment3);
-// Salvar documento
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated1_out.pdf");
+
+Gire fragmentos de texto em um documento PDF usando Aspose.PDF for Python via .NET. Esta página mostra como controlar a posição e a rotação do texto usando `TextFragment`, `TextState`, e `TextBuilder`. Ao ajustar ângulos de rotação, você pode criar layouts como cabeçalhos diagonais, rótulos verticais e anotações rotacionadas.
+
+## Girar Fragmentos de Texto Usando TextBuilder em PDF
+
+Cria um arquivo PDF chamado `rotated_fragments.pdf` contendo três fragmentos de texto alinhados horizontalmente:
+
+- o primeiro texto não está rotacionado
+- o segundo está rotacionado 45°
+- o terceiro está rotacionado 90°
+
+1. Crie um novo documento PDF.
+1. Insira uma nova página para hospedar o texto rotacionado.
+1. Crie o primeiro fragmento de texto (sem rotação).
+1. Crie o segundo fragmento de texto (rotação de 45°).
+1. Crie o terceiro fragmento de texto (rotação de 90°).
+1. Adicionar fragmentos de texto usando `TextBuilder`.
+1. Salvar o documento.
+
+```python
+import aspose.pdf as ap
+
+def rotate_text_inside_pdf_1(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("main text")
+ text_fragment_1.position = ap.text.Position(100, 600)
+ # Set text properties
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Create rotated text fragment
+ text_fragment_2 = ap.text.TextFragment("rotated text")
+ text_fragment_2.position = ap.text.Position(200, 600)
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_2.text_state.rotation = 45
+ # Create rotated text fragment
+ text_fragment_3 = ap.text.TextFragment("rotated text")
+ text_fragment_3.position = ap.text.Position(300, 600)
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_3.text_state.rotation = 90
+ # create TextBuilder object
+ builder = ap.text.TextBuilder(page)
+ # Append the text fragment to the PDF page
+ builder.append_text(text_fragment_1)
+ builder.append_text(text_fragment_2)
+ builder.append_text(text_fragment_3)
+
+ # Save the document
+ document.save(outfile)
```
+## Rotacionar fragmentos de texto individuais dentro de um parágrafo no PDF
+
+Gire fragmentos de texto individuais dentro de um parágrafo. Ele demonstra como criar um parágrafo de várias linhas (TextParagraph) contendo múltiplos fragmentos (TextFragment), cada um com seu próprio ângulo de rotação. Esta técnica é útil para criar documentos visualmente ricos que combinam texto orientado horizontalmente e diagonalmente — por exemplo, cabeçalhos estilizados, diagramas ou rótulos anotados.
+
+Cria um PDF chamado `rotated_paragraph_fragments.pdf` contendo um parágrafo com três linhas de texto, cada linha rotacionada de forma diferente:
+
+- a primeira linha está rotacionada 45°
+- a segunda linha permanece horizontal (0°)
+- a terceira linha está rotacionada -45°
+
+1. Crie um novo documento PDF.
+1. Adicione uma página em branco onde o texto girado aparecerá.
+1. Criar um `TextParagraph`.
+1. Crie e configure o primeiro fragmento de texto (rotação de +45°).
+1. Crie o segundo fragmento de texto (sem rotação).
+1. Crie o terceiro fragmento de texto (-45° rotação).
+1. Anexe fragmentos de texto ao parágrafo.
+1. Adicione o parágrafo à página usando `TextBuilder`.
+1. Salvar o documento.
+
+```python
+import aspose.pdf as ap
-## Implementar Rotação usando TextParagraph e TextBuilder (Fragmentos Rotacionados)
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Inicializar objeto do documento
-Document pdfDocument = new Document();
-// Obter página específica
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-TextParagraph paragraph = new TextParagraph();
-paragraph.Position = new Position(200, 600);
-// Criar fragmento de texto
-TextFragment textFragment1 = new TextFragment("texto rotacionado");
-// Definir propriedades do texto
-textFragment1.TextState.FontSize = 12;
-textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Definir rotação
-textFragment1.TextState.Rotation = 45;
-// Criar fragmento de texto
-TextFragment textFragment2 = new TextFragment("texto principal");
-// Definir propriedades do texto
-textFragment2.TextState.FontSize = 12;
-textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Criar fragmento de texto
-TextFragment textFragment3 = new TextFragment("outro texto rotacionado");
-// Definir propriedades do texto
-textFragment3.TextState.FontSize = 12;
-textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Definir rotação
-textFragment3.TextState.Rotation = -45;
-// Anexar os fragmentos de texto ao parágrafo
-paragraph.AppendLine(textFragment1);
-paragraph.AppendLine(textFragment2);
-paragraph.AppendLine(textFragment3);
-// Criar objeto TextBuilder
-TextBuilder textBuilder = new TextBuilder(pdfPage);
-// Anexar o parágrafo de texto à página PDF
-textBuilder.AppendParagraph(paragraph);
-// Salvar documento
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated2_out.pdf");
+def rotate_text_inside_pdf_2(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ paragraph = ap.text.TextParagraph()
+ paragraph.position = ap.text.Position(200, 600)
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("rotated text")
+ # Set text properties
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_1.text_state.rotation = 45
+ # Create text fragment
+ text_fragment_2 = ap.text.TextFragment("main text")
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Create text fragment
+ text_fragment_3 = ap.text.TextFragment("another rotated text")
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_3.text_state.rotation = -45
+ # Append the text fragments to the paragraph
+ paragraph.append_line(text_fragment_1)
+ paragraph.append_line(text_fragment_2)
+ paragraph.append_line(text_fragment_3)
+ # Create TextBuilder object
+ text_builder = ap.text.TextBuilder(page)
+ # Append the text paragraph to the PDF page
+ text_builder.append_paragraph(paragraph)
+
+ # Save the document
+ document.save(outfile)
```
+## Rotacionar Texto Usando Parágrafos de Página no PDF
+
+Esta seção demonstra um método simplificado para girar texto dentro de um PDF usando Aspose.PDF for Python via .NET.
+Ao contrário de abordagens de nível inferior com `TextBuilder` ou `TextParagraph`, este método adiciona fragmentos de texto rotacionados diretamente à coleção de parágrafos da página (`page.paragraphs`). É ideal quando você precisa de rotação de texto básica, mas não requer posicionamento preciso ou estruturação de parágrafos.
+
+Gera um arquivo chamado `simple_rotated_text.pdf` contendo:
+
+- um fragmento de texto horizontal principal com rotação de 0°
+- fragmento rotacionado 315°
+- fragmento girado 270°
+
+1. Inicialize um novo PDF Document.
+1. Crie uma página onde o texto girado será colocado.
+1. Crie o primeiro fragmento de texto (sem rotação).
+1. Crie o segundo fragmento de texto (rotação de 315°).
+1. Crie o terceiro fragmento de texto (rotação de 270°).
+1. Adicione fragmentos de texto diretamente aos parágrafos da página.
+1. Salve o documento PDF.
+
+```python
+import aspose.pdf as ap
+
+def rotate_text_inside_pdf_3(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("main text")
+ # Set text properties
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Create text fragment
+ text_fragment_2 = ap.text.TextFragment("rotated text")
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_2.text_state.rotation = 315
+ # Create text fragment
+ text_fragment_3 = ap.text.TextFragment("rotated text")
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ # Set rotation
+ text_fragment_3.text_state.rotation = 270
+ page.paragraphs.add(text_fragment_1)
+ page.paragraphs.add(text_fragment_2)
+ page.paragraphs.add(text_fragment_3)
-## Implementar Rotação usando TextFragment e Page.Paragraphs
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Inicializar objeto de documento
-Document pdfDocument = new Document();
-// Obter página específica
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-// Criar fragmento de texto
-TextFragment textFragment1 = new TextFragment("texto principal");
-// Definir propriedades do texto
-textFragment1.TextState.FontSize = 12;
-textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Criar fragmento de texto
-TextFragment textFragment2 = new TextFragment("texto rotacionado");
-// Definir propriedades do texto
-textFragment2.TextState.FontSize = 12;
-textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Definir rotação
-textFragment2.TextState.Rotation = 315;
-// Criar fragmento de texto
-TextFragment textFragment3 = new TextFragment("texto rotacionado");
-// Definir propriedades do texto
-textFragment3.TextState.FontSize = 12;
-textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-// Definir rotação
-textFragment3.TextState.Rotation = 270;
-pdfPage.Paragraphs.Add(textFragment1);
-pdfPage.Paragraphs.Add(textFragment2);
-pdfPage.Paragraphs.Add(textFragment3);
-// Salvar documento
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated3_out.pdf");
+ # Save the document
+ document.save(outfile)
```
+## Rotacionar parágrafos inteiros em um PDF
+
+Este exemplo demonstra rotação avançada de texto em nível de parágrafo em um PDF. Ao contrário da rotação em nível de fragmento (onde cada trecho de texto é rotacionado individualmente), este método rotaciona parágrafos inteiros como blocos unificados em ângulos diferentes.
+Cada parágrafo contém múltiplos fragmentos de texto estilizados, e o parágrafo completo é girado em ângulos específicos — permitindo transformações de layout complexas e consistentes.
+Isso é ideal para layouts artísticos, marcas d'água ou PDFs com muito design, onde seções inteiras de texto precisam ser orientadas em várias direções.
+
+Cria `rotated_paragraphs.pdf`, contendo quatro parágrafos totalmente estilizados e girados:
+
+- cada um girado em um ângulo único (45°, 135°, 225° e 315°)
+- cada parágrafo tem três linhas de texto com fundos coloridos, sublinhado e estilo consistente
+
+1. Crie um novo documento PDF.
+1. Adicione uma página em branco para conter os parágrafos girados.
+1. Iterar para criar vários parágrafos.
+1. Crie e posicione o parágrafo.
+1. Crie fragmentos de texto com formatação.
+1. Aplicar formatação de texto.
+1. Adicionar fragmentos de texto ao parágrafo.
+1. Anexe o parágrafo à página usando `TextBuilder`.
+1. Repita para todas as quatro rotações.
+1. Salve o documento PDF.
+
+```python
+import aspose.pdf as ap
+
+def rotate_text_inside_pdf_4(outfile):
+ # Create PDF document
+ with ap.Document() as document:
+ # Get particular page
+ page = document.pages.add()
+ for i in range(4):
+ paragraph = ap.text.TextParagraph()
+ paragraph.position = ap.text.Position(200, 600)
+ # Specify rotation
+ paragraph.rotation = i * 90 + 45
+ # Create text fragment
+ text_fragment_1 = ap.text.TextFragment("Paragraph Text")
+ # Create text fragment
+ text_fragment_1.text_state.font_size = 12
+ text_fragment_1.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_1.text_state.background_color = ap.Color.light_gray
+ text_fragment_1.text_state.foreground_color = ap.Color.blue
+ # Create text fragment
+ text_fragment_2 = ap.text.TextFragment("Second line of text")
+ # Set text properties
+ text_fragment_2.text_state.font_size = 12
+ text_fragment_2.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_2.text_state.background_color = ap.Color.light_gray
+ text_fragment_2.text_state.foreground_color = ap.Color.blue
+ # Create text fragment
+ text_fragment_3 = ap.text.TextFragment("And some more text...")
+ # Set text properties
+ text_fragment_3.text_state.font_size = 12
+ text_fragment_3.text_state.font = ap.text.FontRepository.find_font(
+ "TimesNewRoman"
+ )
+ text_fragment_3.text_state.background_color = ap.Color.light_gray
+ text_fragment_3.text_state.foreground_color = ap.Color.blue
+ text_fragment_3.text_state.underline = True
+ paragraph.append_line(text_fragment_1)
+ paragraph.append_line(text_fragment_2)
+ paragraph.append_line(text_fragment_3)
+ # Create TextBuilder object
+ builder = ap.text.TextBuilder(page)
+ # Append the text fragment to the PDF page
+ builder.append_paragraph(paragraph)
-## Implementar Rotação usando TextParagraph e TextBuilder (Parágrafo Inteiro Rotacionado)
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, visite https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Inicializar objeto do documento
-Document pdfDocument = new Document();
-// Obter página específica
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-for (int i = 0; i < 4; i++)
-{
- TextParagraph paragraph = new TextParagraph();
- paragraph.Position = new Position(200, 600);
- // Especificar rotação
- paragraph.Rotation = i * 90 + 45;
- // Criar fragmento de texto
- TextFragment textFragment1 = new TextFragment("Texto do Parágrafo");
- // Criar fragmento de texto
- textFragment1.TextState.FontSize = 12;
- textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
- textFragment1.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
- textFragment1.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- // Criar fragmento de texto
- TextFragment textFragment2 = new TextFragment("Segunda linha de texto");
- // Definir propriedades do texto
- textFragment2.TextState.FontSize = 12;
- textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
- textFragment2.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
- textFragment2.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- // Criar fragmento de texto
- TextFragment textFragment3 = new TextFragment("E mais um pouco de texto...");
- // Definir propriedades do texto
- textFragment3.TextState.FontSize = 12;
- textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
- textFragment3.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
- textFragment3.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- textFragment3.TextState.Underline = true;
- paragraph.AppendLine(textFragment1);
- paragraph.AppendLine(textFragment2);
- paragraph.AppendLine(textFragment3);
- // Criar objeto TextBuilder
- TextBuilder textBuilder = new TextBuilder(pdfPage);
- // Anexar o fragmento de texto à página PDF
- textBuilder.AppendParagraph(paragraph);
-}
-// Salvar documento
-pdfDocument.Save(dataDir + "TextFragmentTests_Rotated4_out.pdf");
+ # Save the document
+ document.save(outfile)
```
+## Tópicos de Texto Relacionados
-
\ No newline at end of file
+- [Trabalhar com texto em PDF usando Python](/pdf/pt/python-net/working-with-text/)
+- [Adicionando texto ao PDF](/pdf/pt/python-net/add-text-to-pdf-file/)
+- [Formatar texto PDF em Python](/pdf/pt/python-net/text-formatting-inside-pdf/)
+- [Substituir texto em PDF com Python](/pdf/pt/python-net/replace-text-in-pdf/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md b/pt/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md
index 772faecc7f..4ae7a8c6ef 100644
--- a/pt/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-text/seach-and-get-text-from-pdf/_index.md
@@ -1,556 +1,430 @@
---
-title: Pesquisar e Obter Texto de Páginas de PDF
+title: Pesquisar e Extrair Texto de PDF em Python
linktitle: Pesquisar e Obter Texto
type: docs
weight: 60
url: /pt/python-net/search-and-get-text-from-pdf/
-description: Este artigo explica como usar várias ferramentas para pesquisar e obter um texto do Aspose.PDF para .NET.
-lastmod: "2024-02-17"
+description: Aprenda como pesquisar, inspecionar e extrair texto de documentos PDF em Python.
+lastmod: "2026-05-20"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Pesquise texto em PDFs e inspecione fragmentos extraídos em Python
+Abstract: Este artigo explica como pesquisar e extrair texto de documentos PDF usando Aspose.PDF for Python via .NET. Ele cobre `TextAbsorber` e `TextFragmentAbsorber`, incluindo extração baseada em região, buscas específicas por página, correspondência de frases e inspeção da posição do texto e das propriedades da fonte.
---
-
-
-
-## Pesquisar e Obter Texto de Todas as Páginas de um Documento PDF
-
-A classe [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber) permite encontrar texto, correspondendo a uma determinada frase, de todas as páginas de um documento PDF. Para buscar texto em todo o documento, é necessário chamar o método Accept da coleção de Páginas. O método [Accept](https://reference.aspose.com/pdf/python-net/aspose.pdf.page/accept/methods/3) aceita um objeto TextFragmentAbsorber como parâmetro, que retorna uma coleção de objetos TextFragment. Você pode percorrer todos os fragmentos e obter suas propriedades como Texto, Posição (XIndent, YIndent), Nome da Fonte, Tamanho da Fonte, IsAccessible, IsEmbedded, IsSubset, ForegroundColor, etc.
-
-O trecho de código a seguir mostra como buscar texto de todas as páginas.
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório dos documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Abrir documento
-Document pdfDocument = new Document(dataDir + "SearchAndGetTextFromAll.pdf");
-
-// Criar objeto TextAbsorber para encontrar todas as instâncias da frase de busca de entrada
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("text");
-
-// Aceitar o absorvedor para todas as páginas
-pdfDocument.Pages.Accept(textFragmentAbsorber);
-
-// Obter os fragmentos de texto extraídos
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-
-// Percorrer os fragmentos
-foreach (TextFragment textFragment in textFragmentCollection)
-{
-
- Console.WriteLine("Texto : {0} ", textFragment.Text);
- Console.WriteLine("Posição : {0} ", textFragment.Position);
- Console.WriteLine("XIndent : {0} ", textFragment.Position.XIndent);
- Console.WriteLine("YIndent : {0} ", textFragment.Position.YIndent);
- Console.WriteLine("Fonte - Nome : {0}", textFragment.TextState.Font.FontName);
- Console.WriteLine("Fonte - IsAccessible : {0} ", textFragment.TextState.Font.IsAccessible);
- Console.WriteLine("Fonte - IsEmbedded : {0} ", textFragment.TextState.Font.IsEmbedded);
- Console.WriteLine("Fonte - IsSubset : {0} ", textFragment.TextState.Font.IsSubset);
- Console.WriteLine("Tamanho da Fonte : {0} ", textFragment.TextState.FontSize);
- Console.WriteLine("Cor do Primeiro Plano : {0} ", textFragment.TextState.ForegroundColor);
-}
-```
+## Pesquisar texto do PDF
-Caso você precise pesquisar texto dentro de qualquer página específica de um PDF, especifique o número da página na coleção de páginas da instância do Documento e chame o método Accept para essa página (conforme mostrado na linha de código abaixo).
+Pesquisar e extrair texto de uma área retangular definida em um documento PDF usando o `TextAbsorber` classe. Ele usa o modo de formatação de texto puro para saída limpa e não formatada, o que é útil para extrair conteúdo de regiões estruturadas, como cabeçalhos, rodapés ou áreas de tabela. Ao combinar `TextExtractionOptions` e `TextSearchOptions` com restrições retangulares, você pode controlar onde e como o texto é extraído.
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Aceitar o absorvedor para uma página específica
-pdfDocument.Pages[2].Accept(textFragmentAbsorber);
-```
+Use esta página quando precisar auditar o conteúdo de texto de PDF, extrair texto para análise ou inspecionar posições e formatação dos fragmentos de texto correspondentes.
-## Pesquisar e Obter Segmentos de Texto de Todas as Páginas do Documento PDF
-
-Para pesquisar segmentos de texto em todas as páginas, você primeiro precisa obter os objetos TextFragment do documento.
- TextFragmentAbsorber permite que você encontre texto, correspondendo a uma frase específica, em todas as páginas de um documento PDF. Para buscar texto de todo o documento, você precisa chamar o método Accept da coleção Pages. O método Accept recebe um objeto TextFragmentAbsorber como parâmetro, que retorna uma coleção de objetos TextFragment. Uma vez que a TextFragmentCollection é obtida do documento, você precisa percorrer essa coleção e obter a TextSegmentCollection de cada objeto TextFragment. Depois disso, você pode obter todas as propriedades do objeto TextSegment individual. O seguinte trecho de código mostra como buscar segmentos de texto de todas as páginas.
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Abrir documento
-Document pdfDocument = new Document(dataDir + "SearchAndGetTextPage.pdf");
-
-// Criar objeto TextAbsorber para encontrar todas as instâncias da frase de busca de entrada
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("Figure");
-// Aceitar o absorber para todas as páginas
-pdfDocument.Pages.Accept(textFragmentAbsorber);
-// Obter os fragmentos de texto extraídos
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-// Percorrer os fragmentos
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- foreach (TextSegment textSegment in textFragment.Segments)
- {
- Console.WriteLine("Texto : {0} ", textSegment.Text);
- Console.WriteLine("Posição : {0} ", textSegment.Position);
- Console.WriteLine("XIndent : {0} ", textSegment.Position.XIndent);
- Console.WriteLine("YIndent : {0} ", textSegment.Position.YIndent);
- Console.WriteLine("Fonte - Nome : {0}", textSegment.TextState.Font.FontName);
- Console.WriteLine("Fonte - IsAccessible : {0} ", textSegment.TextState.Font.IsAccessible);
- Console.WriteLine("Fonte - IsEmbedded : {0} ", textSegment.TextState.Font.IsEmbedded);
- Console.WriteLine("Fonte - IsSubset : {0} ", textSegment.TextState.Font.IsSubset);
- Console.WriteLine("Tamanho da Fonte : {0} ", textSegment.TextState.FontSize);
- Console.WriteLine("Cor do Primeiro Plano : {0} ", textSegment.TextState.ForegroundColor);
- }
-}
-```
+1. Carregue o arquivo PDF usando 'ap.Document'.
+1. Configurar opções de extração de texto.
+1. Definir Área de Pesquisa com Restrições de Retângulo.
+1. Criar e Configurar TextAbsorber.
+1. Processar todas as páginas do documento.
+1. Recuperar e Exibir Texto Extraído.
+
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_absorber_search(input_file_path):
+ # Open PDF document
+ document = ap.Document(input_file_path)
+
+ text_extraction_options = ap.text.TextExtractionOptions(
+ ap.text.TextExtractionOptions.TextFormattingMode.PURE
+ )
+ text_search_options = ap.text.TextSearchOptions(ap.Rectangle(0, 0, 842, 250, True))
-Para buscar e obter TextSegments de uma página específica de um PDF, você precisa especificar o índice da página ao chamar o método Accept(..). Por favor, veja as seguintes linhas de código.
+ absorber = ap.text.TextAbsorber(text_extraction_options, text_search_options)
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// Aceitar o absorvedor para todas as páginas
-pdfDocument.Pages[2].Accept(textFragmentAbsorber);
+ # Process all pages
+ document.pages.accept(absorber)
+
+ print(f"Text fragments found: {absorber.text}")
```
-## Buscar e Obter Texto de todas as páginas usando Expressão Regular
+## Pesquisar texto de uma página PDF específica
-TextFragmentAbsorber ajuda você a buscar e recuperar texto, de todas as páginas, baseando-se em uma expressão regular.
- Primeiro, você precisa passar uma expressão regular para o construtor do TextFragmentAbsorber como a frase. Depois disso, você deve definir a propriedade TextSearchOptions do objeto TextFragmentAbsorber. Esta propriedade requer um objeto TextSearchOptions e você precisa passar true como um parâmetro para seu construtor ao criar novos objetos. Como você deseja recuperar o texto correspondente de todas as páginas, é necessário chamar o método Accept da coleção Pages. TextFragmentAbsorber retorna um TextFragmentCollection contendo todos os fragmentos que correspondem aos critérios especificados pela expressão regular. O trecho de código a seguir mostra como procurar e obter texto de todas as páginas com base em uma expressão regular.
+Pesquise e extraia texto de uma página e região específicas em um PDF usando o TextAbsorber do Aspose.PDF. Ele direciona à página 2 do documento e extrai apenas o texto encontrado dentro de uma área retangular definida.
+Ao combinar TextExtractionOptions (para controle de formatação) e TextSearchOptions (para limitação de área), você pode realizar extração de texto precisa e específica por página de forma eficiente.
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+1. Carregue o PDF Document.
+1. Configurar Opções de Extração de Texto.
+1. Restringir a extração de texto a uma área retangular específica na página.
+1. Criar e Configurar TextAbsorber.
+1. Processar uma página específica.
+1. Recuperar e Exibir Texto Extraído.
-// Abrir documento
-Document pdfDocument = new Document(dataDir + "SearchRegularExpressionAll.pdf");
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-// Criar objeto TextAbsorber para encontrar todas as frases que correspondem à expressão regular
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\\d{4}-\\d{4}"); // Como 1999-2000
+def text_absorber_search_page(input_file_path):
+ document = ap.Document(input_file_path)
-// Definir a opção de pesquisa de texto para especificar o uso de expressão regular
-TextSearchOptions textSearchOptions = new TextSearchOptions(true);
+ text_extraction_options = ap.text.TextExtractionOptions(
+ ap.text.TextExtractionOptions.TextFormattingMode.PURE
+ )
+ text_search_options = ap.text.TextSearchOptions(ap.Rectangle(0, 0, 842, 250, True))
-textFragmentAbsorber.TextSearchOptions = textSearchOptions;
+ absorber = ap.text.TextAbsorber(text_extraction_options, text_search_options)
-// Aceitar o absorvedor para todas as páginas
-pdfDocument.Pages.Accept(textFragmentAbsorber);
+ # Only page 2
+ document.pages[2].accept(absorber)
-// Obter os fragmentos de texto extraídos
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
+ print(f"Text fragments found: {absorber.text}")
+```
-// Percorrer os fragmentos
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- Console.WriteLine("Texto : {0} ", textFragment.Text);
- Console.WriteLine("Posição : {0} ", textFragment.Position);
- Console.WriteLine("XIndent : {0} ", textFragment.Position.XIndent);
- Console.WriteLine("YIndent : {0} ", textFragment.Position.YIndent);
- Console.WriteLine("Fonte - Nome : {0}", textFragment.TextState.Font.FontName);
- Console.WriteLine("Fonte - IsAccessible : {0} ", textFragment.TextState.Font.IsAccessible);
- Console.WriteLine("Fonte - IsEmbedded : {0} ", textFragment.TextState.Font.IsEmbedded);
- Console.WriteLine("Fonte - IsSubset : {0} ", textFragment.TextState.Font.IsSubset);
- Console.WriteLine("Tamanho da Fonte : {0} ", textFragment.TextState.FontSize);
- Console.WriteLine("Cor do Primeiro Plano : {0} ", textFragment.TextState.ForegroundColor);
-}
+## Analisar e Extrair Propriedades Detalhadas de Fragmentos de Texto de um PDF
+
+Ao contrário do TextAbsorber, que extrai texto bruto, o TextFragmentAbsorber fornece informações detalhadas e de baixo nível sobre cada fragmento de texto — como sua posição, atributos da fonte, cor e detalhes de incorporação.
+
+1. Carregue o PDF Document.
+1. Inicializar TextFragmentAbsorber.
+1. Processar todas as páginas do documento.
+1. Iterar Através de Fragmentos de Texto Extraídos.
+1. Imprimir informações básicas de texto.
+1. Imprimir detalhes de fonte e formatação.
+
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_fragment_absorber_search(input_file_path):
+ document = ap.Document(input_file_path)
+
+ absorber = ap.text.TextFragmentAbsorber()
+ document.pages.accept(absorber)
+
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
+ print("XIndent:", fragment.position.x_indent)
+ print("YIndent:", fragment.position.y_indent)
+ print("Font - Name:", fragment.text_state.font.font_name)
+ print("Font - IsAccessible:", fragment.text_state.font.is_accessible)
+ print("Font - IsEmbedded:", fragment.text_state.font.is_embedded)
+ print("Font - IsSubset:", fragment.text_state.font.is_subset)
+ print("Font Size:", fragment.text_state.font_size)
+ print("Foreground Color:", fragment.text_state.foreground_color)
```
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-TextFragmentAbsorber textFragmentAbsorber;
-// Para buscar uma correspondência exata de uma palavra, você pode considerar usar expressões regulares.
-textFragmentAbsorber = new TextFragmentAbsorber(@"\bWord\b", new TextSearchOptions(true));
+## Pesquisar uma frase de texto específica em uma única página PDF
+
+Pesquise uma frase de texto específica dentro de uma página de um documento PDF usando TextFragmentAbsorber. Ao contrário da pesquisa em todo o documento, esta abordagem limita a pesquisa a apenas uma página, tornando-a mais eficiente para confirmar a presença e a localização do texto em áreas direcionadas, como cabeçalhos, rodapés ou seções de conteúdo específicas.
-// Para buscar uma string em maiúsculas ou minúsculas, você pode considerar usar expressões regulares.
-textFragmentAbsorber = new TextFragmentAbsorber("(?i)Line", new TextSearchOptions(true));
+1. Carregue o PDF Document.
+1. Inicializar TextFragmentAbsorber com frase de pesquisa.
+1. Aplicar Absorber a uma Página Específica.
+1. Iterar Sobre Fragmentos Encontrados.
-// Para buscar todas as strings (analisar todas as strings) dentro do documento PDF, por favor, tente usar a seguinte expressão regular.
-textFragmentAbsorber = new TextFragmentAbsorber(@"[\S]+");
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-// Encontre a correspondência da string de busca e obtenha qualquer coisa após a string até a quebra de linha.
-textFragmentAbsorber = new TextFragmentAbsorber(@"(?i)the ((.)*)");
+def text_fragment_absorber_search_page(input_file_path):
+ document = ap.Document(input_file_path)
-// Por favor, use a seguinte expressão regular para encontrar o texto após a correspondência do regex.
-textFragmentAbsorber = new TextFragmentAbsorber(@"(?<=word).*");
+ absorber = ap.text.TextFragmentAbsorber("whale")
+ document.pages[2].accept(absorber)
-// Para buscar Hyperlink/URL's dentro do documento PDF, por favor, tente usar a seguinte expressão regular.
-textFragmentAbsorber = new TextFragmentAbsorber(@"(http|ftp|https):\/\/([\w\-_]+(?:(?:\.[\w\-_]+)+))([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?");
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
```
+## Pesquisa de Texto Sequencial Página a Página com Resultados Cumulativos
-## Buscar Texto com base em Regex e Adicionar Hiperlink
-
-Se você deseja adicionar um hiperlink sobre uma frase de texto com base em uma expressão regular, primeiro encontre todas as frases que correspondem a essa expressão regular específica usando TextFragmentAbsorber e adicione um hiperlink sobre essas frases.
-
-Para encontrar uma frase e adicionar um hiperlink sobre ela:
-
-1. Passe a expressão regular como um parâmetro para o construtor do TextFragmentAbsorber.
-2. Crie um objeto TextSearchOptions que especifica se a expressão regular é usada ou não.
-3. Obtenha as frases correspondentes em TextFragments.
-4. Percorra as correspondências para obter suas dimensões retangulares, altere a cor do primeiro plano para azul (opcional - para fazê-lo parecer um hiperlink) e crie um link usando o método CreateWebLink(..) da classe PdfContentEditor.
-5. Salve o PDF atualizado usando o método Save do objeto Document.
-O snippet de código a seguir mostra como buscar texto dentro de um arquivo PDF usando uma expressão regular e adicionar hiperlinks sobre as correspondências.
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, visite https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Crie um objeto absorvedor para encontrar todas as instâncias da frase de pesquisa de entrada
-TextFragmentAbsorber absorber = new TextFragmentAbsorber("\\d{4}-\\d{4}");
-// Habilitar pesquisa por expressão regular
-absorber.TextSearchOptions = new TextSearchOptions(true);
-// Abra o documento
-PdfContentEditor editor = new PdfContentEditor();
-// Vincular arquivo PDF de origem
-editor.BindPdf(dataDir + "SearchRegularExpressionPage.pdf");
-// Aceitar o absorvedor para a página
-editor.Document.Pages[1].Accept(absorber);
-
-int[] dashArray = { };
-String[] LEArray = { };
-System.Drawing.Color blue = System.Drawing.Color.Blue;
-
-// Percorrer os fragmentos
-foreach (TextFragment textFragment in absorber.TextFragments)
-{
- textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
- System.Drawing.Rectangle rect = new System.Drawing.Rectangle((int)textFragment.Rectangle.LLX,
- (int)Math.Round(textFragment.Rectangle.LLY), (int)Math.Round(textFragment.Rectangle.Width + 2),
- (int)Math.Round(textFragment.Rectangle.Height + 1));
- Enum[] actionName = new Enum[2] { Aspose.Pdf.Annotations.PredefinedAction.Document_AttachFile, Aspose.Pdf.Annotations.PredefinedAction.Document_ExtractPages };
- editor.CreateWebLink(rect, "http:// Www.aspose.com", 1, blue, actionName);
- editor.CreateLine(rect, "", (float)textFragment.Rectangle.LLX + 1, (float)textFragment.Rectangle.LLY - 1,
- (float)textFragment.Rectangle.URX, (float)textFragment.Rectangle.LLY - 1, 1, 1, blue, "S", dashArray, LEArray);
-}
-
-dataDir = dataDir + "SearchTextAndAddHyperlink_out.pdf";
-editor.Save(dataDir);
-editor.Close();
-```
+Pesquisar texto incrementalmente em várias páginas de um documento PDF usando o TextFragmentAbsorber da Aspose.PDF.
+Ao contrário de uma pesquisa de página única ou em todo o documento, esta abordagem permite processar as páginas sequencialmente, coletar resultados progressivamente e analisar fragmentos de texto com contexto específico da página. Este método é ideal para documentos grandes ou fluxos de trabalho de processamento progressivo.
+
+1. Carregue o PDF Document.
+1. Inicializar TextFragmentAbsorber e Definir Frase de Busca.
+1. Processar a Primeira Página. Pesquisar apenas a página 1. Imprime texto, número da página e posição. Forneça resultados isolados por página para maior clareza.
+1. Processar a próxima página sequencialmente. Mover para a página 2 e, opcionalmente, continuar pelo resto do documento. O 'absorber.visit()' garante a acumulação de resultados de todas as páginas visitadas. Imprime os resultados cumulativos da pesquisa, mostrando tanto o texto quanto a localização.
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-## Pesquisar e Desenhar Retângulo ao redor de cada TextFragment
+def text_fragment_absorber_sequential_search(input_file_path):
+ document = ap.Document(input_file_path)
-Aspose.PDF para .NET suporta a funcionalidade de pesquisar e obter as coordenadas de cada caractere ou fragmento de texto. Portanto, para ter certeza sobre as coordenadas retornadas para cada caractere, podemos considerar destacar (adicionando retângulo) ao redor de cada caractere.
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.phrase = "whale"
-No caso de um parágrafo de texto, você pode considerar usar alguma expressão regular para determinar a quebra do parágrafo e desenhar um retângulo ao redor dele. Por favor, veja o seguinte trecho de código. O seguinte trecho de código obtém as coordenadas de cada caractere e cria um retângulo ao redor de cada caractere.
+ # First page
+ document.pages[1].accept(absorber)
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Page:", fragment.page.number)
+ print("Position:", fragment.position)
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório dos documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ print("--")
-// Abrir documento
-Document document = new Document(dataDir + "SearchAndGetTextFromAll.pdf");
+ # Continue to next page
+ document.pages[2].accept(absorber)
+ absorber.visit(document)
-// Criar objeto TextAbsorber para encontrar todas as frases que correspondem à expressão regular
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Page:", fragment.page.number)
+ print("Position:", fragment.position)
+```
+
+## Pesquisa de Frase Direcionada dentro de uma Área Retangular
-TextFragmentAbsorber textAbsorber = new TextFragmentAbsorber(@"[\S]+");
+Pesquisar uma frase específica dentro de um PDF restringindo a pesquisa a uma área retangular específica em uma única página.
+Ao combinar a pesquisa de frases com restrições espaciais, você pode localizar o conteúdo com precisão em regiões designadas sem analisar a página ou o documento inteiro. Isso é particularmente útil para formulários, cabeçalhos, rodapés ou relatórios estruturados onde o conteúdo aparece em locais previsíveis.
-TextSearchOptions textSearchOptions = new TextSearchOptions(true);
+1. Carregue o PDF Document.
+1. Inicializar TextFragmentAbsorber com Frase e Restrições Retangulares
+1. Aplicar Absorber na página 2. Restringe o processamento à página 2, reduzindo a computação desnecessária. Garante que a pesquisa seja específica da página.
+1. Iterar pelos fragmentos encontrados e imprimir
-textAbsorber.TextSearchOptions = textSearchOptions;
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-document.Pages.Accept(textAbsorber);
+def text_fragment_absorber_search_phrase(input_file_path):
+ document = ap.Document(input_file_path)
-var editor = new PdfContentEditor(document);
+ absorber = ap.text.TextFragmentAbsorber(
+ "elephant", ap.text.TextSearchOptions(ap.Rectangle(0, 0, 842, 250, True))
+ )
-foreach (TextFragment textFragment in textAbsorber.TextFragments)
-{
- foreach (TextSegment textSegment in textFragment.Segments)
- {
- DrawBox(editor, textFragment.Page.Number, textSegment, System.Drawing.Color.Red);
- }
+ document.pages[2].accept(absorber)
-}
-dataDir = dataDir + "SearchTextAndDrawRectangle_out.pdf";
-document.Save(dataDir);
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
```
+## Pesquisa de Padrão de Texto em PDF Usando Expressões Regulares
-## Destaque cada caractere no documento PDF
-
-{{% alert color="primary" %}}
-
-Você pode tentar buscar texto em um documento usando Aspose.PDF e obter os resultados online neste [link](https://products.aspose.app/pdf/search)
-
-{{% /alert %}}
-
-Aspose.PDF para .NET suporta o recurso de buscar e obter as coordenadas de cada caractere ou fragmentos de texto. Portanto, para ter certeza sobre as coordenadas sendo retornadas para cada caractere, podemos considerar destacá-los (adicionando retângulo) ao redor de cada caractere. O seguinte trecho de código obtém as coordenadas de cada caractere e cria um retângulo ao redor de cada um.
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-int resolution = 150;
-
-Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(dataDir + "input.pdf");
-
-using (MemoryStream ms = new MemoryStream())
-{
- PdfConverter conv = new PdfConverter(pdfDocument);
- conv.Resolution = new Resolution(resolution, resolution);
- conv.GetNextImage(ms, System.Drawing.Imaging.ImageFormat.Png);
-
- Bitmap bmp = (Bitmap)Bitmap.FromStream(ms);
-
- using (System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(bmp))
- {
- float scale = resolution / 72f;
- gr.Transform = new System.Drawing.Drawing2D.Matrix(scale, 0, 0, -scale, 0, bmp.Height);
-
- for (int i = 0; i < pdfDocument.Pages.Count; i++)
- {
-Page page = pdfDocument.Pages[1];
-// Criar objeto TextAbsorber para encontrar todas as palavras
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber(@"[\S]+");
-textFragmentAbsorber.TextSearchOptions.IsRegularExpressionUsed = true;
-page.Accept(textFragmentAbsorber);
-// Obter os fragmentos de texto extraídos
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
-// Loop através dos fragmentos
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- if (i == 0)
- {
- gr.DrawRectangle(
- Pens.Yellow,
- (float)textFragment.Position.XIndent,
- (float)textFragment.Position.YIndent,
- (float)textFragment.Rectangle.Width,
- (float)textFragment.Rectangle.Height);
-
- for (int segNum = 1; segNum <= textFragment.Segments.Count; segNum++)
- {
-TextSegment segment = textFragment.Segments[segNum];
-
-for (int charNum = 1; charNum <= segment.Characters.Count; charNum++)
-{
- CharInfo characterInfo = segment.Characters[charNum];
-
- Aspose.Pdf.Rectangle rect = page.GetPageRect(true);
- Console.WriteLine("TextFragment = " + textFragment.Text + " Page URY = " + rect.URY +
- " TextFragment URY = " + textFragment.Rectangle.URY);
-
- gr.DrawRectangle(
- Pens.Black,
- (float)characterInfo.Rectangle.LLX,
- (float)characterInfo.Rectangle.LLY,
- (float)characterInfo.Rectangle.Width,
- (float)characterInfo.Rectangle.Height);
-}
-
-gr.DrawRectangle(
-Pens.Green,
-(float)segment.Rectangle.LLX,
-(float)segment.Rectangle.LLY,
-(float)segment.Rectangle.Width,
-(float)segment.Rectangle.Height);
- }
- }
-}
- }
- }
- dataDir = dataDir + "HighlightCharacterInPDF_out.png";
- bmp.Save(dataDir, System.Drawing.Imaging.ImageFormat.Png);
-}
-```
+Pesquise padrões de texto em um PDF usando expressões regulares. Ao habilitar o modo regex em TextFragmentAbsorber, você pode localizar padrões complexos como números, datas, preços, coordenadas ou formatos de texto personalizados. A função limita a pesquisa a uma página específica, tornando-a eficiente para extração direcionada de dados estruturados.
+1. Carregue o PDF Document.
+1. Inicialize TextFragmentAbsorber com padrão Regex.
+1. Aplicar Absorber à Página 2. Limita a busca à página 2 para eficiência e precisão. Apenas o texto nesta página é analisado.
+1. Iterar através dos fragmentos encontrados. Imprime os fragmentos de texto correspondentes e suas coordenadas. Fornece informações de localização precisas para padrões extraídos.
-## Adicionar e Pesquisar Texto Oculto
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-Às vezes, queremos adicionar texto oculto em um documento PDF e, em seguida, pesquisar esse texto oculto e usar sua posição para pós-processamento. Para sua conveniência, o Aspose.PDF para .NET fornece essas habilidades. Você pode adicionar texto oculto durante a geração do documento. Além disso, você pode encontrar texto oculto usando o TextFragmentAbsorber. Para adicionar texto oculto, defina TextState.Invisible como 'true' para o texto adicionado. O TextFragmentAbsorber encontra todo o texto que corresponde ao padrão (se especificado). É o comportamento padrão que não pode ser alterado. Para verificar se o texto encontrado é realmente invisível, a propriedade TextState.Invisible pode ser usada. O trecho de código abaixo mostra como usar esse recurso.
+def text_fragment_absorber_search_regex(input_file_path):
+ document = ap.Document(input_file_path)
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório dos documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ absorber = ap.text.TextFragmentAbsorber(
+ r"\d+\.\d+", ap.text.TextSearchOptions(is_regular_expression_used=True)
+ )
-//Criar documento com texto oculto
-Aspose.Pdf.Document doc = new Aspose.Pdf.Document();
-Page page = doc.Pages.Add();
-TextFragment frag1 = new TextFragment("Este é um texto comum.");
-TextFragment frag2 = new TextFragment("Este é um texto invisível.");
+ document.pages[2].accept(absorber)
-//Definir propriedade de texto - invisível
-frag2.TextState.Invisible = true;
+ for fragment in absorber.text_fragments:
+ print("Text:", fragment.text)
+ print("Position:", fragment.position)
+```
-page.Paragraphs.Add(frag1);
-page.Paragraphs.Add(frag2);
-doc.Save(dataDir + "39400_out.pdf");
-doc.Dispose();
+## Converter Correspondências de Texto em Hiperlinks no PDF Usando TextFragmentAbsorber
-//Pesquisar texto no documento
-doc = new Aspose.Pdf.Document(dataDir + "39400_out.pdf");
-TextFragmentAbsorber absorber = new TextFragmentAbsorber();
-absorber.Visit(doc.Pages[1]);
+Pesquisar frases de texto específicas em um PDF e convertê-las em hyperlinks clicáveis. Usando TextFragmentAbsorber com padrões regex, ele localiza palavras-alvo e aplica estilo visual (cor e sublinhado) junto com links interativos.
-foreach (TextFragment fragment in absorber.TextFragments)
-{
- //Fazer algo com os fragmentos
- Console.WriteLine("Texto '{0}' na posição {1} invisibilidade: {2} ",
- fragment.Text, fragment.Position.ToString(), fragment.TextState.Invisible);
-}
-doc.Dispose();
-```
+1. Carregue o PDF Document.
+1. Inicialize TextFragmentAbsorber com padrão Regex.
+1. Aplicar Absorber à página 1.
+1. Estilizar e Adicionar Hiperlinks às Correspondências.
+1. Salvar PDF Modificado.
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
-## Procurando Texto Com .NET Regex
+def text_fragment_absorber_search_and_add_hyperlink(input_file_path):
+ document = ap.Document(input_file_path)
-Aspose.PDF para .NET fornece a capacidade de pesquisar documentos usando a opção padrão .NET Regex. O TextFragmentAbsorber pode ser usado para este propósito, como mostrado no exemplo de código abaixo.
+ absorber = ap.text.TextFragmentAbsorber("whale|elephant")
+ absorber.text_search_options = ap.text.TextSearchOptions(True)
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ absorber.visit(document.pages[1])
-// Criar objeto Regex para encontrar todas as palavras
-System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"[\S]+");
+ for fragment in absorber.text_fragments:
+ fragment.text_state.foreground_color = ap.Color.blue
+ fragment.text_state.underline = True
+ fragment.hyperlink = ap.WebHyperlink(
+ f"https://en.wikipedia.org/wiki/{fragment.text}"
+ )
-// Abrir documento
-Aspose.Pdf.Document document = new Aspose.Pdf.Document(dataDir + "SearchTextRegex.pdf");
+ output = input_file_path.replace("in.pdf", "out.pdf")
+ document.save(output)
+```
-// Obter uma página específica
-Page page = document.Pages[1];
+## Pesquisar e Identificar Texto Estilizado em PDF Usando TextFragmentAbsorber
-// Criar objeto TextAbsorber para encontrar todas as instâncias do regex de entrada
-TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber(regex);
-textFragmentAbsorber.TextSearchOptions.IsRegularExpressionUsed = true;
+Pesquise fragmentos de texto em um PDF com base em suas propriedades de formatação em vez de seu conteúdo. Usando TextFragmentAbsorber, ele identifica texto com estilos específicos, como texto em negrito.
-// Aceitar o absorvedor para a página
-page.Accept(textFragmentAbsorber);
+1. Carregue o PDF Document.
+1. Inicializar TextFragmentAbsorber.
+1. Aplicar Absorber à página 1.
+1. Inspecionar Fragmentos de Texto com Base na Formatação. Verifica o estilo da fonte para formatação em negrito.
-// Obter os fragmentos de texto extraídos
-TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_fragment_absorber_search_styled_text(input_file_path):
+ document = ap.Document(input_file_path)
+
+ absorber = ap.text.TextFragmentAbsorber()
+ absorber.text_search_options = ap.text.TextSearchOptions(True)
+
+ absorber.visit(document.pages[1])
+
+ for fragment in absorber.text_fragments:
+ if fragment.text_state.font_style == ap.text.FontStyles.BOLD:
+ print(f"Bold: {fragment.text}")
+ if fragment.text_state.invisible:
+ print(f"Invisible: {fragment.text}")
+```
-// Percorrer os fragmentos
-foreach (TextFragment textFragment in textFragmentCollection)
-{
- Console.WriteLine(textFragment.Text);
-}
+## Realce Visual de Texto em Páginas PDF
+
+Esta função combina reconhecimento de texto e renderização em um único fluxo de trabalho. Ela não apenas extrai o texto, mas também o visualiza destacando fragmentos, segmentos e caracteres em retângulos codificados por cores em imagens PNG de cada página.
+
+Nosso exemplo realiza visualização avançada de texto em um PDF por:
+
+- pesquisando por todos os fragmentos de texto visíveis usando expressões regulares
+- renderizando cada página PDF em uma imagem PNG de alta resolução
+- desenhando retângulos coloridos ao redor de fragmentos de texto, segmentos de texto e caracteres individuais
+
+1. Defina a resolução da imagem de saída. Cada página PDF é convertida em uma imagem PNG de 150 DPI.
+1. Abra o PDF e inicialize o Text Absorber.
+1. Processar Cada Página. Aplicar o absorvedor a cada página. Coletar todos os fragmentos de texto detectados e suas posições geométricas.
+1. Converter Page para PNG Stream.
+1. Prepare o objeto Graphics para desenho.
+1. Aplicar Transformação de Coordenadas. Converter coordenadas PDF para pixels de imagem.
+1. Desenhar retângulos para elementos de texto.
+1. Salvar o Resultado.
+
+```python
+import io
+import sys
+import shutil
+import aspose.pdf as ap
+import aspose.pydrawing as drawing
+from os import path
+
+def text_fragment_absorber_search_and_highlight(infile):
+ resolution = 150
+ png_device = ap.devices.PngDevice(ap.devices.Resolution(resolution, resolution))
+
+ # Open PDF document
+ document = ap.Document(infile)
+ absorber = ap.text.TextFragmentAbsorber(r"[\S]+")
+ absorber.text_search_options.is_regular_expression_used = True
+
+ for page in document.pages:
+ page.accept(absorber)
+ stream = io.BytesIO()
+ png_device.process(page, stream)
+ with drawing.Bitmap.from_stream(stream) as bmp:
+ with drawing.Graphics.from_image(bmp) as gr:
+ scale = resolution / 72
+ gr.transform = drawing.drawing2d.Matrix(
+ float(scale),
+ float(0),
+ float(0),
+ float(-scale),
+ float(0),
+ float(bmp.height),
+ )
+ text_fragment_collection = absorber.text_fragments
+ # Loop through the fragments
+ for text_fragment in text_fragment_collection:
+ gr.draw_rectangle(
+ drawing.Pens.yellow,
+ float(text_fragment.position.x_indent),
+ float(text_fragment.position.y_indent),
+ float(text_fragment.rectangle.width),
+ float(text_fragment.rectangle.height),
+ )
+ for seg_num in range(1, len(text_fragment.segments) + 1):
+ segment = text_fragment.segments[seg_num]
+ for char_num in range(1, len(segment.characters) + 1):
+ character_info = segment.characters[char_num]
+ rect = page.get_page_rect(True)
+ print(
+ f"TextFragment = {text_fragment.text}"
+ + f" Page URY = {rect.ury}"
+ + f" TextFragment URY = {text_fragment.rectangle.ury}"
+ )
+ gr.draw_rectangle(
+ drawing.Pens.black,
+ float(character_info.rectangle.llx),
+ float(character_info.rectangle.lly),
+ float(character_info.rectangle.width),
+ float(character_info.rectangle.height),
+ )
+ gr.draw_rectangle(
+ drawing.Pens.green,
+ float(segment.rectangle.llx),
+ float(segment.rectangle.lly),
+ float(segment.rectangle.width),
+ float(segment.rectangle.height),
+ )
+
+ # Save result
+ bmp.save(
+ infile.replace("_in.pdf", str(page.number) + "_out.png"),
+ drawing.imaging.ImageFormat.png,
+ )
```
+## Tópicos de Texto Relacionados
-
\ No newline at end of file
+- [Trabalhar com texto em PDF usando Python](/pdf/pt/python-net/working-with-text/)
+- [Substituir texto em PDF via Python](/pdf/pt/python-net/replace-text-in-pdf/)
+- [Adicionar dicas de ferramenta ao texto PDF em Python](/pdf/pt/python-net/pdf-tooltip/)
+- [Adicionando texto ao PDF](/pdf/pt/python-net/add-text-to-pdf-file/)
\ No newline at end of file
diff --git a/pt/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md b/pt/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md
index bc1099a93d..2f0b1af73a 100644
--- a/pt/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md
+++ b/pt/python-net/advanced-operations/working-with-text/text-formatting-inside-pdf/_index.md
@@ -1,426 +1,995 @@
---
-title: Formatação de Texto dentro de PDF usando Python
-linktitle: Formatação de Texto dentro de PDF
+title: Formatar texto PDF em Python
+linktitle: Formatar texto PDF em Python
type: docs
-weight: 30
-url: /pt/python-net/text-formatting-inside-pdf/
-description: Esta página explica como formatar texto dentro do seu arquivo PDF. Existem adição de recuo de linha, adição de borda de texto, adição de texto sublinhado, etc.
-lastmod: "2024-02-17"
+weight: 70
+url: /python-net/text-formatting-inside-pdf/
+description: Aprenda a formatar texto em documentos PDF em Python utilizando espaçamento, margens, avanço e opções de estilo.
+lastmod: "2026-05-05"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Formate e estilize texto em ficheiros PDF com Python.
+Abstract: Este artigo explica como formatar texto em documentos PDF utilizando o Aspose.PDF para Python via .NET. Aprenda a controlar o espaçamento, o avanço, as margens, os sublinhados, os efeitos de tachado e outras opções de estilo de texto em Python.
---
-
-
-
-## Como adicionar Recuo de Linha ao PDF
-
-Aspose.PDF para .NET oferece a propriedade SubsequentLinesIndent na classe [TextFormattingOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textformattingoptions). Que pode ser usada para especificar recuo de linha em cenários de geração de PDF com TextFragment e coleção de Parágrafos.
-
-Por favor, use o seguinte trecho de código para usar a propriedade:
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Criar novo objeto de documento
-Aspose.Pdf.Document document = new Aspose.Pdf.Document();
-Aspose.Pdf.Page page = document.Pages.Add();
-
-string textFragment = string.Concat(Enumerable.Repeat("A quick brown fox jumped over the lazy dog. ", 10));
-
-Aspose.Pdf.Text.TextFragment text = new Aspose.Pdf.Text.TextFragment(textFragment);
-
-// Inicializar TextFormattingOptions para o fragmento de texto e especificar o valor SubsequentLinesIndent
-text.TextState.FormattingOptions = new Aspose.Pdf.Text.TextFormattingOptions()
-{
- SubsequentLinesIndent = 20
-};
-
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Line2");
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Line3");
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Line4");
-page.Paragraphs.Add(text);
-
-text = new Aspose.Pdf.Text.TextFragment("Line5");
-page.Paragraphs.Add(text);
-
-document.Save(dataDir + "SubsequentIndent_out.pdf");
+
+## Espaçamento entre linhas e caracteres
+
+### Utilização do espaçamento entre linhas
+
+#### Como formatar texto com espaçamento entre linhas personalizado em Python - Caso simples
+
+O Aspose.PDF for Python oferece uma abordagem direta para controlar o layout e a legibilidade do texto através de ajustes de espaçamento entre linhas.
+
+O nosso excerto de código mostra como controlar o espaçamento entre linhas num documento PDF. Lê o texto de um ficheiro (ou utiliza uma mensagem de fallback), aplica o tamanho de letra e o espaçamento entre linhas personalizados e adiciona o texto formatado a uma nova página PDF.
+
+1. Crie um novo documento PDF.
+1. Carregue o texto de partida.
+1. Inicialize um objeto TextFragment e atribua-lhe o texto carregado.
+1. Defina as propriedades de tipo de letra e espaçamento para o texto. Estes valores determinam o quão estreitas ou espaçadas as linhas de texto aparecem:
+ - Tamanho da letra: 12 pontos
+ - Espaçamento entre linhas: 16 pontos
+1. Insira o fragmento de texto formatado na coleção de parágrafos da página.
+1. Guarde o documento.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def specify_line_spacing_simple_case(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as f:
+ text = f.read()
+ else:
+ text = "Lorem ipsum text not found."
+
+ text_fragment = ap.text.TextFragment(text)
+ text_fragment.text_state.font_size = 12
+ text_fragment.text_state.line_spacing = 16
+ page.paragraphs.add(text_fragment)
+
+ document.save(outfile)
```
+#### Como formatar texto com espaçamento entre linhas personalizado em Python - Caso específico
+
+Vamos ver como aplicar diferentes modos de espaçamento entre linhas num documento PDF utilizando uma fonte TrueType (TTF) personalizada.
+It loads text from a file, embeds a specific font, and renders the same text twice on a PDF page—each time using a different line spacing mode:
+
+- FONT_SIZE mode: The line spacing equals the font size.
+- FULL_SIZE mode: The line spacing accounts for the full height of the font, including ascenders and descenders.
+
+O exemplo mostra como o comportamento do espaçamento entre linhas pode variar consoante o modo selecionado.
+
+1. Create a new PDF document.
+1. Specify the paths for both the custom font file and the text source file.
+1. Load text content.
+1. Open the custom font.
+1. Create and configure the first TextFragment (FONT_SIZE mode). Set line_spacing to 'TextFormattingOptions.LineSpacingMode.FONT_SIZE', meaning line spacing equals the font size.
+1. Create and configure the second TextFragment (FULL_SIZE mode). Set line_spacing to 'TextFormattingOptions.LineSpacingMode.FULL_SIZE', which uses the font’s full height.
+1. Append both text fragments to the same PDF page.
+1. Save the finished document to the specified output location.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def specify_line_spacing_specific_case(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ font_file = path.join(DATA_DIR, "HPSimplified.ttf")
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as f:
+ text = f.read()
+ else:
+ text = "Lorem ipsum text not found."
+
+ with open(font_file, "rb") as font_stream:
+ font = ap.text.FontRepository.open_font(font_stream, ap.text.FontTypes.TTF)
+
+ fragment1 = ap.text.TextFragment(text)
+ fragment1.text_state.font = font
+ fragment1.text_state.formatting_options = ap.text.TextFormattingOptions()
+ fragment1.text_state.formatting_options.line_spacing = (
+ ap.text.TextFormattingOptions.LineSpacingMode.FONT_SIZE
+ )
+ page.paragraphs.add(fragment1)
+
+ fragment2 = ap.text.TextFragment(text)
+ fragment2.text_state.font = font
+ fragment2.text_state.formatting_options = ap.text.TextFormattingOptions()
+ fragment2.text_state.formatting_options.line_spacing = (
+ ap.text.TextFormattingOptions.LineSpacingMode.FULL_SIZE
+ )
+ page.paragraphs.add(fragment2)
+
+ document.save(outfile)
+```
+
+
+
+### Utilização do espaçamento entre caracteres
+
+#### Como controlar o espaçamento entre caracteres em texto PDF utilizando a classe TextFragment
+
+O espaçamento entre caracteres determina a distância entre caracteres individuais numa linha de texto, sendo útil para ajustar o aspeto do texto com precisão ou obter efeitos tipográficos específicos.
+
+1. Initializes a new Document object and adds a blank page for placing text.
+1. Define Fragment Generator. Implements a helper function make_fragment(spacing):
+ - create a TextFragment with the sample text.
+ - set the font.
+1. Add text fragments with different spacing values.
+1. Save the Document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def character_spacing_using_text_fragment(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ def make_fragment(spacing):
+ fragment = ap.text.TextFragment("Sample Text with character spacing")
+ fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment.text_state.font_size = 14
+ fragment.text_state.character_spacing = spacing
+ return fragment
+
+ page.paragraphs.add(make_fragment(2.0))
+ page.paragraphs.add(make_fragment(1.0))
+ page.paragraphs.add(make_fragment(0.75))
-## Como adicionar Borda de Texto
-
-O trecho de código a seguir mostra como adicionar uma borda a um texto usando TextBuilder e configurando a propriedade DrawTextRectangleBorder de TextState:
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Criar novo objeto de documento
-Document pdfDocument = new Document();
-// Obter página específica
-Page pdfPage = (Page)pdfDocument.Pages.Add();
-// Criar fragmento de texto
-TextFragment textFragment = new TextFragment("texto principal");
-textFragment.Position = new Position(100, 600);
-// Definir propriedades do texto
-textFragment.TextState.FontSize = 12;
-textFragment.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
-textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Red;
-// Definir a propriedade StrokingColor para desenhar borda (traçado) ao redor do retângulo de texto
-textFragment.TextState.StrokingColor = Aspose.Pdf.Color.DarkRed;
-// Definir o valor da propriedade DrawTextRectangleBorder para true
-textFragment.TextState.DrawTextRectangleBorder = true;
-TextBuilder tb = new TextBuilder(pdfPage);
-tb.AppendText(textFragment);
-// Salvar o documento
-pdfDocument.Save(dataDir + "PDFWithTextBorder_out.pdf");
+ document.save(outfile)
```
+
+
+#### Como controlar o espaçamento entre caracteres em texto PDF utilizando TextParagraph e TextBuilder
+
+O Aspose.PDF permite aplicar espaçamento personalizado entre caracteres ao adicionar texto a um documento PDF utilizando `TextParagraph` e `TextBuilder`.
+O exemplo define uma área específica na página, configura a quebra de texto e apresenta um fragmento de texto com espaçamento ajustado entre os caracteres.
+
+Utilizar `TextParagraph` é ideal quando precisa de controlo preciso sobre a colocação e o layout do texto, por exemplo ao construir blocos de texto estruturados ou com várias colunas.
+
+1. Create a new PDF document.
+1. Initialize a TextBuilder instance for the page.
+1. Create and configure a TextParagraph.
+ - Set the word wrap mode to 'TextFormattingOptions.WordWrapMode.BY_WORDS'.
+1. Create a TextFragment with custom character spacing.
+ - Create a new TextFragment and set its text (e.g., "Sample Text with character spacing").
+ - Specify font attributes such as Arial and font size 14 pt.
+ - Apply character spacing = 2.0, which increases the space between characters.
+1. Add the TextFragment to the TextParagraph.
+1. Add the TextParagraph to the page.
+1. Save the PDF document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def character_spacing_using_text_paragraph(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.rectangle = ap.Rectangle(100, 700, 500, 750, True)
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ fragment = ap.text.TextFragment("Sample Text with character spacing")
+ fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment.text_state.font_size = 14
+ fragment.text_state.character_spacing = 2.0
+
+ paragraph.append_line(fragment)
+ builder.append_paragraph(paragraph)
+ document.save(outfile)
+```
+
+## Criar listas
+
+Ao trabalhar com ficheiros PDF, pode precisar de apresentar informações estruturadas, como listas, quer sejam com marcadores, numeradas ou formatadas com HTML ou LaTeX.
+O Aspose.PDF for Python via .NET oferece várias formas flexíveis de criar e formatar listas diretamente nos seus documentos PDF, permitindo controlo total sobre layout, fonte e estilo.
+
+Este artigo demonstra várias abordagens para criar listas em PDFs, desde formatação em texto simples até renderização avançada com HTML e LaTeX. Cada método atende a um caso de uso específico, quer prefira controlo programático preciso, quer um estilo conveniente baseado em marcação.
+
+No final deste artigo, saberá como:
+
+- Criar listas personalizadas com marcadores e listas numeradas utilizando `TextParagraph` e `TextBuilder`.
+
+- Utilizar fragmentos HTML (`HtmlFragment`) para renderizar facilmente listas `
` e `` em PDFs.
+
+- Tirar partido de fragmentos LaTeX (`TeXFragment`) para formatação de listas matemáticas ou científicas.
+
+- Controlar a quebra de texto, os estilos de fonte e o posicionamento do layout dentro de uma página.
+
+- Compreender a diferença entre a construção manual de listas e as abordagens orientadas por marcação.
-## Como adicionar Texto Sublinhado
-
-O trecho de código a seguir mostra como adicionar texto sublinhado ao criar um novo arquivo PDF.
-
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-
-// Criar objeto de documentação
-Document pdfDocument = new Document();
-// Adicionar página de idade ao documento PDF
-pdfDocument.Pages.Add();
-// Criar TextBuilder para a primeira página
-TextBuilder tb = new TextBuilder(pdfDocument.Pages[1]);
-// TextFragment com texto de exemplo
-TextFragment fragment = new TextFragment("Mensagem de teste");
-// Definir a fonte para TextFragment
-fragment.TextState.Font = FontRepository.FindFont("Arial");
-fragment.TextState.FontSize = 10;
-// Definir o formato do texto como Sublinhado
-fragment.TextState.Underline = true;
-// Especificar a posição onde o TextFragment precisa ser colocado
-fragment.Position = new Position(10, 800);
-// Anexar TextFragment ao arquivo PDF
-tb.AppendText(fragment);
-
-dataDir = dataDir + "AddUnderlineText_out.pdf";
-
-// Salvar documento PDF resultante.
-pdfDocument.Save(dataDir);
+### Criar lista numerada
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_bullet_list(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.rectangle = ap.Rectangle(80, 200, 400, 800, True)
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ for item in items:
+ fragment = ap.text.TextFragment("• " + item)
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+ paragraph.append_line(fragment)
+
+ builder.append_paragraph(paragraph)
+ document.save(outfile)
```
+### Criar lista com marcadores
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_numbered_list(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+
+ builder = ap.text.TextBuilder(page)
+ paragraph = ap.text.TextParagraph()
+ paragraph.rectangle = ap.Rectangle(80, 200, 400, 800, True)
+ paragraph.formatting_options.wrap_mode = (
+ ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
+ )
+
+ for i, item in enumerate(items):
+ fragment = ap.text.TextFragment(f"{i + 1}. {item}")
+ fragment.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ fragment.text_state.font_size = 12
+ paragraph.append_line(fragment)
+
+ builder.append_paragraph(paragraph)
+ document.save(outfile)
+```
-## Como adicionar Borda em Torno do Texto Adicionado
+### Criar uma lista numerada em versão HTML
+
+Crie uma lista numerada (ordenada) num documento PDF utilizando fragmentos HTML. O exemplo converte uma lista Python de cadeias de texto num elemento HTML `` e insere-o numa página PDF como `HtmlFragment`.
+
+Utilizar fragmentos HTML permite incorporar diretamente no PDF funcionalidades de formatação baseadas em HTML, como listas numeradas, negrito, itálico e muito mais.
+
+1. Create a new PDF document and add a page.
+1. Prepare the list items.
+1. Convert the list to an HTML ordered list.
+ - Use the `` tag for a numbered list.
+ - Wrap each item with 'li' tags using a list comprehension.
+1. Convert the HTML string into an HtmlFragment object that can be added to the PDF page.
+1. Insert the HtmlFragment into the page’s paragraphs collection.
+1. Save the PDF document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_numbered_list_html_version(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+ html_list = "" + "".join([f"
{item}
" for item in items]) + ""
+ html_fragment = ap.HtmlFragment(html_list)
+ page.paragraphs.add(html_fragment)
+ document.save(outfile)
+```
-Você tem controle sobre a aparência do texto que adiciona. O exemplo abaixo mostra como adicionar uma borda em torno de um pedaço de texto que você adicionou, desenhando um retângulo ao redor dele. Descubra mais sobre a classe [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor).
+
+
+### Criar uma lista com marcadores em versão HTML
+
+A nossa biblioteca mostra como criar uma lista com marcadores (não ordenada) num documento PDF utilizando fragmentos HTML. O exemplo converte uma lista Python de cadeias de texto num elemento HTML `
` e insere-o numa página PDF como `HtmlFragment`. Utilizar fragmentos HTML permite aproveitar diretamente no PDF recursos de formatação HTML, como listas, negrito e itálico.
+
+1. Create a new PDF document and add a page.
+1. Prepare the list items.
+1. Convert the list to an HTML unordered list.
+ - Use the `
` tag for an unordered (bulleted) list.
+ - Wrap each item with 'li' tags using a list comprehension.
+1. Create an HtmlFragment. Convert the HTML string into an HtmlFragment object that can be added to the PDF page.
+1. Insert the HtmlFragment into the page’s paragraphs collection.
+1. Save the PDF document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_bullet_list_html_version(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item in the list",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+ html_list = "
" + "".join([f"
{item}
" for item in items]) + "
"
+ html_fragment = ap.HtmlFragment(html_list)
+ page.paragraphs.add(html_fragment)
+ document.save(outfile)
+```
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+
+
+### Criar uma lista com marcadores em versão LaTeX
+
+Crie uma lista com marcadores (não ordenada) num PDF utilizando fragmentos LaTeX (`TeXFragment`). O exemplo converte uma lista Python de cadeias de texto num ambiente LaTeX `itemize` e insere-o numa página PDF. Os fragmentos LaTeX são ideais quando pretende renderizar fórmulas matemáticas, símbolos ou listas estruturadas com formatação precisa.
+
+1. Create a new PDF document and add a page.
+1. Define a Python list of strings that will become bullet points in the LaTeX itemize environment.
+1. Convert the list into a LaTeX itemize environment:
+ - Wrap the items with \begin{itemize} and \end{itemize}.
+ - Each item is prefixed with \item using a list comprehension.
+1. Convert the LaTeX string into a TeXFragment object that can be rendered in the PDF.
+1. Add the LaTeX fragment to the page.
+1. Save the PDF document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_bullet_list_latex_version(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+ tex_list = (
+ "Lists are easy to create: \\begin{itemize}"
+ + "".join([f"\\item {i}" for i in items])
+ + "\\end{itemize}"
+ )
+ tex_fragment = ap.TeXFragment(tex_list)
+ page.paragraphs.add(tex_fragment)
+ document.save(outfile)
+```
-PdfContentEditor editor = new PdfContentEditor();
-editor.BindPdf(dataDir + "input.pdf");
-LineInfo lineInfo = new LineInfo();
-lineInfo.LineWidth = 2;
-lineInfo.VerticeCoordinate = new float[] { 0, 0, 100, 100, 50, 100 };
-lineInfo.Visibility = true;
-editor.CreatePolygon(lineInfo, 1, new System.Drawing.Rectangle(0, 0, 0, 0), "");
+
+
+### Criar uma lista numerada em versão LaTeX
+
+Crie uma lista numerada (ordenada) num PDF utilizando fragmentos LaTeX (`TeXFragment`). O exemplo converte uma lista Python de cadeias de texto num ambiente LaTeX `enumerate` e insere-o numa página PDF. Os fragmentos LaTeX são ideais quando pretende formatação precisa, listas estruturadas ou notação matemática em PDFs.
+
+1. Create a new PDF document and add a page.
+1. Define a Python list of strings that will become numbered items in the LaTeX enumerate environment.
+1. Convert the list into a LaTeX enumerate environment.
+1. Convert the LaTeX string into a TeXFragment object that can be rendered in the PDF.
+1. Add the LaTeX fragment to the page.
+1. Save the PDF document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_numbered_list_latex_version(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ items = [
+ "First item",
+ "Second item with more text to demonstrate wrapping behavior.",
+ "Third item",
+ "Fourth item",
+ ]
+ tex_list = (
+ "Lists are easy to create: \\begin{enumerate}"
+ + "".join([f"\\item {i}" for i in items])
+ + "\\end{enumerate}"
+ )
+ tex_fragment = ap.TeXFragment(tex_list)
+ page.paragraphs.add(tex_fragment)
+ document.save(outfile)
+```
-dataDir = dataDir + "AddingBorderAroundAddedText_out.pdf";
+
-// Salvar o documento PDF resultante.
-editor.Save(dataDir);
+## Notas de rodapé e notas finais
+
+### Adicionar notas de rodapé
+
+As notas de rodapé são utilizadas para referenciar anotações no corpo de um documento através da colocação de números sobrescritos junto ao texto relevante. Esses números correspondem a notas detalhadas, normalmente indentadas e posicionadas no rodapé da mesma página, fornecendo contexto adicional, citações ou comentários.
+
+Adicione uma nota de rodapé a um fragmento de texto num documento PDF utilizando Aspose.PDF for Python via .NET. As notas de rodapé são úteis para fornecer informações suplementares, citações ou esclarecimentos sem sobrecarregar o conteúdo principal. Este método garante que as notas de rodapé ficam integradas visual e estruturalmente no layout do PDF.
+
+1. Create a New Document.
+1. Create a TextFragment with the main content.
+1. Add Inline Text. Create another TextFragment that continues in the same paragraph.
+1. Save the Document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_footnote(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("This is a sample text with a footnote.")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+ text_fragment.foot_note = ap.Note("This is the footnote content.")
+ page.paragraphs.add(text_fragment)
+
+ inline_text = ap.text.TextFragment(
+ " This is another text after footnote in the same paragraph."
+ )
+ inline_text.is_in_line_paragraph = True
+ inline_text.text_state.font = ap.text.FontRepository.find_font("Arial")
+ inline_text.text_state.font_size = 14
+ page.paragraphs.add(inline_text)
+
+ document.save(outfile)
+```
+
+### Adicionar uma nota de rodapé com estilo personalizado no PDF
+
+1. Initialize a new PDF document and add a blank page.
+1. Create Main Text Fragment.
+1. Create and Style the Footnote (Font, Size, Color, Style).
+1. Insert the styled text fragment with footnote into the page.
+1. Add another text fragment without a footnote.
+1. Save the Document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_footnote_custom_text_style(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("This is a sample text with a footnote.")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+
+ note = ap.Note("This is the footnote content with custom text style.")
+ note.text_state = ap.text.TextState()
+ note.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
+ note.text_state.font_size = 10
+ note.text_state.foreground_color = ap.Color.red
+ note.text_state.font_style = ap.text.FontStyles.ITALIC
+ text_fragment.foot_note = note
+
+ page.paragraphs.add(text_fragment)
+
+ another_text = ap.text.TextFragment(" This is another text without footnote.")
+ another_text.text_state.font = ap.text.FontRepository.find_font("Arial")
+ another_text.text_state.font_size = 14
+ page.paragraphs.add(another_text)
+
+ document.save(outfile)
```
-## Como adicionar Nova Linha
+### Adicionar notas de rodapé com símbolos personalizados no PDF
+
+Adicione notas de rodapé a fragmentos de texto num documento PDF utilizando Aspose.PDF for Python via .NET, com a possibilidade de personalizar o símbolo do marcador da nota de rodapé.
-TextFragment não suporta quebra de linha dentro do texto. No entanto, para adicionar texto com quebra de linha, por favor, use TextFragment com TextParagraph:
+1. Create PDF Document and Page.
+1. Add first Text Fragment with Custom Footnote Symbol.
+1. Add another Text Fragment that continues the paragraph without a footnote.
+1. Add second Text Fragment with Default Footnote.
+1. Save the Document.
-- use "\r\n" ou Environment.NewLine no TextFragment em vez de um único "\n";
-- crie um objeto TextParagraph. Ele adicionará texto com divisão de linha;
-- adicione o TextFragment com TextParagraph.AppendLine;
-- adicione o TextParagraph com TextBuilder.AppendParagraph. Por favor, use o snippet de código abaixo.
+```python
+import aspose.pdf as ap
+import sys
+from os import path
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-Aspose.Pdf.Document pdfApplicationDoc = new Aspose.Pdf.Document();
-Aspose.Pdf.Page applicationFirstPage = (Aspose.Pdf.Page)pdfApplicationDoc.Pages.Add();
+def add_footnote_custom_text(outfile):
+ document = ap.Document()
+ page = document.pages.add()
-// Inicializa um novo TextFragment com texto contendo os marcadores de nova linha necessários
-Aspose.Pdf.Text.TextFragment textFragment = new Aspose.Pdf.Text.TextFragment("Nome do Candidato: " + Environment.NewLine + " Joe Smoe");
+ text_fragment = ap.text.TextFragment("This is a sample text with a footnote.")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
-// Define as propriedades do fragmento de texto, se necessário
-textFragment.TextState.FontSize = 12;
-textFragment.TextState.Font = Aspose.Pdf.Text.FontRepository.FindFont("TimesNewRoman");
-textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
-textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Red;
+ note = ap.Note("This is the footnote content with custom text style.")
+ note.text = "*"
+ text_fragment.foot_note = note
+ page.paragraphs.add(text_fragment)
-// Cria um objeto TextParagraph
-TextParagraph par = new TextParagraph();
+ another_text = ap.text.TextFragment(" This is another text without footnote.")
+ another_text.text_state.font = ap.text.FontRepository.find_font("Arial")
+ another_text.text_state.font_size = 14
+ page.paragraphs.add(another_text)
-// Adiciona um novo TextFragment ao parágrafo
-par.AppendLine(textFragment);
+ text_fragment = ap.text.TextFragment("This is a sample text with a footnote.")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+ text_fragment.foot_note = ap.Note("This is the footnote content.")
+ page.paragraphs.add(text_fragment)
-// Define a posição do parágrafo
-par.Position = new Aspose.Pdf.Text.Position(100, 600);
+ document.save(outfile)
+```
+
+### Adicionar notas de rodapé com estilo de linha personalizado no PDF
+
+Personalize o aspeto visual das linhas de notas de rodapé num documento PDF com a biblioteca Python. Personalizar essas linhas melhora a clareza visual e permite consistência estilística em documentos como relatórios, artigos académicos e publicações anotadas.
+
+1. Create a new PDF document and add a page.
+1. Define a custom line style for footnote connectors (color, width, and dash pattern).
+1. Add multiple text fragments with footnotes.
+1. Save the final document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
-// Cria um objeto TextBuilder
-TextBuilder textBuilder = new TextBuilder(applicationFirstPage);
-// Adiciona o TextParagraph usando TextBuilder
-textBuilder.AppendParagraph(par);
+def add_footnote_with_custom_line_style(outfile):
+ document = ap.Document()
+ page = document.pages.add()
-dataDir = dataDir + "AddNewLineFeed_out.pdf";
+ # Define custom line style
+ graph_info = ap.GraphInfo()
+ graph_info.line_width = 2
+ graph_info.color = ap.Color.red
+ graph_info.dash_array = [3]
+ graph_info.dash_phase = 1
+ page.note_line_style = graph_info
-// Salva o documento PDF resultante.
-pdfApplicationDoc.Save(dataDir);
+ # First text fragment with footnote
+ text1 = ap.text.TextFragment("This is a sample text with a footnote.")
+ text1.foot_note = ap.Note("foot note for text 1")
+ page.paragraphs.add(text1)
+
+ # Second text fragment with footnote
+ text2 = ap.text.TextFragment("This is yet another sample text with a footnote.")
+ text2.foot_note = ap.Note("foot note for text 2")
+ page.paragraphs.add(text2)
+
+ document.save(outfile)
```
+### Adicionar notas de rodapé com imagem e tabela no PDF
+
+Como enriquecer notas de rodapé num documento PDF incorporando imagens, texto formatado e tabelas com Aspose.PDF for Python via .NET?
-## Como adicionar Texto Tachado
+1. Create a new PDF document and add a page.
+1. Add a text fragment with an attached footnote.
+1. Embed an image, styled text, and a table inside the footnote.
+1. Save the Document.
-A classe TextState fornece as capacidades para definir a formatação de TextFragments sendo colocados dentro do documento PDF. Você pode usar esta classe para definir a formatação de texto como Negrito, Itálico, Sublinhado e, a partir desta versão, a API forneceu as capacidades para marcar a formatação de texto como Tachado. Por favor, tente usar o seguinte trecho de código para adicionar TextFragment com formatação Tachada.
+```python
+import aspose.pdf as ap
+import sys
+from os import path
-Por favor, use o trecho de código completo:
+def add_footnote_with_image_and_table(outfile):
+ document = ap.Document()
+ page = document.pages.add()
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, vá para https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
-// Abrir documento
-Document pdfDocument = new Document();
-// Obter página específica
-Page pdfPage = (Page)pdfDocument.Pages.Add();
+ text = ap.text.TextFragment("This is a sample text with a footnote.")
+ page.paragraphs.add(text)
-// Criar fragmento de texto
-TextFragment textFragment = new TextFragment("texto principal");
-textFragment.Position = new Position(100, 600);
+ note = ap.Note()
-// Definir propriedades do texto
-textFragment.TextState.FontSize = 12;
-textFragment.TextState.Font = FontRepository.FindFont("TimesNewRoman");
-textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.LightGray;
-textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Red;
-// Definir propriedade de Tachado
-textFragment.TextState.StrikeOut = true;
-// Marcar texto como Negrito
-textFragment.TextState.FontStyle = FontStyles.Bold;
+ # Add image
+ image_note = ap.Image()
+ image_note.file = path.join(DATA_DIR, "logo.jpg")
+ image_note.fix_height = 20
+ image_note.fix_width = 20
+ note.paragraphs.add(image_note)
-// Criar objeto TextBuilder
-TextBuilder textBuilder = new TextBuilder(pdfPage);
-// Anexar o fragmento de texto à página PDF
-textBuilder.AppendText(textFragment);
+ # Add text
+ text_note = ap.text.TextFragment("This is the footnote content.")
+ text_note.text_state.font_size = 20
+ text_note.is_in_line_paragraph = True
+ note.paragraphs.add(text_note)
-dataDir = dataDir + "AddStrikeOutText_out.pdf";
+ # Add table
+ table = ap.Table()
+ table.rows.add().cells.add("Cell 1,1")
+ table.rows.add().cells.add("Cell 1,2")
+ note.paragraphs.add(table)
-// Salvar documento PDF resultante.
-pdfDocument.Save(dataDir);
+ text.foot_note = note
+
+ document.save(outfile)
```
+### Adicionar notas finais a documentos PDF
+
+Uma nota final é um tipo de citação que direciona os leitores para uma secção no final do documento, onde podem encontrar a referência completa de uma citação, ideia parafraseada ou conteúdo resumido. Ao utilizar notas finais, é colocado um número sobrescrito imediatamente após o material referenciado, guiando o leitor para a nota correspondente no final do documento.
-## Aplicar Sombreamento de Gradiente ao Texto
+This code snippet demonstrates how to add an endnote to a text fragment in a PDF document. Unlike footnotes, which appear near the referenced text, endnotes are typically placed at the end of a document or section. This method also simulates a longer document to illustrate how endnotes behave in extended content.
-O formato de texto foi ainda mais aprimorado na API para cenários de edição de texto e agora você pode adicionar texto com espaço de cor de padrão dentro de um documento PDF. A Classe Aspose.Pdf.Color foi ainda mais aprimorada introduzindo uma nova propriedade de PatternColorSpace, que pode ser usada para especificar cores de sombreamento para o texto. Esta nova propriedade adiciona diferentes Sombras de Gradiente ao texto, por exemplo, Sombreamento Axial, Sombreamento Radial (Tipo 3) conforme mostrado no seguinte trecho de código:
+1. Create PDF Document and Page.
+1. Add Text Fragment with Endnote.
+1. Load External Text Content.
+1. Simulate Long Document. Add the loaded text multiple times to simulate a longer document.
+1. Save the Document.
-```csharp
-// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+```python
+import aspose.pdf as ap
+import sys
+from os import path
-using (Document pdfDocument = new Document(dataDir + "text_sample4.pdf"))
-{
- TextFragmentAbsorber absorber = new TextFragmentAbsorber("Lorem ipsum");
- pdfDocument.Pages.Accept(absorber);
+def add_endnote(outfile):
+ document = ap.Document()
+ page = document.pages.add()
- TextFragment textFragment = absorber.TextFragments[1];
+ text_fragment = ap.text.TextFragment("This is a sample text with an endnote.")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+ text_fragment.end_note = ap.Note("This is the EndNote content.")
+ page.paragraphs.add(text_fragment)
- // Criar nova cor com espaço de cor de padrão
- textFragment.TextState.ForegroundColor = new Aspose.Pdf.Color()
- {
- PatternColorSpace = new Aspose.Pdf.Drawing.GradientAxialShading(Color.Red, Color.Blue)
- };
- textFragment.TextState.Underline = true;
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, encoding="utf-8") as f:
+ text_content = f.read()
+ else:
+ text_content = "Lorem ipsum sample text not found."
- pdfDocument.Save(dataDir + "text_out.pdf");
-}
+ # Simulate long text
+ for _ in range(5):
+ tf = ap.text.TextFragment(text_content)
+ tf.text_state.font = ap.text.FontRepository.find_font("Arial")
+ tf.text_state.font_size = 14
+ page.paragraphs.add(tf)
+
+ document.save(outfile)
+```
+
+### Adicionar notas finais com texto de marcador personalizado no PDF
+
+Adicione uma nota final a um fragmento de texto num documento PDF com um símbolo de marcador personalizado, por exemplo `"***"`. As notas finais são normalmente colocadas no final de um documento ou secção e são úteis para fornecer contexto adicional, citações ou comentários.
+
+1. Create PDF Document and Page.
+1. Add a styled text fragment with an endnote.
+1. Customize the endnote marker text.
+1. Load external content from a .txt file.
+1. Simulate long-form content to illustrate endnote placement.
+1. Save the PDF document.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_endnote_custom_text(outfile):
+ document = ap.Document()
+ page = document.pages.add()
+
+ text_fragment = ap.text.TextFragment("This is a sample text with an endnote.")
+ text_fragment.text_state.font = ap.text.FontRepository.find_font("Arial")
+ text_fragment.text_state.font_size = 14
+ text_fragment.end_note = ap.Note("This is the EndNote content.")
+ text_fragment.end_note.text = "***"
+ page.paragraphs.add(text_fragment)
+
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, encoding="utf-8") as f:
+ text_content = f.read()
+ else:
+ text_content = "Lorem ipsum sample text not found."
+
+ # Simulate long text
+ for _ in range(5):
+ tf = ap.text.TextFragment(text_content)
+ tf.text_state.font = ap.text.FontRepository.find_font("Arial")
+ tf.text_state.font_size = 14
+ page.paragraphs.add(tf)
+
+ document.save(outfile)
```
+## Controlo de layout e páginas
+
+### Forçar uma tabela a iniciar numa nova página no PDF
+
+Adicione conteúdo específico para começar numa nova página de um documento PDF utilizando Aspose.PDF for Python via .NET.
+By setting the property 'is_in_new_page', you can precisely control page layout and structure, ensuring that particular sections (such as tables, reports, or summaries) always begin on a fresh page — ideal for document formatting, print-ready reports, or organized output generation.
->No sentido de aplicar um Gradiente Radial, você pode definir a propriedade ‘PatternColorSpace’ igual a ‘Aspose.Pdf.Drawing.GradientRadialShading(startingColor, endingColor)’ no trecho de código acima.
+1. Create and configure a table.
+1. Add data to the table.
+1. Force a new page for the table. This ensures that the table starts at the top of a new page, even if there is existing content on the current one.
+1. Add the table to the page. Use 'page.paragraphs.add()' to include the table in the PDF layout.
+1. Save the document.
-## Como alinhar texto ao conteúdo flutuante
+```python
+import aspose.pdf as ap
+import sys
+from os import path
-Aspose.PDF suporta a definição de alinhamento de texto para conteúdos dentro de um elemento Caixa Flutuante. As propriedades de alinhamento da instância Aspose.Pdf.FloatingBox podem ser usadas para alcançar isso, como mostrado no exemplo de código a seguir.
+def force_new_page(output_file_name):
+ # Create new PDF document
+ document = ap.Document()
+ page = document.pages.add()
-```csharp
-// Para exemplos completos e arquivos de dados, por favor, acesse https://github.com/aspose-pdf/Aspose.PDF-for-.NET
-// O caminho para o diretório de documentos.
-string dataDir = RunExamples.GetDataDir_AsposePdf_Text();
+ # Create a table
+ table = ap.Table()
+ table.column_widths = "150 150 150"
+ table.default_cell_border = ap.BorderInfo(ap.BorderSide.ALL)
-Aspose.Pdf.Document doc = new Document();
-doc.Pages.Add();
+ # Add rows with sample data
+ for i in range(5):
+ row = table.rows.add()
+ row.cells.add(f"Row {i + 1} - Col 1")
+ row.cells.add(f"Row {i + 1} - Col 2")
+ row.cells.add(f"Row {i + 1} - Col 3")
-Aspose.Pdf.FloatingBox floatBox = new Aspose.Pdf.FloatingBox(100, 100);
-floatBox.VerticalAlignment = VerticalAlignment.Bottom;
-floatBox.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Right;
-floatBox.Paragraphs.Add(new TextFragment("FloatingBox_bottom"));
-floatBox.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, Aspose.Pdf.Color.Blue);
-doc.Pages[1].Paragraphs.Add(floatBox);
+ # --- Key part: force table to start on a new PDF page ---
+ table.is_in_new_page = True
-Aspose.Pdf.FloatingBox floatBox1 = new Aspose.Pdf.FloatingBox(100, 100);
-floatBox1.VerticalAlignment = VerticalAlignment.Center;
-floatBox1.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Right;
-floatBox1.Paragraphs.Add(new TextFragment("FloatingBox_center"));
-floatBox1.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, Aspose.Pdf.Color.Blue);
-doc.Pages[1].Paragraphs.Add(floatBox1);
+ # Add table to page
+ page.paragraphs.add(table)
-Aspose.Pdf.FloatingBox floatBox2 = new Aspose.Pdf.FloatingBox(100, 100);
-floatBox2.VerticalAlignment = VerticalAlignment.Top;
-floatBox2.HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Right;
-floatBox2.Paragraphs.Add(new TextFragment("FloatingBox_top"));
-floatBox2.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, Aspose.Pdf.Color.Blue);
-doc.Pages[1].Paragraphs.Add(floatBox2);
+ # Save the PDF
+ document.save(output_file_name)
+```
+
+### Utilizar a propriedade de parágrafo inline num PDF
+
+A nossa biblioteca permite utilizar a propriedade `is_in_line_paragraph` para controlar o fluxo inline entre texto e imagens dentro de um PDF.
+Normally, when you add new elements (like text fragments or images), each one starts on a new line or new paragraph.
+By setting 'is_in_line_paragraph = True', you can make elements appear on the same line or within the same paragraph, creating smooth inline layouts—perfect for combining text and images inline, such as adding logos, icons, or symbols within sentences.
+
+The first text fragment, image, and second text fragment appear on the same line, forming a continuous inline paragraph.
+The third text fragment starts a new paragraph, demonstrating the default line-breaking behavior.
+
+1. Create a new PDF document.
+1. Add the first text fragment.
+1. Insert an inline image.
+1. Add more inline text.
+1. Add a new paragraph.
+1. Save the PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def using_inline_paragraph_property(output_file_name):
+ # Create a PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # --- First text fragment (normal paragraph) ---
+ fragment1 = ap.text.TextFragment("This is the first part of the paragraph. ")
+ fragment1.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment1.text_state.font_size = 14
+ page.paragraphs.add(fragment1)
+
+ # --- Inline image (continues same paragraph flow) ---
+ image = ap.Image()
+ image.is_in_line_paragraph = True # Makes image inline with previous paragraph
+ image.file = path.join(DATA_DIR, "logo.jpg")
+ image.fix_height = 30
+ image.fix_width = 30
+ page.paragraphs.add(image)
+
+ # --- Second inline text fragment (keeps same paragraph flow) ---
+ fragment2 = ap.text.TextFragment("This is the second part of the same paragraph.")
+ fragment2.is_in_line_paragraph = True
+ fragment2.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment2.text_state.font_size = 14
+ page.paragraphs.add(fragment2)
+
+ # --- Third fragment (starts new paragraph automatically) ---
+ fragment3 = ap.text.TextFragment("This is a new paragraph.")
+ fragment3.text_state.font = ap.text.FontRepository.find_font("Arial")
+ fragment3.text_state.font_size = 14
+ page.paragraphs.add(fragment3)
+
+ # Save PDF
+ document.save(output_file_name)
+```
+
+### Criar um PDF com várias colunas
+
+Crie um layout em várias colunas, ao estilo de jornal, num PDF utilizando Aspose.PDF for Python via .NET.
+It showcases how to combine text, HTML formatting, and graphics within a FloatingBox, enabling advanced layout control similar to multi-column magazine or newsletter designs.
+
+1. Initialize the PDF document.
+1. Add a horizontal separator line at the top.
+1. Add a styled HTML heading.
+1. Create the FloatingBox for layout control.
+1. Configure multi-column layout.
+1. Add author info.
+1. Draw another internal horizontal line.
+1. Add the article text.
+1. Save the final PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def create_multi_column_pdf(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+
+ # Set margins
+ document.page_info.margin.left = 40
+ document.page_info.margin.right = 40
+
+ page = document.pages.add()
+
+ #
+ # Draw horizontal line at the top
+ #
+ graph1 = ap.drawing.Graph(500.0, 2.0)
+ page.paragraphs.add(graph1)
+
+ pos_arr = [1.0, 2.0, 500.0, 2.0]
+ line1 = ap.drawing.Line(pos_arr)
+ graph1.shapes.add(line1)
+
+ #
+ # Add HTML heading text
+ #
+ html = "How to Steer Clear of money scams"
+ heading_text = ap.HtmlFragment(html)
+ page.paragraphs.add(heading_text)
+
+ #
+ # Floating box: enables multi-column layout
+ #
+ box = ap.FloatingBox()
+
+ box.column_info.column_count = 2 # Two columns
+ box.column_info.column_spacing = "5" # Space between columns
+ box.column_info.column_widths = "105 105" # Width of each column
+
+ #
+ # Add title text to the FloatingBox
+ #
+ text1 = ap.text.TextFragment("By A Googler (The Official Google Blog)")
+ text1.text_state.font_size = 8
+ text1.text_state.line_spacing = 2
+ box.paragraphs.add(text1)
+
+ text1.text_state.font_size = 10
+ text1.text_state.font_style = ap.text.FontStyles.ITALIC
+
+ #
+ # Add another horizontal line inside the box
+ #
+ graph2 = ap.drawing.Graph(50.0, 10.0)
+
+ pos_arr2 = [1.0, 10.0, 100.0, 10.0]
+ line2 = ap.drawing.Line(pos_arr2)
+ graph2.shapes.add(line2)
+
+ box.paragraphs.add(graph2)
+
+ #
+ # Add long text content
+ #
+ lorem_path = path.join(DATA_DIR, "lorem.txt")
+ if path.exists(lorem_path):
+ with open(lorem_path, "r", encoding="utf-8") as f:
+ lorem_text = f.read()
+ else:
+ lorem_text = "Lorem ipsum text not found."
+ text2 = ap.text.TextFragment(lorem_text * 5)
+ box.paragraphs.add(text2)
+
+ page.paragraphs.add(box)
+
+ # Save PDF
+ document.save(output_file_name)
+```
-doc.Save(dataDir + "FloatingBox_alignment_review_out.pdf");
+### Tabulações personalizadas para alinhamento de texto em PDF
+
+Crie um layout de texto semelhante a uma tabela num PDF utilizando tabulações personalizadas, sem recorrer a estruturas de tabela.
+By defining tab stop positions, alignments, and leader styles, you can align text precisely across columns. This is useful for invoices, reports, or structured text data.
+
+1. Create a new PDF document.
+1. Define custom tab stops.
+1. Use #$TAB placeholders in text.
+1. Add text to the PDF.
+1. Save the PDF.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def custom_tab_stops(output_file_name):
+ # Create PDF document
+ document = ap.Document()
+ page = document.pages.add()
+
+ # Define tab stops
+ tab_stops = ap.text.TabStops()
+
+ tab_stop1 = tab_stops.add(100)
+ tab_stop1.alignment_type = ap.text.TabAlignmentType.RIGHT
+ tab_stop1.leader_type = ap.text.TabLeaderType.SOLID
+
+ tab_stop2 = tab_stops.add(200)
+ tab_stop2.alignment_type = ap.text.TabAlignmentType.CENTER
+ tab_stop2.leader_type = ap.text.TabLeaderType.DASH
+
+ tab_stop3 = tab_stops.add(300)
+ tab_stop3.alignment_type = ap.text.TabAlignmentType.LEFT
+ tab_stop3.leader_type = ap.text.TabLeaderType.DOT
+
+ # Create TextFragments with tab placeholders
+ header = ap.text.TextFragment(
+ "This is an example of forming table with TAB stops", tab_stops
+ )
+ text0 = ap.text.TextFragment("#$TABHead1 #$TABHead2 #$TABHead3", tab_stops)
+ text1 = ap.text.TextFragment("#$TABdata11 #$TABdata12 #$TABdata13", tab_stops)
+
+ text2 = ap.text.TextFragment("#$TABdata21 ", tab_stops)
+ text2.segments.append(ap.text.TextSegment("#$TAB"))
+ text2.segments.append(ap.text.TextSegment("data22 "))
+ text2.segments.append(ap.text.TextSegment("#$TAB"))
+ text2.segments.append(ap.text.TextSegment("data23"))
+
+ # Add text fragments to page
+ page.paragraphs.add(header)
+ page.paragraphs.add(text0)
+ page.paragraphs.add(text1)
+ page.paragraphs.add(text2)
+
+ # Save PDF document
+ document.save(output_file_name)
```
+### Tópicos relacionados com texto
-
\ No newline at end of file
+- [Trabalhar com texto em PDF com Python](/pdf/python-net/working-with-text/)
+- [Adicionar texto ao PDF](/pdf/python-net/add-text-to-pdf-file/)
+- [Rodar texto dentro do PDF com Python](/pdf/python-net/rotate-text-inside-pdf/)
+- [Substituir texto em PDF com Python](/pdf/python-net/replace-text-in-pdf/)
diff --git a/pt/python-net/advanced-operations/working-with-vector-graphics/_index.md b/pt/python-net/advanced-operations/working-with-vector-graphics/_index.md
new file mode 100644
index 0000000000..ef580a15e7
--- /dev/null
+++ b/pt/python-net/advanced-operations/working-with-vector-graphics/_index.md
@@ -0,0 +1,214 @@
+---
+title: Trabalhar com Gráficos Vetoriais em Python
+linktitle: Trabalhando com Gráficos Vetoriais
+type: docs
+weight: 100
+url: /pt/python-net/working-with-vector-graphics/
+description: Aprenda como extrair, mover, remover e copiar gráficos vetoriais entre páginas PDF usando GraphicsAbsorber em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Use GraphicsAbsorber para inspecionar e manipular gráficos vetoriais PDF em Python.
+Abstract: Este artigo explica como trabalhar com gráficos vetoriais no Aspose.PDF for Python via .NET usando a classe GraphicsAbsorber. Aprenda como extrair elementos vetoriais de páginas PDF, mover ou removê-los e copiar gráficos entre páginas com controle de baixo nível em fluxos de trabalho Python.
+---
+
+[Aspose.PDF para Python via .NET](/pdf/pt/python-net/) fornece o [Absorvedor de Gráficos](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicsabsorber/) classe para acessar e manipular gráficos vetoriais já presentes em uma página PDF. Chame-a `visit` método em qualquer página para extrair caminhos, formas e outros operadores gráficos, então mover, remover ou copiar esses elementos conforme necessário.
+
+Use esta página quando precisar inspecionar ou modificar elementos de desenho vetorial incorporados em um PDF existente, em vez de desenhar novas formas do zero.
+
+## Extraindo Gráficos
+
+A extração é o ponto de partida para todas as tarefas de gráficos vetoriais. `GraphicsAbsorber` lê o fluxo de conteúdo de uma página e expõe cada elemento gráfico com sua referência de página, posição e operadores brutos.
+
+1. Abra o documento PDF.
+1. Criar um [Absorvedor de Gráficos](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicsabsorber/) instância.
+1. Chamar `visit` na página de destino para preencher `elements`.
+1. Iterar sobre `elements` para inspecionar a posição e as contagens de operadores.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def using_graphics_absorber(infile: str):
+ with ap.Document(infile) as document:
+ with ap.vector.GraphicsAbsorber() as graphics_absorber:
+ page = document.pages[1]
+ graphics_absorber.visit(page)
+ for element in graphics_absorber.elements:
+ print(f"Page Number: {element.source_page.number}")
+ print(f"Position: ({element.position.x}, {element.position.y})")
+ print(f"Number of Operators: {element.operators.length}")
+```
+
+`GraphicsAbsorber` é parte do `aspose.pdf.vector` namespace e é projetado especificamente para interagir com gráficos vetoriais em fluxos de conteúdo PDF.
+
+## Gráficos em movimento
+
+Após a extração, defina um novo `position` em cada elemento para realocá-lo na mesma página. Envolva as atualizações em `suppress_update` / `resume_update` chamadas para agrupar gravações de fluxos de conteúdo em uma única operação e evitar repinturas redundantes.
+
+1. Abra o documento PDF.
+1. Criar um `GraphicsAbsorber` e chamar `visit` na página de destino.
+1. Chamar `suppress_update` para pausar gravações de fluxo de conteúdo.
+1. Atualizar o `position` de cada elemento.
+1. Chamar `resume_update` para confirmar todas as alterações de uma só vez.
+1. Salve o documento modificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def move_graphics(infile: str, outfile: str):
+ with ap.Document(infile) as document:
+ with ap.vector.GraphicsAbsorber() as graphics_absorber:
+ page = document.pages[1]
+ graphics_absorber.visit(page)
+ graphics_absorber.suppress_update()
+ for element in graphics_absorber.elements:
+ position = element.position
+ element.position = ap.Point(position.x + 150, position.y - 10)
+ graphics_absorber.resume_update()
+ document.save(outfile)
+```
+
+## Removendo Gráficos
+
+Para excluir elementos vetoriais específicos de uma página, filtre por posição ou retângulo delimitador e, em seguida, remova-os. Aspose.PDF for Python fornece duas abordagens, dependendo de você querer remover os elementos inline ou coletá-los primeiro.
+
+### Método 1: Remover Inline Usando Limite do Retângulo
+
+Esta abordagem verifica a posição de cada elemento em relação a um retângulo e chama `element.remove()` diretamente dentro do loop. Use-o quando quiser código conciso e não precisar inspecionar o conjunto removido posteriormente.
+
+1. Abra o documento PDF.
+1. Criar um `GraphicsAbsorber` e chamar `visit` na página de destino.
+1. Defina o alvo [Retângulo](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/).
+1. Chamar `suppress_update` para pausar gravações de fluxo de conteúdo.
+1. Iterar `elements`, chamando `remove()` em cada elemento cuja posição esteja dentro do retângulo.
+1. Chamar `resume_update` para confirmar as exclusões.
+1. Salve o documento modificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def remove_graphics_method_1(infile: str, outfile: str):
+ with ap.Document(infile) as document:
+ with ap.vector.GraphicsAbsorber() as graphics_absorber:
+ page = document.pages[1]
+ graphics_absorber.visit(page)
+ rectangle = ap.Rectangle(70, 248, 170, 252, True)
+ graphics_absorber.suppress_update()
+ for element in graphics_absorber.elements:
+ if rectangle.contains(element.position, False):
+ element.remove()
+ graphics_absorber.resume_update()
+ document.save(outfile)
+```
+
+### Método 2: Coletar Elementos Primeiro, Depois Excluir
+
+Esta abordagem reúne elementos correspondentes em um [GraphicElementCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicelementcollection/) e passa a coleção para `page.delete_graphics`. Use-o quando precisar revisar ou registrar o que será removido antes de confirmar a exclusão.
+
+1. Abra o documento PDF.
+1. Criar um `GraphicsAbsorber` e chamar `visit` na página de destino.
+1. Defina o retângulo de destino.
+1. Iterar `elements` e adicione elementos correspondentes a um `GraphicElementCollection`.
+1. Chamar `page.contents.suppress_update` para pausar gravações de fluxo de conteúdo.
+1. Chamar `page.delete_graphics` com a coleção.
+1. Chamar `page.contents.resume_update` para confirmar as exclusões.
+1. Salve o documento modificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def remove_graphics_method_2(infile: str, outfile: str):
+ with ap.Document(infile) as document:
+ with ap.vector.GraphicsAbsorber() as graphics_absorber:
+ page = document.pages[1]
+ rectangle = ap.Rectangle(70, 248, 170, 252, True)
+ graphics_absorber.visit(page)
+ removed_elements_collection = ap.vector.GraphicElementCollection()
+ for element in graphics_absorber.elements:
+ if rectangle.contains(element.position, False):
+ removed_elements_collection.add(element)
+ page.contents.suppress_update()
+ page.delete_graphics(removed_elements_collection)
+ page.contents.resume_update()
+ document.save(outfile)
+```
+
+## Adicionando Gráficos a Outra Página
+
+Elementos vetoriais extraídos de uma página podem ser colocados em qualquer outra página no mesmo documento. Dois métodos estão disponíveis: adicionar os elementos um a um ou passar toda a coleção em uma única chamada.
+
+### Método 1: Adicionar Elementos Individualmente
+
+Use este método quando precisar de controle por elemento, como filtrar ou transformar elementos individuais antes de colocá‑los na página de destino.
+
+1. Abra o documento PDF.
+1. Criar um `GraphicsAbsorber` e chamar `visit` na página de origem.
+1. Adicionar uma nova página de destino ao documento.
+1. Chamar `page_2.contents.suppress_update` para pausar gravações de fluxo de conteúdo.
+1. Chamar `element.add_on_page(page_2)` para cada elemento.
+1. Chamar `page_2.contents.resume_update` para confirmar todas as adições.
+1. Salve o documento modificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_to_another_page_method_1(infile: str, outfile: str):
+ with ap.Document(infile) as document:
+ with ap.vector.GraphicsAbsorber() as graphics_absorber:
+ page_1 = document.pages[1]
+ page_2 = document.pages.add()
+ graphics_absorber.visit(page_1)
+ page_2.contents.suppress_update()
+ for element in graphics_absorber.elements:
+ element.add_on_page(page_2)
+ page_2.contents.resume_update()
+ document.save(outfile)
+```
+
+### Método 2: Adicionar toda a coleção de uma vez
+
+Use este método quando quiser copiar todos os elementos extraídos para uma página em uma única operação sem iterar manualmente.
+
+1. Abra o documento PDF.
+1. Criar um `GraphicsAbsorber` e chamar `visit` na página de origem.
+1. Adicionar uma nova página de destino ao documento.
+1. Chamar `page_2.contents.suppress_update` para pausar gravações de fluxo de conteúdo.
+1. Chamar `page_2.add_graphics` com o completo `elements` coleção.
+1. Chamar `page_2.contents.resume_update` para confirmar todas as adições.
+1. Salve o documento modificado.
+
+```python
+import aspose.pdf as ap
+import sys
+from os import path
+
+def add_to_another_page_method_2(infile: str, outfile: str):
+ with ap.Document(infile) as document:
+ with ap.vector.GraphicsAbsorber() as graphics_absorber:
+ page_1 = document.pages[1]
+ page_2 = document.pages.add()
+ graphics_absorber.visit(page_1)
+ page_2.contents.suppress_update()
+ page_2.add_graphics(graphics_absorber.elements, None)
+ page_2.contents.resume_update()
+ document.save(outfile)
+```
+
+## Tópicos Relacionados
+
+- [Operações avançadas de PDF em Python](/pdf/pt/python-net/advanced-operations/)
+- [Trabalhe com gráficos PDF em Python](/pdf/pt/python-net/working-with-graphs/)
+- [Trabalhar com operadores PDF em Python](/pdf/pt/python-net/working-with-operators/)
+- [Trabalhar com páginas PDF em Python](/pdf/pt/python-net/working-with-pages/)
diff --git a/pt/python-net/advanced-operations/zugferd/_index.md b/pt/python-net/advanced-operations/zugferd/_index.md
index 7fd82cd6b1..79a9f0fe3a 100644
--- a/pt/python-net/advanced-operations/zugferd/_index.md
+++ b/pt/python-net/advanced-operations/zugferd/_index.md
@@ -4,30 +4,34 @@ linktitle: Trabalhando com ZUGFeRD
type: docs
weight: 90
url: /pt/python-net/working-with-zugferd/
-description: Aprenda a criar faturas PDF compatíveis com ZUGFeRD usando Aspose.PDF para Java
-lastmod: "2024-01-17"
+description: Explore como lidar com faturas ZUGFeRD em Python com Aspose.PDF para gerenciar e gerar faturas eletrônicas.
+lastmod: "2026-05-19"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: As faturas ZUGFeRD com Aspose.PDF em Python
+Abstract: ZUGFeRD é um padrão de faturamento eletrônico predominantemente usado na Alemanha e em outros países da UE, projetado para simplificar o processo de faturamento B2B por meio de um formato totalmente digital. Ele facilita a criação, transmissão e processamento eficientes de faturas eletrônicas, promovendo economia de custos e eficiência operacional. O formato ZUGFeRD combina de forma única um PDF legível por humanos com um XML legível por máquinas, garantindo interoperabilidade entre diferentes plataformas de software. Esse padrão atende aos requisitos legais de arquivamento e conformidade fiscal e está alinhado ao padrão europeu EN 16931. A versão mais recente, ZUGFeRD 2.0, oferece vários perfis para atender a diferentes necessidades de negócios, proporcionando benefícios como processamento mais rápido, redução de erros, fluxo de caixa aprimorado e menor impacto ambiental. O artigo também faz referência a recursos para implementar PDFs compatíveis com ZUGFeRD em Python, Java e .NET.
---
## O que é ZUGFeRD
-Faturamento eletrônico é a criação, envio, recebimento e processamento de um documento de fatura eletrônico. É totalmente digital do início ao fim e ajuda as empresas a economizar dinheiro e melhorar a eficiência em um contexto B2B. Tanto compradores quanto vendedores podem se beneficiar do faturamento eletrônico.
+E-invoicing consiste em criar, enviar, receber e processar um documento de fatura eletrônica. É totalmente digital do início ao fim e ajuda as empresas a economizar dinheiro e melhorar a eficiência em um contexto B2B. Tanto compradores quanto vendedores podem se beneficiar do e-invoicing.
-Milhões de empresas estão adotando o faturamento eletrônico à medida que a tecnologia avança para aproveitar suas vantagens. No entanto, elas precisam de padrões para garantir que as faturas eletrônicas possam ser facilmente lidas e compreendidas por qualquer software, independentemente de como são geradas.
+Milhões de empresas estão adotando o e-invoicing à medida que a tecnologia avança para aproveitar suas vantagens. No entanto, elas precisam de padrões que garantam que as e-faturas possam ser facilmente lidas e compreendidas por qualquer software, independentemente de como sejam geradas.
-Dentre os muitos formatos de dados para faturas eletrônicas, o padrão ZUGFeRD tem se tornado cada vez mais estabelecido em países de língua alemã e da UE.
+Entre os muitos formatos de dados para e-faturas, o padrão ZUGFeRD tornou-se cada vez mais consolidado em países de língua alemã e na UE.
-ZUGFeRD é um padrão para faturamento eletrônico na Alemanha.
- Ele significa "Zentraler User Guide des Forums elektronische Rechnung Deutschland", o Guia Central do Usuário do Fórum para Faturamento Eletrônico na Alemanha.
+ZUGFeRD é um padrão para faturamento eletrônico na Alemanha. Ele significa \u0022Zentraler User Guide des Forums elektronische Rechnung Deutschland\u0022, o Guia Central do Fórum de Faturamento Eletrônico da Alemanha.
-O formato é um híbrido que combina um documento em PDF que humanos podem ler e um arquivo de dados XML que máquinas podem ler. Ele permite a troca de informações de fatura entre empresas e autoridades públicas de maneira uniforme e interoperável.
+O formato é um híbrido que combina um documento PDF legível por humanos e um arquivo de dados XML legível por máquinas. Ele permite a troca de informações de fatura entre empresas e autoridades públicas de forma uniforme e interoperável.
-Ele também atende aos requisitos legais para arquivamento a longo prazo e conformidade fiscal. O ZUGFeRD possui diferentes versões e perfis que se adequam a diferentes necessidades e cenários. A versão mais recente é o ZUGFeRD 2.0, compatível com o padrão europeu EN 16931 para faturamento eletrônico. O ZUGFeRD oferece aos usuários muitos benefícios e economias de custo, como processamento mais rápido, redução de erros, melhoria no fluxo de caixa e menor impacto ambiental.
+Também cumpre os requisitos legais para arquivamento de longo prazo e conformidade fiscal. ZUGFeRD possui diferentes versões e perfis que atendem a diferentes necessidades e cenários. A versão mais recente é ZUGFeRD 2.0, compatível com a norma europeia EN 16931 para faturamento eletrônico.
+ZUGFeRD oferece aos usuários muitos benefícios e economia de custos, como processamento mais rápido, redução de erros, melhoria do fluxo de caixa e menor impacto ambiental.
* [Criando PDF compatível com PDF/3-A e anexando fatura ZUGFeRD em Python](/pdf/pt/python-net/attach-zugferd/)
Veja também:
-* [Criando PDF compatível com PDF/3-A e anexando fatura ZUGFeRD em Java](/pdf/pt/java/attach-zugferd/)* [Criando PDF compatível com PDF/3-A e anexando fatura ZUGFeRD no .NET](/pdf/pt/net/attach-zugferd/)
\ No newline at end of file
+* [Criando PDF compatível com PDF/3-A e anexando fatura ZUGFeRD em Java](/pdf/pt/java/attach-zugferd/)
+* [Criando PDF compatível com PDF/3-A e anexando fatura ZUGFeRD em .NET](/pdf/pt/net/attach-zugferd/)
diff --git a/pt/python-net/advanced-operations/zugferd/attach-zugferd/_index.md b/pt/python-net/advanced-operations/zugferd/attach-zugferd/_index.md
index e884984c3a..ff59687a5a 100644
--- a/pt/python-net/advanced-operations/zugferd/attach-zugferd/_index.md
+++ b/pt/python-net/advanced-operations/zugferd/attach-zugferd/_index.md
@@ -4,55 +4,51 @@ linktitle: Anexar ZUGFeRD ao PDF
type: docs
weight: 10
url: /pt/python-net/attach-zugferd/
-description: Aprenda a gerar um documento PDF com ZUGFeRD no Aspose.PDF para Python via .NET
-lastmod: "2024-01-18"
+description: Aprenda como gerar um documento PDF com ZUGFeRD no Aspose.PDF for Python via .NET
+lastmod: "2026-05-19"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como anexar ZUGFeRD a um documento PDF
+Abstract: O artigo oferece um guia passo a passo sobre como anexar ZUGFeRD (um formato para faturas eletrônicas) a um documento PDF usando a biblioteca Aspose.PDF. O procedimento começa com a importação da biblioteca necessária e a configuração dos caminhos de diretório para arquivos de entrada e saída. Ele envolve carregar o arquivo PDF de destino em um objeto Document e criar um objeto FileSpecification para o arquivo XML de metadados da fatura. Propriedades chave como `mime_type` e `af_relationship` são definidas para garantir a integração adequada dos metadados. O arquivo XML é então adicionado à coleção de arquivos incorporados do PDF, anexando-o efetivamente como metadados. Em seguida, o documento PDF é convertido para o formato PDF/A-3A, que é adequado para arquivamento de documentos eletrônicos, antes de salvar o PDF final com o ZUGFeRD incorporado. O artigo conclui com um trecho de código Python que demonstra a implementação dessas etapas, exibindo a integração do ZUGFeRD com um PDF para melhorar a gestão de documentos.
---
## Anexar ZUGFeRD ao PDF
-Recomendamos seguir os passos para anexar ZUGFeRD ao PDF:
+Recomendamos os seguintes passos para anexar ZUGFeRD ao PDF:
1. Importe a biblioteca Aspose.PDF e dê-lhe um alias de ap para conveniência.
1. Defina o caminho para o diretório onde os arquivos PDF de entrada e saída estão localizados.
1. Defina o caminho para o arquivo PDF que será processado.
1. Carregue o arquivo PDF a partir da variável de caminho e crie um objeto Document.
1. Crie um objeto FileSpecification para o arquivo XML que contém os metadados da fatura. Use a variável de caminho e uma string de descrição para criar o objeto FileSpecification.
-
-1. Defina as propriedades `mime_type` e `af_relationship` do objeto FileSpecification para `text/xml` e `ALTERNATIVE`, respectivamente.
-1. Adicione o objeto fileSpecification à coleção de arquivos incorporados do objeto documento. Isso anexa o arquivo XML ao documento PDF como um arquivo de metadados de fatura.
-1. Converta o documento PDF para o formato PDF/A-3A. Use o caminho para o arquivo de log, a enumeração `PdfFormat.PDF_A_3A` e a enumeração `ConvertErrorAction.DELETE` para converter o objeto documento.
+1. Definir o `mime_type` e o `af_relationship` propriedades do objeto FileSpecification para `text/xml` e `ALTERNATIVE`, respectivamente.
+1. Adicione o objeto fileSpecification à coleção de arquivos incorporados do objeto document. Isso anexa o arquivo XML ao documento PDF como um arquivo de metadados de fatura.
+1. Converta o documento PDF para o formato PDF/A-3A. Use o caminho para o arquivo de log, o `PdfFormat.PDF_A_3A` enumeração, e o `ConvertErrorAction.DELETE` enumeração para converter o objeto do documento.
1. Salve o documento PDF com o ZUGFeRD anexado.
```python
+import sys
+import os
import aspose.pdf as ap
-# Defina o caminho para o diretório onde os arquivos PDF de entrada e saída estão localizados
-_dataDir = "./"
-
-# Carregue o arquivo PDF que será processado
-path = _dataDir + "ZUGFeRD/ZUGFeRD-test.pdf"
-document = ap.Document(path)
-
-# Crie um objeto FileSpecification para o arquivo XML que contém os metadados da fatura
-description = "Metadados da fatura em conformidade com o padrão ZUGFeRD"
-path = _dataDir + "ZUGFeRD/factur-x.xml"
-fileSpecification = ap.FileSpecification(path, description)
+def attach_invoice_zugferd_format(infile, invoice, outfile):
+ document = ap.Document(infile)
-# Defina o tipo MIME e as propriedades AFRelationship do arquivo incorporado
-fileSpecification.mime_type = "text/xml"
-fileSpecification.af_relationship = ap.AFRelationship.ALTERNATIVE
+ # Create a FileSpecification object for the XML file that contains the invoice metadata
+ description = "Invoice metadata conforming to ZUGFeRD standard"
+ file_specification = ap.FileSpecification(invoice, description)
-# Adicione o arquivo incorporado à coleção de arquivos incorporados do documento PDF
-document.embedded_files.add("factur", fileSpecification)
+ # Set the MIME type and the AFRelationship properties of the embedded file
+ file_specification.mime_type = "text/xml"
+ file_specification.af_relationship = ap.AFRelationship.ALTERNATIVE
-# Converta o documento PDF para o formato PDF/A-3A
-path = _dataDir + "ZUGFeRD/log.xml"
-document.convert(path, ap.PdfFormat.PDF_A_3A, ap.ConvertErrorAction.DELETE)
+ # Add the embedded file to the PDF document's embedded files collection
+ document.embedded_files.add("factur", file_specification)
-# Salve o documento PDF com o ZUGFeRD anexado
-path = _dataDir + "ZUGFeRD/ZUGFeRD-res.pdf"
-document.save(path)
-```
\ No newline at end of file
+ # Convert the PDF document to the PDF/A-3A format
+ log_path = outfile.replace(".pdf", "_log.xml")
+ document.convert(log_path, ap.PdfFormat.PDF_A_3A, ap.ConvertErrorAction.DELETE)
+ document.save(outfile)
+```
diff --git a/pt/python-net/aspose_pdf-for-python-net.png b/pt/python-net/aspose_pdf-for-python-net.png
new file mode 100644
index 0000000000..0a1f34628e
Binary files /dev/null and b/pt/python-net/aspose_pdf-for-python-net.png differ
diff --git a/pt/python-net/aspose_pdf-for-python-net.svg b/pt/python-net/aspose_pdf-for-python-net.svg
new file mode 100644
index 0000000000..92b7ff53e8
--- /dev/null
+++ b/pt/python-net/aspose_pdf-for-python-net.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/pt/python-net/basic-operations/merge-pdf/_index.md b/pt/python-net/basic-operations/merge-pdf/_index.md
new file mode 100644
index 0000000000..65476c4fda
--- /dev/null
+++ b/pt/python-net/basic-operations/merge-pdf/_index.md
@@ -0,0 +1,44 @@
+---
+title: Mesclar arquivos PDF em Python
+linktitle: Mesclar arquivos PDF
+type: docs
+weight: 50
+url: /pt/python-net/merge-pdf/
+description: Aprenda como mesclar vários arquivos PDF em um único documento em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Combinar páginas PDF usando Python
+Abstract: Este artigo aborda a necessidade comum de mesclar vários arquivos PDF em um único documento, um processo valioso para organizar e otimizar o armazenamento e o compartilhamento de conteúdo PDF. Ele explora o uso do Aspose.PDF for Python via .NET para combinar arquivos PDF de forma eficiente, reconhecendo que mesclar PDFs em Python pode ser desafiador sem bibliotecas de terceiros. O artigo fornece um guia passo a passo para concatenar arquivos PDF – criando um novo Document, mesclando os arquivos e salvando o Document mesclado. Um trecho de código demonstra a implementação usando Aspose.PDF, destacando a capacidade da biblioteca de simplificar o processo de mesclagem. Além disso, ele apresenta o Aspose.PDF Merger, uma ferramenta online para mesclar PDFs, permitindo que os usuários explorem a funcionalidade em um ambiente baseado na web.
+---
+
+## Mesclar arquivos PDF usando Python e DOM
+
+Para concatenar dois arquivos PDF:
+
+1. Crie um Novo Documento.
+1. Mescle os Arquivos PDF
+1. Salve o Documento Mesclado
+
+Combinando vários documentos PDF em um único arquivo:
+
+```python
+import sys
+import aspose.pdf as ap
+from os import path
+
+def merge_two_documents(infile1, infile2, outfile):
+ document1 = ap.Document(infile1)
+ document2 = ap.Document(infile2)
+ document1.pages.add(document2.pages)
+ document1.save(outfile)
+```
+
+## Exemplo ao Vivo
+
+[Aspose.PDF Mesclador](https://products.aspose.app/pdf/merger) é uma aplicação web gratuita online que permite investigar como a funcionalidade de mesclagem de apresentações funciona.
+
+[](https://products.aspose.app/pdf/merger)
+
diff --git a/pt/python-net/basic-operations/merge-pdf/merger.png b/pt/python-net/basic-operations/merge-pdf/merger.png
new file mode 100644
index 0000000000..c7977aa68d
Binary files /dev/null and b/pt/python-net/basic-operations/merge-pdf/merger.png differ
diff --git a/pt/python-net/basic-operations/protect/_index.md b/pt/python-net/basic-operations/protect/_index.md
new file mode 100644
index 0000000000..1c50060c46
--- /dev/null
+++ b/pt/python-net/basic-operations/protect/_index.md
@@ -0,0 +1,219 @@
+---
+title: Proteger arquivos PDF em Python
+linktitle: Criptografar e descriptografar arquivo PDF
+type: docs
+weight: 70
+url: /pt/python-net/protect-pdf-file/
+description: Aprenda a criptografar arquivos, descriptografar PDFs protegidos e alterar senhas em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir permissões de PDF e gerenciar criptografia em Python
+Abstract: Esta página explica como definir privilégios de documento, aplicar criptografia, descriptografar arquivos PDF e alterar senhas usando Aspose.PDF for Python via .NET. Ela cobre a configuração de senhas de usuário e proprietário, a definição de restrições de acesso (como impressão, cópia e edição) e o gerenciamento da segurança de PDF em aplicações Python.
+---
+
+## Criptografar PDF com senha e permissões
+
+Use Aspose.PDF for Python via .NET para proteger um documento PDF com criptografia baseada em senha e permissões restritas.
+
+1. Carregue o documento PDF.
+1. Criar um `DocumentPrivilege` objeto de permissões.
+1. Habilite as permissões necessárias.
+1. Defina as senhas de usuário e proprietário.
+1. Escolha o algoritmo de criptografia.
+1. Aplicar criptografia ao documento.
+1. Salvar o PDF criptografado.
+
+```python
+import aspose.pdf as ap
+
+def encrypt_password(infile, outfile):
+ """
+ Encrypt PDF with password and permissions.
+
+ Args:
+ infile (str): Input PDF filename
+ outfile (str): Output PDF filename
+
+ Returns:
+ None
+
+ Example:
+ encrypt_password("sample.pdf", "sample_protected.pdf")
+
+ Note:
+ Uses AES 128-bit encryption. Allows screen readers, forbids all other operations.
+ User password: "userpassword", Owner password: "ownerpassword".
+ """
+ document = ap.Document(infile)
+ document_privilege = ap.facades.DocumentPrivilege.forbid_all
+ document_privilege.allow_screen_readers = True
+
+ document.encrypt(
+ "userpassword",
+ "ownerpassword",
+ document_privilege,
+ ap.CryptoAlgorithm.AESx128,
+ False,
+ )
+ document.save(outfile)
+```
+
+## Criptografar PDF com permissões totais
+
+Criptografar um documento PDF permitindo permissões de acesso total usando Aspose.PDF for Python via .NET. Este exemplo usa criptografia RC4 de 128 bits para compatibilidade com visualizadores de PDF mais antigos.
+
+1. Carregue o documento PDF.
+1. Defina as senhas de usuário e de proprietário.
+1. Defina permissões de acesso total.
+1. Escolha o algoritmo de criptografia.
+1. Chamada `encrypt()` com senhas, permissões e algoritmo.
+1. Salvar o PDF criptografado.
+
+```python
+import aspose.pdf as ap
+
+def encrypt_pdf_file(infile, outfile):
+ """
+ Encrypt PDF with full permissions.
+
+ Args:
+ infile (str): Input PDF filename
+ outfile (str): Output PDF filename
+
+ Returns:
+ None
+
+ Example:
+ encrypt_pdf_file("sample.pdf", "sample_protected.pdf")
+
+ Note:
+ Uses RC4 128-bit encryption with allow_all privileges.
+ """
+ document = ap.Document(infile)
+ document.encrypt(
+ "userpassword",
+ "ownerpassword",
+ ap.facades.DocumentPrivilege.allow_all,
+ ap.CryptoAlgorithm.RC4x128,
+ False,
+ )
+ document.save(outfile)
+```
+
+## Descriptografar arquivo PDF usando senha do proprietário
+
+Para remover a proteção por senha e restaurar o acesso total:
+
+1. Carregue o PDF criptografado usando a senha correta (usuário ou proprietário).
+1. Remova todas as proteções por senha e configurações de criptografia do documento.
+1. Salve o PDF agora desprotegido no arquivo de saída especificado.
+
+```python
+import aspose.pdf as ap
+
+def decrypt_pdf_file(infile, outfile):
+ """
+ Decrypt password-protected PDF.
+
+ Args:
+ infile (str): Input encrypted PDF filename
+ outfile (str): Output decrypted PDF filename
+
+ Returns:
+ None
+
+ Example:
+ decrypt_pdf_file("sample_protected.pdf", "sample_unprotected.pdf")
+
+ Note:
+ Requires user password to open document.
+ """
+ document = ap.Document(infile, "userpassword")
+ document.decrypt()
+ document.save(outfile)
+```
+
+## Alterar senha de um arquivo PDF
+
+Atualizar as credenciais de segurança (senhas de usuário e proprietário) de um documento PDF enquanto preserva seu conteúdo e estrutura.
+
+1. Abra o PDF usando a senha de proprietário existente, que fornece acesso total às configurações de segurança.
+1. Substitua as senhas antigas por uma nova senha de usuário e uma nova senha de proprietário.
+1. Salve o PDF com as configurações de senha atualizadas.
+
+```python
+import aspose.pdf as ap
+
+def change_password(infile, outfile):
+ """
+ Change user and owner passwords.
+
+ Args:
+ infile (str): Input PDF filename
+ outfile (str): Output PDF filename
+
+ Returns:
+ None
+
+ Example:
+ change_password("sample_protected.pdf", "sample_changepassword.pdf")
+
+ Note:
+ Changes from ownerpassword to newuser/newowner.
+ """
+ document = ap.Document(infile, "ownerpassword")
+ document.change_passwords("ownerpassword", "newuser", "newowner")
+ document.save(outfile)
+
+```
+
+## Determine a senha correta a partir do Array
+
+Em alguns cenários, pode ser necessário identificar a senha correta a partir de uma lista de possíveis candidatas para acessar um PDF protegido. O trecho abaixo verifica se um arquivo PDF está criptografado e então tenta abri‑lo iterando por uma lista pré‑definida de senhas.
+
+O processo inclui:
+
+1. Usar `PdfFileInfo` para detectar se o PDF está criptografado.
+1. Abra o PDF com cada senha usando `ap.Document()`.
+1. Se for bem-sucedido, ele imprime o número de páginas.
+1. Se não, ele captura a exceção e relata a senha falhada.
+
+```python
+import aspose.pdf as ap
+
+def determine_correct_password_from_list(infile):
+ """
+ Test multiple passwords to find correct one.
+
+ Args:
+ infile (str): Input encrypted PDF filename
+
+ Returns:
+ None
+
+ Example:
+ determine_correct_password_from_list("sample_protected.pdf")
+
+ Note:
+ Tries passwords: test, test1, test2, test3, userpassword.
+ Prints page count if password is correct.
+ """
+ info = ap.facades.PdfFileInfo(infile)
+ print(f"File is password protected {info.is_encrypted}")
+
+ passwords = "test", "test1", "test2", "test3", "userpassword"
+
+ for password in passwords:
+ try:
+ document = ap.Document(infile, password)
+ count = len(document.pages)
+ if count > 0:
+ print(f"Number of Page in document are = {count}")
+ except RuntimeError as ex:
+ template = "An exception of type {0} occurred. Arguments:\n{1!r}"
+ message = template.format(type(ex).__name__, ex.args)
+ print(message)
+```
diff --git a/pt/python-net/basic-operations/split-pdf/_index.md b/pt/python-net/basic-operations/split-pdf/_index.md
new file mode 100644
index 0000000000..48c7aece1e
--- /dev/null
+++ b/pt/python-net/basic-operations/split-pdf/_index.md
@@ -0,0 +1,60 @@
+---
+title: Dividir arquivos PDF em Python
+linktitle: Dividir arquivos PDF
+type: docs
+weight: 60
+url: /pt/python-net/split-pdf/
+description: Aprenda como dividir páginas de PDF em arquivos PDF separados em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dividindo páginas de PDF usando Python
+Abstract: O artigo discute o processo de dividir páginas de PDF em arquivos individuais usando Python, destacando a utilidade desse recurso para gerenciar documentos PDF grandes. Ele faz referência ao Aspose.PDF Splitter, uma ferramenta online projetada para demonstrar a funcionalidade de divisão de PDF. O artigo fornece um método detalhado para alcançar isso em aplicações Python, envolvendo a iteração pelas páginas de um documento PDF através da `PageCollection` do objeto `Document`. Para cada página, um novo objeto `Document` é criado, a página é adicionada a ele e o novo arquivo PDF é salvo usando o método `save()`. Um trecho de código Python acompanhante ilustra esse processo, mostrando as etapas necessárias para dividir um documento PDF em arquivos separados ao iterar pelas suas páginas e salvar cada uma como um PDF individual.
+---
+
+Dividir páginas de PDF pode ser um recurso útil para quem deseja dividir um arquivo grande em páginas individuais ou grupos de páginas.
+
+Use este fluxo de trabalho quando precisar dividir PDFs grandes em arquivos de uma página ou conjuntos de documentos menores para distribuição, revisão ou processamento subsequente.
+
+## Exemplo ao Vivo
+
+[Aspose.PDF Splitter](https://products.aspose.app/pdf/splitter) é um aplicativo web gratuito online que permite investigar como a funcionalidade de divisão de apresentações funciona.
+
+[](https://products.aspose.app/pdf/splitter)
+
+Este tópico mostra como dividir páginas de PDF em arquivos PDF individuais em suas aplicações Python. Para dividir páginas de PDF em arquivos PDF de página única usando Python, siga os passos abaixo:
+
+1. Percorra as páginas do documento PDF através do [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto [PageCollection](https://reference.aspose.com/pdf/python-net/aspose.pdf/pagecollection/) coleção
+1. Para cada iteração, crie um novo objeto Document e adicione o individual [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) objeto no documento vazio
+1. Salvar o novo PDF usando [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método
+
+## Dividir PDF em vários arquivos ou PDFs separados em Python
+
+O trecho de código Python a seguir mostra como dividir as páginas do PDF em arquivos PDF individuais.
+
+```python
+
+ import aspose.pdf as ap
+
+ # Open document
+ document = ap.Document(input_pdf)
+
+ page_count = 1
+
+ # Loop through all the pages
+ for pdfPage in document.pages:
+ new_document = ap.Document()
+ new_document.pages.add(pdfPage)
+ new_document.save(output_path + "_page_" + str(page_count) + ".pdf")
+ page_count = page_count + 1
+```
+
+## Tópicos Relacionados ao Documento
+
+- [Trabalhar com documentos PDF em Python](/pdf/pt/python-net/working-with-documents/)
+- [Mesclar arquivos PDF em Python](/pdf/pt/python-net/merge-pdf-documents/)
+- [Otimizar arquivos PDF em Python](/pdf/pt/python-net/optimize-pdf/)
+- [Manipular documentos PDF em Python](/pdf/pt/python-net/manipulate-pdf-document/)
+
diff --git a/pt/python-net/basic-operations/split-pdf/splitter.png b/pt/python-net/basic-operations/split-pdf/splitter.png
new file mode 100644
index 0000000000..ede55d9927
Binary files /dev/null and b/pt/python-net/basic-operations/split-pdf/splitter.png differ
diff --git a/pt/python-net/converting/_index.md b/pt/python-net/converting/_index.md
index 20de25cbf3..a2482d8191 100644
--- a/pt/python-net/converting/_index.md
+++ b/pt/python-net/converting/_index.md
@@ -64,5 +64,5 @@ PDF/A é uma versão do PDF projetada para a arquivamento de longo prazo de docu
Você pode tentar a funcionalidade de conversão usando nossos Aspose PDF APPS:
-[](https://products.aspose.app/pdf/conversion)
+[](https://products.aspose.app/pdf/conversion)
{{% /alert %}}
\ No newline at end of file
diff --git a/pt/python-net/converting/app.png b/pt/python-net/converting/app.png
new file mode 100644
index 0000000000..6135eb7bcd
Binary files /dev/null and b/pt/python-net/converting/app.png differ
diff --git a/pt/python-net/converting/convert-html-to-pdf/_index.md b/pt/python-net/converting/convert-html-to-pdf/_index.md
index 6ac8b15d76..13068f1167 100644
--- a/pt/python-net/converting/convert-html-to-pdf/_index.md
+++ b/pt/python-net/converting/convert-html-to-pdf/_index.md
@@ -1,79 +1,202 @@
---
title: Converter HTML para PDF em Python
-linktitle: Converter arquivo HTML para PDF
+linktitle: Converter HTML para arquivo PDF
type: docs
weight: 40
url: /pt/python-net/convert-html-to-pdf/
-lastmod: "2022-12-22"
-description: Este tópico mostra como converter HTML para PDF e MHTML para PDF usando Aspose.PDF para Python.
+lastmod: "2026-05-21"
+description: Aprenda como converter HTML e MHTML para PDF em Python com Aspose.PDF for Python via .NET, incluindo configurações de mídia CSS, fontes incorporadas e saída de PDF marcado.
sitemap:
changefreq: "monthly"
priority: 0.8
+TechArticle: true
+AlternativeHeadline: Como converter HTML para PDF em Python com Aspose.PDF
+Abstract: Este artigo explica como converter arquivos HTML e MHTML para PDF usando Aspose.PDF for Python via .NET. Ele cobre o fluxo de trabalho básico de HTML para PDF e mostra como controlar a renderização com tipos de mídia, prioridade de regras de página CSS, fontes incorporadas, saída de página única e geração de estrutura lógica para PDFs etiquetados acessíveis.
---
-## Visão Geral
+## Conversão de HTML para PDF em Python
-Aspose.PDF para Python via .NET é uma solução profissional que permite criar arquivos PDF a partir de páginas da web e código HTML bruto em suas aplicações.
+**Aspose.PDF for Python via .NET** permite converter documentos HTML existentes para PDF com opções flexíveis de renderização. Você pode ajustar finamente como a saída é gerada para corresponder ao seu layout, estilo, acessibilidade e requisitos de arquivamento.
-Este artigo explica como **converter HTML para PDF usando Python**. Ele cobre os seguintes tópicos.
+## Converter HTML para PDF
-_Formato_: **HTML**
-- [Python HTML para PDF](#python-html-to-pdf)
-- [Python Converter HTML para PDF](#python-html-to-pdf)
-- [Python Como converter HTML para PDF](#python-html-to-pdf)
+O exemplo Python a seguir mostra o fluxo de trabalho básico para converter um documento HTML em PDF.
-## Conversão de HTML para PDF em Python
+1. Crie uma instância de [HtmlLoadOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlloadoptions/) classe.
+1. Inicializar um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto com o arquivo HTML de origem.
+1. Salve o documento PDF de saída chamando `document.save()`.
-**Aspose.PDF para Python** é uma API de manipulação de PDF que permite converter qualquer documento HTML existente em PDF de forma perfeita. O processo de conversão de HTML para PDF pode ser personalizado de forma flexível.
+```python
+from os import path
+import aspose.pdf as ap
-## Converter HTML para PDF
+path_infile = path.join(self.data_dir, infile)
+path_outfile = path.join(self.data_dir, "python", outfile)
+
+load_options = ap.HtmlLoadOptions()
+load_options.page_layout_option = ap.HtmlPageLayoutOption.SCALE_TO_PAGE_WIDTH
+document = ap.Document(path_infile, load_options)
+document.save(path_outfile)
+print(infile + " converted into " + outfile)
+```
+
+## Conversões relacionadas
+
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) quando você precisa de saída pronta para web a partir de arquivos PDF existentes.
+- [Converter outros formatos de arquivo para PDF](/pdf/pt/python-net/convert-other-files-to-pdf/) para fluxos de trabalho de conversão de EPUB, XPS, texto e PostScript.
+- [Converter imagens para PDF](/pdf/pt/python-net/convert-images-format-to-pdf/) quando o conteúdo de origem é baseado em imagem, em vez de marcação HTML.
+
+{{% alert color="success" %}}
+**Tente converter HTML para PDF online**
-O exemplo de código Python a seguir mostra como converter um documento HTML em PDF.
+Aspose apresenta o aplicativo online ["HTML para PDF"](https://products.aspose.app/html/en/conversion/html-to-pdf), onde você pode testar a qualidade da conversão e a saída.
+
+[](https://products.aspose.app/html/en/conversion/html-to-pdf)
+{{% /alert %}}
+
+## Converter HTML para PDF usando tipo de mídia
+
+Este exemplo mostra como converter um arquivo HTML para PDF usando opções de renderização específicas.
+
+1. Crie uma instância de [HtmlLoadOptions()](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlloadoptions/) classe.
+1. Definir `html_media_type` para aplicar regras CSS destinadas a layouts de tela ou impressão, como `HtmlMediaType.SCREEN` ou `HtmlMediaType.PRINT`.
+1. Carregue o HTML em um `ap.Document` usando as opções de carregamento.
+1. Salve o documento como um PDF.
```python
+from os import path
import aspose.pdf as ap
-# Carregar o documento HTML
-html_document = "sample.html"
+path_infile = path.join(self.data_dir, infile)
+path_outfile = path.join(self.data_dir, "python", outfile)
-# Criar um objeto de documento PDF
-pdf_document = ap.Document()
+load_options = ap.HtmlLoadOptions()
+load_options.html_media_type = ap.HtmlMediaType.SCREEN
+document = ap.Document(path_infile, load_options)
+document.save(path_outfile)
+print(infile + " converted into " + outfile)
+```
-# Adicionar uma página ao documento PDF
-pdf_page = pdf_document.pages.add()
+## Priorize o CSS `@page` regra durante a conversão de HTML para PDF
-# Criar um objeto HtmlFragment a partir do HTML
-html_fragment = ap.HtmlFragment(html_document)
+Alguns documentos usam [o `@page` regra](https://developer.mozilla.org/en-US/docs/Web/CSS/@page) para layout de página. Se esses estilos entrarem em conflito com outras configurações, você pode controlar a prioridade com `is_priority_css_page_rule`.
-# Adicionar o HtmlFragment à página PDF
-pdf_page.paragraphs.add(html_fragment)
+1. Crie uma instância de [HtmlLoadOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlloadoptions/) classe.
+1. Definir `is_priority_css_page_rule = False` para permitir que outros estilos tenham precedência sobre `@page` regras.
+1. Carregue o HTML em um `ap.Document` com as opções configuradas.
+1. Salve o documento como um PDF.
-# Salvar o documento PDF
-pdf_document.save("output.pdf")
+```python
+from os import path
+import aspose.pdf as ap
+
+path_infile = path.join(self.data_dir, infile)
+path_outfile = path.join(self.data_dir, "python", outfile)
+
+load_options = ap.HtmlLoadOptions()
+# load_options.is_priority_css_page_rule = False
+document = ap.Document(path_infile, load_options)
+document.save(path_outfile)
+print(infile + " converted into " + outfile)
```
-# Fim do exemplo
+## Converter HTML para PDF com fontes incorporadas
+Este exemplo mostra como converter um arquivo HTML em PDF enquanto incorpora fontes. Se precisar que o PDF de saída preserve a tipografia original, defina `is_embed_fonts` para `True`.
-1. Crie uma instância da classe [HtmlLoadOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlloadoptions/).
-2. Inicialize o objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-3. Salve o documento PDF de saída chamando o método **Document.Save()**.
+1. Criar `HtmlLoadOptions()` para configurar a conversão de HTML para PDF.
+1. Definir `is_embed_fonts = True` incorporar as fontes usadas no HTML diretamente no PDF.
+1. Carregue o HTML em um `ap.Document` com estas opções.
+1. Salve o documento como um PDF.
```python
+from os import path
+import aspose.pdf as ap
- import aspose.pdf as ap
+path_infile = path.join(self.data_dir, infile)
+path_outfile = path.join(self.data_dir, "python", outfile)
- input_pdf = DIR_INPUT + "little_html.html"
- output_pdf = DIR_OUTPUT + "convert_html_to_pdf.pdf"
- options = ap.HtmlLoadOptions()
- document = ap.Document(input_pdf, options)
- document.save(output_pdf)
+load_options = ap.HtmlLoadOptions()
+load_options.is_embed_fonts = True
+document = ap.Document(path_infile, load_options)
+document.save(path_outfile)
+print(infile + " converted into " + outfile)
```
-{{% alert color="success" %}}
-**Tente converter HTML para PDF online**
+## Renderizar conteúdo HTML em uma única página PDF
+
+Este exemplo demonstra como converter um arquivo HTML em um PDF de página única usando Aspose.PDF for Python via .NET. Use o `is_render_to_single_page` propriedade quando você deseja que o conteúdo HTML completo seja renderizado em uma única página contínua.
-A Aspose apresenta a você o aplicativo online gratuito ["HTML to PDF"](https://products.aspose.app/html/en/conversion/html-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que ele funciona.
+1. Criar uma instância de `HtmlLoadOptions()` para configurar o processo de conversão.
+1. Habilitar `is_render_to_single_page` para renderizar todo o conteúdo HTML em uma página.
+1. Carregue o documento com as opções configuradas em um `ap.Document`.
+1. Salve o resultado como um arquivo PDF.
-[](https://products.aspose.app/html/en/conversion/html-to-pdf)
-{{% /alert %}}
\ No newline at end of file
+```python
+from os import path
+import aspose.pdf as ap
+
+path_infile = path.join(self.data_dir, infile)
+path_outfile = path.join(self.data_dir, "python", outfile)
+
+options = ap.HtmlLoadOptions()
+options.is_render_to_single_page = True
+
+doc = ap.Document(path_infile, options)
+doc.save(path_outfile)
+```
+
+## Criar estrutura lógica a partir de tags HTML
+
+A estrutura lógica, também chamada de Tagged PDF, preserva a hierarquia semântica do HTML original, como cabeçalhos, parágrafos e listas. Isso torna o PDF resultante mais acessível, pesquisável e adequado para fluxos de trabalho de documentos estruturados.
+
+Ao habilitar a estrutura lógica durante a conversão, o DOM HTML é mapeado para uma árvore de tags PDF em vez de ser renderizado apenas como conteúdo visual.
+
+Para atender aos requisitos de acessibilidade, um PDF deve incluir elementos de estrutura lógica que definam a ordem de leitura, forneçam texto alternativo para leitores de tela e preservem a hierarquia do conteúdo.
+
+> A qualidade da estrutura lógica no PDF de saída depende diretamente da qualidade da marcação HTML original. HTML mal estruturado ou inválido pode resultar em marcação incompleta ou imprecisa no PDF convertido.
+
+1. Crie uma instância de HtmlLoadOptions para controlar como o HTML é convertido.
+1. Ative a marcação semântica para que o PDF contenha elementos estruturados.
+1. Abra o arquivo HTML usando as opções configuradas.
+1. Salve o PDF estruturado.
+
+```python
+import aspose.pdf as ap
+
+# Path to the source HTML
+input_html_path = "input.html"
+# Path for the Logical Structure PDF
+output_pdf_path = "output_logical_structure.pdf"
+# Initialize HtmlLoadOptions
+options = ap.HtmlLoadOptions()
+# Convert HTML markup to PDF logical structure elements
+options.create_logical_structure = True
+# Open PDF document
+with ap.Document(input_html_path, options) as document:
+ # Save PDF document
+ document.save(output_pdf_path)
+```
+
+## Converter MHTML para PDF
+
+Este exemplo mostra como converter um arquivo MHT ou MHTML em um documento PDF usando Aspose.PDF for Python via .NET com dimensões de página específicas.
+
+1. Criar uma instância de `ap.MhtLoadOptions()` para configurar o processamento de arquivos MHTML.
+1. Defina vários parâmetros, como o tamanho da página.
+1. Inicialize o documento com o arquivo de entrada e as opções de carregamento configuradas.
+1. Salve o documento resultante como um PDF.
+
+```python
+from os import path
+import aspose.pdf as ap
+
+path_infile = path.join(self.data_dir, infile)
+path_outfile = path.join(self.data_dir, "python", outfile)
+load_options = ap.MhtLoadOptions()
+load_options.page_info.width = 842
+load_options.page_info.height = 1191
+document = ap.Document(path_infile, load_options)
+document.save(path_outfile)
+print(infile + " converted into " + outfile)
+```
diff --git a/pt/python-net/converting/convert-html-to-pdf/html.png b/pt/python-net/converting/convert-html-to-pdf/html.png
new file mode 100644
index 0000000000..68fa4a3696
Binary files /dev/null and b/pt/python-net/converting/convert-html-to-pdf/html.png differ
diff --git a/pt/python-net/converting/convert-images-format-to-pdf/_index.md b/pt/python-net/converting/convert-images-format-to-pdf/_index.md
new file mode 100644
index 0000000000..7000a1be15
--- /dev/null
+++ b/pt/python-net/converting/convert-images-format-to-pdf/_index.md
@@ -0,0 +1,359 @@
+---
+title: Converter formatos de imagem para PDF em Python
+linktitle: Converter imagens para PDF
+type: docs
+weight: 60
+url: /pt/python-net/convert-images-format-to-pdf/
+lastmod: "2026-05-18"
+description: Aprenda como converter BMP, CGM, DICOM, PNG, TIFF, EMF, SVG e outros formatos de imagem para PDF em Python com Aspose.PDF for Python via .NET.
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Como Converter Imagens para PDF em Python
+Abstract: Este artigo fornece um guia abrangente sobre a conversão de vários formatos de imagem para PDF usando Python, aproveitando especificamente a biblioteca Aspose.PDF para Python via .NET. O artigo cobre uma variedade de formatos de imagem, incluindo BMP, CGM, DICOM, EMF, GIF, PNG, SVG e TIFF. Cada seção detalha as etapas necessárias para realizar a conversão, fornecendo trechos de código para ilustrar o processo. Por exemplo, converter BMP para PDF envolve criar um novo documento PDF, definir a posição da imagem, inserir a imagem e salvar o documento. Da mesma forma, para formatos como CGM, DICOM e outros, são descritas opções de carregamento específicas e etapas de processamento. O artigo também destaca as vantagens de usar Aspose.PDF para essas tarefas, como seu suporte a diferentes métodos de codificação e a capacidade de processar imagens de quadro único e de múltiplos quadros.
+---
+
+## Conversões relacionadas
+
+- [Converter PDF para formatos de imagem](/pdf/pt/python-net/convert-pdf-to-images-format/) quando você precisar do fluxo de trabalho reverso.
+- [Converter HTML para PDF](/pdf/pt/python-net/convert-html-to-pdf/) para conteúdo web e fontes MHTML.
+- [Converter outros formatos de arquivo para PDF](/pdf/pt/python-net/convert-other-files-to-pdf/) para EPUB, XPS, texto e outras entradas não‑imagem.
+
+## Conversões de Imagens Python para PDF
+
+**Aspose.PDF for Python via .NET** permite que você converta diferentes formatos de imagens em arquivos PDF. Nossa biblioteca demonstra trechos de código para converter os formatos de imagem mais populares, como - BMP, CGM, DICOM, EMF, JPG, PNG, SVG e TIFF.
+
+## Converter BMP para PDF
+
+Converter arquivos BMP para documento PDF usando a biblioteca **Aspose.PDF for Python via .NET**.
+
+BMP imagens são arquivos que possuem extensão. BMP representa arquivos de imagem bitmap que são usados para armazenar imagens digitais em bitmap. Essas imagens são independentes do adaptador gráfico e também são chamadas de formato de arquivo bitmap independente de dispositivo (DIB).
+
+Você pode converter BMP em arquivos PDF com Aspose.PDF for Python via .NET API. Portanto, você pode seguir os passos a seguir para converter imagens BMP:
+
+Etapas para Converter BMP para PDF em Python:
+
+1. Crie um documento PDF vazio.
+1. Crie a página que você precisa, por exemplo, criamos A4, mas você pode especificar seu próprio formato.
+1. Coloca a imagem (de infile) dentro da página usando o retângulo definido.
+1. Salve o documento como PDF.
+
+Então o seguinte trecho de código segue estas etapas e mostra como converter BMP para PDF usando Python:
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_BMP_to_PDF(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ rectangle = ap.Rectangle(0, 0, 595, 842, True) # A4 size in points
+ page.add_image(infile, rectangle)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+{{% alert color="success" %}}
+**Tente converter BMP para PDF online**
+
+A Aspose apresenta a você o aplicativo online ["BMP para PDF"](https://products.aspose.app/pdf/conversion/bmp-to-pdf/), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/bmp-to-pdf/)
+{{% /alert %}}
+
+## Converter CGM para PDF
+
+Converta um CGM (Computer Graphics Metafile) para PDF (ou outro formato suportado) usando Aspose.PDF for Python via .NET.
+
+CGM é uma extensão de arquivo para um formato Computer Graphics Metafile comumente usado em CAD (projeto assistido por computador) e aplicações de gráficos de apresentação. CGM é um formato de gráficos vetoriais que suporta três diferentes métodos de codificação: binário (melhor para velocidade de leitura do programa), baseado em caracteres (produz o menor tamanho de arquivo e permite transferências de dados mais rápidas) ou codificação em texto claro (permite que os usuários leiam e modifiquem o arquivo com um editor de texto).
+
+Confira o próximo trecho de código para converter arquivos CGM para o formato PDF.
+
+Etapas para Converter CGM em PDF em Python:
+
+1. Definir caminhos de arquivo
+1. Definir opções de carregamento para CGM.
+1. Converter CGM para PDF
+1. Mensagem de Conversão de Impressão
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_CGM_to_PDF(infile, outfile):
+ options = ap.CgmLoadOptions()
+ document = ap.Document(infile, options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter DICOM para PDF
+
+DICOM O formato é o padrão da indústria médica para a criação, armazenamento, transmissão e visualização de imagens médicas digitais e documentos de pacientes examinados.
+
+**Aspose.PDF for Python** permite converter imagens DICOM e SVG, mas por razões técnicas ao adicionar imagens você precisa especificar o tipo de arquivo a ser adicionado ao PDF.
+
+O trecho de código a seguir mostra como converter arquivos DICOM para o formato PDF com Aspose.PDF. Você deve carregar a imagem DICOM, colocar a imagem em uma página de um arquivo PDF e salvar a saída como PDF. Usamos a biblioteca adicional pydicom para definir as dimensões desta imagem. Se você quiser posicionar a imagem na página, pode pular este trecho de código.
+
+1. Carregue o arquivo DICOM.
+1. Extrair dimensões da imagem.
+1. Imprimir tamanho da imagem.
+1. Crie um novo documento PDF.
+1. Prepare a imagem DICOM para PDF.
+1. Defina o tamanho da página PDF e as margens.
+1. Adicione a imagem à página.
+1. Salvar o PDF.
+1. Mensagem de Conversão de Impressão.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_DICOM_to_PDF(infile, outfile):
+ # Load the DICOM file
+ import pydicom
+
+ dicom_file = pydicom.dcmread(infile)
+
+ # Get the dimensions of the image
+ rows = dicom_file.Rows
+ columns = dicom_file.Columns
+
+ # Print the dimensions
+ print(f"DICOM image size: {rows} x {columns} pixels")
+
+ # Initialize new Document
+ document = ap.Document()
+ page = document.pages.add()
+ image = ap.Image()
+ image.file_type = ap.ImageFileType.DICOM
+ image.file = infile
+
+ # Set page dimensions
+ page.page_info.height = rows
+ page.page_info.width = columns
+ page.page_info.margin.bottom = 0
+ page.page_info.margin.top = 0
+ page.page_info.margin.right = 0
+ page.page_info.margin.left = 0
+ page.paragraphs.add(image)
+
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+{{% alert color="success" %}}
+**Tente converter DICOM para PDF online**
+
+A Aspose apresenta a você o aplicativo online ["DICOM para PDF"](https://products.aspose.app/pdf/conversion/dicom-to-pdf/), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/dicom-to-pdf/)
+{{% /alert %}}
+
+## Converter EMF para PDF
+
+EMF armazena imagens gráficas independentemente do dispositivo. Metafiles de EMF são compostos por registros de comprimento variável em ordem cronológica que podem renderizar a imagem armazenada após a análise em qualquer dispositivo de saída.
+
+O trecho de código a seguir demonstra como converter um EMF para PDF com Python:
+
+```python
+
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_EMF_to_PDF(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ rectangle = ap.Rectangle(0, 0, 595, 842, True) # A4 size in points
+ # add image to new pdf page
+ page.add_image(infile, rectangle)
+
+ # Save the file into PDF format
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+{{% alert color="success" %}}
+**Tente converter EMF para PDF online**
+
+A Aspose apresenta a você o aplicativo online ["EMF para PDF"](https://products.aspose.app/pdf/conversion/emf-to-pdf/), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/emf-to-pdf/)
+{{% /alert %}}
+
+## Converter GIF para PDF
+
+Converter arquivos GIF em documento PDF usando a biblioteca **Aspose.PDF for Python via .NET**.
+
+GIF é capaz de armazenar dados compactados sem perda de qualidade em um formato de no máximo 256 cores. O formato GIF independente de hardware foi desenvolvido em 1987 (GIF87a) pela CompuServe para transmitir imagens bitmap por redes.
+
+Então o seguinte trecho de código segue estas etapas e mostra como converter BMP para PDF usando Python:
+
+```python
+
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_GIF_to_PDF(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ rectangle = ap.Rectangle(0, 0, 595, 842, True) # A4 size in points
+ page.add_image(infile, rectangle)
+
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+{{% alert color="success" %}}
+**Tente converter GIF para PDF online**
+
+A Aspose apresenta a você o aplicativo online [GIF para PDF](https://products.aspose.app/pdf/conversion/gif-to-pdf/), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/gif-to-pdf/)
+{{% /alert %}}
+
+## Converter PNG para PDF
+
+**Aspose.PDF for Python via .NET** suporta recurso para converter imagens PNG para formato PDF. Verifique o próximo trecho de código para realizar sua tarefa.
+
+PNG refere-se a um tipo de formato de arquivo de imagem raster que usa compressão sem perdas, o que o torna popular entre seus usuários.
+
+Você pode converter PNG para imagem PDF usando as etapas abaixo:
+
+1. Criar um Novo Documento PDF.
+1. Definir Posicionamento de Imagem.
+1. Salvar o PDF.
+1. Mensagem de Conversão de Impressão.
+
+Além disso, o trecho de código abaixo mostra como converter PNG para PDF com Python:
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PNG_to_PDF(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ rectangle = ap.Rectangle(0, 0, 595, 842, True) # A4 size in points
+ page.add_image(infile, rectangle)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+{{% alert color="success" %}}
+**Tente converter PNG para PDF online**
+
+A Aspose apresenta a você o aplicativo online [PNG para PDF](https://products.aspose.app/pdf/conversion/png-to-pdf/), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/png-to-pdf/)
+{{% /alert %}}
+
+## Converter SVG para PDF
+
+**Aspose.PDF for Python via .NET** explica como converter imagens SVG para formato PDF e como obter as dimensões do arquivo SVG de origem.
+
+Scalable Vector Graphics (SVG) é uma família de especificações de um formato de arquivo baseado em XML para gráficos vetoriais bidimensionais, tanto estáticos quanto dinâmicos (interativos ou animados). A especificação SVG é um padrão aberto que está sendo desenvolvido pelo World Wide Web Consortium (W3C) desde 1999.
+
+SVG as imagens e seus comportamentos são definidos em arquivos de texto XML. Isso significa que podem ser pesquisadas, indexadas, scriptadas e, se necessário, compactadas. Como arquivos XML, imagens SVG podem ser criadas e editadas com qualquer editor de texto, mas muitas vezes é mais conveniente criá‑las com programas de desenho como o Inkscape.
+
+{{% alert color="success" %}}
+**Tente converter o formato SVG para PDF online**
+
+Aspose.PDF for Python via .NET apresenta a você um aplicativo online ["SVG para PDF"](https://products.aspose.app/pdf/conversion/svg-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/svg-to-pdf)
+{{% /alert %}}
+
+O trecho de código a seguir mostra o processo de conversão de um arquivo SVG para o formato PDF com Aspose.PDF for Python.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_SVG_to_PDF(infile, outfile):
+ load_options = ap.SvgLoadOptions()
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter TIFF para PDF
+
+**Aspose.PDF** formato de arquivo suportado, seja uma imagem TIFF de quadro único ou de vários quadros. Isso significa que você pode converter a imagem TIFF para PDF.
+
+TIFF ou TIF, Tagged Image File Format, representa imagens raster que destinam‑se ao uso em uma variedade de dispositivos que suportam esse padrão de formato de arquivo. A imagem TIFF pode conter vários quadros com imagens diferentes. O formato de arquivo Aspose.PDF também é suportado, seja ele uma imagem TIFF de quadro único ou de múltiplos quadros.
+
+Você pode converter TIFF para PDF da mesma maneira que os demais formatos de arquivos raster gráficos:
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_TIFF_to_PDF(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ rectangle = ap.Rectangle(0, 0, 595, 842, True) # A4 size in points
+ page.add_image(infile, rectangle)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter CDR para PDF
+
+O trecho de código a seguir demonstra como carregar um arquivo CorelDRAW (CDR) e salvá-lo como PDF usando 'CdrLoadOptions' no Aspose.PDF for Python via .NET.
+
+1. Crie 'CdrLoadOptions()' para configurar como o arquivo CDR deve ser carregado.
+1. Inicialize um objeto Document com o arquivo CDR e as opções de carregamento.
+1. Salve o documento como um PDF.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_CDR_to_PDF(infile, outfile):
+ load_options = ap.CdrLoadOptions()
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter JPEG para PDF
+
+Este exemplo mostra como converter JPEG para arquivo PDF usando Aspose.PDF for Python via .NET.
+
+1. Crie um novo documento PDF.
+1. Adicionar uma nova página.
+1. Defina o retângulo de posicionamento (tamanho A4: 595x842 pontos).
+1. Insira a imagem na página.
+1. Salvar o PDF.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_JPEG_to_PDF(infile, outfile):
+ document = ap.Document()
+ page = document.pages.add()
+ rectangle = ap.Rectangle(0, 0, 595, 842, True) # A4 size in points
+ page.add_image(infile, rectangle)
+
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
diff --git a/pt/python-net/converting/convert-images-format-to-pdf/bmp_to_pdf.png b/pt/python-net/converting/convert-images-format-to-pdf/bmp_to_pdf.png
new file mode 100644
index 0000000000..42ad04ba2a
Binary files /dev/null and b/pt/python-net/converting/convert-images-format-to-pdf/bmp_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-images-format-to-pdf/dicom_to_pdf.png b/pt/python-net/converting/convert-images-format-to-pdf/dicom_to_pdf.png
new file mode 100644
index 0000000000..13c6a97e9c
Binary files /dev/null and b/pt/python-net/converting/convert-images-format-to-pdf/dicom_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-images-format-to-pdf/emf_to_pdf.png b/pt/python-net/converting/convert-images-format-to-pdf/emf_to_pdf.png
new file mode 100644
index 0000000000..0962ba838b
Binary files /dev/null and b/pt/python-net/converting/convert-images-format-to-pdf/emf_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-images-format-to-pdf/png_to_pdf.png b/pt/python-net/converting/convert-images-format-to-pdf/png_to_pdf.png
new file mode 100644
index 0000000000..3d8399d4d4
Binary files /dev/null and b/pt/python-net/converting/convert-images-format-to-pdf/png_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-images-format-to-pdf/svg_to_pdf.png b/pt/python-net/converting/convert-images-format-to-pdf/svg_to_pdf.png
new file mode 100644
index 0000000000..748dc5e136
Binary files /dev/null and b/pt/python-net/converting/convert-images-format-to-pdf/svg_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/_index.md b/pt/python-net/converting/convert-other-files-to-pdf/_index.md
new file mode 100644
index 0000000000..c0ec2efc6b
--- /dev/null
+++ b/pt/python-net/converting/convert-other-files-to-pdf/_index.md
@@ -0,0 +1,339 @@
+---
+title: Converter outros formatos de arquivo para PDF em Python
+linktitle: Converter outros formatos de arquivo para PDF
+type: docs
+weight: 80
+url: /pt/python-net/convert-other-files-to-pdf/
+lastmod: "2026-05-18"
+description: Aprenda como converter arquivos EPUB, Markdown, PCL, XPS, PostScript, XML e LaTeX para PDF em Python com Aspose.PDF for Python via .NET.
+sitemap:
+ changefreq: "monthly"
+ priority: 0.5
+TechArticle: true
+AlternativeHeadline: Como converter outros formatos de arquivo para PDF em Python
+Abstract: Este artigo fornece um guia abrangente sobre a conversão de diversos formatos de arquivo para PDF usando Python, aproveitando os recursos do Aspose.PDF for Python via .NET. O documento descreve os processos de conversão para vários formatos, incluindo EPUB, Markdown, PCL, Text, XPS, PostScript, XML, XSL-FO e LaTeX/TeX. Cada seção oferece trechos de código específicos e instruções para implementar essas conversões. O artigo enfatiza a utilidade dos recursos do Aspose.PDF, como opções de carregamento personalizadas para cada tipo de arquivo, para garantir conversões precisas e eficientes. Além disso, destaca a disponibilidade de aplicações de conversão online para que os usuários explorem a funcionalidade diretamente. O guia serve como um recurso prático para desenvolvedores que desejam integrar capacidades de conversão para PDF em suas aplicações Python.
+---
+
+Este artigo explica como **converter vários outros tipos de formatos de arquivo para PDF usando Python**. Ele aborda os seguintes tópicos.
+
+## Converter OFD para PDF
+
+OFD significa Open Fixed-layout Document (também chamado de formato Open Fixed Document). É um padrão nacional chinês (GB/T 33190-2016) para documentos eletrônicos, introduzido como uma alternativa ao PDF.
+
+Etapas para converter OFD em PDF em Python:
+
+1. Configure as opções de carregamento OFD usando OfdLoadOptions().
+1. Carregue o documento OFD.
+1. Salvar como PDF.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_OFD_to_PDF(infile, outfile):
+ load_options = ap.OfdLoadOptions()
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter LaTeX/TeX para PDF
+
+O formato de arquivo LaTeX é um formato de arquivo de texto com marcação na derivada LaTeX da família de linguagens TeX e o LaTeX é um formato derivado do sistema TeX. LaTeX (ˈleɪtɛk/lay-tek ou lah-tek) é um sistema de preparação de documentos e linguagem de marcação de documentos. É amplamente usado para a comunicação e publicação de documentos científicos em muitas áreas, incluindo matemática, física e ciência da computação. Também desempenha um papel fundamental na preparação e publicação de livros e artigos que contêm material multilíngue complexo, como coreano, japonês, caracteres chineses e árabe, incluindo edições especiais.
+
+LaTeX usa o programa de composição tipográfica TeX para formatar sua saída, e ele próprio é escrito na linguagem de macros TeX.
+
+{{% alert color="success" %}}
+**Tente converter LaTeX/TeX para PDF online**
+
+Aspose.PDF for Python via .NET apresenta a você um aplicativo online ["LaTex para PDF"](https://products.aspose.app/pdf/conversion/tex-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/tex-to-pdf)
+{{% /alert %}}
+
+Passos para Converter TEX em PDF em Python:
+
+1. Configure as opções de carregamento do LaTeX usando LatexLoadOptions().
+1. Carregue o documento LaTeX.
+1. Salvar como PDF.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_TEX_to_PDF(infile, outfile):
+ load_options = ap.LatexLoadOptions()
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter EPUB para PDF
+
+**Aspose.PDF for Python via .NET** permite que você simplesmente converta arquivos EPUB para o formato PDF.
+
+EPUB (abreviação de publicação eletrônica) é um padrão gratuito e aberto de e-book da International Digital Publishing Forum (IDPF). Os arquivos têm a extensão .epub. O EPUB foi projetado para conteúdo refluível, o que significa que um leitor de EPUB pode otimizar o texto para um dispositivo de exibição específico.
+
+EPUB também suporta conteúdo de layout fixo. O formato foi concebido como um único formato que editores e casas de conversão podem usar internamente, bem como para distribuição e venda. Ele substitui o padrão Open eBook. A versão EPUB 3 também é endossada pelo Book Industry Study Group (BISG), uma associação líder do comércio de livros para práticas recomendadas padronizadas, pesquisa, informação e eventos, para o empacotamento de conteúdo.
+
+{{% alert color="success" %}}
+**Tente converter EPUB para PDF online**
+
+Aspose.PDF for Python via .NET apresenta a você um aplicativo online ["EPUB para PDF"](https://products.aspose.app/pdf/conversion/epub-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/epub-to-pdf)
+{{% /alert %}}
+
+Etapas para Converter EPUB em PDF em Python:
+
+1. Carregue o Documento EPUB com EpubLoadOptions().
+1. Converter EPUB para PDF.
+1. Imprimir Confirmação.
+
+O próximo trecho de código mostra como converter arquivos EPUB para o formato PDF com Python.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_EPUB_to_PDF(infile, outfile):
+ load_options = ap.EpubLoadOptions()
+ document = ap.Document(infile, load_options)
+
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+## Converter Markdown para PDF
+
+**Este recurso é suportado a partir da versão 19.6 ou superior.**
+
+{{% alert color="success" %}}
+**Tente converter Markdown para PDF online**
+
+Aspose.PDF for Python via .NET apresenta a você um aplicativo online ["Markdown para PDF"](https://products.aspose.app/pdf/conversion/md-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/md-to-pdf)
+{{% /alert %}}
+
+Este trecho de código da Aspose.PDF for Python via .NET ajuda a converter arquivos Markdown em PDFs, permitindo melhor compartilhamento de documentos, preservação de formatação e compatibilidade de impressão.o
+
+O trecho de código a seguir mostra como usar esta funcionalidade com a biblioteca Aspose.PDF:
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_MD_to_PDF(infile, outfile):
+ load_options = ap.MdLoadOptions()
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+## Converter PCL para PDF
+
+PCL (Printer Command Language) é uma linguagem de impressora da Hewlett-Packard desenvolvida para acessar recursos padrão de impressoras. Os níveis PCL 1 a 5e/5c são linguagens baseadas em comandos que utilizam sequências de controle processadas e interpretadas na ordem em que são recebidas. Em nível de consumidor, os fluxos de dados PCL são gerados por um driver de impressão. A saída PCL também pode ser facilmente gerada por aplicações personalizadas.
+
+{{% alert color="success" %}}
+**Tente converter PCL para PDF online**
+
+Aspose.PDF for for .NET apresenta-lhe um aplicativo online ["PCL para PDF"](https://products.aspose.app/pdf/conversion/pcl-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/pcl-to-pdf)
+{{% /alert %}}
+
+Para permitir a conversão de PCL para PDF, Aspose.PDF tem a classe [`PclLoadOptions`](https://reference.aspose.com/pdf/net/aspose.pdf/pclloadoptions) que é usado para inicializar o objeto LoadOptions. Mais tarde, esse objeto é passado como argumento durante a inicialização do objeto Document e ajuda o mecanismo de renderização de PDF a determinar o formato de entrada do documento de origem.
+
+O trecho de código a seguir mostra o processo de conversão de um arquivo PCL para o formato PDF.
+
+Etapas Converter PCL para PDF em Python:
+
+1. Opções de carregamento para PCL usando PclLoadOptions().
+1. Carregue o documento.
+1. Salvar como PDF.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_PCL_to_PDF(infile, outfile):
+ load_options = ap.PclLoadOptions()
+ load_options.supress_errors = True
+
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter texto pré-formatado para PDF
+
+**Aspose.PDF for Python via .NET** suporta o recurso de converter texto simples e arquivos de texto pré-formatados para o formato PDF.
+
+Converter texto para PDF significa adicionar fragmentos de texto à página PDF. Quanto a arquivos de texto, estamos lidando com 2 tipos de texto: pré-formatação (por exemplo, 25 linhas com 80 caracteres por linha) e texto não formatado (texto simples). Dependendo de nossas necessidades, podemos controlar essa adição nós mesmos ou confiá‑la aos algoritmos da biblioteca.
+
+{{% alert color="success" %}}
+**Tente converter TEXTO para PDF online**
+
+Aspose.PDF for Python via .NET apresenta a você um aplicativo online ["Texto para PDF"](https://products.aspose.app/pdf/conversion/txt-to-pdf), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/txt-to-pdf)
+{{% /alert %}}
+
+Passos para Converter TEXTO em PDF em Python:
+
+1. Leia o arquivo de texto de entrada linha por linha.
+1. Configure uma fonte monoespaçada (Courier New) para alinhamento consistente do texto.
+1. Crie um novo PDF Document e adicione a primeira página com margens personalizadas e configurações de Font.
+1. Iterar nas linhas do arquivo de texto Para simular Máquina de escrever, usamos a fonte \u0027monospace_font\u0027 com tamanho 12.
+1. Limite a criação de páginas a 4 páginas.
+1. Salve o PDF final no caminho especificado.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_TXT_to_PDF(infile, outfile):
+ with open(infile, "r") as file:
+ lines = file.readlines()
+
+ monospace_font = ap.text.FontRepository.find_font("Courier New")
+
+ document = ap.Document()
+ page = document.pages.add()
+
+ page.page_info.margin.left = 20
+ page.page_info.margin.right = 10
+ page.page_info.default_text_state.font = monospace_font
+ page.page_info.default_text_state.font_size = 12
+ count = 1
+ for line in lines:
+ if line != "" and line[0] == "\x0c":
+ page = document.pages.add()
+ page.page_info.margin.left = 20
+ page.page_info.margin.right = 10
+ page.page_info.default_text_state.font = monospace_font
+ page.page_info.default_text_state.font_size = 12
+ count = count + 1
+ else:
+ text = ap.text.TextFragment(line)
+ page.paragraphs.add(text)
+
+ if count == 4:
+ break
+
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter PostScript para PDF
+
+Este exemplo demonstra como converter um arquivo PostScript em um documento PDF usando Aspose.PDF for Python via .NET.
+
+1. Crie uma instância de 'PsLoadOptions' para interpretar corretamente o arquivo PS.
+1. Carregue o arquivo ‘PostScript’ em um objeto Document usando as opções de carregamento.
+1. Salve o documento no formato PDF para o caminho de saída desejado.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_PS_to_PDF(infile, outfile):
+ load_options = ap.PsLoadOptions()
+
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Converter XPS para PDF
+
+**Aspose.PDF for Python via .NET** suporta recurso de conversão XPS arquivos para o formato PDF. Consulte este artigo para resolver suas tarefas.
+
+O tipo de arquivo XPS está principalmente associado à XML Paper Specification da Microsoft Corporation. A XML Paper Specification (XPS), anteriormente codinome Metro e que engloba o conceito de marketing Next Generation Print Path (NGPP), é a iniciativa da Microsoft para integrar a criação e visualização de documentos em seu sistema operacional Windows.
+
+O seguinte trecho de código mostra o processo de conversão de arquivo XPS para formato PDF com Python.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_XPS_to_PDF(infile, outfile):
+ load_options = ap.XpsLoadOptions()
+ document = ap.Document(infile, load_options)
+ document.save(outfile)
+
+ print(infile + " converted into " + outfile)
+```
+
+{{% alert color="success" %}}
+**Tente converter o formato XPS para PDF online**
+
+Aspose.PDF for Python via .NET apresenta a você um aplicativo online ["XPS para PDF"](https://products.aspose.app/pdf/conversion/xps-to-pdf/), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/xps-to-pdf/)
+{{% /alert %}}
+
+## Converter XSL-FO para PDF
+
+O trecho de código a seguir pode ser usado para converter um XSLFO para o formato PDF com Aspose.PDF for Python via .NET:
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_XSLFO_to_PDF(xsltfile, xmlfile, outfile):
+ load_options = ap.XslFoLoadOptions(xsltfile)
+ load_options.parsing_errors_handling_type = (
+ ap.XslFoLoadOptions.ParsingErrorsHandlingTypes.THROW_EXCEPTION_IMMEDIATELY
+ )
+ document = ap.Document(xmlfile, load_options)
+ document.save(outfile)
+
+ print(xmlfile + " converted into " + outfile)
+```
+
+## Converter XML com XSLT para PDF
+
+Este exemplo demonstra como converter um arquivo XML em PDF, primeiro transformando-o em HTML usando um modelo XSLT e, em seguida, carregando o HTML no Aspose.PDF.
+
+1. Crie uma instância de 'HtmlLoadOptions' para configurar a conversão de HTML para PDF.
+1. Carregue o arquivo HTML transformado em um objeto Aspose.PDF Document.
+1. Salve o documento como PDF no caminho de saída especificado.
+1. Remova o arquivo HTML temporário após a conversão bem-sucedida.
+
+```python
+from os import path, remove
+import aspose.pdf as ap
+import sys
+
+def convert_XSLFO_to_PDF(xsltfile, xmlfile, outfile):
+ load_options = ap.XslFoLoadOptions(xsltfile)
+ load_options.parsing_errors_handling_type = (
+ ap.XslFoLoadOptions.ParsingErrorsHandlingTypes.THROW_EXCEPTION_IMMEDIATELY
+ )
+ document = ap.Document(xmlfile, load_options)
+ document.save(outfile)
+
+ print(xmlfile + " converted into " + outfile)
+```
+
+## Conversões relacionadas
+
+- [Converter HTML para PDF](/pdf/pt/python-net/convert-html-to-pdf/) para cenários de conversão de HTML e MHTML.
+- [Converter formatos de imagem para PDF](/pdf/pt/python-net/convert-images-format-to-pdf/) quando suas entradas são PNG, JPEG, TIFF, SVG ou outras imagens.
+- [Converter PDF para outros formatos](/pdf/pt/python-net/convert-pdf-to-other-files/) se você também precisar de conversões reversas, como PDF para EPUB, Markdown ou texto.
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/epub.png b/pt/python-net/converting/convert-other-files-to-pdf/epub.png
new file mode 100644
index 0000000000..2b139c0f8e
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/epub.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/latex.png b/pt/python-net/converting/convert-other-files-to-pdf/latex.png
new file mode 100644
index 0000000000..50fa2fd227
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/latex.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/markdown.png b/pt/python-net/converting/convert-other-files-to-pdf/markdown.png
new file mode 100644
index 0000000000..422b7fbfa5
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/markdown.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/pcl_to_pdf.png b/pt/python-net/converting/convert-other-files-to-pdf/pcl_to_pdf.png
new file mode 100644
index 0000000000..0593c84c27
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/pcl_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/text_to_pdf.png b/pt/python-net/converting/convert-other-files-to-pdf/text_to_pdf.png
new file mode 100644
index 0000000000..2d22af834e
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/text_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/xml_to_pdf.png b/pt/python-net/converting/convert-other-files-to-pdf/xml_to_pdf.png
new file mode 100644
index 0000000000..f872ef616f
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/xml_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-other-files-to-pdf/xps_to_pdf.png b/pt/python-net/converting/convert-other-files-to-pdf/xps_to_pdf.png
new file mode 100644
index 0000000000..8e0a2d15c0
Binary files /dev/null and b/pt/python-net/converting/convert-other-files-to-pdf/xps_to_pdf.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-excel/_index.md b/pt/python-net/converting/convert-pdf-to-excel/_index.md
index 25c1d2ab03..00afa8fc4c 100644
--- a/pt/python-net/converting/convert-pdf-to-excel/_index.md
+++ b/pt/python-net/converting/convert-pdf-to-excel/_index.md
@@ -4,266 +4,191 @@ linktitle: Converter PDF para Excel
type: docs
weight: 20
url: /pt/python-net/convert-pdf-to-excel/
-lastmod: "2022-12-23"
-description: A biblioteca Aspose.PDF para Python permite converter PDF para formato Excel usando Python. Esses formatos incluem XLS, XLSX, XML 2003 Spreadsheet, CSV, ODS.
+lastmod: "2026-05-21"
+description: Aprenda como converter arquivos PDF para Excel em Python com Aspose.PDF for Python via .NET, incluindo XLS, XLSX, CSV, ODS e saída de planilha única.
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como Converter PDF para Excel em Python
+Abstract: Este artigo fornece um guia abrangente sobre a conversão de arquivos PDF para vários formatos Excel usando Python, especificamente com a biblioteca Aspose.PDF for Python via .NET. Ele detalha os processos de conversão para os formatos XLS, XLSX, CSV e ODS. O documento explica as etapas necessárias para converter PDF para XLS e XLSX, destacando a criação de instâncias Document e ExcelSaveOptions, e o uso do método Document.Save() para especificar os formatos de saída. O artigo também discute recursos como o controle da inserção de colunas em branco e a minimização do número de planilhas durante a conversão. Além disso, fornece exemplos de conversão de PDFs para planilhas Excel individuais e outros formatos como CSV e ODS, enfatizando a flexibilidade e funcionalidade do Aspose.PDF. Uma ferramenta online para conversão de PDF para XLSX também é mencionada, permitindo que os usuários explorem a qualidade da conversão. O artigo conclui com uma lista de tópicos relacionados e trechos de código para auxiliar ainda mais na compreensão e implementação dessas conversões programaticamente.
---
-## Visão Geral
+## Converter PDF para Excel (Spreadsheet 2003 XML)
-Este artigo explica como **converter PDF para formatos Excel usando Python**. Ele abrange os seguintes tópicos.
+**Aspose.PDF for Python via .NET** suporta o recurso de converter arquivos PDF para os formatos Excel e CSV.
-_Formato_: **XLS**
+Aspose.PDF for Python via .NET é um componente de manipulação de PDF, introduzimos um recurso que renderiza arquivos PDF para pasta de trabalho do Excel (arquivos XLSX). Durante essa conversão, as páginas individuais do arquivo PDF são convertidas em planilhas do Excel.
-- [Python PDF para XLS](#python-pdf-to-xls)
-- [Python Converter PDF para XLS](#python-pdf-to-xls)
-- [Python Como converter arquivo PDF para XLS](#python-pdf-to-xls)
-
-_Formato_: **XLSX**
-
-- [Python PDF para XLSX](#python-pdf-to-xlsx)
-- [Python Converter PDF para XLSX](#python-pdf-to-xlsx)
-- [Python Como converter arquivo PDF para XLSX](#python-pdf-to-xlsx)
-
-_Formato_: **Excel**
-
-- [Python PDF para Excel](#python-pdf-to-xlsx)
-- [Python PDF para Excel XLS](#python-pdf-to-xls)
-- [Python PDF para Excel XLSX](#python-pdf-to-xlsx)
-
-_Formato_: **CSV**
-
-- [Python PDF para CSV](#python-pdf-to-csv)
-- [Python Converter PDF para CSV](#python-pdf-to-csv)
-- [Python Como converter arquivo PDF para CSV](#python-pdf-to-csv)
-
-_Formato_: **ODS**
-
-- [Python PDF para ODS](#python-pdf-to-ods)
-- [Python Converter PDF para ODS](#python-pdf-to-ods)
-- [Python Como converter arquivo PDF para ODS](#python-pdf-to-ods)
-
-## Conversão de PDF para EXCEL via Python
-
-**Aspose.PDF para Python via .NET** suporta o recurso de conversão de arquivos PDF para formatos Excel e CSV.
-
-Aspose.PDF para Python via .NET é um componente de manipulação de PDF, introduzimos um recurso que renderiza o arquivo PDF para uma planilha Excel (arquivos XLSX). Durante essa conversão, as páginas individuais do arquivo PDF são convertidas em planilhas do Excel.
+Use esta página quando precisar extrair conteúdo de PDF orientado a tabelas ou no estilo de relatório para formatos de planilha, a fim de ordenar, filtrar ou analisar posteriormente.
{{% alert color="success" %}}
**Tente converter PDF para Excel online**
-Aspose.PDF apresenta a você o aplicativo online gratuito ["PDF para XLSX"](https://products.aspose.app/pdf/conversion/pdf-to-xlsx), onde você pode tentar investigar a funcionalidade e a qualidade do funcionamento.
+Aspose.PDF apresenta a você um aplicativo online ["PDF para XLSX"](https://products.aspose.app/pdf/conversion/pdf-to-xlsx), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-xlsx)
+[](https://products.aspose.app/pdf/conversion/pdf-to-xlsx)
{{% /alert %}}
-O trecho de código a seguir mostra o processo de conversão de um arquivo PDF para o formato XLS ou XLSX com Aspose.PDF para Python via .NET.
+O trecho de código a seguir mostra o processo de conversão de arquivo PDF para formato XLS ou XLSX com Aspose.PDF for Python via .NET.
-Passos: Converter PDF para XLS em Python
+Etapas: Converter um arquivo PDF para o formato Excel (Planilha XML 2003)
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
-3. Salve no formato **XLS** especificando a **extensão .xls** chamando o método [Document.Save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e passando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Carregar o documento PDF.
+1. Configurar opções de salvamento do Excel usando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Salve o arquivo convertido.
```python
+from os import path
+import aspose.pdf as ap
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_xls.xls"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- save_option = ap.ExcelSaveOptions()
- save_option.format = ap.ExcelSaveOptions.ExcelFormat.XML_SPREAD_SHEET2003
+def convert_pdf_to_excel_spread_sheet2003(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.XML_SPREAD_SHEET2003
+ document.save(outfile, save_options)
- # Salve o arquivo no formato MS Excel
- document.save(output_pdf, save_option)
+ print(infile + " converted into " + outfile)
```
+## Converter PDF para Excel 2007+ (XLSX)
-Passos: Converter PDF para XLSX em Python
+Etapas: Converter um arquivo PDF para o formato XLSX (Excel 2007+)
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
-3. Salve no formato **XLSX** especificando a **extensão .xlsx** chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e passando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Carregar o documento PDF.
+1. Configurar opções de salvamento do Excel usando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Salve o arquivo convertido.
```python
+from os import path
+import aspose.pdf as ap
+import sys
- import aspose.pdf as ap
+def convert_pdf_to_excel_2007(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.XLSX
+ document.save(outfile, save_options)
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_xlsx.xlsx"
- # Abra o documento PDF
- document = ap.Document(input_pdf)
-
- save_option = ap.ExcelSaveOptions()
-
- # Salve o arquivo no formato MS Excel
- document.save(output_pdf, save_option)
+ print(infile + " converted into " + outfile)
```
-## Converter PDF para XLS com controle de Coluna
+## Converter PDF para XLS com controle de coluna
-Ao converter um PDF para o formato XLS, uma coluna em branco é adicionada ao arquivo de saída como primeira coluna.
- O uso da opção InsertBlankColumnAtFirst na classe 'ExcelSaveOptions' é utilizado para controlar esta coluna. Seu valor padrão é verdadeiro.
+Ao converter um PDF para o formato XLS, uma coluna em branco é adicionada ao arquivo de saída como primeira coluna. Na classe 'ExcelSaveOptions' a opção 'insert_blank_column_at_first' é usada para controlar essa coluna. Seu valor padrão é true.
```python
-
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_xlsx_with_control_column.xls"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- save_option = ap.ExcelSaveOptions()
- save_option.format = ap.ExcelSaveOptions.ExcelFormat.XML_SPREAD_SHEET2003
- save_option.insert_blank_column_at_first = True
-
- # Salvar o arquivo no formato MS Excel
- document.save(output_pdf, save_option)
+from os import path
+import aspose.pdf as ap
+import sys
+
+def convert_pdf_to_excel_2007_control_column(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.XLSX
+ save_options.insert_blank_column_at_first = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
```
-## Converter PDF para uma Única Planilha do Excel
+## Converter PDF para uma única planilha do Excel
-Ao exportar um arquivo PDF com muitas páginas para XLS, cada página é exportada para uma planilha diferente no arquivo do Excel. Isso ocorre porque a propriedade MinimizeTheNumberOfWorksheets é definida como falsa por padrão. Para garantir que todas as páginas sejam exportadas para uma única planilha no arquivo Excel de saída, defina a propriedade MinimizeTheNumberOfWorksheets como verdadeira.
+Aspose.PDF for Python via .NET mostra como converter um PDF para um arquivo Excel (.xlsx), com a opção ‘minimize_the_number_of_worksheets’ ativada.
+Passos: Converter PDF para XLS ou XLSX em uma única planilha no Python
-Passos: Converter PDF para XLS ou XLSX em uma Única Planilha no Python
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) com **MinimizeTheNumberOfWorksheets = true**.
-3. Salve no formato **XLS** ou **XLSX** com uma única planilha chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e passando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Carregar o documento PDF.
+1. Configurar opções de salvamento do Excel usando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. A opção 'minimize_the_number_of_worksheets' reduz o número de planilhas do Excel combinando páginas PDF em menos planilhas (por exemplo, uma única planilha para todo o documento, se possível).
+1. Salve o arquivo convertido.
```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def convert_pdf_to_excel_2007_single_excel_worksheet(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.XLSX
+ save_options.minimize_the_number_of_worksheets = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
- import aspose.pdf as ap
+## Converter PDF para Excel 2007 habilitado para macro (XLSM)
- input_pdf = DIR_INPUT + "many_pages.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_xlsx_single_excel_worksheet.xls"
- # Abra o documento PDF
- document = ap.Document(input_pdf)
+Este exemplo em Python mostra como converter um arquivo PDF em um arquivo Excel no formato XLSM (Pasta de Trabalho com Macro do Excel).
- save_option = ap.ExcelSaveOptions()
- save_option.format = ap.ExcelSaveOptions.ExcelFormat.XML_SPREAD_SHEET2003
- save_option.minimize_the_number_of_worksheets = True
+```python
+from os import path
+import aspose.pdf as ap
+import sys
- # Salve o arquivo no formato MS Excel
- document.save(output_pdf, save_option)
+def convert_pdf_to_excel_2007_macro(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.XLSM
+ document.save(outfile, save_options)
+ print(infile + " converted into " + outfile)
```
-
## Converter para outros formatos de planilha
-### Converter para CSV
+### Converter PDF para CSV
-A conversão para o formato CSV é realizada da mesma forma que acima. Tudo o que você precisa - definir o formato apropriado.
+A função 'convert_pdf_to_excel_2007_csv' realiza a mesma operação de antes, mas desta vez o formato de destino é CSV (Valores Separados por Vírgula) em vez de XLSM.
-Passos: Converter PDF para CSV em Python
+Etapas: Converter PDF para CSV em Python
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) com **Format = ExcelSaveOptions.ExcelFormat.CSV**
-3. Salve no formato **CSV** chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e passando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Crie uma instância de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto com o documento PDF de origem.
+1. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) com **ExcelSaveOptions.ExcelFormat.CSV**
+1. Salve-o no formato **CSV** chamando [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods)* método e passando isso [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
```python
+from os import path
+import aspose.pdf as ap
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_csv.csv"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
+def convert_pdf_to_excel_2007_csv(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.CSV
+ document.save(outfile, save_options)
- save_option = ap.ExcelSaveOptions()
- save_option.format = ap.ExcelSaveOptions.ExcelFormat.CSV
-
- # Salvar o arquivo
- document.save(output_pdf, save_option)
+ print(infile + " converted into " + outfile)
```
+### Converter PDF para ODS
-### Converter para ODS
-
-Passos: Converter PDF para ODS em Python
+Etapas: Converter PDF para ODS em Python
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) com **Format = ExcelSaveOptions.ExcelFormat.ODS**
-3. Salve no formato **ODS** chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e passando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
+1. Crie uma instância de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto com o documento PDF de origem.
+1. Crie uma instância de [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) com **ExcelSaveOptions.ExcelFormat.ODS**
+1. Salve-o no formato **ODS** chamando [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método e passando-o [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/).
-A conversão para o formato ODS é realizada da mesma forma que todos os outros formatos.
+A conversão para o formato ODS é feita da mesma forma que todos os outros formatos.
```python
+from os import path
+import aspose.pdf as ap
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_ods.ods"
- # Abra o documento PDF
- document = ap.Document(input_pdf)
-
- save_option = ap.ExcelSaveOptions()
- save_option.format = ap.ExcelSaveOptions.ExcelFormat.ODS
+def convert_pdf_to_ods(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.ExcelSaveOptions()
+ save_options.format = ap.ExcelSaveOptions.ExcelFormat.ODS
+ document.save(outfile, save_options)
- # Salve o arquivo
- document.save(output_pdf, save_option)
+ print(infile + " converted into " + outfile)
```
+## Conversões relacionadas
-## Veja Também
-
-Este artigo também aborda esses tópicos. Os códigos são os mesmos que acima.
-
-_Formato_: **Excel**
-- [Python PDF para Excel Código](#python-pdf-to-xlsx)
-- [Python PDF para Excel API](#python-pdf-to-xlsx)
-- [Python PDF para Excel Programaticamente](#python-pdf-to-xlsx)
-- [Python PDF para Excel Biblioteca](#python-pdf-to-xlsx)
-- [Python Salvar PDF como Excel](#python-pdf-to-xlsx)
-- [Python Gerar Excel de PDF](#python-pdf-to-xlsx)
-- [Python Criar Excel de PDF](#python-pdf-to-xlsx)
-- [Python Conversor de PDF para Excel](#python-pdf-to-xlsx)
-
-_Formato_: **XLS**
-- [Python PDF para XLS Código](#python-pdf-to-xls)
-- [Python PDF para XLS API](#python-pdf-to-xls)
-- [Python PDF para XLS Programaticamente](#python-pdf-to-xls)
-- [Python PDF para XLS Biblioteca](#python-pdf-to-xls)
-- [Python Salvar PDF como XLS](#python-pdf-to-xls)
-- [Python Gerar XLS de PDF](#python-pdf-to-xls)
-- [Python Criar XLS de PDF](#python-pdf-to-xls)
-- [Python Conversor de PDF para XLS](#python-pdf-to-xls)
-
-_Formato_: **XLSX**
-
-- [Python PDF para XLSX Código](#python-pdf-to-xlsx)
-- [API Python PDF para XLSX](#python-pdf-to-xlsx)
-- [Python PDF para XLSX Programaticamente](#python-pdf-to-xlsx)
-- [Biblioteca Python PDF para XLSX](#python-pdf-to-xlsx)
-- [Python Salvar PDF como XLSX](#python-pdf-to-xlsx)
-- [Python Gerar XLSX de PDF](#python-pdf-to-xlsx)
-- [Python Criar XLSX de PDF](#python-pdf-to-xlsx)
-- [Conversor Python PDF para XLSX](#python-pdf-to-xlsx)
-
-_Format_: **CSV**
-- [Código Python PDF para CSV](#python-pdf-to-csv)
-- [API Python PDF para CSV](#python-pdf-to-csv)
-- [Python PDF para CSV Programaticamente](#python-pdf-to-csv)
-- [Biblioteca Python PDF para CSV](#python-pdf-to-csv)
-- [Python Salvar PDF como CSV](#python-pdf-to-csv)
-- [Python Gerar CSV de PDF](#python-pdf-to-csv)
-- [Python Criar CSV de PDF](#python-pdf-to-csv)
-- [Conversor Python PDF para CSV](#python-pdf-to-csv)
-
-_Format_: **ODS**
-- [Código Python PDF para ODS](#python-pdf-to-ods)
-- [API Python PDF para ODS](#python-pdf-to-ods)
-- [Python PDF para ODS Programaticamente](#python-pdf-to-ods)
-- [Biblioteca Python PDF para ODS](#python-pdf-to-ods)
-
-- [Python Salvar PDF como ODS](#python-pdf-to-ods)
-- [Python Gerar ODS de PDF](#python-pdf-to-ods)
-- [Python Criar ODS de PDF](#python-pdf-to-ods)
-- [Python Conversor de PDF para ODS](#python-pdf-to-ods)
\ No newline at end of file
+- [Converter PDF para Word](/pdf/pt/python-net/convert-pdf-to-word/) se a sua prioridade for fluxo de texto editável em vez de estrutura de planilha.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) quando você precisar de saída compatível com o navegador.
+- [Converter PDF para outros formatos](/pdf/pt/python-net/convert-pdf-to-other-files/) para EPUB, Markdown, texto, XPS e fluxos de trabalho de exportação relacionados.
\ No newline at end of file
diff --git a/pt/python-net/converting/convert-pdf-to-excel/pdf_to_xlsx.png b/pt/python-net/converting/convert-pdf-to-excel/pdf_to_xlsx.png
new file mode 100644
index 0000000000..a73534eb61
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-excel/pdf_to_xlsx.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-html/_index.md b/pt/python-net/converting/convert-pdf-to-html/_index.md
index 370106cad0..c7d2dbccbf 100644
--- a/pt/python-net/converting/convert-pdf-to-html/_index.md
+++ b/pt/python-net/converting/convert-pdf-to-html/_index.md
@@ -4,66 +4,245 @@ linktitle: Converter PDF para formato HTML
type: docs
weight: 50
url: /pt/python-net/convert-pdf-to-html/
-lastmod: "2021-11-01"
-description: Este tópico mostra como converter arquivo PDF para formato HTML com a biblioteca Aspose.PDF para Python .NET.
+lastmod: "2026-05-21"
+description: Aprenda como converter PDF para HTML em Python com Aspose.PDF for Python via .NET, incluindo saída de múltiplas páginas, imagens externas, manipulação de SVG e renderização de HTML em camadas.
sitemap:
changefreq: "monthly"
priority: 0.8
+TechArticle: true
+AlternativeHeadline: Como converter PDF para HTML em Python
+Abstract: Este artigo fornece um guia abrangente sobre como converter arquivos PDF para HTML usando Python, especificamente através da biblioteca Aspose.PDF for Python via .NET. Ele descreve as etapas necessárias para realizar essa conversão programaticamente, destacando a criação de um objeto `Document` a partir do PDF fonte e a utilização do `HtmlSaveOptions` para salvar o documento no formato HTML. O artigo inclui um trecho conciso de código Python que demonstra o processo de conversão. Além disso, apresenta uma ferramenta online, o aplicativo "PDF to HTML" da Aspose.PDF, para que os usuários explorem a funcionalidade e a qualidade da conversão. O artigo está estruturado para atender a vários tópicos relacionados, garantindo uma compreensão completa do uso de Python para a conversão de PDF para HTML.
---
-## Visão Geral
-
-Este artigo explica como **converter PDF para HTML usando Python**. Ele abrange estes tópicos.
-
-_Formato_: **HTML**
-- [Python PDF para HTML](#python-pdf-to-html)
-- [Python Converter PDF para HTML](#python-pdf-to-html)
-- [Python Como converter arquivo PDF para HTML](#python-pdf-to-html)
-
-
## Converter PDF para HTML
-**Aspose.PDF para Python via .NET** oferece muitos recursos para converter vários formatos de arquivo em documentos PDF e converter arquivos PDF em vários formatos de saída.
- Este artigo discute como converter um arquivo PDF em HTML. Você pode usar apenas algumas linhas de código em Python para converter PDF em HTML. Você pode precisar converter PDF para HTML se quiser criar um site ou adicionar conteúdo a um fórum online. Uma maneira de converter PDF para HTML é usar Python programaticamente.
+**Aspose.PDF for Python via .NET** oferece muitos recursos para converter vários formatos de arquivo em documentos PDF e converter arquivos PDF em vários formatos de saída. Este artigo discute como converter um arquivo PDF em HTML. Você pode usar apenas algumas linhas de código Python para converter PDF em HTML. Você pode precisar converter PDF em HTML se quiser criar um site ou adicionar conteúdo a um fórum online. Uma maneira de converter PDF em HTML é usar Python programaticamente.
{{% alert color="success" %}}
**Tente converter PDF para HTML online**
-Aspose.PDF para Python apresenta a você um aplicativo online gratuito ["PDF para HTML"](https://products.aspose.app/pdf/conversion/pdf-to-html), onde você pode tentar investigar a funcionalidade e qualidade com que funciona.
+Aspose.PDF for Python apresenta a você aplicação online ["PDF para HTML"](https://products.aspose.app/pdf/conversion/pdf-to-html), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-html)
+[](https://products.aspose.app/pdf/conversion/pdf-to-html)
{{% /alert %}}
-Passos: Converter PDF para HTML em Python
+Etapas: Converter PDF para HTML em Python
+
+1. Criar uma instância de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto com o documento PDF de origem.
+1. Salvar em [HtmlSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlsaveoptions/) chamando [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+## Conversões relacionadas
+
+- [Converter HTML em PDF](/pdf/pt/python-net/convert-html-to-pdf/) quando precisar do fluxo de trabalho reverso web-para-documento.
+- [Converter PDF para Word](/pdf/pt/python-net/convert-pdf-to-word/) se a saída de documento editável for mais útil do que HTML.
+- [Converter PDF para formatos de imagem](/pdf/pt/python-net/convert-pdf-to-images-format/) para cenários de exportação raster.
+
+### Converter PDF para HTML salvando imagens na pasta especificada
+
+Esta função converte um arquivo PDF para o formato HTML usando Aspose.PDF for Python via .NET. Todas as imagens extraídas são armazenadas em uma pasta especificada em vez de serem incorporadas no arquivo HTML.
+
+1. Configure as opções de salvamento HTML.
+1. Salvar como HTML com imagens externas.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_storing_images(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ images_path = path.join(path.dirname(infile), "images")
+ save_options.special_folder_for_all_images = images_path
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para HTML de várias páginas
+
+Esta função converte um arquivo PDF em HTML multipáginas, onde cada página PDF é exportada como um arquivo HTML separado. Isso torna a saída mais fácil de navegar e reduz o tempo de carregamento para PDFs grandes.
+
+1. Carregue o PDF de origem usando 'ap.Document'.
+1. Crie 'HtmlSaveOptions' e defina `split_into_pages`.
+1. Salve o documento como HTML com as páginas divididas em arquivos separados.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_multi_page(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ save_options.split_into_pages = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para HTML salvando imagens SVG em pasta especificada
+
+Esta função converte um PDF para o formato HTML enquanto armazena todas as imagens como arquivos SVG em uma pasta especificada, em vez de incorporá‑las diretamente no HTML.
+
+1. Carregue o PDF de origem usando 'ap.Document'.
+1. Crie 'HtmlSaveOptions' e defina `special_folder_for_svg_images` para a pasta de destino.
+1. Salve o documento como HTML com imagens SVG externas.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_storing_svg(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ images_path = path.join(path.dirname(infile), "svg_images")
+ save_options.special_folder_for_svg_images = images_path
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para HTML e salvar imagens SVG compactadas
+
+Este trecho converte um PDF para o formato HTML, armazenando todas as imagens como arquivos SVG em uma pasta especificada e comprimindo-os para reduzir o tamanho do arquivo.
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Salve-o em [HtmlSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/htmlsaveoptions/) chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Criar 'HtmlSaveOptions' e:
+ - Defina 'special_folder_for_svg_images' para armazenar imagens SVG externamente.
+ - Habilite 'compress_svg_graphics_if_any' para compactar imagens SVG.
+1. Salve o documento como HTML com imagens SVG externas compactadas.
+1. Imprima uma mensagem de confirmação.
```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_compress_svg(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ images_path = path.join(path.dirname(infile), "svg_images")
+ save_options.special_folder_for_svg_images = images_path
+ save_options.compress_svg_graphics_if_any = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para HTML com controle de Imagens Raster Incorporadas
- import aspose.pdf as ap
+Este trecho converte um PDF para o formato HTML, incorporando imagens raster como fundos de página PNG. Essa abordagem preserva a qualidade da imagem e o layout da página no HTML.
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_html.html"
- # Abra o documento PDF
- document = ap.Document(input_pdf)
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Crie 'HtmlSaveOptions' e 'set raster_images_saving_mode' para 'AS_EMBEDDED_PARTS_OF_PNG_PAGE_BACKGROUND'.
+1. Salve o documento como HTML com imagens raster incorporadas.
+1. Imprima uma mensagem de confirmação.
- # salve o documento no formato HTML
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_PNG_background(infile, outfile):
+ document = ap.Document(infile)
save_options = ap.HtmlSaveOptions()
- document.save(output_pdf, save_options)
+ save_options.raster_images_saving_mode = ap.HtmlSaveOptions.RasterImagesSavingModes.AS_EMBEDDED_PARTS_OF_PNG_PAGE_BACKGROUND
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
```
-## Veja Também
+### Converter PDF para página HTML contendo apenas o corpo
-Este artigo também aborda esses tópicos. Os códigos são os mesmos que acima.
+Esta função converte um PDF para o formato HTML, gerando conteúdo 'body-only' sem tags extras 'html' ou 'head', e divide a saída em páginas separadas.
-_Formato_: **HTML**
-- [Código Python PDF para HTML](#python-pdf-to-html)
-- [API Python PDF para HTML](#python-pdf-to-html)
-- [Python PDF para HTML Programaticamente](#python-pdf-to-html)
-- [Biblioteca Python PDF para HTML](#python-pdf-to-html)
-- [Python Salvar PDF como HTML](#python-pdf-to-html)
-- [Python Gerar HTML a partir de PDF](#python-pdf-to-html)
-- [Python Criar HTML a partir de PDF](#python-pdf-to-html)
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Crie 'HtmlSaveOptions' e configure:
+ - 'html_markup_generation_mode = WRITE_ONLY_BODY_CONTENT' para gerar apenas o conteúdo 'body'.
+ - 'split_into_pages' para criar arquivos HTML separados para cada página de PDF.
+1. Salvar o documento como HTML com as opções especificadas.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_body_content(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ save_options.html_markup_generation_mode = (
+ ap.HtmlSaveOptions.HtmlMarkupGenerationModes.WRITE_ONLY_BODY_CONTENT
+ )
+ save_options.split_into_pages = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para HTML com Renderização de Texto Transparente
+
+Esta função converte um PDF para o formato HTML, renderizando todo o texto como transparente, incluindo textos com sombreamento, o que preserva a fidelidade visual ao mesmo tempo em que permite estilização flexível no HTML de saída.
+
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Crie 'HtmlSaveOptions' e configure:
+ - 'save_transparent_texts' para renderizar texto normal como transparente.
+ - 'save_shadowed_texts_as_transparent_texts' para renderizar texto sombreado como transparente.
+1. Salve o documento como HTML com renderização de texto transparente.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_transparent_text_rendering(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ save_options.save_transparent_texts = True
+ save_options.save_shadowed_texts_as_transparent_texts = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para HTML com Renderização de Camadas de Documento
+
+Esta função converte um PDF para o formato HTML, preservando as camadas do documento ao transformar o conteúdo marcado em camadas separadas no HTML de saída. Isso permite que os elementos em camadas (como anotações, fundos e sobreposições) sejam renderizados com precisão.
+
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Crie 'HtmlSaveOptions' e habilite 'convert_marked_content_to_layers' para preservar camadas.
+1. Salve o documento como HTML com conteúdo em camadas.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_HTML_document_layers_rendering(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.HtmlSaveOptions()
+ save_options.convert_marked_content_to_layers = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
-- [Conversor Python PDF para HTML](#python-pdf-to-html)
\ No newline at end of file
diff --git a/pt/python-net/converting/convert-pdf-to-html/pdf_to_html.png b/pt/python-net/converting/convert-pdf-to-html/pdf_to_html.png
new file mode 100644
index 0000000000..e2543a9b65
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-html/pdf_to_html.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-images-format/_index.md b/pt/python-net/converting/convert-pdf-to-images-format/_index.md
index 07711161af..7ad298ae06 100644
--- a/pt/python-net/converting/convert-pdf-to-images-format/_index.md
+++ b/pt/python-net/converting/convert-pdf-to-images-format/_index.md
@@ -1,344 +1,306 @@
---
-title: Converter PDF para Diferentes Formatos de Imagem em Python
-linktitle: Converter PDF para Imagens
+title: Converter PDF para formatos de imagem em Python
+linktitle: Converter PDF para imagens
type: docs
weight: 70
url: /pt/python-net/convert-pdf-to-images-format/
-lastmod: "2022-12-23"
-description: Este tópico mostra como usar Aspose.PDF para Python para converter PDF para vários formatos de imagem, como TIFF, BMP, EMF, JPEG, PNG, GIF, SVG com algumas linhas de código.
+lastmod: "2026-05-21"
+description: Aprenda como renderizar páginas PDF como arquivos TIFF, BMP, EMF, JPEG, PNG, GIF e SVG em Python com Aspose.PDF for Python via .NET.
sitemap:
changefreq: "monthly"
priority: 0.5
+TechArticle: true
+AlternativeHeadline: Converta páginas PDF para TIFF, PNG, JPEG, GIF, BMP, EMF e SVG em Python.
+Abstract: Este artigo explica como converter arquivos PDF para formatos de imagem comuns com Aspose.PDF for Python via .NET. Ele cobre exportação de TIFF em todo o documento com `TiffDevice`, geração de imagens raster por página com subclasses de `ImageDevice` como `BmpDevice`, `JpegDevice`, `PngDevice`, `GifDevice` e `EmfDevice`, e exportação vetorial para SVG com `SvgSaveOptions`. Cada seção inclui as etapas principais e exemplos em Python necessários para salvar o conteúdo do PDF como saída de imagem.
---
-## Visão Geral
-
-Este artigo explica como converter PDF para diferentes formatos de imagem usando Python. Ele cobre os seguintes tópicos.
-
-_Formato de Imagem_: **TIFF**
-- [Python PDF para TIFF](#python-pdf-to-tiff)
-- [Python Converter PDF para TIFF](#python-pdf-to-tiff)
-- [Python Converter Páginas Únicas ou Particulares de PDF para TIFF](#python-pdf-to-tiff-pages)
-
-_Formato de Imagem_: **BMP**
-- [Python PDF para BMP](#python-pdf-to-bmp)
-- [Python Converter PDF para BMP](#python-pdf-to-bmp)
-- [Python PDF para Conversor de BMP](#python-pdf-to-bmp)
-
-_Formato de Imagem_: **EMF**
-- [Python PDF para EMF](#python-pdf-to-emf)
-- [Python Converter PDF para EMF](#python-pdf-to-emf)
- - [Python PDF para EMF Converter](#python-pdf-to-emf)
-
-
-_Formato de Imagem_: **JPG**
-- [Python PDF para JPG](#python-pdf-to-jpg)
-- [Python Converter PDF para JPG](#python-pdf-to-jpg)
-- [Python PDF para JPG Converter](#python-pdf-to-jpg)
-
-
-_Formato de Imagem_: **PNG**
-- [Python PDF para PNG](#python-pdf-to-png)
-- [Python Converter PDF para PNG](#python-pdf-to-png)
-- [Python PDF para PNG Converter](#python-pdf-to-png)
-
-
-_Formato de Imagem_: **GIF**
-- [Python PDF para GIF](#python-pdf-to-gif)
-- [Python Converter PDF para GIF](#python-pdf-to-gif)
-- [Python PDF para GIF Converter](#python-pdf-to-gif)
+## Python Converter PDF para Imagem
-_Formato de Imagem_: **SVG**
-- [Python PDF para SVG](#python-pdf-to-svg)
-- [Python Converter PDF para SVG](#python-pdf-to-svg)
-- [Python PDF para SVG Converter](#python-pdf-to-svg)
+**Aspose.PDF for Python via .NET** suporta várias maneiras de converter o conteúdo de PDF em imagens. Na prática, a maioria dos fluxos de trabalho usa uma das duas opções:
-## Python Converter PDF para Imagem
+- a abordagem Device para renderizar páginas PDF em formatos de imagem raster
+- a abordagem SaveOptions para exportar conteúdo PDF para SVG
-**Aspose.PDF para Python** usa várias abordagens para converter PDF em imagem.
- Geralmente falando, usamos duas abordagens: conversão usando a abordagem Device e conversão usando SaveOption. Esta seção mostrará como converter documentos PDF para formatos de imagem, como BMP, JPEG, GIF, PNG, EMF, TIFF e SVG usando uma dessas abordagens.
+Este artigo mostra como converter arquivos PDF para TIFF, BMP, EMF, JPEG, PNG, GIF e SVG.
-Existem várias classes na biblioteca que permitem usar um dispositivo virtual para transformar imagens. DocumentDevice é orientado para a conversão de todo o documento, mas ImageDevice - para uma página específica.
+A biblioteca inclui várias classes de renderização. `DocumentDevice` é projetado para conversão de documento inteiro, enquanto `ImageDevice` visa páginas individuais.
## Converter PDF usando a classe DocumentDevice
-**Aspose.PDF para Python** possibilita converter Páginas PDF para imagens TIFF.
+Use `DocumentDevice` quando você deseja renderizar o PDF inteiro em um único arquivo TIFF multipágina.
-A classe [TiffDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/) (baseada em DocumentDevice) permite converter páginas PDF para imagens TIFF. Esta classe fornece um método chamado [process](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/#methods) que permite converter todas as páginas de um arquivo PDF em uma única imagem TIFF.
+O [TiffDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/) classe é baseada em `DocumentDevice` e fornece o [process](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/#methods) método para converter todas as páginas de um arquivo PDF em uma única saída TIFF.
{{% alert color="success" %}}
-
**Tente converter PDF para TIFF online**
-Aspose.PDF for Python via .NET apresenta a você uma aplicação online gratuita ["PDF para TIFF"](https://products.aspose.app/pdf/conversion/pdf-to-tiff), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-tiff)
-{{% /alert %}}
+Aspose.PDF for Python via .NET apresenta-lhe a aplicação online ["PDF para TIFF"](https://products.aspose.app/pdf/conversion/pdf-to-tiff), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-### Converter Páginas de PDF para Uma Imagem TIFF
+[](https://products.aspose.app/pdf/conversion/pdf-to-tiff)
+{{% /alert %}}
-Aspose.PDF para Python explica como converter todas as páginas em um arquivo PDF para uma única imagem TIFF:
+### Converter páginas PDF em uma única imagem TIFF
-Passos: Converter PDF para TIFF em Python
+Aspose.PDF for Python via .NET pode renderizar cada página de um arquivo PDF em uma imagem TIFF.
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Crie objetos [TiffSettings](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffsettings/) e [TiffDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/)
+Passos: Converter PDF para TIFF em Python
-3. Chame o método [process](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/#methods) para converter o documento PDF para TIFF.
-4. Para definir as propriedades do arquivo de saída, use a classe [TiffSettings](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffsettings/).
+1. Carregue o PDF de origem com o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Criar [TiffSettings](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffsettings/) e [TiffDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/) objetos.
+1. Configure as opções TIFF, como compressão, profundidade de cor e tratamento de páginas em branco.
+1. Chame o [process](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/tiffdevice/#methods) método para gravar o arquivo TIFF.
-O seguinte trecho de código mostra como converter todas as páginas do PDF em uma única imagem TIFF.
+O trecho de código a seguir mostra como converter todas as páginas do PDF em uma única imagem TIFF.
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
+def convert_PDF_to_TIFF(infile, outfile):
+ document = ap.Document(infile)
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_tiff.tiff"
- # Abra o documento PDF
- document = ap.Document(input_pdf)
-
- # Crie um objeto Resolution
resolution = ap.devices.Resolution(300)
-
- # Crie um objeto TiffSettings
tiffSettings = ap.devices.TiffSettings()
tiffSettings.compression = ap.devices.CompressionType.LZW
tiffSettings.depth = ap.devices.ColorDepth.DEFAULT
tiffSettings.skip_blank_pages = False
- # Crie um dispositivo TIFF
tiffDevice = ap.devices.TiffDevice(resolution, tiffSettings)
+ tiffDevice.process(document, f"{outfile}.tiff")
- # Converta uma página específica e salve a imagem no fluxo
- tiffDevice.process(document, output_pdf)
+ print(infile + " converted into " + outfile)
```
-
## Converter PDF usando a classe ImageDevice
-`ImageDevice` é o ancestral de `BmpDevice`, `JpegDevice`, `GifDevice`, `PngDevice` e `EmfDevice`.
+Use `ImageDevice` quando você precisa de saída página por página em um formato de imagem raster.
-- A classe [BmpDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/) permite converter páginas PDF em imagens BMP.
-- A classe [EmfDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/emfdevice/) permite converter páginas PDF em imagens EMF.
-- A classe [JpegDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/jpegdevice/) permite converter páginas PDF em imagens JPEG.
-- A classe [PngDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/pngdevice/) permite converter páginas PDF em imagens PNG.
+`ImageDevice` é a classe base para `BmpDevice`, `JpegDevice`, `GifDevice`, `PngDevice`, e `EmfDevice`.
-- A classe [GifDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/gifdevice/) permite converter páginas PDF em imagens GIF.
+- O [BmpDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/) A classe permite converter páginas PDF em imagens BMP.
+- O [EmfDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/emfdevice/) A classe permite converter páginas de PDF em imagens EMF.
+- O [JpegDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/jpegdevice/) classe permite converter páginas de PDF em imagens JPEG.
+- O [PngDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/pngdevice/) classe permite que você converta páginas PDF em imagens PNG.
+- O [GifDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/gifdevice/) classe permite converter páginas PDF em imagens GIF.
-Vamos dar uma olhada em como converter uma página PDF em uma imagem.
+O fluxo de trabalho é o mesmo para cada formato: carregue o documento, crie o dispositivo apropriado e, em seguida, processe a página necessária.
-A classe [BmpDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/) fornece um método chamado [process](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/#methods), que permite converter uma página específica do arquivo PDF para o formato de imagem BMP. As outras classes têm o mesmo método. Portanto, se precisarmos converter uma página PDF em uma imagem, basta instanciarmos a classe necessária.
+[BmpDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/) expõe o [processo](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/#methods) método para renderizar uma página específica como BMP. As outras classes de dispositivo de imagem seguem o mesmo padrão, portanto você pode mudar os formatos alterando a classe de dispositivo.
-
-
-
-
-
+Os links e exemplos de código a seguir mostram como renderizar páginas de PDF para formatos de imagem comuns:
-Os seguintes passos e trecho de código em Python mostram essa possibilidade
+- [Converter PDF para BMP em Python](#convert-pdf-to-bmp)
+- [Converter PDF para EMF em Python](#convert-pdf-to-emf)
+- [Converter PDF para JPEG em Python](#convert-pdf-to-jpeg)
+- [Converter PDF para PNG em Python](#convert-pdf-to-png)
+- [Converter PDF para GIF em Python](#convert-pdf-to-gif)
-- [Converter PDF para BMP em Python](#python-pdf-to-image)
-- [Converter PDF para EMF em Python](#python-pdf-to-image)
-- [Converter PDF para JPG em Python](#python-pdf-to-image)
-- [Converter PDF para PNG em Python](#python-pdf-to-image)
-- [Converter PDF para GIF em Python](#python-pdf-to-image)
+Etapas: PDF para Imagem (BMP, EMF, JPG, PNG, GIF) em Python
-Passos: PDF para Imagem (BMP, EMF, JPG, PNG, GIF) em Python
-
-1. Carregue o arquivo PDF usando a classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Crie uma instância da subclasse de [ImageDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/imagedevice/), ou seja,
- * [BmpDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/) (para converter PDF para BMP)
- * [EmfDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/emfdevice/) (para converter PDF para Emf)
- * [JpegDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/jpegdevice/) (para converter PDF para JPG)
- * [PngDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/pngdevice/) (para converter PDF para PNG)
- * [GifDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/gifdevice/) (para converter PDF para GIF)
-3. Chame o método [ImageDevice.Process()](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/imagedevice/#methods) para realizar a conversão de PDF para Imagem.
+1. Carregue o arquivo PDF com o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Crie uma instância do necessário [ImageDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/imagedevice/) subclasse:
+ - [BmpDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/bmpdevice/) (para converter PDF para BMP)
+ - [EmfDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/emfdevice/) (para converter PDF em EMF)
+ - [JpegDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/jpegdevice/) (para converter PDF para JPG)
+ - [PngDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/pngdevice/) (para converter PDF em PNG)
+ - [GifDevice](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/gifdevice/) (para converter PDF em GIF)
+1. Percorra as páginas que você deseja exportar.
+1. Chame o [ImageDevice.process()](https://reference.aspose.com/pdf/python-net/aspose.pdf.devices/imagedevice/#methods) método para salvar cada página como uma imagem.
### Converter PDF para BMP
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "many_pages.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_bmp"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- # Criar objeto de Resolução
+def convert_PDF_to_BMP(infile, outfile):
+ document = ap.Document(infile)
resolution = ap.devices.Resolution(300)
device = ap.devices.BmpDevice(resolution)
-
- for i in range(0, len(document.pages)):
- # Criar arquivo para salvar
- imageStream = io.FileIO(
- output_pdf + "_page_" + str(i + 1) + "_out.bmp", 'x'
- )
- # Converter uma página específica e salvar a imagem no stream
- device.process(document.pages[i + 1], imageStream)
- imageStream.close()
+ page_count = 1
+ while page_count <= len(document.pages):
+ image_stream = FileIO(outfile + str(page_count) + "_out.bmp", "w")
+ device.process(document.pages[page_count], image_stream)
+ image_stream.close()
+ page_count = page_count + 1
+
+ print(infile + " converted into " + outfile)
```
-
### Converter PDF para EMF
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_emf"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- # Criar objeto Resolution
+def convert_PDF_to_EMF(infile, outfile):
+ document = ap.Document(infile)
resolution = ap.devices.Resolution(300)
device = ap.devices.EmfDevice(resolution)
-
- for i in range(0, len(document.pages)):
- # Criar arquivo para salvar
- imageStream = io.FileIO(
- output_pdf + "_page_" + str(i + 1) + "_out.emf", 'x'
- )
- # Converter uma página específica e salvar a imagem no stream
- device.process(document.pages[i + 1], imageStream)
- imageStream.close()
+ page_count = 1
+ while page_count <= len(document.pages):
+ image_stream = FileIO(outfile + str(page_count) + "_out.emf", "w")
+ device.process(document.pages[page_count], image_stream)
+ image_stream.close()
+ page_count = page_count + 1
+
+ print(infile + " converted into " + outfile)
```
### Converter PDF para JPEG
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "many_pages.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_jpeg"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- # Criar objeto Resolution
+def convert_PDF_to_JPEG(infile, outfile):
+ document = ap.Document(infile)
resolution = ap.devices.Resolution(300)
device = ap.devices.JpegDevice(resolution)
+ page_count = 1
- for i in range(0, len(document.pages)):
- # Criar arquivo para salvar
- imageStream = io.FileIO(
- output_pdf + "_page_" + str(i + 1) + "_out.jpeg", "x"
- )
- # Converter uma página específica e salvar a imagem no stream
- device.process(document.pages[i + 1], imageStream)
- imageStream.close()
-```
+ while page_count <= len(document.pages):
+ image_stream = FileIO(outfile + str(page_count) + "_out.jpeg", "w")
+ device.process(document.pages[page_count], image_stream)
+ image_stream.close()
+ page_count = page_count + 1
+ print(infile + " converted into " + outfile)
+```
### Converter PDF para PNG
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_png"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- # Criar objeto de Resolução
+def convert_PDF_to_PNG(infile, outfile):
+ document = ap.Document(infile)
resolution = ap.devices.Resolution(300)
- device = ap.devices.PngDevice(resolution)
- for i in range(0, len(document.pages)):
- # Criar arquivo para salvar
- imageStream = io.FileIO(
- output_pdf + "_page_" + str(i + 1) + "_out.png", 'x'
- )
- # Converter uma página específica e salvar a imagem no stream
- device.process(document.pages[i + 1], imageStream)
- imageStream.close()
-```
+ device = ap.devices.PngDevice(resolution)
+ page_count = 1
+ while page_count <= len(document.pages):
+ image_stream = FileIO(outfile + str(page_count) + "_out.png", "w")
+ device.process(document.pages[page_count], image_stream)
+ image_stream.close()
+ page_count = page_count + 1
+```
-### Converter PDF para GIF
+### Converter PDF para PNG com fonte padrão
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
+def convert_PDF_to_PNG_with_default_font(infile, outfile):
+ document = ap.Document(infile)
+ resolution = ap.devices.Resolution(300)
- input_pdf = DIR_INPUT + "many_pages.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_gif"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
+ rendering_options = ap.RenderingOptions()
+ rendering_options.default_font_name = "Arial"
- # Criar objeto de Resolução
- resolution = ap.devices.Resolution(300)
+ device = ap.devices.PngDevice(resolution)
+ device.rendering_options = rendering_options
+
+ page_count = 1
+ while page_count <= len(document.pages):
+ image_stream = FileIO(outfile + str(page_count) + "_out.png", "w")
+ device.process(document.pages[page_count], image_stream)
+ image_stream.close()
+ page_count = page_count + 1
+```
- device = ap.devices.GifDevice(resolution)
+### Converter PDF para GIF
- for i in range(0, len(document.pages)):
- # Criar arquivo para salvar
- imageStream = io.FileIO(
- output_pdf + "_page_" + str(i + 1) + "_out.gif", 'x'
- )
- # Converter uma página específica e salvar a imagem no stream
- device.process(document.pages[i + 1], imageStream)
- # Fechar stream
- imageStream.close()
-```
+```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
+def convert_PDF_to_GIF(infile, outfile):
+ document = ap.Document(infile)
+ resolution = ap.devices.Resolution(300)
+ device = ap.devices.GifDevice(resolution)
+ page_count = 1
+ while page_count <= len(document.pages):
+ image_stream = FileIO(outfile + str(page_count) + "_out.gif", "w")
+ device.process(document.pages[page_count], image_stream)
+ image_stream.close()
+ page_count = page_count + 1
+
+ print(infile + " converted into " + outfile)
+```
{{% alert color="success" %}}
**Tente converter PDF para PNG online**
-Como exemplo de como nossas aplicações gratuitas funcionam, por favor, verifique o próximo recurso.
+Como exemplo de como nossas aplicações funcionam, por favor, verifique a próxima funcionalidade.
-Aspose.PDF para Python apresenta a você a aplicação online gratuita ["PDF para PNG"](https://products.aspose.app/pdf/conversion/pdf-to-png), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+Aspose.PDF for Python apresenta a você aplicação online [PDF para PNG](https://products.aspose.app/pdf/conversion/pdf-to-png), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-png)
+[](https://products.aspose.app/pdf/conversion/pdf-to-png)
{{% /alert %}}
## Converter PDF usando a classe SaveOptions
-Esta parte do artigo mostra como converter PDF para SVG usando Python e a classe SaveOptions.
+Use `SaveOptions` quando você quiser exportar o conteúdo do PDF para SVG.
{{% alert color="success" %}}
**Tente converter PDF para SVG online**
-Aspose.PDF para Python via .NET apresenta a você a aplicação online gratuita ["PDF para SVG"](https://products.aspose.app/pdf/conversion/pdf-to-svg), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+Aspose.PDF for Python via .NET apresenta-lhe a aplicação online ["PDF para SVG"](https://products.aspose.app/pdf/conversion/pdf-to-svg), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-svg)
+[](https://products.aspose.app/pdf/conversion/pdf-to-svg)
{{% /alert %}}
-**Scalable Vector Graphics (SVG)** é uma família de especificações de um formato de arquivo baseado em XML para gráficos vetoriais bidimensionais, tanto estáticos quanto dinâmicos (interativos ou animados). A especificação SVG é um padrão aberto que está em desenvolvimento pelo World Wide Web Consortium (W3C) desde 1999.
+**Scalable Vector Graphics (SVG)** é um formato baseado em XML para gráficos vetoriais bidimensionais. Como o SVG continua sendo baseado em vetores, ele é útil quando você precisa de saída escalável para web, UI ou fluxos de trabalho de design.
-As imagens SVG e seus comportamentos são definidos em arquivos de texto XML. Isso significa que eles podem ser pesquisados, indexados, scriptados e, se necessário, comprimidos. Como arquivos XML, as imagens SVG podem ser criadas e editadas com qualquer editor de texto, mas é frequentemente mais conveniente criá-las com programas de desenho como o Inkscape.
+Os arquivos SVG são baseados em texto, pesquisáveis e fáceis de pós-processar em outras ferramentas.
-Aspose.PDF para Python suporta o recurso de converter imagens SVG para o formato PDF e também oferece a capacidade de converter arquivos PDF para o formato SVG.
- Para cumprir esse requisito, a classe [SvgSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/svgsaveoptions/) foi introduzida no namespace Aspose.PDF. Instancie um objeto de SvgSaveOptions e passe-o como segundo argumento para o método [Document.Save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+Aspose.PDF for Python via .NET pode tanto converter SVG para PDF quanto exportar páginas de PDF para SVG. Para a conversão de PDF para SVG, crie um [SvgSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/svgsaveoptions/) objeto e passá-lo para o [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
-O trecho de código a seguir mostra os passos para converter um arquivo PDF para o formato SVG com Python.
+Os passos a seguir mostram como converter um arquivo PDF para SVG com Python.
-Passos: Converter PDF para SVG em Python
+Passos: Converter PDF para SVG em Python
-1. Crie um objeto da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
-2. Crie um objeto [SvgSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/svgsaveoptions/) com as configurações necessárias.
-3. Chame o método [Document.Save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) e passe o objeto [SvgSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/svgsaveoptions/) para converter o documento PDF em SVG.
+1. Carregue o PDF de origem usando o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Criar um [SvgSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/svgsaveoptions/) objeto e configure as opções necessárias.
+1. Chame o [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método com o `SvgSaveOptions` instância para escrever a saída SVG.
### Converter PDF para SVG
```python
+import aspose.pdf as ap
+from io import FileIO
+from os import path
+import sys
- import aspose.pdf as ap
+def convert_PDF_to_SVG(infile, outfile):
+ document = ap.Document(infile)
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_svg.svg"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
+ save_options = ap.SvgSaveOptions()
+ save_options.compress_output_to_zip_archive = False
+ save_options.treat_target_file_name_as_directory = True
- # Instanciar um objeto de SvgSaveOptions
- saveOptions = ap.SvgSaveOptions()
+ document.save(f"{outfile}.svg", save_options)
+```
- # Não comprimir imagem SVG para arquivo Zip
- saveOptions.compress_output_to_zip_archive = False
- saveOptions.treat_target_file_name_as_directory = True
+## Conversões relacionadas
- # Salvar a saída em arquivos SVG
- document.save(output_pdf, saveOptions)
-```
\ No newline at end of file
+- [Converter formatos de imagem para PDF](/pdf/pt/python-net/convert-images-format-to-pdf/) quando você precisar reconstruir PDFs a partir de JPG, PNG, TIFF, SVG ou outras fontes de imagem.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) para saída amigável ao navegador em vez de imagens raster.
+- [Converter PDF para outros formatos](/pdf/pt/python-net/convert-pdf-to-other-files/) para fluxos de exportação de EPUB, Markdown, texto e XPS.
diff --git a/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_png.png b/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_png.png
new file mode 100644
index 0000000000..af4c1c146a
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_png.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_svg.png b/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_svg.png
new file mode 100644
index 0000000000..f9c2273788
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_svg.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_tiff.png b/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_tiff.png
new file mode 100644
index 0000000000..b8b7ff0c2f
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-images-format/pdf_to_tiff.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-other-files/_index.md b/pt/python-net/converting/convert-pdf-to-other-files/_index.md
index f8b3f5df09..354a3cc803 100644
--- a/pt/python-net/converting/convert-pdf-to-other-files/_index.md
+++ b/pt/python-net/converting/convert-pdf-to-other-files/_index.md
@@ -1,14 +1,17 @@
---
-title: Converter PDF para EPUB, LaTeX, Texto, XPS em Python
+title: Converter PDF para EPUB, Texto, XPS e Mais em Python
linktitle: Converter PDF para outros formatos
type: docs
weight: 90
url: /pt/python-net/convert-pdf-to-other-files/
-lastmod: "2022-12-23"
-description: Este tópico mostra como converter um arquivo PDF para outros formatos de arquivo como EPUB, LaTeX, Texto, XPS etc usando Python.
+lastmod: "2026-05-21"
+description: Aprenda como converter arquivos PDF para EPUB, LaTeX, Markdown, texto, XPS e MobiXML em Python com Aspose.PDF for Python via .NET.
sitemap:
changefreq: "monthly"
priority: 0.8
+TechArticle: true
+AlternativeHeadline: Como converter PDF para outros formatos em Python
+Abstract: O artigo fornece um guia abrangente sobre como converter arquivos PDF em vários formatos usando Aspose.PDF for Python. Ele cobre a conversão de PDFs para os formatos EPUB, LaTeX/TeX, Texto, XPS e XML. Cada seção começa com um convite para experimentar as aplicações online fornecidas pela Aspose para converter PDFs nos formatos correspondentes, destacando a facilidade de uso e a qualidade dessas ferramentas.
---
## Converter PDF para EPUB
@@ -16,47 +19,48 @@ sitemap:
{{% alert color="success" %}}
**Tente converter PDF para EPUB online**
-Aspose.PDF para Python apresenta um aplicativo online gratuito ["PDF para EPUB"](https://products.aspose.app/pdf/conversion/pdf-to-epub), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+Aspose.PDF for Python apresenta a você um aplicativo online ["PDF para EPUB"](https://products.aspose.app/pdf/conversion/pdf-to-epub), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-epub)
+[](https://products.aspose.app/pdf/conversion/pdf-to-epub)
{{% /alert %}}
-**EPUB** é um padrão de e-book livre e aberto do Fórum Internacional de Publicação Digital (IDPF).
- Arquivos têm a extensão .epub.
-EPUB é projetado para conteúdo redimensionável, o que significa que um leitor de EPUB pode otimizar o texto para um dispositivo de exibição específico. EPUB também suporta conteúdo de layout fixo. O formato é destinado como um formato único que editoras e casas de conversão podem usar internamente, bem como para distribuição e venda. Ele substitui o padrão Open eBook.
+EPUB é um padrão de e-book gratuito e aberto do International Digital Publishing Forum (IDPF). Os arquivos têm a extensão .epub.
+EPUB foi projetado para conteúdo refluível, o que significa que um leitor de EPUB pode otimizar o texto para um dispositivo de exibição específico. EPUB também suporta conteúdo de layout fixo. O formato destina‑se a ser um único formato que editores e casas de conversão podem usar internamente, bem como para distribuição e venda. Ele substitui o padrão Open eBook.
-Aspose.PDF para Python também suporta o recurso de converter documentos PDF para o formato EPUB. Aspose.PDF para Python possui uma classe chamada 'EpubSaveOptions' que pode ser usada como o segundo argumento para o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods), para gerar um arquivo EPUB.
-Por favor, tente usar o seguinte trecho de código para cumprir este requisito com Python.
+Aspose.PDF for Python também oferece o recurso de converter documentos PDF para o formato EPUB. Aspose.PDF for Python tem uma classe chamada 'EpubSaveOptions' que pode ser usada como o segundo argumento para [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método, para gerar um arquivo EPUB.
+Por favor, tente usar o trecho de código a seguir para atender a esse requisito com Python.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_epub.epub"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- # Instanciar opções de salvamento Epub
+def convert_PDF_to_EPUB(infile, outfile):
+ document = ap.Document(infile)
save_options = ap.EpubSaveOptions()
-
- # Especificar o layout para conteúdos
save_options.content_recognition_mode = ap.EpubSaveOptions.RecognitionMode.FLOW
+ document.save(outfile, save_options)
- # Salvar o documento ePUB
- document.save(output_pdf, save_options)
+ print(infile + " converted into " + outfile)
```
+## Conversões relacionadas
+
+- [Converter PDF para Word](/pdf/pt/python-net/convert-pdf-to-word/) para saída de documento do Office editável.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) para saída orientada ao navegador.
+- [Converter PDF para PDF/A, PDF/E e PDF/X](/pdf/pt/python-net/convert-pdf-to-pdf_x/) para fluxos de trabalho de arquivamento e conversão compatíveis com padrões.
+
## Converter PDF para LaTeX/TeX
-**Aspose.PDF para Python via .NET** suporta a conversão de PDF para LaTeX/TeX. O formato de arquivo LaTeX é um formato de arquivo de texto com marcação especial e usado no sistema de preparação de documentos baseado em TeX para composição tipográfica de alta qualidade.
+**Aspose.PDF for Python via .NET** suporta a conversão de PDF para LaTeX/TeX.
+O formato de arquivo LaTeX é um formato de arquivo de texto com a marcação especial e usado em sistemas de preparação de documentos baseados em TeX para tipografia de alta qualidade.
{{% alert color="success" %}}
**Tente converter PDF para LaTeX/TeX online**
-Aspose.PDF para Python apresenta-lhe a aplicação online gratuita ["PDF to LaTeX"](https://products.aspose.app/pdf/conversion/pdf-to-tex), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+Aspose.PDF for Python apresenta a você um aplicativo online ["PDF para LaTeX"](https://products.aspose.app/pdf/conversion/pdf-to-tex), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-tex)
+[](https://products.aspose.app/pdf/conversion/pdf-to-tex)
{{% /alert %}}
Para converter arquivos PDF para TeX, o Aspose.PDF tem a classe [LaTeXSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/latexsaveoptions/) que fornece a propriedade OutDirectoryPath para salvar imagens temporárias durante o processo de conversão.
@@ -64,115 +68,118 @@ Para converter arquivos PDF para TeX, o Aspose.PDF tem a classe [LaTeXSaveOption
O trecho de código a seguir mostra o processo de conversão de arquivos PDF para o formato TEX com Python.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
+def convert_PDF_to_TeX(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.LaTeXSaveOptions()
+ document.save(outfile, save_options)
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_tex.tex"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
- # Instanciar um objeto de LaTeXSaveOptions
- saveOptions = ap.LaTeXSaveOptions()
- document.save(output_pdf, saveOptions)
+ print(infile + " converted into " + outfile)
```
## Converter PDF para Texto
-**Aspose.PDF para Python** suporta a conversão de todo o documento PDF e de uma única página para um arquivo de texto.
-
-### Converter documento PDF para arquivo de texto
-
-Você pode converter o documento PDF para um arquivo TXT usando a classe 'TextDevice'.
-
-O trecho de código a seguir explica como extrair os textos de todas as páginas.
+**Aspose.PDF for Python** suporta a conversão de todo o documento PDF e de uma única página para um arquivo de texto. Você pode converter um documento PDF em um arquivo TXT usando a classe 'TextDevice'. O trecho de código a seguir explica como extrair os textos de todas as páginas.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_txt.txt"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
+def convert_PDF_to_TXT(infile, outfile):
+ document = ap.Document(infile)
+ device = ap.devices.TextDevice()
+ device.process(document.pages[1], outfile)
- # Criar dispositivo de texto
- textDevice = ap.devices.TextDevice()
-
- # Converter uma página específica e salvar
- textDevice.process(document.pages[1], output_pdf)
+ print(infile + " converted into " + outfile)
```
-**Tente converter PDF para Texto online**
+
{{% alert color="success" %}}
+**Tente converter PDF para Texto online**
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF para Texto"](https://products.aspose.app/pdf/conversion/pdf-to-txt), onde você pode tentar investigar a funcionalidade e qualidade com que ele funciona.
+Aspose.PDF for Python apresenta a você um aplicativo online ["PDF para Texto"](https://products.aspose.app/pdf/conversion/pdf-to-txt), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-txt)
+[](https://products.aspose.app/pdf/conversion/pdf-to-txt)
{{% /alert %}}
## Converter PDF para XPS
-**Aspose.PDF para Python** oferece a possibilidade de converter arquivos PDF para o formato XPS. Vamos tentar usar o trecho de código apresentado para converter arquivos PDF para o formato XPS com Python.
+**Aspose.PDF for Python** oferece a possibilidade de converter arquivos PDF para o formato XPS. Vamos tentar usar o trecho de código apresentado para converter arquivos PDF para o formato XPS com Python.
{{% alert color="success" %}}
**Tente converter PDF para XPS online**
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF para XPS"](https://products.aspose.app/pdf/conversion/pdf-to-xps), onde você pode tentar investigar a funcionalidade e qualidade com que ele funciona.
+Aspose.PDF for Python apresenta a você um aplicativo online ["PDF para XPS"](https://products.aspose.app/pdf/conversion/pdf-to-xps), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-xps)
+[](https://products.aspose.app/pdf/conversion/pdf-to-xps)
{{% /alert %}}
-O tipo de arquivo XPS está principalmente associado à Especificação de Papel XML pela Microsoft Corporation. A Especificação de Papel XML (XPS), anteriormente codinomeada Metro e englobando o conceito de marketing Next Generation Print Path (NGPP), é a iniciativa da Microsoft para integrar a criação e visualização de documentos no sistema operacional Windows.
+O tipo de arquivo XPS está principalmente associado à XML Paper Specification da Microsoft Corporation. A XML Paper Specification (XPS), anteriormente com o codinome Metro e que incorpora o conceito de marketing Next Generation Print Path (NGPP), é a iniciativa da Microsoft para integrar a criação e visualização de documentos no sistema operacional Windows.
-Para converter arquivos PDF para XPS, Aspose.PDF possui a classe [XpsSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/xpssaveoptions/) que é usada como o segundo argumento para o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) para gerar o arquivo XPS.
+Para converter arquivos PDF para XPS, o Aspose.PDF possui a classe [OpçõesDeSalvamentoXps](https://reference.aspose.com/pdf/python-net/aspose.pdf/xpssaveoptions/) que é usado como o segundo argumento para o [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método para gerar o arquivo XPS.
-O trecho de código a seguir mostra o processo de conversão de um arquivo PDF para o formato XPS.
+O trecho de código a seguir mostra o processo de conversão de arquivo PDF para formato XPS.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_xps.xps"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
- # Instanciar opções de salvamento XPS
+def convert_PDF_to_XPS(infile, outfile):
+ document = ap.Document(infile)
save_options = ap.XpsSaveOptions()
+ save_options.use_new_imaging_engine = True
+ document.save(outfile, save_options)
- # Salvar o documento XPS
- document.save(output_pdf, save_options)
+ print(infile + " converted into " + outfile)
```
-## Converter PDF para XML
-
-{{% alert color="success" %}}
-**Tente converter PDF para XML online**
-
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF to XML"](https://products.aspose.app/pdf/conversion/pdf-to-xml), onde você pode tentar investigar a funcionalidade e a qualidade com que ele funciona.
+## Converter PDF para MD
-[](https://products.aspose.app/pdf/conversion/pdf-to-xml)
-{{% /alert %}}
-
-XML é uma linguagem de marcação e formato de arquivo para armazenar, transmitir e reconstruir dados arbitrários.
+Aspose.PDF tem a classe 'MarkdownSaveOptions()', que converte um documento PDF para o formato Markdown (MD) preservando imagens e recursos.
-Aspose.PDF para Python também suporta o recurso de converter documentos PDF para o formato XML. Aspose.PDF para Python tem uma classe chamada 'XmlSaveOptions' que pode ser usada como o segundo argumento no método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) para gerar um arquivo XML. Por favor, tente usar o seguinte trecho de código para realizar este requisito com Python.
+1. Carregue o PDF de origem usando 'ap.Document'.
+1. Crie uma instância de 'MarkdownSaveOptions'.
+1. Defina 'resources_directory_name' como 'images' – as imagens extraídas serão armazenadas nesta pasta.
+1. Salve o documento Markdown convertido usando as opções configuradas.
+1. Imprima uma mensagem de confirmação após a conversão.
```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_MD(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.MarkdownSaveOptions()
+ save_options.resources_directory_name = "images"
+ save_options.use_image_html_tag = True
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
+```
- import aspose.pdf as ap
+Um arquivo Markdown com texto e imagens vinculadas armazenadas na pasta de imagens especificada.
- def convert_pdf_to_xml(self, infile, outfile):
- path_infile = self.dataDir + infile
- path_outfile = self.dataDir + outfile
+## Converter PDF para MobiXML
- # Abrir documento PDF
+Este método converte um documento PDF para o formato MOBI (MobiXML), que é comumente usado para eBooks em dispositivos Kindle.
- document = ap.Document(path_infile)
+1. Carregue o documento PDF de origem usando 'ap.Document'.
+1. Salve o documento com o formato 'ap.SaveFormat.MOBI_XML'.
+1. Imprima uma mensagem de confirmação assim que a conversão for concluída.
- # Instanciar opções de salvamento XML
- save_options = ap.XmlSaveOptions()
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_MobiXML(infile, outfile):
+ document = ap.Document(infile)
+ document.save(outfile, ap.SaveFormat.MOBI_XML)
- # Salvar o documento XML
- document.save(path_outfile, save_options)
- print(infile + " convertido em " + outfile)
-```
\ No newline at end of file
+ print(infile + " converted into " + outfile)
+```
diff --git a/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_epub.png b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_epub.png
new file mode 100644
index 0000000000..4ca5e0b59b
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_epub.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_latex.png b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_latex.png
new file mode 100644
index 0000000000..75e9f892d9
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_latex.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_text.png b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_text.png
new file mode 100644
index 0000000000..3286e1906b
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_text.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_xps.png b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_xps.png
new file mode 100644
index 0000000000..c715946a9d
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-other-files/pdf_to_xps.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-pdfa/_index.md b/pt/python-net/converting/convert-pdf-to-pdfa/_index.md
deleted file mode 100644
index 73e265e7a5..0000000000
--- a/pt/python-net/converting/convert-pdf-to-pdfa/_index.md
+++ /dev/null
@@ -1,51 +0,0 @@
----
-title: Converter formatos PDF para PDF/A em Python
-linktitle: Converter formatos PDF para PDF/A
-type: docs
-weight: 100
-url: /pt/python-net/convert-pdf-to-pdfa/
-lastmod: "2022-12-23"
-description: Este tópico mostra como o Aspose.PDF para Python permite converter um arquivo PDF em um arquivo PDF compatível com PDF/A.
-sitemap:
- changefreq: "monthly"
- priority: 0.8
----
-
-**Aspose.PDF para Python** permite que você converta um arquivo PDF em um arquivo PDF compatível com PDF/A. Antes de fazer isso, o arquivo deve ser validado. Este tópico explica como.
-
-{{% alert color="primary" %}}
-
-Por favor, note que seguimos o Adobe Preflight para validar a conformidade com PDF/A. Todas as ferramentas no mercado têm sua própria “representação” de conformidade com PDF/A. Por favor, verifique este artigo sobre ferramentas de validação de PDF/A para referência. Escolhemos produtos Adobe para verificar como o Aspose.PDF produz arquivos PDF porque a Adobe está no centro de tudo relacionado ao PDF.
-
-{{% /alert %}}
-
-Converta o arquivo usando o método Convert da classe Document.
- Antes de converter o PDF para um arquivo compatível com PDF/A, valide o PDF usando o método Validate. O resultado da validação é armazenado em um arquivo XML e este resultado também é passado para o método Convert. Você também pode especificar a ação para os elementos que não podem ser convertidos usando a enumeração ConvertErrorAction.
-
-{{% alert color="success" %}}
-**Tente converter PDF para PDF/A online**
-
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF to PDF/A-1A"](https://products.aspose.app/pdf/conversion/pdf-to-pdfa1a), onde você pode tentar investigar a funcionalidade e qualidade de seu funcionamento.
-
-[](https://products.aspose.app/pdf/conversion/pdf-to-pdfa1a)
-{{% /alert %}}
-
-
-## Converter arquivo PDF para PDF/A-1b
-
-O trecho de código a seguir mostra como converter arquivos PDF para PDF compatível com PDF/A-1b.
-
-```python
-
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_pdfa.pdf"
- output_log = DIR_OUTPUT + "convert_pdf_to_pdfa.log"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
- # Converter para documento compatível com PDF/A
- document.convert(output_log, ap.PdfFormat.PDF_A_1B, ap.ConvertErrorAction.DELETE)
- # Salvar documento de saída
- document.save(output_pdf)
-```
\ No newline at end of file
diff --git a/pt/python-net/converting/convert-pdf-to-pdfx/_index.md b/pt/python-net/converting/convert-pdf-to-pdfx/_index.md
new file mode 100644
index 0000000000..742b779f14
--- /dev/null
+++ b/pt/python-net/converting/convert-pdf-to-pdfx/_index.md
@@ -0,0 +1,280 @@
+---
+title: Converter PDF para PDF/A, PDF/E e PDF/X em Python
+linktitle: Converter PDF para PDF/A, PDF/E e PDF/X
+type: docs
+weight: 120
+url: /pt/python-net/convert-pdf-to-pdf_x/
+lastmod: "2026-05-18"
+description: Aprenda como converter arquivos PDF para PDF/A, PDF/E e PDF/X em Python com Aspose.PDF for Python via .NET para arquivamento, acessibilidade e fluxos de trabalho de impressão.
+sitemap:
+ changefreq: "monthly"
+ priority: 0.8
+TechArticle: true
+AlternativeHeadline: Como converter PDF para formatos PDF/x
+Abstract: O artigo oferece um guia abrangente sobre a conversão de PDF para os formatos PDF/A, PDF/E e PDF/X usando Aspose.PDF for Python.
+---
+
+**Formato PDF para PDF/x significa a capacidade de converter PDF para formatos adicionais, nomeadamente PDF/A, PDF/E e PDF/X.**
+
+## Converter PDF para PDF/A
+
+**Aspose.PDF for Python** permite que você converta um arquivo PDF para um PDF/A arquivo PDF compatível. Antes de fazer isso, o arquivo deve ser validado. Este tópico explica como.
+
+{{% alert color="primary" %}}
+
+Observe que seguimos o Adobe Preflight para validar a conformidade PDF/A. Todas as ferramentas no mercado têm sua própria “representação” da conformidade PDF/A. Por favor, consulte este artigo sobre ferramentas de validação PDF/A como referência. Escolhemos os produtos Adobe para verificar como o Aspose.PDF produz arquivos PDF porque o Adobe está no centro de tudo que está conectado ao PDF.
+
+{{% /alert %}}
+
+Converta o arquivo usando o método Convert da classe Document. Antes de converter o PDF para um arquivo compatível com PDF/A, valide o PDF usando o método Validate. O resultado da validação é armazenado em um arquivo XML e, então, esse resultado também é passado para o método Convert. Você também pode especificar a ação para os elementos que não podem ser convertidos usando a enumeração ConvertErrorAction.
+
+{{% alert color="success" %}}
+**Tente converter PDF para PDF/A online**
+
+Aspose.PDF for Python apresenta-lhe uma aplicação online ["PDF para PDF/A-1A"](https://products.aspose.app/pdf/conversion/pdf-to-pdfa1a), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
+[](https://products.aspose.app/pdf/conversion/pdf-to-pdfa1a)
+{{% /alert %}}
+
+O método 'document.validate()' valida se um arquivo PDF está em conformidade com o padrão PDF/A-1B (uma versão do PDF padronizada pela ISO projetada para arquivamento de longo prazo). Os resultados da validação são salvos em um arquivo de log.
+
+### Converter PDF para PDF/A-1B
+
+O trecho de código a seguir mostra como converter arquivos PDF para o formato PDF/A-1B:
+
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Chame o método convert com os seguintes parâmetros:
+ - Caminho do arquivo de log - armazena os detalhes do processo de conversão e verificações de conformidade.
+ - Formato de destino - 'ap.PdfFormat.PDF_A_1B' (padrão de arquivamento).
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' — remove automaticamente os elementos que impedem a conformidade.
+1. Salve o arquivo PDF/A compatível convertido no caminho de saída.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDFA(infile, outfile):
+ """Convert PDF to PDF/A-1B format."""
+
+ document = ap.Document(infile)
+ document.convert(
+ outfile.replace(".pdf", "-log.xml"),
+ ap.PdfFormat.PDF_A_1B,
+ ap.ConvertErrorAction.DELETE,
+ )
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+### Converter PDF para PDF 2.0 e PDF/A-4
+
+Este exemplo demonstra como converter um documento PDF em formatos padronizados mais recentes: PDF 2.0 e PDF/A-4.
+Ambas as conversões ajudam a garantir a conformidade com as especificações modernas e os requisitos de arquivamento.
+
+1. Carregue o documento de entrada usando ap.Document.
+1. Execute a primeira conversão para PDF 2.0 chamando document.convert com:
+ - Caminho do arquivo de log para detalhes da conversão.
+ - Formato de destino - 'ap.PdfFormat.V_2_0'.
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' para remover elementos não conformes.
+1. Execute uma segunda conversão para PDF/A-4 usando o mesmo método, garantindo que o arquivo também esteja em conformidade com os padrões de arquivamento.
+1. Salve o documento resultante no caminho de saída especificado.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDFA4(infile, outfile):
+ logfile = outfile.replace(".pdf", "_log.xml")
+
+ document = ap.Document(infile)
+ document.convert(logfile, ap.PdfFormat.V_2_0, ap.ConvertErrorAction.DELETE)
+ document.convert(logfile, ap.PdfFormat.PDF_A_4, ap.ConvertErrorAction.DELETE)
+ document.save(outfile)
+```
+
+### Converter PDF para PDF/A-3A com Arquivos Incorporados
+
+O próximo trecho de código demonstra como incorporar arquivos externos em um PDF e, em seguida, converter o PDF para o formato PDF/A-3A, que suporta anexos e é adequado para arquivamento de longo prazo com conteúdo incorporado.
+
+1. Carregue o PDF de entrada usando 'ap.Document'.
+1. Crie um objeto 'FileSpecification' que aponta para o arquivo a ser incorporado (por exemplo, "aspose-logo.jpg") com uma descrição.
+1. Adicione a especificação do arquivo à coleção 'embedded_files' do PDF.
+1. Converta o documento para PDF/A-3A usando 'document.convert', especificando:
+ - Caminho do arquivo de log.
+ - Formato de destino - 'ap.PdfFormat.PDF_A_3A'.
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' para remover elementos não conformes.
+1. Salve o PDF convertido no caminho de saída.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDFA_with_attachment(infile, attachement_file, outfile):
+ logfile = outfile.replace(".pdf", "-log.xml")
+ document = ap.Document(infile)
+
+ fileSpecification = ap.FileSpecification(attachement_file, "Large Image file")
+ document.embedded_files.add(fileSpecification)
+ document.convert(
+ logfile, ap.PdfFormat.PdfFormat.PDF_A_3A, ap.ConvertErrorAction.DELETE
+ )
+ document.save(outfile)
+```
+
+### Converter PDF para PDF/A-1B com Substituição de Fonte
+
+Esta função converte um PDF para o formato PDF/A-1B enquanto lida com fontes ausentes substituindo‑as por fontes disponíveis. Isso garante que o PDF convertido permaneça visualmente consistente e em conformidade com os padrões de arquivamento.
+
+1. Carregue o PDF usando 'ap.Document'.
+1. Converta o PDF para PDF/A-1B usando 'document.convert', especificando:
+ - Caminho do arquivo de log.
+ - Formato de destino - 'ap.PdfFormat.PDF_A_1B'.
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' para remover elementos não conformes.
+1. Salve o PDF convertido no caminho de saída.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDFA_replace_missing_fonts(infile, outfile):
+ logfile = outfile.replace(".pdf", "-log.xml")
+ try:
+ ap.text.FontRepository.find_font("AgencyFB")
+
+ except ap.FontNotFoundException:
+ font_substitution = ap.text.SimpleFontSubstitution("AgencyFB", "Arial")
+ ap.text.FontRepository.Substitutions.append(font_substitution)
+
+ document = ap.Document(infile)
+ document.convert(logfile, ap.PdfFormat.PDF_A_1B, ap.ConvertErrorAction.DELETE)
+ document.save(outfile)
+```
+
+### Converter PDF para PDF/A-1B com Marcação automática
+
+Esta função converte um documento PDF para o formato PDF/A-1B enquanto marca automaticamente o conteúdo para acessibilidade e consistência estrutural. A marcação automática melhora a usabilidade do documento para leitores de tela e garante uma estrutura semântica adequada.
+
+1. Carregue o PDF usando 'ap.Document'.
+1. Crie 'PdfFormatConversionOptions' especificando:
+ - Caminho do arquivo de log.
+ - Formato de destino - 'ap.PdfFormat.PDF_A_1B'.
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' para remover elementos não conformes.
+1. Configure 'AutoTaggingSettings':
+ - Habilitar 'enable_auto_tagging = True'.
+ - Defina 'heading_recognition_strategy = AUTO' para detectar automaticamente os cabeçalhos.
+1. Atribua as configurações de autoetiquetagem às opções de conversão.
+1. Converta o PDF usando 'document.convert(options)'.
+1. Salve o PDF convertido no caminho de saída.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDFA_with_automatic_tagging(infile, outfile):
+ logfile = outfile.replace(".pdf", "-log.xml")
+
+ document = ap.Document(infile)
+ options = ap.PdfFormatConversionOptions(
+ logfile, ap.PdfFormat.PDF_A_1B, ap.ConvertErrorAction.DELETE
+ )
+
+ auto_tagging_settings = ap.AutoTaggingSettings()
+ auto_tagging_settings.enable_auto_tagging = True
+
+ auto_tagging_settings.heading_recognition_strategy = (
+ ap.HeadingRecognitionStrategy.AUTO
+ )
+
+ options.auto_tagging_settings = auto_tagging_settings
+ document.convert(options)
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+## Converter PDF para PDF/E
+
+Este trecho de código demonstra como converter um documento PDF para o formato PDF/E-1, que é um padrão ISO voltado para documentação de engenharia e técnica. Esse formato preserva o layout preciso, gráficos e metadados exigidos nos fluxos de trabalho de engenharia.
+
+1. Carregue o PDF de origem usando 'ap.Document'.
+1. Crie 'PdfFormatConversionOptions' especificando:
+ - Caminho do arquivo de log para rastrear problemas de conversão.
+ - Formato de destino - 'ap.PdfFormat.PDF_E_1'.
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' para remover elementos não conformes.
+1. Converta o PDF usando 'document.convert(options)'.
+1. Salve o PDF convertido no caminho de saída especificado.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDF_E(infile, outfile):
+ logfile = outfile.replace(".pdf", "-log.xml")
+
+ document = ap.Document(infile)
+ options = ap.PdfFormatConversionOptions(
+ logfile, ap.PdfFormat.PDF_E_1, ap.ConvertErrorAction.DELETE
+ )
+
+ document.convert(options)
+
+ # Save PDF document
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+## Converter PDF para PDF/X
+
+O próximo trecho de código converte um documento PDF para o formato PDF/X-4, que é um padrão ISO comumente usado na indústria de impressão e publicação. O PDF/X-4 garante a precisão de cores, mantém a transparência e incorpora perfis ICC para uma saída consistente em diferentes dispositivos.
+
+1. Carregue o PDF de origem usando 'ap.Document'.
+1. Crie 'PdfFormatConversionOptions' especificando:
+ - Caminho do arquivo de log.
+ - Formato de destino - 'ap.PdfFormat.PDF_X_4'.
+ - Ação de erro - 'ap.ConvertErrorAction.DELETE' para remover elementos não conformes.
+1. Forneça o **arquivo de perfil ICC** para gerenciamento de cores via 'icc_profile_file_name'.
+1. Especifique um **OutputIntent** com um identificador de condição (por exemplo, "FOGRA39") para requisitos de impressão.
+1. Converta o PDF usando 'document.convert()'.
+1. Salve o PDF convertido no caminho de saída especificado.
+1. Imprima uma mensagem de confirmação.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PDF_X(infile, outfile):
+ logfile = outfile.replace(".pdf", "-log.xml")
+
+ document = ap.Document(infile)
+ options = ap.PdfFormatConversionOptions(
+ logfile, ap.PdfFormat.PDF_X_4, ap.ConvertErrorAction.DELETE
+ )
+
+ # Provide the name of the external ICC profile file (optional)
+ options.icc_profile_file_name = path.join(
+ path.dirname(infile), "ISOcoated_v2_eci.icc"
+ )
+ # Provide an output condition identifier and other necessary OutputIntent properties (optional)
+ options.output_intent = ap.OutputIntent("FOGRA39")
+
+ document.convert(options)
+
+ # Save PDF document
+ document.save(outfile)
+ print(infile + " converted into " + outfile)
+```
+
+## Conversões relacionadas
+
+- [Converter PDF para Word](/pdf/pt/python-net/convert-pdf-to-word/) para fluxos de trabalho de conteúdo editável após validação de padrões.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) quando sua saída de destino está pronta para a web em vez de PDF baseada em padrões.
diff --git a/pt/python-net/converting/convert-pdf-to-pdfx/pdf_to_pdfa.png b/pt/python-net/converting/convert-pdf-to-pdfx/pdf_to_pdfa.png
new file mode 100644
index 0000000000..d126570b19
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-pdfx/pdf_to_pdfa.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-powerpoint/_index.md b/pt/python-net/converting/convert-pdf-to-powerpoint/_index.md
index 773197373f..76c63bf8aa 100644
--- a/pt/python-net/converting/convert-pdf-to-powerpoint/_index.md
+++ b/pt/python-net/converting/convert-pdf-to-powerpoint/_index.md
@@ -4,110 +4,98 @@ linktitle: Converter PDF para PowerPoint
type: docs
weight: 30
url: /pt/python-net/convert-pdf-to-powerpoint/
-description: Aspose.PDF permite converter PDF para o formato PPT (PowerPoint) usando Python. Uma forma é a possibilidade de converter PDF para PPTX com Slides como Imagens.
-lastmod: "2022-12-23"
+description: Aprenda como converter arquivos PDF para PowerPoint em Python com Aspose.PDF for Python via .NET, incluindo slides PPTX editáveis e saída de slides baseada em imagens.
+lastmod: "2026-05-21"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como Converter PDF para PowerPoint em Python
+Abstract: Este artigo fornece um guia abrangente sobre a conversão de arquivos PDF em apresentações PowerPoint usando Python, com foco específico no formato PPTX. Ele apresenta o uso de Aspose.PDF for Python via .NET, que facilita o processo de conversão ao permitir que páginas PDF sejam transformadas em slides individuais em um arquivo PPTX. O artigo descreve as etapas necessárias para a conversão, incluindo a criação de instâncias das classes Document e PptxSaveOptions e a utilização do método Save. Além disso, destaca um recurso para converter PDFs em PPTX com slides como imagens, configurando uma propriedade específica em PptxSaveOptions. Trechos de código são fornecidos para ilustrar o processo de conversão. O artigo também faz referência a uma aplicação online para testar o recurso de conversão de PDF para PPTX, oferecendo aos usuários uma experiência prática. Além disso, lista vários tópicos e funcionalidades relacionados disponíveis neste contexto, enfatizando a versatilidade e a abordagem programática para lidar com conversões de PDF para PowerPoint usando Python.
---
-## Visão Geral
-É possível converter um arquivo PDF em um PowerPoint? Sim, você pode! E é fácil!
-Este artigo explica como **converter PDF para PowerPoint usando Python**. Ele cobre estes tópicos.
+## Conversão de PDF Python para PowerPoint e PPTX
-_Formato_: **PPTX**
-- [Python PDF para PPTX](#python-pdf-to-pptx)
-- [Python Converter PDF para PPTX](#python-pdf-to-pptx)
-- [Python Como converter arquivo PDF para PPTX](#python-pdf-to-pptx)
+**Aspose.PDF for Python via .NET** permite que você acompanhe o progresso da conversão de PDF para PPTX.
-_Formato_: **PowerPoint**
-- [Python PDF para PowerPoint](#python-pdf-to-powerpoint)
-- [Python Converter PDF para PowerPoint](#python-pdf-to-powerpoint)
-- [Python Como converter arquivo PDF para PowerPoint](#python-pdf-to-powerpoint)
+Temos uma API chamada Aspose.Slides que oferece o recurso de criar bem como manipular apresentações PPT/PPTX. Esta API também fornece o recurso de converter PPTX arquivos para formato PDF. Durante essa conversão, as páginas individuais do arquivo PDF são convertidas em slides separados no arquivo PPTX.
+Durante a conversão de PDF para PPTX, o texto é renderizado como Texto, onde você pode selecioná‑lo/atualizá‑lo. Observe que, para converter arquivos PDF para o formato PPTX, o Aspose.PDF fornece uma classe chamada [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/). Um objeto da classe PptxSaveOptions é passado como um segundo argumento para o [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods). O trecho de código a seguir mostra o processo de conversão de arquivos PDF para o formato PPTX.
-## Conversão de PDF para PowerPoint e PPTX em Python
+Essa conversão é especialmente útil quando você deseja reutilizar relatórios em PDF, apresentações de slides ou folhetos em arquivos de apresentação editáveis.
-**Aspose.PDF for Python via .NET** permite acompanhar o progresso da conversão de PDF para PPTX.
+## Conversão simples de PDF para PowerPoint usando Python e Aspose.PDF for Python via .NET
-Temos uma API chamada Aspose.Slides que oferece a funcionalidade de criar e manipular apresentações PPT/PPTX. Esta API também fornece a funcionalidade de converter arquivos PPT/PPTX para o formato PDF. Durante essa conversão, as páginas individuais do arquivo PDF são convertidas em slides separados no arquivo PPTX.
+Para converter PDF para PPTX, Aspose.PDF for Python recomenda usar os seguintes passos de código.
-Durante a conversão de PDF para PPTX, o texto é renderizado como Texto onde você pode selecioná-lo/atualizá-lo. Por favor, note que para converter arquivos PDF para o formato PPTX, o Aspose.PDF fornece uma classe chamada [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/). Um objeto da classe PptxSaveOptions é passado como segundo argumento para o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods). O trecho de código a seguir mostra o processo para converter arquivos PDF em formato PPTX.
+Passos: Converter PDF para PowerPoint em Python
-## Conversão simples de PDF para PowerPoint usando Python e Aspose.PDF para Python
-
-Para converter PDF para PPTX, o Aspose.PDF para Python aconselha a usar os seguintes passos de código.
-
-Passos: Converter PDF para PowerPoint em Python | Passos: Converter PDF para PPTX em Python
-
-1. Crie uma instância da classe [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
-2. Crie uma instância da classe [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/)
-3. Use o método **Save** do objeto **Document** para salvar o PDF como PPTX
+1. Criar uma instância de [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) classe.
+1. Criar uma instância de [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/) classe.
+1. Chamar o [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) método.
```python
-
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_pptx.pptx"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
- # Instanciar a instância de PptxSaveOptions
- save_option = ap.PptxSaveOptions()
- # Salvar o arquivo no formato MS PowerPoint
- document.save(output_pdf, save_option)
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PPTX(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.PptxSaveOptions()
+ document.save(outfile, save_options)
```
## Converter PDF para PPTX com Slides como Imagens
-
{{% alert color="success" %}}
**Tente converter PDF para PowerPoint online**
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF para PPTX"](https://products.aspose.app/pdf/conversion/pdf-to-pptx), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+Aspose.PDF apresenta a você um aplicativo online ["PDF para PPTX"](https://products.aspose.app/pdf/conversion/pdf-to-pptx), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+
-[](https://products.aspose.app/pdf/conversion/pdf-to-pptx)
+[](https://products.aspose.app/pdf/conversion/pdf-to-pptx)
{{% /alert %}}
-Caso você precise converter um PDF pesquisável para PPTX como imagens em vez de texto selecionável, o Aspose.PDF oferece esse recurso por meio da classe [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/). Para conseguir isso, defina a propriedade [slides_as_images](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/#properties) da classe [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/) como 'true', conforme mostrado no exemplo de código a seguir.
+Caso precise converter um PDF pesquisável para PPTX como imagens em vez de texto selecionável, o Aspose.PDF fornece esse recurso via [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/) classe. Para conseguir isso, defina a propriedade [slides_as_images](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/#properties) de [PptxSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/pptxsaveoptions/) classe para 'true' conforme mostrado no exemplo de código a seguir.
```python
+import aspose.pdf as ap
+from os import path
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_pptx_with_slides_as_images.pptx"
- # Abrir documento PDF
- documento = ap.Document(input_pdf)
- # Instanciar instância de PptxSaveOptions
- save_option = ap.PptxSaveOptions()
- save_option.slides_as_images = True
- # Salvar o arquivo no formato MS PowerPoint
- documento.save(output_pdf, save_option)
+def convert_PDF_to_PPTX_slides_as_images(infile, outfile):
+
+ document = ap.Document(infile)
+ save_options = ap.PptxSaveOptions()
+ save_options.slides_as_images = True
+
+ document.save(outfile, save_options)
```
+## Converter PDF para PPTX com Resolução de Imagem Personalizada
+
+Este método converte um documento PDF em um arquivo PowerPoint (PPTX) enquanto define uma resolução de imagem personalizada (300 DPI) para melhorar a qualidade.
-## Veja Também
+1. Carregue o PDF em um objeto 'ap.Document'
+1. Crie uma instância de 'PptxSaveOptions'.
+1. Defina a propriedade 'image_resolution' para 300 DPI para renderização de alta qualidade.
+1. Salve o PDF como um arquivo PPTX usando as opções de salvamento definidas.
-Este artigo também aborda estes tópicos. Os códigos são os mesmos que acima.
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDF_to_PPTX_image_resolution(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.PptxSaveOptions()
+ save_options.image_resolution = 300
-_Formato_: **PowerPoint**
-- [Código Python PDF para PowerPoint](#python-pdf-to-powerpoint)
-- [API Python PDF para PowerPoint](#python-pdf-to-powerpoint)
-- [Python PDF para PowerPoint Programaticamente](#python-pdf-to-powerpoint)
-- [Biblioteca Python PDF para PowerPoint](#python-pdf-to-powerpoint)
-- [Python Salvar PDF como PowerPoint](#python-pdf-to-powerpoint)
-- [Python Gerar PowerPoint a partir de PDF](#python-pdf-to-powerpoint)
-- [Python Criar PowerPoint a partir de PDF](#python-pdf-to-powerpoint)
-- [Conversor Python PDF para PowerPoint](#python-pdf-to-powerpoint)
+ document.save(outfile, save_options)
+```
-_Formato_: **PPTX**
-- [Código Python PDF para PPTX](#python-pdf-to-pptx)
-- [API Python PDF para PPTX](#python-pdf-to-pptx)
-- [Python PDF para PPTX Programaticamente](#python-pdf-to-pptx)
-- [Biblioteca Python PDF para PPTX](#python-pdf-to-pptx)
-- [Python Salvar PDF como PPTX](#python-pdf-to-pptx)
-- [Python Gerar PPTX a partir de PDF](#python-pdf-to-pptx)
-- [Python Criar PPTX a partir de PDF](#python-pdf-to-pptx)
+## Conversões relacionadas
-- [Conversor Python PDF para PPTX](#python-pdf-to-pptx)
\ No newline at end of file
+- [Converter PDF para Word](/pdf/pt/python-net/convert-pdf-to-word/) para saída de documento editável em vez de slides.
+- [Converter PDF para Excel](/pdf/pt/python-net/convert-pdf-to-excel/) quando o PDF de origem contém dados empresariais com muitas tabelas.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) para fluxos de trabalho de publicação prontos para navegador.
\ No newline at end of file
diff --git a/pt/python-net/converting/convert-pdf-to-powerpoint/pdf_to_pptx.png b/pt/python-net/converting/convert-pdf-to-powerpoint/pdf_to_pptx.png
new file mode 100644
index 0000000000..9a0932cef7
Binary files /dev/null and b/pt/python-net/converting/convert-pdf-to-powerpoint/pdf_to_pptx.png differ
diff --git a/pt/python-net/converting/convert-pdf-to-word/_index.md b/pt/python-net/converting/convert-pdf-to-word/_index.md
index f744f5e16a..26576d72f3 100644
--- a/pt/python-net/converting/convert-pdf-to-word/_index.md
+++ b/pt/python-net/converting/convert-pdf-to-word/_index.md
@@ -1,178 +1,113 @@
---
-title: Converter PDF para Documentos do Microsoft Word em Python
-linktitle: Converter PDF para Word 2003/2019
+title: Converter PDF para Word em Python
+linktitle: Converter PDF para Word
type: docs
weight: 10
url: /pt/python-net/convert-pdf-to-word/
-lastmod: "2022-12-23"
-description: Aprenda como escrever código Python para conversão de formatos de PDF para Microsoft Word com Aspose.PDF para Python via .NET e ajuste a conversão de PDF para DOC(DOCX).
+lastmod: "2026-05-21"
+description: Aprenda como converter arquivos PDF para DOC e DOCX em Python com Aspose.PDF for Python via .NET para facilitar a edição e reutilização de documentos.
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como Converter PDF para Word em Python
+Abstract: Este artigo fornece um guia abrangente sobre como converter arquivos PDF para formatos do Microsoft Word (DOC e DOCX) usando Python, especificamente utilizando a biblioteca Aspose.PDF. Ele descreve as vantagens de converter PDFs em documentos Word editáveis, permitindo uma manipulação de conteúdo mais fácil, como texto, tabelas e imagens. O artigo detalha o processo de conversão de PDF para DOC (formato Word 97-2003) e DOCX, com trechos de código que demonstram essas conversões via Python. O processo envolve criar um objeto `Document` a partir do PDF e salvá‑lo no formato desejado usando o método `save()` e a enumeração `SaveFormat`. Além disso, apresenta a classe `DocSaveOptions`, que permite personalizar ainda mais o processo de conversão, como especificar modos de reconhecimento. O artigo também destaca aplicações online fornecidas pela Aspose.PDF para testar a qualidade e a funcionalidade da conversão. O conteúdo inclui uma visão geral estruturada e links para as seções correspondentes de cada formato.
---
-## Visão Geral
+## Converter PDF para DOC
-Este artigo explica como **converter PDF para Documentos do Microsoft Word usando Python**. Ele abrange os seguintes tópicos.
+Uma das funcionalidades mais populares é a conversão de PDF para Microsoft Word DOC, que facilita a gestão de conteúdo. **Aspose.PDF for Python via .NET** permite converter arquivos PDF não apenas para DOC, mas também para o formato DOCX, de forma fácil e eficiente.
-_Formato_: **DOC**
-- [Python PDF para DOC](#python-pdf-to-doc)
-- [Python Converter PDF para DOC](#python-pdf-to-doc)
-- [Python Como converter arquivo PDF para DOC](#python-pdf-to-doc)
+Use a conversão para Word quando precisar revisar texto, reutilizar conteúdo em fluxos de trabalho de escritório ou mover conteúdo PDF para documentos editáveis DOC ou DOCX.
-_Formato_: **DOCX**
-- [Python PDF para DOCX](#python-pdf-to-docx)
-- [Python Converter PDF para DOCX](#python-pdf-to-docx)
-- [Python Como converter arquivo PDF para DOCX](#python-pdf-to-docx)
+O [DocSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/docsaveoptions/) a classe fornece inúmeras propriedades que melhoram o processo de conversão de arquivos PDF para o formato DOC. Entre essas propriedades, Mode permite que você especifique o modo de reconhecimento para o conteúdo PDF. Você pode especificar qualquer valor da enumeração RecognitionMode para esta propriedade. Cada um desses valores tem benefícios e limitações específicas:
-_Formato_: **Word**
-- [Python PDF para Word](#python-pdf-to-docx)
-- [Python Converter PDF para Word](#python-pdf-to-doc)
+Etapas: Converter PDF para DOC em Python
-- [Python Como converter arquivo PDF para Word](#python-pdf-to-docx)
-
-## Conversão de PDF para DOC e DOCX em Python
-
-Uma das funcionalidades mais populares é a conversão de PDF para DOC do Microsoft Word, o que facilita a gestão de conteúdo. **Aspose.PDF para Python** permite converter arquivos PDF não apenas para DOC, mas também para o formato DOCX, de maneira fácil e eficiente.
-
-## Converter PDF para arquivo DOC (Word 97-2003)
-
-Converta arquivos PDF para o formato DOC com facilidade e total controle. Aspose.PDF para Python é flexível e suporta uma grande variedade de conversões. Converter páginas de documentos PDF para imagens, por exemplo, é uma funcionalidade muito popular.
-
-Uma conversão que muitos dos nossos clientes solicitaram é de PDF para DOC: converter um arquivo PDF em um documento do Microsoft Word. Os clientes desejam isso porque os arquivos PDF não podem ser facilmente editados, enquanto os documentos do Word podem. Algumas empresas querem que seus usuários possam manipular texto, tabelas e imagens em arquivos que começaram como PDFs.
-
-Mantendo viva a tradição de tornar as coisas simples e compreensíveis, Aspose.PDF para Python permite transformar um arquivo PDF de origem em um arquivo DOC com duas linhas de código.
- Para realizar este recurso, introduzimos uma enumeração chamada SaveFormat e seu valor .Doc permite que você salve o arquivo de origem no formato Microsoft Word.
-
-O snippet de código Python a seguir mostra o processo de conversão de um arquivo PDF para o formato DOC.
-
-Passos: Converter PDF para DOC em Python
-
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
-2. Salve-o no formato [SaveFormat](https://reference.aspose.com/pdf/python-net/aspose.pdf/saveformat/) chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Carregue o PDF em um objeto 'ap.Document'.
+1. Crie uma instância de 'DocSaveOptions'.
+1. Defina a propriedade format como 'DocFormat.DOC' para garantir que a saída esteja no formato .doc (formato Word mais antigo).
+1. Salve o PDF como um documento Word usando as opções de salvamento especificadas.
+1. Imprima uma mensagem de confirmação.
```python
+from os import path
+import aspose.pdf as ap
+import sys
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_doc.doc"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
- # Salvar o arquivo no formato de documento MS Word
- document.save(output_pdf, ap.SaveFormat.DOC)
-```
-
-### Usando a Classe DocSaveOptions
-
-A classe [DocSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/docsaveoptions/) fornece inúmeras propriedades que melhoram o processo de conversão de arquivos PDF para o formato DOC. Entre estas propriedades, Mode permite que você especifique o modo de reconhecimento para o conteúdo do PDF. Você pode especificar qualquer valor da enumeração RecognitionMode para esta propriedade. Cada um desses valores tem benefícios e limitações específicos:
-
-```python
-
- import aspose.pdf as ap
-
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_doc_with_options.doc"
- # Abrir documento PDF
- document = ap.Document(input_pdf)
-
+def convert_PDF_to_DOC(infile, outfile):
+ document = ap.Document(infile)
save_options = ap.DocSaveOptions()
save_options.format = ap.DocSaveOptions.DocFormat.DOC
- # Definir o modo de reconhecimento como Flow
- save_options.mode = ap.DocSaveOptions.RecognitionMode.FLOW
- # Definir a proximidade horizontal como 2.5
- save_options.relative_horizontal_proximity = 2.5
- # Ativar o valor para reconhecer marcadores durante o processo de conversão
- save_options.recognize_bullets = True
-
- # Salvar o arquivo no formato de documento do MS Word
- document.save(output_pdf, save_options)
+ document.save(outfile, save_options)
+
+ print(infile + " converted into " + outfile)
```
{{% alert color="success" %}}
**Tente converter PDF para DOC online**
+Aspose.PDF for Python apresenta-lhe uma aplicação online ["PDF para DOC"](https://products.aspose.app/pdf/conversion/pdf-to-doc), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF to DOC"](https://products.aspose.app/pdf/conversion/pdf-to-doc), onde você pode tentar investigar a funcionalidade e a qualidade com que ele funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-doc)
+[](https://products.aspose.app/pdf/conversion/pdf-to-doc)
{{% /alert %}}
## Converter PDF para DOCX
-Aspose.PDF para Python API permite que você leia e converta documentos PDF para DOCX usando Python via .NET. DOCX é um formato bem conhecido para documentos do Microsoft Word cuja estrutura foi alterada de binário simples para uma combinação de arquivos XML e binários. Arquivos Docx podem ser abertos com Word 2007 e versões posteriores, mas não com as versões anteriores do MS Word que suportam extensões de arquivo DOC.
-
-O seguinte trecho de código Python mostra o processo de conversão de um arquivo PDF em formato DOCX.
+Aspose.PDF for Python API permite ler e converter documentos PDF para DOCX usando Python via .NET. DOCX é um formato bem conhecido para documentos Microsoft Word cuja estrutura foi alterada de binário puro para uma combinação de arquivos XML e binários. Arquivos Docx podem ser abertos com o Word 2007 e versões laterais, mas não com as versões anteriores do MS Word que suportam extensões de arquivo DOC.
-Passos: Converter PDF para DOCX em Python
+O seguinte trecho de código Python mostra o processo de conversão de um arquivo PDF para o formato DOCX.
-1. Crie uma instância do objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) com o documento PDF de origem.
+Etapas: Converter PDF para DOCX em Python
-2. Salve-o no formato [SaveFormat](https://reference.aspose.com/pdf/python-net/aspose.pdf/saveformat/) chamando o método [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods).
+1. Carregue o PDF de origem usando 'ap.Document'.
+1. Crie uma instância de 'DocSaveOptions'.
+1. Defina a propriedade format como 'DocFormat.DOC_X' para gerar um arquivo .docx (formato Word moderno).
+1. Salve o PDF como um arquivo DOCX com as opções de salvamento configuradas.
+1. Imprima uma mensagem de confirmação após a conversão.
```python
+from os import path
+import aspose.pdf as ap
+import sys
- import aspose.pdf as ap
+def convert_PDF_to_DOCX(infile, outfile):
+ document = ap.Document(infile)
+ save_options = ap.DocSaveOptions()
+ save_options.format = ap.DocSaveOptions.DocFormat.DOC_X
+ document.save(outfile, save_options)
+```
+
+## Converter PDF para DOCX com Reconhecimento Avançado de Layout
- input_pdf = DIR_INPUT + "sample.pdf"
- output_pdf = DIR_OUTPUT + "convert_pdf_to_docx_options.docx"
- # Abra o documento PDF
- document = ap.Document(input_pdf)
+Converta um documento PDF em um arquivo DOCX (Word) usando Python e Aspose.PDF com configurações avançadas de reconhecimento. Ele usa o modo de fluxo aprimorado para preservar a estrutura do documento, tornando a saída mais editável e mais próxima do layout original.
+```python
+from os import path
+import aspose.pdf as ap
+import sys
+
+def convert_PDF_to_DOCX_advanced(infile, outfile):
+ document = ap.Document(infile)
save_options = ap.DocSaveOptions()
save_options.format = ap.DocSaveOptions.DocFormat.DOC_X
- # Defina o modo de reconhecimento como Flow
- save_options.mode = ap.DocSaveOptions.RecognitionMode.FLOW
- # Defina a proximidade horizontal como 2.5
- save_options.relative_horizontal_proximity = 2.5
- # Habilite o valor para reconhecer marcadores durante o processo de conversão
- save_options.recognize_bullets = True
-
- # Salve o arquivo no formato de documento do MS Word
- document.save(output_pdf, save_options)
+ save_options.mode = ap.DocSaveOptions.RecognitionMode.ENHANCED_FLOW
+ document.save(outfile, save_options)
```
-A classe [DocSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/docsaveoptions/) tem uma propriedade chamada Format que fornece a capacidade de especificar o formato do documento resultante, ou seja, DOC ou DOCX.
- Para converter um arquivo PDF para o formato DOCX, por favor, passe o valor Docx da enumeração DocSaveOptions.DocFormat.
+O [DocSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/docsaveoptions/) A classe tem uma propriedade chamada Format que fornece a capacidade de especificar o formato do documento resultante, ou seja, DOC ou DOCX. Para converter um arquivo PDF para o formato DOCX, por favor passe o valor Docx da enumeração DocSaveOptions.DocFormat.
{{% alert color="warning" %}}
**Tente converter PDF para DOCX online**
-Aspose.PDF para Python apresenta a você o aplicativo online gratuito ["PDF para Word"](https://products.aspose.app/pdf/conversion/pdf-to-docx), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
+Aspose.PDF for Python apresenta-lhe uma aplicação online ["PDF para Word"](https://products.aspose.app/pdf/conversion/pdf-to-docx), onde você pode tentar investigar a funcionalidade e a qualidade com que funciona.
-[](https://products.aspose.app/pdf/conversion/pdf-to-docx)
+[](https://products.aspose.app/pdf/conversion/pdf-to-docx)
{{% /alert %}}
-## Veja Também
-
-Este artigo também cobre esses tópicos. Os códigos são os mesmos que acima.
-
-_Formato_: **Word**
-- [Código Python PDF para Word](#python-pdf-to-docx)
-- [API Python PDF para Word](#python-pdf-to-docx)
-- [Python PDF para Word Programaticamente](#python-pdf-to-docx)
-- [Biblioteca Python PDF para Word](#python-pdf-to-docx)
-- [Salvar PDF como Word em Python](#python-pdf-to-docx)
-- [Gerar Word a partir de PDF em Python](#python-pdf-to-docx)
-- [Criar Word a partir de PDF em Python](#python-pdf-to-docx)
-
-- [Conversor Python PDF para Word](#python-pdf-to-docx)
-_Format_: **DOC**
-- [Código Python PDF para DOC](#python-pdf-to-doc)
-- [API Python PDF para DOC](#python-pdf-to-doc)
-- [Python PDF para DOC Programaticamente](#python-pdf-to-doc)
-- [Biblioteca Python PDF para DOC](#python-pdf-to-doc)
-- [Python Salvar PDF como DOC](#python-pdf-to-doc)
-- [Python Gerar DOC de PDF](#python-pdf-to-doc)
-- [Python Criar DOC de PDF](#python-pdf-to-doc)
-- [Conversor Python PDF para DOC](#python-pdf-to-doc)
-
-_Format_: **DOCX**
-- [Código Python PDF para DOCX](#python-pdf-to-docx)
-- [API Python PDF para DOCX](#python-pdf-to-docx)
-- [Python PDF para DOCX Programaticamente](#python-pdf-to-docx)
-- [Biblioteca Python PDF para DOCX](#python-pdf-to-docx)
-- [Python Salvar PDF como DOCX](#python-pdf-to-docx)
-- [Python Gerar DOCX de PDF](#python-pdf-to-docx)
-- [Python Criar DOCX de PDF](#python-pdf-to-docx)
-- [Conversor Python PDF para DOCX](#python-pdf-to-docx)
\ No newline at end of file
+## Conversões relacionadas
+
+- [Converter PDF para Excel](/pdf/pt/python-net/convert-pdf-to-excel/) para exportações orientadas a planilhas.
+- [Converter PDF para PowerPoint](/pdf/pt/python-net/convert-pdf-to-powerpoint/) quando você precisa de slides de apresentação em vez de saída de processador de texto.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) para publicação web e fluxos de trabalho de conteúdo baseados em navegador.
diff --git a/pt/python-net/converting/convert-pdfx-to-pdf/_index.md b/pt/python-net/converting/convert-pdfx-to-pdf/_index.md
new file mode 100644
index 0000000000..1075ca01f9
--- /dev/null
+++ b/pt/python-net/converting/convert-pdfx-to-pdf/_index.md
@@ -0,0 +1,69 @@
+---
+title: Converter PDF/A e PDF/UA para PDF em Python
+linktitle: Converter PDF/A e PDF/UA para PDF
+type: docs
+weight: 120
+url: /pt/python-net/convert-pdf_x-to-pdf/
+lastmod: "2026-05-18"
+description: Saiba como remover a conformidade PDF/A e PDF/UA de arquivos PDF em Python com Aspose.PDF for Python via .NET e salvá-los como documentos PDF padrão.
+sitemap:
+ changefreq: "monthly"
+ priority: 0.8
+TechArticle: true
+AlternativeHeadline: Como converter PDF/A e PDF/UA para PDF padrão em Python
+Abstract: Este artigo explica como remover a conformidade PDF/A e PDF/UA de documentos PDF baseados em padrões usando Aspose.PDF for Python via .NET. Ele aborda cenários em que você pode precisar de um PDF padrão em vez de um arquivo de arquivamento ou com restrições de acessibilidade, e mostra como salvar o resultado após remover os metadados e restrições de conformidade.
+---
+
+Use esta página quando precisar converter um PDF baseado em padrões, como PDF/A ou PDF/UA, de volta para um documento PDF regular para edição, processamento ou redistribuição posteriores.
+
+PDFs compatíveis com padrões são úteis para fluxos de trabalho de arquivamento, impressão e acessibilidade, mas em alguns casos pode ser necessário remover essa conformidade antes de integrar o arquivo em outros sistemas ou pipelines. Aspose.PDF for Python via .NET permite fazer isso programaticamente e então salvar o resultado como um arquivo PDF padrão.
+
+## Converter PDF/A para PDF
+
+Este exemplo remove os metadados e restrições de conformidade PDF/A de um PDF para que o documento possa ser salvo novamente como um arquivo PDF padrão.
+
+1. Carregue o documento PDF usando 'ap.Document'.
+1. Chame ‘remove_pdfa_compliance()’ para remover todas as configurações e metadados de conformidade relacionados ao PDF/A.
+1. Salve o PDF resultante no caminho de saída.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDFA_to_PDF(infile, outfile):
+ document = ap.Document(infile)
+ document.remove_pdfa_compliance()
+ document.save(outfile)
+```
+
+## Removendo conformidade PDF/UA
+
+Este exemplo demonstra como remover a conformidade relacionada ao PDF/UA para que o documento possa ser salvo como um PDF padrão para fluxos de trabalho que não são específicos de acessibilidade.
+
+1. Carregue o documento PDF usando 'ap.Document()'.
+1. Chame 'document.remove_pdfa_compliance()' para remover quaisquer restrições ou configurações de conformidade PDF/A.
+1. Salve o PDF modificado em 'path_outfile'.
+
+```python
+import aspose.pdf as ap
+from os import path
+import sys
+
+def convert_PDFUA_to_PDF(infile, outfile):
+ document = ap.Document(infile)
+ document.remove_pdf_ua_compliance()
+ document.save(outfile)
+```
+
+## Quando usar este fluxo de trabalho
+
+- Remova as configurações de conformidade antes de enviar um documento para uma cadeia de ferramentas que não requer restrições de PDF/A ou PDF/UA.
+- Simplifique o processamento do documento a jusante quando metadados de arquivamento ou acessibilidade não são mais necessários.
+- Normalize PDFs de entrada antes de exportá-los para outros formatos.
+
+## Conversões relacionadas
+
+- [Converter PDF para PDF/A, PDF/E e PDF/X](/pdf/pt/python-net/convert-pdf-to-pdf_x/) se você precisar do fluxo de trabalho inverso e quiser criar PDFs compatíveis com padrões.
+- [Converter PDF para Word](/pdf/pt/python-net/convert-pdf-to-word/) para saída de documento editável após remover restrições de conformidade.
+- [Converter PDF para HTML](/pdf/pt/python-net/convert-pdf-to-html/) para saída amigável ao navegador a partir de arquivos PDF padrão.
diff --git a/pt/python-net/faq/_index.md b/pt/python-net/faq/_index.md
new file mode 100644
index 0000000000..306274d6de
--- /dev/null
+++ b/pt/python-net/faq/_index.md
@@ -0,0 +1,16 @@
+---
+title: Perguntas Frequentes
+linktitle: Perguntas Frequentes
+type: docs
+weight: 140
+url: /pt/python-net/faq/
+description: Aqui você pode encontrar respostas para Perguntas Frequentes sobre a biblioteca Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: false
+---
+
+
Quais formatos o Aspose.PDF for Python via .NET suporta?
Aspose.PDF for Python via .NET suporta formatos de arquivo populares, como PDF, TXT, HTML, PCL, XML, XPS, EPUB, TEX e formatos de imagem. Para mais detalhes, por favor visite a página Formatos de Arquivo Suportados.
Quais recursos de IA o Aspose.PDF for Python via .NET suporta?
Sim, a biblioteca tem clientes integrados para OpenAI e Llama API. Eles permitem que você faça solicitações de API e crie copilotos de IA. Você pode encontrar exemplos em Copiloto de IA para PDF página.
Quantos arquivos posso combinar em PDF de uma vez?
Você pode mesclar um número ilimitado de arquivos em PDF de uma só vez.
Como inserir uma imagem no PDF?
Para inserir uma imagem em um PDF usando Aspose.PDF for Python via .NET, você pode encontrar aqui.
Como editar o texto no PDF?
Para editar o texto em um PDF usando Aspose.PDF for Python via .NET, você pode encontrar aqui.
Como adicionar números de página ao arquivo PDF?
Para adicionar números de página a um PDF usando Aspose.PDF for Python via .NET, você pode encontrar aqui.
Como criar um plano de fundo para Documentos PDF?
Para criar um plano de fundo para um documento PDF usando Aspose.PDF for Python via .NET, você pode encontrar aqui.
Como proteger o documento PDF?
Para proteger um documento PDF usando Aspose.PDF for Python via .NET, você pode encontrar aqui.
Como adicionar texto em negrito em uma anotação destacada em uma página PDF?
Para adicionar texto em negrito em uma anotação destacada, você pode encontrar aqui.
Como validar um Tagged PDF?
Para validar um documento PDF marcado, você pode encontrar aqui.
Como implementar busca regex para TextFragmentAbsorber?
Para usar regex com o `TextFragmentAbsorber` classe em Aspose.PDF for Python via .NET, você pode encontrar aqui.
Como criar um documento PDF/A válido, a menos que a fonte ausente ou sua substituição seja fornecida?
Para criar um documento PDF/A válido, você pode encontrar aqui.
Vejo erros no log de conversão PDF/A. Isso significa que o documento não foi convertido com sucesso?
Não, o Aspose.PDF registra todos os problemas que encontrou, incluindo os que foram corrigidos automaticamente. Se todas as entradas no registro estiverem marcadas como Convertable=True, todos os problemas foram corrigidos e o documento foi convertido com sucesso. Apenas as entradas com Convertable=False indicam a falha na conversão.
Como fazer um documento PDF/A válido se o log de conversão contém erros "Font not embedded"?
Se um log de conversão PDF/A contiver entradas de erro "Font not embedded" marcadas como Convertable=False, isso significa que o documento original inclui fontes que estão ausentes tanto no próprio documento quanto na máquina onde a conversão é realizada. Verifique aqui para aprender a substituir fontes ausentes.
Por que o Aspose.PDF não converte um documento para PDF/A com a opção ConvertErrorAction.None?
A opção ConvertErrorAction.None impede que o Aspose.PDF remova elementos do documento, mesmo que esses elementos sejam proibidos pelo padrão PDF/A. Como resultado, pode ser impossível converter um documento usando o modo ConvertErrorAction.None. Use esta opção quando você não deseja que o Aspose.PDF remova automaticamente os elementos proibidos do documento, especialmente se planeja revisar o registro de conversão e corrigir manualmente os problemas do documento. Outro cenário para usar esta opção é quando seu documento já está em grande parte ou totalmente compatível com PDF/A, e você deseja evitar alterações desnecessárias. Versões mais permissivas de PDF/A (por exemplo, PDF/A-2 ou PDF/A-3) têm mais probabilidade de serem convertidas com sucesso usando a opção ConvertErrorAction.None. No entanto, para os padrões PDF/A-1a e PDF/A-1b, geralmente recomenda-se usar a opção ConvertErrorAction.Delete.
O Aspose.PDF for Python via .NET suporta Linux?
Sim, Aspose.PDF for Python via .NET suporta execução em ambientes Linux. Você pode usar a versão Python via .NET Core ou posterior, que é multiplataforma e pode ser usada no Windows, macOS e Linux.
+
diff --git a/pt/python-net/get-started/_index.md b/pt/python-net/get-started/_index.md
index 1f0664d48e..966f2b6152 100644
--- a/pt/python-net/get-started/_index.md
+++ b/pt/python-net/get-started/_index.md
@@ -1,52 +1,51 @@
---
-title: Começar
+title: Começar
linktitle: Começar
type: docs
weight: 30
url: /pt/python-net/get-started/
-description: Esta seção descreve os princípios básicos de trabalho do Aspose.PDF para Python via .NET. A biblioteca Python suporta uma ampla variedade de funções.
+description: Aprenda como começar a usar o Aspose.PDF for Python via .NET para criar, editar, converter, validar e extrair conteúdo de documentos PDF.
is_node: true
-lastmod: "2022-12-20"
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
---
## O que é um arquivo PDF?
-O PDF foi criado pela Adobe na década de 1990 para alcançar duas coisas. A primeira é que você deve ser capaz de abrir os documentos em qualquer hardware ou sistema operacional, sem precisar ter o aplicativo usado para criá-los—tudo o que você precisa é de um leitor de PDF, e hoje em dia a maioria dos navegadores web se encaixam nesse requisito. A segunda é que, onde quer que você abra um PDF, o layout do documento deve parecer o mesmo.
+PDF foi criado pela Adobe na década de 1990 para alcançar duas coisas. A primeira é que você deve ser capaz de abrir os documentos em qualquer hardware ou sistema operacional, sem precisar ter o aplicativo usado para criá‑los — tudo o que você precisa é um leitor de PDF, e hoje em dia a maioria dos navegadores web atende a esse requisito. A segunda é que, onde quer que você abra um PDF, o layout do documento deve permanecer o mesmo.
-No entanto, não é suficiente apenas abrir seu documento. Ao trabalhar com PDF, você enfrentará a necessidade de criar tal documento novamente, editá-lo ou convertê-lo para o formato que você precisa.
+O Aspose.PDF for Python via .NET ajuda você a ir além de simplesmente abrir arquivos PDF. Você pode usar a biblioteca para criar PDFs do zero, editar documentos existentes, extrair conteúdo, validar a conformidade com padrões e converter PDFs para outros formatos em aplicações Python.
-## Por que usar o Aspose.PDF para Python via .NET?
+## Por que usar o Aspose.PDF for Python via .NET?
-Usar o Aspose.PDF para Python via .NET em seu projeto oferece os seguintes benefícios:
+Usar Aspose.PDF for Python via .NET em seu projeto oferece os seguintes benefícios:
-- ampla variedade de funções
-- baseado no Aspose.PDF para .NET
-- conveniência e facilidade de uso
+- Uma ampla variedade de recursos de processamento de PDF
+- Acesso ao comprovado mecanismo Aspose.PDF for .NET a partir do Python
+- Uma API prática para tarefas comuns de criação, edição, análise e conversão de documentos
-## Ampla variedade de funções
+## Tarefas comuns de PDF que você pode automatizar
-- Suporta a maioria dos padrões estabelecidos de PDF e especificações de PDF.
-- [Adicionar, pesquisar, extrair e substituir texto em arquivos PDF]().
-- [Adicionar/excluir, extrair e substituir imagens]().
-- [Inserir, excluir, dividir páginas PDF]().
-- [Definir e obter metadados XMP]().
-- [Validar (PDF/A-1a, PDF/A-1b)]().
-- Trabalhar com [marcadores](), [anotações](), [formulários PDF](), [carimbos](), [marcas d'água]() e mais.
+- Suporte a padrões e especificações de PDF amplamente utilizados
+- [Adicionar, pesquisar, extrair e substituir texto em arquivos PDF](/pdf/pt/python-net/working-with-text/)
+- [Adicionar, excluir, extrair e substituir imagens](/pdf/pt/python-net/working-with-images/)
+- [Inserir, excluir, extrair e gerenciar páginas PDF](/pdf/pt/python-net/working-with-pages/)
+- [Definir e salvar metadados XMP](/pdf/pt/python-net/save-metadata-with-xmp/)
+- [Validar documentos PDF para conformidade PDF/A-1a e PDF/A-1b](/pdf/pt/python-net/manipulate-pdf-document/)
+- Trabalhar com [marcadores](/pdf/pt/python-net/bookmarks/), [anotações](/pdf/pt/python-net/annotations/), [formulários PDF](/pdf/pt/python-net/working-with-forms/), [carimbos](/pdf/pt/python-net/stamping/), e [marcas d'água](/pdf/pt/python-net/add-watermarks/)
-## Recursos de Conversão
+## Recursos de conversão de Document
- [Converter PDF para Word, Excel e PowerPoint](/pdf/pt/python-net/convert-pdf-to-word/).
-- [Converter PDF para formatos de Imagens](/pdf/pt/python-net/convert-pdf-to-images-format/).
-- [Converter arquivo PDF para formato HTML e vice-versa](/pdf/pt//python-net/convert-pdf-to-html/).
-- [Converter PDF para EPUB, Texto, XPS, etc](/pdf/pt/python-net/convert-pdf-to-other-files/).
-- Converter EPUB, Markdown, Texto, XPS, PostScript, XML, LaTex para PDF
+- [Converter PDF para formatos de Imagem](/pdf/pt/python-net/convert-pdf-to-images-format/).
+- [Converter arquivos PDF para HTML e converter HTML para PDF](/pdf/pt/python-net/convert-pdf-to-html/).
+- [Converter PDF para EPUB, Text, XPS, etc](/pdf/pt/python-net/convert-pdf-to-other-files/).
+- [Converter EPUB, Markdown, Text, XPS, PostScript, XML, LaTex para PDF](/pdf/pt/python-net/convert-other-files-to-pdf/)
+## Comece com esses tutoriais
-### Saiba mais sobre:
+- ["Hello, World" exemplo Python](/pdf/pt/python-net/hello-world-example/)
+- [Crie um documento PDF complexo](/pdf/pt/python-net/complex-pdf-example/)
-
-- [Exemplo "Hello, World" em Python](/pdf/pt/python-net/hello-world-example/)
-- [PDF Complexo](/pdf/pt/python-net/complex-pdf-example/)
\ No newline at end of file
diff --git a/pt/python-net/get-started/complex-pdf/_index.md b/pt/python-net/get-started/complex-pdf/_index.md
index 9d78ac2a8b..25191064b5 100644
--- a/pt/python-net/get-started/complex-pdf/_index.md
+++ b/pt/python-net/get-started/complex-pdf/_index.md
@@ -4,59 +4,65 @@ linktitle: Criando um PDF complexo
type: docs
weight: 30
url: /pt/python-net/complex-pdf-example/
-description: Aspose.PDF para Python via .NET permite que você crie documentos mais complexos que contêm imagens, fragmentos de texto e tabelas em um único documento.
-lastmod: "2022-12-22"
+description: Aspose.PDF for Python via .NET permite criar documentos mais complexos que contêm imagens, fragmentos de texto e tabelas em um único documento.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Crie um PDF complexo usando Python
+Abstract: Este artigo expande o processo básico de criação de PDF demonstrado no exemplo "Hello, World" ilustrando como criar um documento PDF mais complexo usando Python e Aspose.PDF. O documento de exemplo é desenvolvido para uma empresa fictícia de serviço de balsas de passageiros e inclui uma imagem, dois fragmentos de texto (um cabeçalho e um parágrafo) e uma tabela. O processo envolve várias etapas – instanciar um objeto `Document` para criar um PDF vazio, adicionar uma `Page` e, em seguida, inserir uma `Image` na página. Um `TextFragment` é criado para o cabeçalho usando a fonte Arial com tamanho de 24pt e alinhamento centralizado, que é então adicionado aos parágrafos da página. Um segundo `TextFragment` é adicionado para a descrição, usando a fonte Times New Roman com tamanho de 14pt e alinhamento à esquerda. Em seguida, uma tabela é criada e formatada com larguras de colunas específicas, bordas e preenchimento. A tabela inclui uma linha de cabeçalho com células destacadas e várias linhas de dados geradas por iteração
---
-O exemplo [Hello, World](/pdf/pt/python-net/hello-world-example/) mostrou passos simples para criar um documento PDF usando Python e Aspose.PDF. Neste artigo, vamos dar uma olhada em como criar um documento mais complexo com o Aspose.PDF para Python. Como exemplo, pegaremos um documento de uma empresa fictícia que opera serviços de ferry para passageiros. Nosso documento conterá uma imagem, dois fragmentos de texto (cabeçalho e parágrafo) e uma tabela.
+O [Olá, Mundo](/pdf/pt/python-net/hello-world-example/) exemplo mostrou passos simples para criar um documento PDF usando Python e Aspose.PDF. Neste artigo, vamos analisar a criação de um documento mais complexo com Aspose.PDF for Python. Como exemplo, usaremos um documento de uma empresa fictícia que opera serviços de balsas de passageiros. Nosso documento conterá uma imagem, dois fragmentos de texto (cabeçalho e parágrafo) e uma tabela.
Se criarmos um documento do zero, precisamos seguir certas etapas:
-1. Instanciar um objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Neste passo, criaremos um documento PDF vazio com alguns metadados, mas sem páginas.
-1. Adicionar uma [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) ao objeto do documento. Assim, nosso documento terá uma página.
-1. Adicionar uma [Image](https://reference.aspose.com/pdf/python-net/aspose.pdf/image/) à Página.
-1. Criar um [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para o cabeçalho. Para o cabeçalho, usaremos a fonte Arial com tamanho de fonte 24pt e alinhamento centralizado.
-1. Adicionar o cabeçalho aos [parágrafos](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) da página.
-1. Criar um [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para a descrição. Para a descrição, usaremos a fonte Arial com tamanho de fonte 24pt e alinhamento centralizado.
-1. Adicionar a (descrição) aos Parágrafos da página.
-1. Criar uma tabela, adicionar propriedades à tabela.
-
-1. Adicione (tabela) à página [parágrafos](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
-1. Salve um documento "Complex.pdf".
+1. Instanciar um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto. Nesta etapa, criaremos um documento PDF vazio com alguns metadados, mas sem páginas.
+1. Adicionar um [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) para o objeto Document. Então, agora nosso Document terá uma página.
+1. Adicionar um [Imagem](https://reference.aspose.com/pdf/python-net/aspose.pdf/image/) para o Page.
+1. Criar um [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para cabeçalho. Para o cabeçalho usaremos a fonte Arial com tamanho de fonte 24pt e alinhamento central.
+1. Adicionar cabeçalho à página [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
+1. Criar um [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf/texfragment/) para descrição. Para a descrição usaremos a fonte Arial com tamanho de fonte 24pt e alinhamento central.
+1. Adicionar descrição à página [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
+1. Criar e Estilizar Tabela. Definir largura da coluna, bordas, preenchimento e fonte.
+1. Adicionar tabela à página [paragraphs](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties).
+1. Salvar um documento "Complex.pdf".
```python
+from datetime import timedelta
+import aspose.pdf as ap
+
- import aspose.pdf as ap
+def run_complex(self):
- # Inicializar objeto de documento
+ # Initialize document object
document = ap.Document()
- # Adicionar página
+ # Add page
page = document.pages.add()
- # Adicionar imagem
- page.add_image(image_file, ap.Rectangle(20, 730, 120, 830, True))
+ # Add image
+ imageFileName = self.data_dir + "logo.png"
+ page.add_image(imageFileName, ap.Rectangle(20, 730, 120, 830, True))
- # Adicionar Cabeçalho
- header = ap.text.TextFragment("Novas rotas de ferry no outono de 2020")
+ # Add Header
+ header = ap.text.TextFragment("New ferry routes in Fall 2029")
header.text_state.font = ap.text.FontRepository.find_font("Arial")
header.text_state.font_size = 24
header.horizontal_alignment = ap.HorizontalAlignment.CENTER
header.position = ap.text.Position(130, 720)
page.paragraphs.add(header)
- # Adicionar descrição
- descriptionText = "Os visitantes devem comprar ingressos online e os ingressos são limitados a 5.000 por dia. \
- O serviço de ferry está operando com metade da capacidade e em um horário reduzido. Espere filas."
+ # Add description
+ descriptionText = "Visitors must buy tickets online and tickets are limited to 5,000 per day. \
+ Ferry service is operating at half capacity and on a reduced schedule. Expect lineups."
description = ap.text.TextFragment(descriptionText)
description.text_state.font = ap.text.FontRepository.find_font("Times New Roman")
description.text_state.font_size = 14
description.horizontal_alignment = ap.HorizontalAlignment.LEFT
page.paragraphs.add(description)
- # Adicionar tabela
+ # Add table
table = ap.Table()
table.column_widths = "200"
@@ -67,13 +73,15 @@ Se criarmos um documento do zero, precisamos seguir certas etapas:
table.default_cell_text_state.font = ap.text.FontRepository.find_font("Helvetica")
headerRow = table.rows.add()
- headerRow.cells.add("Sai da Cidade")
- headerRow.cells.add("Sai da Ilha")
+ headerRow.cells.add("Departs City")
+ headerRow.cells.add("Departs Island")
i = 0
while i < headerRow.cells.count:
headerRow.cells[i].background_color = ap.Color.gray
- headerRow.cells[i].default_cell_text_state.foreground_color = ap.Color.white_smoke
+ headerRow.cells[
+ i
+ ].default_cell_text_state.foreground_color = ap.Color.white_smoke
i += 1
time = timedelta(hours=6, minutes=0)
@@ -89,5 +97,5 @@ Se criarmos um documento do zero, precisamos seguir certas etapas:
page.paragraphs.add(table)
- document.save(output_pdf)
-```
\ No newline at end of file
+ document.save(self.data_dir + "Complex.pdf")
+```
diff --git a/pt/python-net/get-started/hello-world-example/_index.md b/pt/python-net/get-started/hello-world-example/_index.md
index de63bab737..5a2ce72df2 100644
--- a/pt/python-net/get-started/hello-world-example/_index.md
+++ b/pt/python-net/get-started/hello-world-example/_index.md
@@ -1,42 +1,59 @@
---
title: Exemplo de Hello World usando Python
-linktitle: Exemplo de Hello World
+linktitle: Exemplo Hello World
type: docs
weight: 20
url: /pt/python-net/hello-world-example/
-description: Este exemplo demonstra como criar um documento PDF simples com o texto Hello World usando Aspose.PDF para Python via .NET.
-lastmod: "2022-12-22"
+description: Esta amostra demonstra como criar um documento PDF simples com o texto Hello World usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-19"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Exemplo Hello World via Python
+Abstract: Este artigo fornece um exemplo Hello World usando a biblioteca Aspose.PDF for Python via .NET para criar um documento PDF. O exemplo demonstra as etapas básicas de uso da API Aspose.PDF gerando um PDF com o texto "Hello World!". O processo envolve instanciar um objeto `Document`, adicionar um `Page`, criar um objeto `TextFragment`, definir propriedades de texto como tamanho da fonte e cor, e usar um `TextBuilder` para adicionar o texto à página. O PDF resultante é então salvo como "HelloWorld_out.pdf". O artigo inclui um trecho completo de código Python ilustrando essas etapas, servindo como um guia introdutório para o uso da biblioteca.
---
-Um exemplo "Hello World" mostra a sintaxe mais simples e o programa mais simples em qualquer linguagem de programação. Os desenvolvedores são introduzidos à sintaxe básica da linguagem de programação aprendendo como imprimir "Hello World" na tela do dispositivo. Portanto, começaremos tradicionalmente nosso conhecimento com nossa biblioteca a partir dele.
+Um exemplo "Hello World" mostra a sintaxe mais simples e o programa mais simples em qualquer linguagem de programação. Os desenvolvedores são introduzidos à sintaxe básica da linguagem de programação ao aprender como imprimir "Hello World" na tela do dispositivo. Portanto, tradicionalmente iniciaremos nosso contato com a biblioteca a partir dele.
Neste artigo, estamos criando um documento PDF contendo o texto "Hello World!". Após instalar **Aspose.PDF for Python via .NET** em seu ambiente, você pode executar o exemplo de código abaixo para ver como a API Aspose.PDF funciona.
O trecho de código abaixo segue estas etapas:
-1. Instanciar um objeto [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/)
-1. Adicionar um [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) ao objeto de documento
-1. Criar um objeto [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/)
-1. Adicionar TextFragment à coleção de [parágrafos](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/#properties) da página
-1. [save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) o documento PDF resultante
+1. Instanciar um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) objeto
+1. Adicionar um [Page](https://reference.aspose.com/pdf/python-net/aspose.pdf/page/) para objeto Document
+1. Criar um [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) objeto
+1. Definir cores do texto
+1. Criar um Text Builder
+1. Adicionar [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment/) para a Página
+1. [document.save()](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/#methods) documento PDF resultante
-O trecho de código a seguir é um programa "Hello World" para demonstrar o funcionamento do Aspose.PDF para Python via API .NET.
+O trecho de código a seguir é um programa "Hello World" que demonstra a funcionalidade do Aspose.PDF for Python via the .NET API.
```python
+from datetime import timedelta
+import aspose.pdf as ap
- import aspose.pdf as ap
- # Inicializar objeto de documento
+def run_simple(self):
+ # Initialize document object
document = ap.Document()
- # Adicionar página
+ # Add page
page = document.pages.add()
- # Inicializar objeto textfragment
- text_fragment = ap.text.TextFragment("Hello,world!")
- # Adicionar fragmento de texto à nova página
- page.paragraphs.add(text_fragment)
- # Salvar PDF atualizado
- document.save("output.pdf")
-```
\ No newline at end of file
+ # Add text to new page
+ textFragment = ap.text.TextFragment("Hello, world!")
+ textFragment.position = ap.text.Position(100, 600)
+
+ textFragment.text_state.font_size = 12
+ textFragment.text_state.font = ap.text.FontRepository.find_font("TimesNewRoman")
+ textFragment.text_state.background_color = ap.Color.blue
+ textFragment.text_state.foreground_color = ap.Color.yellow
+
+ # Create TextBuilder object
+ textBuilder = ap.text.TextBuilder(page)
+
+ # Append the text fragment to the PDF page
+ textBuilder.append_text(textFragment)
+
+ document.save(self.data_dir + "HelloWorld_out.pdf")
+```
diff --git a/pt/python-net/overview/_index.md b/pt/python-net/overview/_index.md
index 2714ab8d04..95b82e8d12 100644
--- a/pt/python-net/overview/_index.md
+++ b/pt/python-net/overview/_index.md
@@ -4,36 +4,38 @@ linktitle: Visão Geral
type: docs
weight: 20
url: /pt/python-net/overview/
-lastmod: "2022-12-20"
-description: Visão geral das principais funcionalidades e formatos suportados do Aspose.PDF para Python via .NET, manual de instalação e licenciamento da biblioteca.
+lastmod: "2026-05-19"
+description: Visão geral dos recursos principais e formatos suportados do Aspose.PDF for Python via .NET, manual de instalação e licenciamento da biblioteca.
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Visão geral dos recursos principais do Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET é uma API abrangente de processamento de PDF projetada para desenvolvedores manipularem documentos PDF sem depender do Microsoft Office ou da automação do Adobe Acrobat. A biblioteca suporta uma ampla gama de funcionalidades, incluindo conformidade com padrões e especificações estabelecidos de PDF, a capacidade de ler e exportar PDFs em vários formatos de imagem como BMP, GIF, JPEG e PNG, e a possibilidade de definir informações básicas do documento, como autor e criador. Também permite a configuração de propriedades de página PDF, como largura, altura, cropbox e bleedbox, além de recursos como numeração de páginas, níveis de marcadores e tamanhos de página. Os usuários podem manipular texto, parágrafos, títulos, hyperlinks, gráficos e anexos dentro de PDFs. Além disso, o Aspose.PDF for Python oferece capacidades de conversão eficientes de formatos como EPUB, Markdown, Text, XPS, PostScript, XML e LaTex para PDF, e vice‑versa, garantindo alto desempenho e qualidade.
---
-_Esta página é uma visão geral das funcionalidades do Aspose.PDF para Python._
+_Esta página é uma visão geral dos recursos do Aspose.PDF for Python._
-**Aspose.PDF para Python via .NET**, API de Processamento de PDF que permite aos desenvolvedores trabalhar com documentos PDF sem precisar do Microsoft Office® ou Adobe Acrobat Automation. Confira as Landing Pages do [Aspose.PDF para Python](https://products.aspose.com/pdf/python-net/) para uma descrição mais detalhada das funcionalidades e possibilidades da biblioteca.
+**Aspose.PDF for Python via .NET**, API de Processamento de PDF que permite aos desenvolvedores trabalhar com documentos PDF sem precisar do Microsoft Office® ou da Automação do Adobe Acrobat. Confira as páginas de destino de [Aspose.PDF for Python](https://products.aspose.com/pdf/python-net/) para uma descrição mais detalhada dos recursos e possibilidades da biblioteca.
-O Aspose.PDF para Python suporta uma ampla variedade de funções, tais como:
+O Aspose.PDF for Python suporta uma ampla variedade de funções, tais como:
-- Suporte à maioria dos padrões PDF estabelecidos e especificações PDF.
-- Capacidade de ler e exportar PDFs em vários formatos de imagem, incluindo BMP, GIF, JPEG e PNG.
-- Definir informações básicas (por exemplo.
- autor, criador) do documento PDF.
-- Configurar propriedades de Página PDF (por exemplo, largura, altura, caixa de corte, caixa de sangria etc.).
-- Definir numeração de páginas, nível de marcadores, tamanhos de páginas etc.
-- Capacidade de trabalhar com texto, parágrafos, cabeçalhos, hiperlinks, gráficos, anexos etc.
+- Suporta a maioria dos padrões e especificações de PDF estabelecidos.
+- Capacidade de ler \u0026 exportar PDFs em vários formatos de imagem, incluindo BMP, GIF, JPEG \u0026 PNG.
+- Defina informações básicas (por exemplo, autor, criador) do documento PDF.
+- Configure as propriedades da página PDF (por exemplo, largura, altura, cropbox, bleedbox etc.).
+- Defina numeração de páginas, nível de marcadores, tamanhos de página etc.
+- Capacidade de trabalhar com texto, parágrafos, cabeçalhos, hyperlinks, gráficos, anexos etc.
-Além disso, o Aspose.PDF para Python via .NET pode ser aplicado para converter facilmente EPUB, Markdown, Texto, XPS, PostScript, XML, LaTex para PDF e converter PDF para vários formatos de documentos com excelente desempenho e boa qualidade.
+Além disso, o Aspose.PDF for Python via .NET pode ser usado para converter facilmente EPUB, Markdown, Texto, XPS, PostScript, XML, LaTex para PDF e converter PDF para vários formatos de documento com excelente desempenho e boa qualidade.
-Experimente nossos [Aplicativos Online Gratuitos](https://products.aspose.app/pdf/applications) demonstrando algumas das funcionalidades mais populares do Aspose.PDF.
+Experimente o nosso [Aplicativos Online](https://products.aspose.app/pdf/applications) que demonstram algumas das funcionalidades mais populares do Aspose.PDF.
Saiba mais sobre:
-- [Formatos de Arquivo Suportados](/pdf/pt/python-net/supported-file-formats/)
-- [Principais Recursos do Aspose.PDF](/pdf/pt/python-net/key-features/)
+- [Formatos de Arquivo Compatíveis](/pdf/pt/python-net/supported-file-formats/)
+- [Principais recursos do Aspose.PDF](/pdf/pt/python-net/key-features/)
- [Requisitos do Sistema](/pdf/pt/python-net/system-requirements/)
- [Instalação](/pdf/pt/python-net/installation/)
- [Licenciamento](/pdf/pt/python-net/licensing/)
-- [Suporte Técnico](/pdf/pt/python-net/technical-support/)
\ No newline at end of file
+- [Suporte Técnico](/pdf/pt/python-net/technical-support/)
diff --git a/pt/python-net/overview/installation/_index.md b/pt/python-net/overview/installation/_index.md
index da2579126e..1312c0835f 100644
--- a/pt/python-net/overview/installation/_index.md
+++ b/pt/python-net/overview/installation/_index.md
@@ -4,43 +4,48 @@ linktitle: Instalação
type: docs
weight: 40
url: /pt/python-net/installation/
-description: Esta seção mostra a descrição do produto e instruções para instalar o Aspose.PDF para Python.
-lastmod: "2022-12-21"
+description: Encontre instruções passo a passo para instalar Aspose.PDF para Python e .NET para começar a trabalhar com documentos PDF.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Instalando Aspose.PDF para Python
+Abstract: Aspose.PDF for Python via .NET é uma biblioteca abrangente projetada para integrar recursos de processamento de PDF em aplicações Python, compatível com sistemas de 32 bits e 64 bits. Esta biblioteca suporta uma ampla variedade de tarefas de processamento de documentos, incluindo manipulação de texto e páginas, processamento de formulários, tratamento de metadados e gerenciamento de anotações, marcadores, marcas d'água e fontes personalizadas. É adequada para uso em diversos sistemas operacionais onde o Python 3.5 ou superior está instalado. A biblioteca pode ser avaliada baixando uma versão de avaliação, que transita para um estado licenciado com as adições de código apropriadas. A versão de avaliação mantém todas as funcionalidades, mas inclui uma marca d'água de avaliação e restringe as interações com elementos de coleção a quatro. Os usuários podem solicitar uma licença temporária de 30 dias para contornar essas limitações. Aspose.PDF for Python via .NET pode ser instalado via pip, garantindo acesso fácil às versões mais recentes.
---
{{% alert color="primary" %}}
-**Aspose.PDF para Python via .NET** é uma biblioteca que permite aos desenvolvedores adicionar capacidades de processamento de PDF às suas aplicações. A API pode ser usada para construir aplicações de 32 bits e 64 bits para gerar, ler, converter e manipular arquivos PDF sem usar o Adobe Acrobat.
+**Aspose.PDF for Python via .NET** é uma biblioteca que permite aos desenvolvedores adicionar recursos de processamento de PDF às suas aplicações. A API pode ser usada para criar aplicações de 32 bits e 64 bits para gerar, ler, converter e manipular arquivos PDF sem usar o Adobe Acrobat.
{{% /alert %}}
## Descrição do Produto
-**Aspose.PDF para Python** permite realizar uma gama de tarefas de processamento de documentos, como processamento de formulários, obter e definir informações de metadados, manipulação de texto e páginas, gerenciamento de anotações, adicionar ou remover marcadores e marcas d'água, anexos, manipulação de fontes personalizadas e muito mais.
+**Aspose.PDF for Python** permite executar uma variedade de tarefas de processamento de documentos, como processamento de formulários, obter e definir informações de metadados, manipulação de texto e página, gerenciamento de anotações, adicionar ou remover marcadores e marcas d'água, anexos, manipulação de fontes personalizadas e muito mais.
-**Aspose.PDF para Python** pode ser usado para desenvolver aplicações Python de 32 bits e 64 bits para diferentes sistemas operacionais (como Windows e Linux) onde Python 3.5 ou posterior está instalado.
+**Aspose.PDF for Python** pode ser usado para desenvolver aplicações Python de 32 bits e 64 bits para diferentes sistemas operacionais (como Windows e Linux) onde Python 3.5 ou superior está instalado.
-# Instalação
+## Instalação
-## Avaliar Aspose.PDF para Python via .NET
+## Avalie Aspose.PDF for Python via .NET
-Você pode facilmente baixar o Aspose.PDF para Python para avaliação. O download de avaliação é o mesmo que o download adquirido. A versão de avaliação simplesmente se torna licenciada quando você adiciona algumas linhas de código para aplicar a licença.
+Você pode baixar facilmente o Aspose.PDF for Python para avaliação. O download de avaliação é o mesmo que o download comprado. A versão de avaliação simplesmente se torna licenciada quando você adiciona algumas linhas de código para aplicar a licença.
-Você pode baixar [Aspose.PDF para Python](https://releases.aspose.com/pdf/pythonnet/) para avaliação. O download de avaliação é o mesmo que o download adquirido. A versão de avaliação se torna licenciada quando você adiciona algumas linhas de código para [aplicar a licença](/pdf/pt/python-net/licensing/).
-
-A versão de avaliação do Aspose.PDF (sem uma licença especificada) fornece funcionalidade completa do produto, mas possui duas limitações: insere uma marca d'água de avaliação e apenas quatro elementos de qualquer coleção podem ser visualizados/editados.
+Você pode baixar [Aspose.PDF for Python](https://releases.aspose.com/pdf/pythonnet/) para avaliação. O download de avaliação é o mesmo que o download comprado. A versão de avaliação se torna licenciada quando você adiciona algumas linhas de código para [aplicar a licença](/pdf/pt/python-net/licensing/).
+A versão de avaliação do Aspose.PDF (sem uma licença especificada) fornece funcionalidade total do produto, mas tem duas limitações: insere uma marca d'água de avaliação e apenas quatro elementos de qualquer coleção podem ser visualizados/editar.
{{% alert color="primary" %}}
-Se você deseja testar o Aspose.PDF para Python sem as limitações da versão de avaliação, você também pode solicitar uma Licença Temporária de 30 dias. Por favor, consulte [Como obter uma Licença Temporária?](https://purchase.aspose.com/temporary-license)
+Se você quiser testar o Aspose.PDF for Python sem as limitações da versão de avaliação, também pode solicitar uma Licença Temporária de 30 dias. Consulte [Como obter uma Licença Temporária?](https://purchase.aspose.com/temporary-license)
{{% /alert %}}
-## Instalando Aspose.PDF para Python via .NET
+## Instalando o Aspose.PDF for Python via .NET
+
+Você pode usar facilmente o aspose-pdf para Python a partir do link para download direto [pip](https://pypi.org/project/aspose-pdf/).
+Execute 'pip install aspose-pdf' para obter o pacote. Se você já tem o Aspose.PDF for Python e deseja obter a versão mais recente, execute 'pip install --upgrade aspose-pdf'.
+
+
-Você pode facilmente usar o aspose-pdf para Python a partir do link para download direto [pip](https://pypi.org/project/aspose-pdf/).
-Execute 'pip install aspose-pdf' para buscar o pacote. Se você já tem o Aspose.PDF para Python e deseja obter a versão mais recente, por favor, execute 'pip install --upgrade aspose-pdf'.
\ No newline at end of file
diff --git a/pt/python-net/overview/key-features/_index.md b/pt/python-net/overview/key-features/_index.md
index e2c5a39c7b..f8039524cc 100644
--- a/pt/python-net/overview/key-features/_index.md
+++ b/pt/python-net/overview/key-features/_index.md
@@ -1,45 +1,63 @@
---
-title: Características Principais do Aspose.PDF para Python
-linktitle: Características Principais
+title: Principais Recursos do Aspose.PDF for Python
+linktitle: Principais Recursos
type: docs
weight: 20
url: /pt/python-net/key-features/
-description: Aspose.PDF para Python via .NET demonstra suas características gerais. Mostra as versões de PDF suportadas e todas as manipulações que podemos fazer com PDF.
-lastmod: "2022-12-21"
+description: Aspose.PDF for Python via .NET destaca seus principais recursos, incluindo as versões de PDF suportadas e as opções de manipulação de PDF disponíveis.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recursos Gerais do Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET é uma biblioteca robusta que oferece recursos abrangentes para gerenciar e manipular documentos PDF. Ela suporta padrões de PDF estabelecidos e facilita a leitura e exportação de PDFs para vários formatos de imagem, como BMP, GIF, JPEG e PNG. Os usuários podem configurar propriedades do documento, atributos de página e gerenciar texto, parágrafos, hiperlinks, gráficos e anexos. A biblioteca se destaca nas capacidades de conversão, permitindo a transformação fluida de PDFs em formatos Word, Excel, PowerPoint e HTML, entre outros, além de converter vários formatos de volta para PDF.
---
-## Características Gerais
+## Recursos Gerais
-- Suporta a maioria dos padrões estabelecidos de PDF e especificações de PDF.
-- Capacidade de ler e exportar PDFs em vários formatos de imagem, incluindo BMP, GIF, JPEG e PNG.
-- Definir informações básicas (por exemplo, autor, criador) do documento PDF.
-- Configurar propriedades da Página PDF (por exemplo, largura, altura, cropbox, bleedbox etc.).
-- Definir numeração de páginas, nível de marcadores, tamanhos de página etc.
-- Capacidade de trabalhar com texto, parágrafos, títulos, hyperlinks, gráficos, anexos etc.
+- Suporta a maioria dos padrões e especificações de PDF estabelecidos.
+- Capacidade de ler \u0026 exportar PDFs em vários formatos de imagem, incluindo BMP, GIF, JPEG \u0026 PNG.
+- Defina informações básicas (por exemplo, autor, criador) do documento PDF.
+- Configure as propriedades da página PDF (por exemplo, largura, altura, cropbox, bleedbox etc.).
+- Defina numeração de páginas, nível de marcadores, tamanhos de página etc.
+- Capacidade de trabalhar com texto, parágrafos, cabeçalhos, hyperlinks, gráficos, anexos etc.
-## Características de Conversão
+## Padrões PDF suportados
-A biblioteca Aspose.PDF para Python via .NET permite que você converta com sucesso, rápida e facilmente seus documentos PDF para os formatos mais populares e vice-versa.
+- ISO 32000-1 (PDF 1.2, PDF 1.3, PDF 1.4, PDF 1.5, PDF 1.6, PDF 1.7).
+- ISO 32000-2 (PDF 2.0).
+- ISO 19005 (PDF/A), ISO 15930 (PDF/X), ISO 24517 (PDF/E), ISO 14289 (PDF/UA).
+
+## Recursos de Conversão
+
+A biblioteca Aspose.PDF for Python via .NET permite que você converta seus documentos PDF de forma bem-sucedida, rápida e fácil para os formatos mais populares e vice‑versa.
- Converter PDF para Word, Excel e PowerPoint.
- Converter PDF para formatos de imagem.
-- Converter arquivo PDF para formato HTML e vice-versa.
+- Converter arquivo PDF para formato HTML e vice‑versa.
- Converter PDF para EPUB, Texto, XPS, etc.
- Converter EPUB, Markdown, Texto, XPS, PostScript, XML, LaTex para PDF.
-## Versões de PDF Suportadas
+## Versões de PDF suportadas
-Aspose.PDF para Python suporta as versões PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 e 2.0.
+O Aspose.PDF for Python oferece suporte às versões PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 e 2.0.
## Texto
- Extrair texto das páginas.
- Pesquisar texto nas páginas.
- Substituir texto.
-- Adicionar texto no arquivo PDF.
+- Adicionar texto em arquivo PDF.
+
+## Fontes
+
+- 14 fontes principais.
+- Fontes Type 1.
+- Fontes TrueType.
+- Fontes Type 3.
+- Fontes CJK.
+- Suporte a Unicode.
## Imagens
@@ -56,52 +74,51 @@ Aspose.PDF para Python suporta as versões PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 e 2.
## Página
-- Inserir páginas no PDF.
-- Excluir páginas do PDF.
+- Inserir páginas PDF.
+- Excluir páginas de PDF.
- Dividir PDF em páginas individuais.
-- Mover conjunto de páginas de um documento PDF para outro
-- Mover uma página para uma nova localização no documento PDF atual
-- Alterar o tamanho da página do PDF
-- Alterar a orientação da página
+- Mover um conjunto de páginas de um documento PDF para outro
+- Mover uma página para nova localização no documento PDF atual
+- Alterar tamanho da página PDF
+- Alterar orientação da página
- Obter propriedades da página
- Obter número de páginas
- Obter contagem de páginas
- Obter uma página específica
-## Documento
+## Document
- Criar arquivo PDF
-- Abrir documento PDF existente a partir de stream
+- Abrir documento PDF existente a partir do fluxo
- Abrir documento PDF existente
-
-- Definir propriedades predefinidas do diálogo de impressão
- - Adicionar TOC a PDF Existente
-- Adicionar TOC a PDF Existente
-- Personalizar Números de Página ao adicionar TOC
+- Definindo propriedades predefinidas da caixa de diálogo de impressão
+- Adicionar TOC ao PDF existente
+- Adicionar TOC ao PDF existente
+- Personalizar números de página ao adicionar TOC
- Definir data de expiração do PDF
-- Achatar PDF Preenchível
+- Aplanar PDF Preenchível
- Otimizar Documento PDF para a Web
-- Reduzir Tamanho do PDF
-- Reduzir ou Comprimir Todas as Imagens
+- Reduzir Tamanho PDF
+- Reduzir ou Compactar Todas as Imagens
- Remover Objetos Não Utilizados
-- Vincular Streams Duplicados
-- Remover Streams Não Utilizados
+- Vincular Fluxos Duplicados
+- Removendo Streams Não Utilizadas
- Desincorporar Fontes
- Obter propriedades do visualizador de documentos.
- Definir propriedades do visualizador de documentos.
- Validar (PDF/A-1a, PDF/A-1b).
-- Remover Campos de Formulário
-- Determinar e definir metadados de documentos
+- Removendo Campos de Formulário
+- Determine e defina metadados de documentos
## Marcadores
- Adicionar marcadores.
-- Adicionar marcadores filhos.
+- Adicionar marcadores filho.
- Excluir marcadores.
- Obter marcadores.
- Obter marcadores filhos.
- Modificar marcadores.
-- Expandir Marcadores ao visualizar documento.
+- Marcadores expandidos ao visualizar o documento.
## Anotações
@@ -116,1041 +133,16 @@ Aspose.PDF para Python suporta as versões PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 e 2.
- Modificar campos.
- Preencher campos.
- Obter valores dos campos.
+- Suporte para XFA (Formulários baseados em XML) e AcroForms (Formulários padrão).
-## Carimbo e Marca d'água
-
-- Adicionar carimbo de texto.
-- Adicionar carimbo de imagem.
-- Adicionar carimbo de página PDF.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+## Estampar e Marca d'água
+- Adicionar selo de texto.
+- Adicionar selo de imagem.
+- Adicionar selo de página PDF.
+## Abrir documento PDF criptografado
-Open PDF criptografado
- Criptografar PDF.
- Descriptografar PDF.
-- Modificar senha.
\ No newline at end of file
+- Modificar senha.
diff --git a/pt/python-net/overview/licensing/_index.md b/pt/python-net/overview/licensing/_index.md
index 5db2d0c85a..1359a391f6 100644
--- a/pt/python-net/overview/licensing/_index.md
+++ b/pt/python-net/overview/licensing/_index.md
@@ -1,34 +1,36 @@
---
-title: Aspose PDF License
-linktitle: Licensing and limitations
+title: Licença Aspose PDF
+linktitle: Licenciamento e limitações
type: docs
weight: 50
url: /pt/python-net/licensing/
-description: Aspose. PDF para Python convida seus clientes a obter uma licença Clássica. Assim como usar uma licença limitada para explorar melhor o produto.
-lastmod: "2022-12-21"
+description: Aspose.PDF for Python convida seus clientes a obter uma licença Classic. Também pode usar uma licença limitada para explorar melhor o produto.
+lastmod: "2026-05-19"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Licenciamento do Aspose.PDF for Python
+Abstract: O artigo discute as limitações e opções de licenciamento para Aspose.PDF for Python. Destaca que a versão de avaliação permite testar todas as funcionalidades, mas adiciona uma marca d'água aos PDFs gerados, indicando "Evaluation Only" juntamente com informações de direitos autorais. Para usuários que desejam testar sem essas limitações, uma Licença Temporária de 30 dias está disponível. O artigo também explica como implementar uma licença Classic carregando-a a partir de um arquivo ou stream, recomendando colocar o arquivo de licença no mesmo diretório do arquivo Aspose.PDF.dll e definir a licença usando a classe `Aspose.Pdf.License`. Trechos de código são fornecidos para ilustrar o processo de licenciamento.
---
## Limitação de uma versão de avaliação
-Queremos que nossos clientes testem nossos componentes minuciosamente antes de comprar, então a versão de avaliação permite que você a use normalmente.
+Queremos que nossos clientes testem nossos componentes de forma completa antes de comprar, então a versão de avaliação permite que você a use como normalmente faria.
-- **PDF criado com uma marca d'água de avaliação.** A versão de avaliação do Aspose.PDF para Python fornece funcionalidade completa do produto, mas todas as páginas dos documentos PDF gerados são marcadas com a marca d'água "Somente Avaliação. Criado com Aspose.PDF. Copyright 2002-2020 Aspose Pty Ltd" no topo.
+- **PDF criado com marca d'água de avaliação.** A versão de avaliação do Aspose.PDF for Python oferece funcionalidade completa do produto, mas todas as páginas nos documentos PDF gerados recebem a marca d'água "Evaluation Only. Created with Aspose.PDF. Copyright 2002-2020 Aspose Pty Ltd" no topo.
->Se você deseja testar o Aspose.PDF sem as limitações da versão de avaliação, você também pode solicitar uma Licença Temporária de 30 dias.
- Por favor, consulte [Como obter uma Licença Temporária?](https://purchase.aspose.com/temporary-license)
+Se você quiser testar o Aspose.PDF sem as limitações da versão de avaliação, também pode solicitar uma Licença Temporária de 30 dias. Por favor, consulte [Como obter uma Licença Temporária?](https://purchase.aspose.com/temporary-license)
## Licença clássica
-A licença pode ser carregada a partir de um arquivo ou objeto de fluxo. A maneira mais fácil de definir uma licença é colocar o arquivo de licença na mesma pasta que o arquivo Aspose.PDF.dll e especificar o nome do arquivo sem um caminho, como mostrado no exemplo abaixo.
+A licença pode ser carregada a partir de um arquivo ou objeto de fluxo. A maneira mais fácil de definir uma licença é colocar o arquivo de licença na mesma pasta que o arquivo Aspose.PDF.dll e especificar o nome do arquivo sem caminho, como mostrado no exemplo abaixo.
-Se você usar qualquer outro componente Aspose para Python junto com o Aspose.PDF para Python, especifique o namespace para License como [classe Aspose.Pdf.License]().
+Se você usar qualquer outro componente Aspose para Python juntamente com o Aspose.PDF for Python, por favor, especifique o namespace para License assim [classe Aspose.Pdf.License]().
```python
license_file = LICENSE_FILE
license = ap.License()
license.set_license(license_file)
-```
\ No newline at end of file
+```
diff --git a/pt/python-net/overview/supported-file-formats/_index.md b/pt/python-net/overview/supported-file-formats/_index.md
index c2c5d9d079..16891b8ae4 100644
--- a/pt/python-net/overview/supported-file-formats/_index.md
+++ b/pt/python-net/overview/supported-file-formats/_index.md
@@ -1,46 +1,51 @@
---
-title: Supported File Formats
-linktitle: Supported File Formats
+title: Formatos de Arquivo Compatíveis
+linktitle: Formatos de Arquivo Compatíveis
type: docs
weight: 10
url: /pt/python-net/supported-file-formats/
-description: Esta página mostra quais formatos de arquivo o Aspose.PDF para Python via .NET pode carregar e salvar.
-lastmod: "2022-12-22"
+description: Esta página mostra quais formatos de arquivo o Aspose.PDF for Python via .NET pode carregar e salvar.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Carregar e Salvar formatos de arquivo com Aspose.PDF for Python
+Abstract: Este artigo fornece uma tabela abrangente detalhando os formatos de arquivo que o Aspose.PDF for Python pode manipular. Ele descreve as capacidades da biblioteca para carregar e salvar vários tipos de documento, oferecendo insights sobre sua versatilidade ao gerenciar diferentes formatos de arquivo. Os formatos cobertos incluem tipos bem conhecidos como PDF, EPUB, HTML e XML, todos os quais podem ser tanto carregados quanto salvos pela biblioteca. Também suporta formatos de imagem como JPEG, PNG e TIFF para ambas as operações. No entanto, alguns formatos como CGM, MHT, PCL, PS, XSLFO e MD estão disponíveis apenas para carregamento, enquanto outros como XLS, XLSX, PPTX, DOC, DOCX e MobiXML estão disponíveis exclusivamente para salvamento. Esta tabela serve como um guia prático para usuários que desejam entender a compatibilidade de formatos do Aspose.PDF for Python, destacando tanto seus pontos fortes quanto suas limitações no suporte a formatos de documento e imagem.
---
A tabela a seguir indica os formatos de arquivo que o Aspose.PDF Python pode carregar e salvar.
|**Formato**|**Descrição**|**Carregar**|**Salvar**|**Observações**|
| :- | :- | :- | :- | :- |
-|[PDF](https://docs.fileformat.com/pdf/)|Formato de Documento Portátil|{{< emoticons/tick >}}|{{< emoticons/tick >}} | |
+|[PDF](https://docs.fileformat.com/pdf/)|Formato Portátil de Documento|{{< emoticons/tick >}}|{{< emoticons/tick >}} | |
|[CGM](https://docs.fileformat.com/page-description-language/cgm/)|Metarquivo de Gráficos de Computador para gráficos vetoriais 2D|{{< emoticons/tick >}}| | |
-|[EPUB](https://docs.fileformat.com/ebook/epub/)|Formato de arquivo de ebook|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[EPUB](https://docs.fileformat.com/ebook/epub/)|Formato de arquivo Ebook|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[HTML](https://docs.fileformat.com/web/html/)|Formato HTML|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-
-|[TeX](https://docs.fileformat.com/page-description-language/tex/)|Formato de arquivo de composição tipográfica LaTex|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[TeX](https://docs.fileformat.com/page-description-language/tex/)|Formato de arquivo de tipografia LaTex|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[MHT](https://docs.fileformat.com/web/mhtml/)|Documento MHTML|{{< emoticons/tick >}}| | |
-|[PCL](https://docs.fileformat.com/page-description-language/pcl/)|Arquivos de Linguagem de Controle de Impressora|{{< emoticons/tick >}}| | |
+|[PCL](https://docs.fileformat.com/page-description-language/pcl/)|Arquivos de Linguagem de Controle da Impressora|{{< emoticons/tick >}}| | |
|[PS](https://docs.fileformat.com/page-description-language/ps/)|Arquivos Postscript|{{< emoticons/tick >}}| | |
-|[SVG](https://docs.fileformat.com/page-description-language/svg/)|Gráficos Vetoriais Escaláveis (um formato de imagem vetorial baseado em XML)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[SVG](https://docs.fileformat.com/page-description-language/svg/)|Gráficos Vetoriais Escaláveis (Um formato de imagem vetorial baseado em XML)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[XML](https://docs.fileformat.com/web/xml/)|Formato XML|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[XPS](https://docs.fileformat.com/page-description-language/xps/)|Documentos XPS|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[XSLFO](https://docs.fileformat.com/page-description-language/xslfo/)|XSL-FO faz parte do arquivo XSL que é usado para a transformação e formatação de dados XML|{{< emoticons/tick >}}| | |
-
+|[XSLFO](https://docs.fileformat.com/page-description-language/xslfo/)|XSL-FO é parte do arquivo XSL que é usado para a transformação e formatação de dados XML|{{< emoticons/tick >}}| | |
|[MD](https://docs.fileformat.com/word-processing/md/)|Formato Markdown|{{< emoticons/tick >}}| | |
-|[XLS](https://docs.fileformat.com/spreadsheet/xls/)|Salva o documento no formato Microsoft Excel SpreadSheet| |{{< emoticons/tick >}}| |
+|[XLS](https://docs.fileformat.com/spreadsheet/xls/)|Salva o documento na planilha do Microsoft Excel| |{{< emoticons/tick >}}| |
|[XLSX](https://docs.fileformat.com/spreadsheet/xlsx/)|Salva o documento no formato Microsoft Excel 2007| |{{< emoticons/tick >}}| |
|[PPTX](https://docs.fileformat.com/presentation/pptx/)|Salva o documento no formato Microsoft PowerPoint Presentations| |{{< emoticons/tick >}}| |
+|[XLSM](https://docs.fileformat.com/spreadsheet/xlsm/)|Salva o documento no formato XLSM, que é um tipo de arquivo de Planilha que suporta Macros.||{{< emoticons/tick >}} | |
|[DOC](https://docs.fileformat.com/word-processing/doc/)|Salva o documento no formato Microsoft Word| |{{< emoticons/tick >}}| |
|[DOCX](https://docs.fileformat.com/word-processing/docx/)|Salva o documento no formato Microsoft Word| |{{< emoticons/tick >}}| |
+|[OFD](https://en.wikipedia.org/wiki/OFD)|O formato OFD refere-se a “Open Fixed-layout Document”, estabelecido como padrão nacional da China para armazenamento eletrônico de arquivos, usado como alternativa ao popular formato PDF.|{{< emoticons/tick >}}| | |
+|[DJVU](https://docs.fileformat.com/image/djvu/)|DjVu é um formato de arquivo gráfico destinado a documentos digitalizados e livros, desenvolvido pelos Laboratórios AT&T.|{{< emoticons/tick >}}| | |
+|[CDR](https://docs.fileformat.com/image/cdr/)|Um arquivo CDR é um arquivo de imagem de desenho vetorial que é criado nativamente com o CorelDRAW|{{< emoticons/tick >}}| | |
|[MobiXML](https://docs.fileformat.com/ebook/mobi/)|Salva o documento no formato padrão eBook MobiXML| |{{< emoticons/tick >}}| |
|[JPEG](https://docs.fileformat.com/image/jpeg/)|Salva o documento no formato JPEG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-
-|[EMF](https://docs.fileformat.com/image/emf/)|Formato de metarquivo aprimorado (EMF)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[EMF](https://docs.fileformat.com/image/emf/)|Formato de metafile aprimorado (EMF)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[PNG](https://docs.fileformat.com/image/png/)|Salva o documento no formato PNG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[BMP](https://docs.fileformat.com/image/bmp/)|Salva o documento no formato BMP|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[GIF](https://docs.fileformat.com/image/gif/)|Formato de Intercâmbio Gráfico| |{{< emoticons/tick >}}| |
|[TIFF](https://docs.fileformat.com/image/tiff/)|Salva o documento como imagem TIFF de página única ou multipágina|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[Text](https://docs.fileformat.com/word-processing/txt/)|Salva o documento no formato de texto|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
\ No newline at end of file
+|[Texto](https://docs.fileformat.com/word-processing/txt/)|Salvar o documento em formato de texto|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+
diff --git a/pt/python-net/overview/system-requirements/_index.md b/pt/python-net/overview/system-requirements/_index.md
index 56a5e3604b..ff7d747bea 100644
--- a/pt/python-net/overview/system-requirements/_index.md
+++ b/pt/python-net/overview/system-requirements/_index.md
@@ -4,18 +4,21 @@ linktitle: Requisitos do Sistema
type: docs
weight: 30
url: /pt/python-net/system-requirements/
-description: Esta seção lista os sistemas operacionais suportados que um desenvolvedor precisa para trabalhar com sucesso com Aspose.PDF para Python.
-lastmod: "2022-12-22"
+description: Esta seção lista os sistemas operacionais suportados que um desenvolvedor precisa para trabalhar com sucesso com o Aspose.PDF for Python.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Sistemas Operacionais Suportados do Aspose.PDF for Python via .NET
+Abstract: Aspose.PDF for Python via .NET é uma API de processamento de PDF projetada para desenvolvedores gerenciarem documentos PDF sem a necessidade do Microsoft Office ou da automação do Adobe Acrobat. Ela suporta o desenvolvimento de aplicações Python de 32 bits e 64 bits em vários sistemas operacionais, incluindo Windows e Linux, onde o Python 3.5 ou superior está instalado. A API é compatível com várias versões do Windows, desde Windows XP até Windows 11, e principais distribuições Linux como Ubuntu, OpenSUSE e CentOS. Para sistemas Linux, os requisitos específicos incluem bibliotecas de tempo de execução GCC-6, dependências do .NET Core Runtime (sem necessidade do runtime em si) e a compilação pymalloc do Python para as versões 3.5-3.7. Além disso, é necessária uma biblioteca libpython compartilhada, que pode exigir ajustes de configuração para o reconhecimento correto do caminho da biblioteca.
---
## Visão Geral
-Aspose.PDF para Python via .NET, API de Processamento de PDF que permite aos desenvolvedores trabalhar com documentos PDF sem precisar do Microsoft Office® ou Adobe Acrobat Automation. Aspose.PDF para Python pode ser usado para desenvolver aplicativos Python de 32 bits e 64 bits para diferentes sistemas operacionais (como Windows e Linux) onde o Python 3.5 ou posterior está instalado.
+Aspose.PDF for Python via .NET, API de Processamento de PDF que permite aos desenvolvedores trabalhar com documentos PDF sem precisar do Microsoft Office® ou da Automação do Adobe Acrobat. Aspose.PDF for Python pode ser usado para desenvolver aplicativos Python de 32 bits e 64 bits para diferentes sistemas operacionais (como Windows e Linux) onde o Python 3.5 ou posterior está instalado.
-## Sistema Operacional Suportado
+## Sistemas Operacionais Compatíveis
### Windows
@@ -39,13 +42,14 @@ Aspose.PDF para Python via .NET, API de Processamento de PDF que permite aos des
- CentOS
- e outros
-## Requisitos do Sistema para o Linux Alvo
+## Requisitos de Sistema para Linux de Destino
- Bibliotecas de tempo de execução GCC-6 (ou posterior).
- Dependências do .NET Core Runtime. A instalação do .NET Core Runtime em si NÃO é necessária.
-- Para Python 3.5-3.7: É necessária a compilação pymalloc do Python. A opção de compilação do Python --with-pymalloc é habilitada por padrão. Normalmente, a compilação pymalloc do Python é marcada com o sufixo m no nome do arquivo.
+- Para Python 3.5-3.7: A compilação pymalloc do Python é necessária. A opção de compilação --with-pymalloc do Python está habilitada por padrão. Normalmente, a compilação pymalloc do Python é marcada com o sufixo m no nome do arquivo.
+
+- Biblioteca Python compartilhada libpython. A opção de compilação --enable-shared do Python está desabilitada por padrão, algumas distribuições Python não contêm a biblioteca compartilhada libpython. Em algumas plataformas Linux, a biblioteca compartilhada libpython pode ser instalada usando o gerenciador de pacotes, por exemplo: sudo apt-get install libpython3.7. O problema comum é que a biblioteca libpython é instalada em um local diferente da localização padrão do sistema para bibliotecas compartilhadas. O problema pode ser resolvido usando as opções de compilação do Python para definir caminhos alternativos de biblioteca ao compilar o Python, ou resolvido criando um link simbólico para o arquivo da biblioteca libpython no local padrão do sistema para bibliotecas compartilhadas. Normalmente, o nome do arquivo da biblioteca compartilhada libpython é libpythonX.Ym.so.1.0 para Python 3.5-3.7, ou libpythonX.Y.so.1.0 para Python 3.8 ou posterior (por exemplo: libpython3.7m.so.1.0, libpython3.9.so.1.0).
+
-- Biblioteca compartilhada libpython do Python.
- A opção de compilação --enable-shared do Python está desabilitada por padrão, algumas distribuições do Python não contêm a biblioteca compartilhada libpython. Para algumas plataformas Linux, a biblioteca compartilhada libpython pode ser instalada usando o gerenciador de pacotes, por exemplo: sudo apt-get install libpython3.7. O problema comum é que a biblioteca libpython é instalada em um local diferente do local padrão do sistema para bibliotecas compartilhadas. O problema pode ser resolvido usando as opções de compilação do Python para definir caminhos alternativos de bibliotecas ao compilar o Python, ou resolvido criando um link simbólico para o arquivo da biblioteca libpython no local padrão do sistema para bibliotecas compartilhadas. Tipicamente, o nome do arquivo da biblioteca compartilhada libpython é libpythonX.Ym.so.1.0 para Python 3.5-3.7, ou libpythonX.Y.so.1.0 para Python 3.8 ou posterior (por exemplo: libpython3.7m.so.1.0, libpython3.9.so.1.0).
\ No newline at end of file
diff --git a/pt/python-net/overview/technical-support/_index.md b/pt/python-net/overview/technical-support/_index.md
index 6391f6a5a6..cd4d257812 100644
--- a/pt/python-net/overview/technical-support/_index.md
+++ b/pt/python-net/overview/technical-support/_index.md
@@ -1,30 +1,35 @@
---
-title: Aspose.PDF para Suporte Python
+title: Suporte Aspose.PDF for Python
linktitle: Suporte Técnico
type: docs
weight: 60
url: /pt/python-net/technical-support/
-description: Esta página oferece recomendações para resolver suas tarefas de forma rápida e com qualidade usando Aspose.PDF para Python.
-lastmod: "2021-06-05"
+description: Esta página fornece recomendações para rapidez e qualidade ao resolver suas tarefas usando Aspose.PDF for Python.
+lastmod: "2026-05-19"
sitemap:
- changefreq: "weekly"
+ changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Suporte Técnico do Aspose.PDF for Python
+Abstract: O Aspose.PDF fornece suporte técnico gratuito por meio de seus diversos canais, sendo a fonte principal os Aspose.Forums, particularmente a seção de fórum do Aspose.PDF, onde os usuários podem postar dúvidas e receber respostas rápidas. É importante observar que a Aspose não oferece suporte técnico por telefone, e as chamadas telefônicas são limitadas a consultas de vendas e compras. Devido a possíveis diferenças de fusos horários, os tempos de resposta podem variar. Para garantir uma resolução eficaz de problemas, recomenda‑se que os usuários verifiquem primeiro se estão usando a versão mais recente do Aspose.PDF consultando os [Aspose.PDF for Python Downloads](https://pypi.org/project/aspose-pdf/). Além disso, os usuários devem revisar discussões existentes nos fóruns, a documentação e as referências de API para ver se o problema já foi abordado. Ao postar uma pergunta, recomenda‑se incluir o documento original e quaisquer trechos de código problemáticos, que podem ser compactados em um zip para conveniência. Todos os arquivos enviados são acessíveis somente ao usuário e aos desenvolvedores da Aspose, garantindo privacidade e segurança.
---
-Aspose.PDF permite que você use suporte técnico gratuito para todos os seus produtos. Se você tiver perguntas sobre Aspose.PDF, confira o próximo artigo:
+O Aspose.PDF permite que você utilize suporte técnico gratuito para todos os seus produtos. Se você tiver dúvidas sobre o Aspose.PDF, consulte o artigo a seguir:
-- A fonte de suporte mais popular é o [Aspose.Forums](https://forum.aspose.com/). Na seção [fórum Aspose.PDF](https://forum.aspose.com/c/pdf/10), você pode fazer sua pergunta e obter uma resposta o mais rápido possível.
+- A fonte de suporte mais popular é [Aspose.Forums](https://forum.aspose.com/). Na [fórum Aspose.PDF](https://forum.aspose.com/c/pdf/10) seção, você pode fazer sua pergunta e obter uma resposta o mais rápido possível.
-- Você deve saber que a Aspose não fornece suporte técnico por telefone. A chamada só está disponível para questões de vendas e compras.
+- Você deve saber que a Aspose não fornece suporte técnico por telefone. Você pode ligar, mas está disponível somente para questões de vendas e compras.
- Por favor, lembre-se de que temos diferenças de fuso horário, isso pode afetar a velocidade das respostas para você.
-Se você precisar de ajuda com um problema com o Aspose.PDF, siga as próximas recomendações para garantir que ele seja resolvido da maneira mais eficiente:
+Se precisar de ajuda com um problema no Aspose.PDF, siga as próximas recomendações para garantir que ele seja resolvido da maneira mais eficiente:
-- Primeiramente, verifique se você está usando a versão mais recente do Aspose.PDF antes de relatar o problema, veja [Aspose.PDF para Python Downloads](https://pypi.org/project/aspose-pdf/) para descobrir a versão mais recente.
+- Primeiro, verifique se você está usando a versão mais recente do Aspose.PDF antes de relatar o problema, veja [Downloads do Aspose.PDF para Python](https://pypi.org/project/aspose-pdf/) para descobrir a versão mais recente.
-- Talvez a solução para o seu problema já tenha sido discutida e tenha uma solução, para isso, estude o fórum e a documentação, verifique a Referência da API antes de relatar o problema.
+- Talvez a solução para o seu problema já tenha sido discutida e tenha uma solução; para isso, estude o fórum e a documentação, verifique a Referência da API antes de relatar o problema.
+
+- Ao formular sua pergunta, inclua o documento original e, se possível, um fragmento do seu código que causa o problema. Você pode compactar esses arquivos em um único documento se houver vários.
+
+- Não se preocupe, somente você e os desenvolvedores da Aspose têm acesso aos arquivos temporários.
-- Quando você formular sua pergunta, por favor inclua o documento original e possivelmente um fragmento do seu código que causa o problema. Você pode compactar esses arquivos em um documento se houver vários.
-- Não se preocupe, apenas você e os desenvolvedores do Aspose têm acesso aos arquivos confidenciais.
\ No newline at end of file
diff --git a/pt/python-net/parsing/_index.md b/pt/python-net/parsing/_index.md
index 39891aeeca..4c8dbbcc55 100644
--- a/pt/python-net/parsing/_index.md
+++ b/pt/python-net/parsing/_index.md
@@ -11,4 +11,11 @@ sitemap:
priority: 0.7
---
-**Analisar documentos PDF** é um termo relacionado à extração de vários tipos de informações de um arquivo PDF. Esta seção cobre como:
\ No newline at end of file
+**Analisar documentos PDF** é um termo relacionado à extração de vários tipos de informações de um arquivo PDF. Esta seção cobre como:
+
+- [Extract Text from PDF](/pdf/python-net/extract-text-from-pdf/). Text Parsing or Extraction is the most popular operation with ready-made PDFs. You will learn about text parsing from a whole document, a particular page, or a particular region in a page.
+- [Extract Images from PDF](/pdf/python-net/extract-images-from-the-pdf-file/). Image Extraction does the same for images as the operation above for text.
+- [Extract Fonts from PDF](/pdf/python-net/extract-fonts-from-pdf/). Font Extraction is a specific operation with fonts in PDFs.
+- [Extract Data from the Form](/pdf/python-net/extract-data-from-acroform/). If you have a bunch of PDF documents with Forms, probably you need to get the data from those forms. This article will help to understand how to extract AcroForms data with Aspose.PDF for Python via .NET.
+- [Extract Data from Table](/pdf/python-net/extract-data-from-table-in-pdf/). Get data from table in PDF document.
+- [Extract Vector Data from PDF](/pdf/python-net/extract-vector-data-from-pdf/). You can get the vector data (path, polygon, polyline), such as position, color, linewidth, etc.
\ No newline at end of file
diff --git a/pt/python-net/parsing/extract-data-from-acroform/_index.md b/pt/python-net/parsing/extract-data-from-acroform/_index.md
new file mode 100644
index 0000000000..d78f17e7ed
--- /dev/null
+++ b/pt/python-net/parsing/extract-data-from-acroform/_index.md
@@ -0,0 +1,197 @@
+---
+title: Extrair Dados do AcroForm usando Python
+linktitle: Extrair Dados do AcroForm
+type: docs
+weight: 50
+url: /pt/python-net/extract-data-from-acroform/
+description: Aspose.PDF torna fácil extrair dados de campos de formulário de arquivos PDF. Aprenda como extrair dados de AcroForms e salvá-los em formato JSON, XML ou FDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como extrair dados de AcroForm via Python
+Abstract: O artigo fornece um guia abrangente sobre como usar Aspose.PDF for Python para gerenciar campos de formulário em documentos PDF. Ele detalha vários métodos para extrair, manipular e exportar dados de formulário de PDFs. O artigo começa demonstrando como extrair os valores dos campos de formulário e armazená‑los em um dicionário, exportando posteriormente os dados no formato JSON. Ainda demonstra a exportação direta dos dados de formulário para arquivos JSON, aprimorando as capacidades de serialização de dados. Além disso, o artigo aborda a exportação de dados de formulário para outros formatos, como XML, FDF (Forms Data Format) e XFDF, que são úteis para intercâmbio de dados e armazenamento estruturado. Cada seção inclui trechos de código Python para ajudar na compreensão e implementação. No geral, o artigo serve como um recurso prático para desenvolvedores que desejam integrar o manuseio de formulários PDF em suas aplicações Python.
+---
+
+## Extrair campos de formulário do documento PDF
+
+[Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) de `aspose.pdf.facades` namespace fornece uma maneira direta de ler os dados de campo AcroForm sem abrir o modelo completo de objeto de documento. Itere sobre `form.field_names` para obter cada nome de campo presente no formulário, então chame `form.get_field(name)` para recuperar seu valor atual.
+
+1. Construir um `Form` objeto passando o caminho do arquivo de entrada.
+1. Iterar sobre `form.field_names` para enumerar todos os nomes de campo.
+1. Chamar `form.get_field(name)` para cada nome e armazene o resultado em um dicionário.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+ import json
+ from aspose.pycore import cast, is_assignable
+
+ path_infile = self.dataDir + infile
+ form = apdf.facades.Form(path_infile)
+
+ form_values = {}
+ # Get values from all fields
+ for formField in form.field_names:
+ # Analyze names and values if needed
+ form_values[formField] = form.get_field(formField)
+
+ print(form_values)
+```
+
+## Recuperar o valor do campo de formulário por título
+
+Quando você conhece o nome exato do campo (title) definido no formulário PDF, pode recuperar seu valor diretamente com `form.get_field(name)` sem iterar sobre toda a coleção de campos. Esta é a abordagem mais rápida quando apenas campos específicos são necessários.
+
+1. Construir um [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) objeto com o caminho do arquivo de entrada.
+1. Chamar `form.get_field("FieldName")` usando o título exato do campo como aparece no PDF.
+1. Use o valor de string retornado conforme necessário em sua aplicação.
+
+```python
+
+ import aspose.pdf as apdf
+
+ form = apdf.facades.Form(path_infile)
+
+ # Retrieve a single field value by its name
+ value = form.get_field("FirstName")
+ print(value)
+```
+
+## Extrair campos de formulário de documento PDF para JSON
+
+Existem duas maneiras de exportar dados AcroForm para JSON. A primeira usa o recurso interno `export_json` método em [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form), que serializa todos os dados de campo diretamente para um fluxo de arquivo em uma única chamada.
+
+1. Construir um `Form` objeto com o caminho do arquivo de entrada.
+1. Abra o arquivo de saída como um fluxo binário usando `FileIO`.
+1. Chamar `form.export_json(stream, True)` para escrever a saída JSON.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ form = apdf.facades.Form(path_infile)
+ with FileIO(path_outfile, "w") as json_file:
+ form.export_json(json_file, True)
+```
+
+A segunda abordagem cria um dicionário Python a partir de `field_names` e `get_field`, então serializa com `json.dumps`. Use isso quando precisar transformar ou filtrar os dados antes de escrevê-los.
+
+1. Iterar sobre `form.field_names` e preencha um dicionário com valores dos campos.
+1. Serializar o dicionário com `json.dumps(form_data, indent=4)`.
+1. Escreva a string JSON resultante no arquivo de saída.
+
+```python
+
+ import aspose.pdf as apdf
+ from os import path
+ import json
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ form = apdf.facades.Form(path_infile)
+ form_data = {}
+ # Get values from all fields
+ for formField in form.field_names:
+ form_data[formField] = form.get_field(formField)
+
+ # Serialize to JSON
+ json_string = json.dumps(form_data, indent=4)
+ print(json_string)
+
+ with open(path_outfile, "w", encoding="utf-8") as json_file:
+ json_file.write(json_string)
+```
+
+## Extrair Dados para XML de um Arquivo PDF
+
+A exportação de XML é útil para integrar os dados de formulário PDF com sistemas que consomem feeds ou esquemas XML estruturados. O [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) classe fornece `export_xml` para lidar com a conversão em uma única etapa.
+
+1. Criar um `Form` instanciar e vincular o PDF com `form.bind_pdf(path)`.
+1. Abra o arquivo de saída como um fluxo binário.
+1. Chamar `form.export_xml(stream)` escrever todos os dados dos campos como XML.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ # Create Form object
+ form = apdf.facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(path_infile)
+
+ # Export data to XML file
+ with FileIO(path_outfile, "w") as f:
+ form.export_xml(f)
+```
+
+## Exportar dados para FDF a partir de um arquivo PDF
+
+FDF (Forms Data Format) é o formato de intercâmbio padrão para dados AcroForm e é amplamente suportado por visualizadores de PDF e ferramentas de processamento. Use `export_fdf` no [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) classe para produzir um arquivo FDF independente que pode ser importado de volta ao PDF original ou a outro formulário compatível.
+
+1. Criar um `Form` instancie e vincule o PDF de origem com `form.bind_pdf(path)`.
+1. Abra o arquivo de saída como um fluxo binário.
+1. Chamar `form.export_fdf(stream)` para escrever os dados FDF.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ # Create Form object
+ form = apdf.facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(path_infile)
+
+ # Export form data to an FDF file
+ with FileIO(path_outfile, "w") as f:
+ form.export_fdf(f)
+```
+
+## Exportar Dados para XFDF a partir de um Arquivo PDF
+
+XFDF (XML Forms Data Format) é o sucessor baseado em XML do FDF e é mais adequado para uso em serviços web e pipelines de dados modernos. Como FDD, um arquivo XFDF pode ser importado de volta para um formulário PDF compatível. Use `export_xfdf` no [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form) classe para gerar a saída.
+
+1. Criar um `Form` instancie e vincule o PDF de origem com `form.bind_pdf(path)`.
+1. Abra o arquivo de saída como um fluxo binário.
+1. Chamar `form.export_xfdf(stream)` para escrever os dados XFDF.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ # Create Form object
+ form = apdf.facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(path_infile)
+
+ # Export form data to an XFDF file
+ with FileIO(path_outfile, "w") as f:
+ form.export_xfdf(f)
+```
diff --git a/pt/python-net/parsing/extract-data-from-tables/_index.md b/pt/python-net/parsing/extract-data-from-tables/_index.md
new file mode 100644
index 0000000000..f08297315c
--- /dev/null
+++ b/pt/python-net/parsing/extract-data-from-tables/_index.md
@@ -0,0 +1,139 @@
+---
+title: Extrair Dados de Tabela em PDF com Python
+linktitle: Extrair Dados de Tabela
+type: docs
+weight: 40
+url: /pt/python-net/extract-data-from-table-in-pdf/
+description: Aprenda como extrair dados de tabela de arquivos PDF com Aspose.PDF for Python e exportar os resultados para processamento adicional.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como Extrair Dados de Tabela em PDF via Python
+Abstract: Este artigo explica como extrair e processar dados de tabelas de documentos PDF com Aspose.PDF for Python. Ele mostra como analisar cada página com TableAbsorber, ler linhas e células das tabelas detectadas, limitar a extração a uma região anotada específica e exportar o conteúdo PDF para o formato CSV para uso em ferramentas de planilha e processamento subsequente.
+---
+
+## Extrair Tabelas de PDF programaticamente
+
+Usar [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) para detectar tabelas em cada página de um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Depois de visitar uma página, percorra `table_list`, então percorra cada linha e célula para reconstruir o conteúdo da tabela em um formato de texto legível.
+
+1. Abra o PDF como um `Document`.
+1. Iterar pelas páginas em `document.pages`.
+1. Criar um `TableAbsorber` para cada página e chamar `visit(page)`.
+1. Percorra as tabelas, linhas e células detectadas.
+1. Leia fragmentos de texto de cada célula e monte a saída da linha extraída.
+
+```python
+import aspose.pdf as apdf
+from os import path
+
+path_infile = path.join(self.dataDir, infile)
+
+# Open PDF document
+document = apdf.Document(path_infile)
+
+# Iterate through each page in the document
+for page in document.pages:
+ absorber = apdf.text.TableAbsorber()
+ absorber.visit(page)
+
+ for table in absorber.table_list:
+ print("Table")
+ for row in table.row_list:
+ row_text = []
+ for cell in row.cell_list:
+ cell_text = []
+ for fragment in cell.text_fragments:
+ cell_text.append("".join(seg.text for seg in fragment.segments))
+ row_text.append("|".join(cell_text))
+ print("|".join(row_text))
+```
+
+## Extrair tabela em área específica da página PDF
+
+Se precisar extrair apenas tabelas localizadas dentro de uma região marcada, combine [TableAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/tableabsorber/) com um [SquareAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/squareannotation/). Neste exemplo, o retângulo da anotação é usado como limite, e somente tabelas totalmente contidas dentro dessa região são processadas.
+
+1. Abra o PDF como um `Document`.
+1. Selecione a página de destino.
+1. Encontre a anotação quadrada que marca a região de interesse.
+1. Criar um `TableAbsorber` e visite a página.
+1. Compare cada retângulo de tabela detectado com o retângulo da anotação.
+1. Processar apenas as tabelas que se situam completamente dentro da área marcada.
+
+```python
+import aspose.pdf as apdf
+from os import path
+
+# The path to the documents directory
+path_infile = path.join(self.dataDir, infile)
+
+# Open PDF document
+document = apdf.Document(path_infile)
+
+# Get the first page (index starts from 1 in Aspose.PDF)
+page = document.pages[1]
+
+# Find the first square annotation
+square_annotation = next(
+ (
+ ann
+ for ann in page.annotations
+ if ann.annotation_type == apdf.annotations.AnnotationType.SQUARE
+ ),
+ None,
+)
+
+if square_annotation is None:
+ print("No square annotation found.")
+ return
+
+# Initialize the TableAbsorber
+absorber = apdf.text.TableAbsorber()
+absorber.visit(page)
+
+# Iterate through tables on the page
+for table in absorber.table_list:
+ table_rect = table.rectangle
+ annotation_rect = square_annotation.rect
+
+ # Check if the table is inside the annotation region
+ is_in_region = (
+ annotation_rect.llx < table_rect.llx
+ and annotation_rect.lly < table_rect.lly
+ and annotation_rect.urx > table_rect.urx
+ and annotation_rect.ury > table_rect.ury
+ )
+
+ if is_in_region:
+ for row in table.row_list:
+ row_text = []
+ for cell in row.cell_list:
+ cell_text = []
+ for fragment in cell.text_fragments:
+ cell_text.append("".join(seg.text for seg in fragment.segments))
+ row_text.append("|".join(cell_text))
+ print("|".join(row_text))
+```
+
+## Exportar Dados da Tabela de PDF para CSV
+
+Quando você precisar dos dados extraídos em um formato amigável a planilhas, salve o PDF usando [ExcelSaveOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf/excelsaveoptions/) e defina o formato de saída como CSV. O arquivo resultante pode ser aberto no Excel, Google Sheets, ou importado em fluxos de trabalho analíticos.
+
+1. Abra o PDF de origem como um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Criar um `ExcelSaveOptions` instância.
+1. Conjunto `excel_save.format` para `ExcelSaveOptions.ExcelFormat.CSV`.
+1. Salve o documento no caminho CSV de destino.
+
+```python
+import aspose.pdf as apdf
+from os import path
+
+path_infile = path.join(self.dataDir, infile)
+path_outfile = path.join(self.dataDir, outfile)
+
+document = apdf.Document(path_infile)
+excel_save = apdf.ExcelSaveOptions()
+excel_save.format = apdf.ExcelSaveOptions.ExcelFormat.CSV
+document.save(path_outfile, excel_save)
+```
diff --git a/pt/python-net/parsing/extract-fonts-from-pdf/_index.md b/pt/python-net/parsing/extract-fonts-from-pdf/_index.md
new file mode 100644
index 0000000000..9d7ee97a00
--- /dev/null
+++ b/pt/python-net/parsing/extract-fonts-from-pdf/_index.md
@@ -0,0 +1,37 @@
+---
+title: Extrair fontes de PDF via Python
+linktitle: Extrair fontes de PDF
+type: docs
+weight: 30
+url: /pt/python-net/extract-fonts-from-pdf/
+description: Use a biblioteca Aspose.PDF for Python para extrair todas as fontes incorporadas do seu documento PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como extrair fontes de PDF usando Python
+Abstract: Este artigo explica como inspecionar as fontes usadas em um documento PDF com Aspose.PDF for Python. Ele mostra como abrir um PDF com a classe Document, chamar font_utilities.get_all_fonts() para recuperar os objetos de fonte disponíveis e percorrer os resultados para ler os nomes das fontes para análise, auditoria ou fluxos de trabalho de processamento de documentos.
+---
+
+Usar [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para abrir o PDF e chamar `font_utilities.get_all_fonts()` para recuperar tudo disponível [Font](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/font/) objetos referenciados pelo documento. Isso é útil ao auditar fontes incorporadas, verificar a disponibilidade de fontes antes da conversão ou analisar os recursos do documento.
+
+1. Abra o PDF de origem como um `Document`.
+1. Chamar `document.font_utilities.get_all_fonts()` para obter a coleção de fontes.
+1. Iterar sobre o retornado `Font` objetos.
+1. Leia e imprima cada `font.font_name` valor.
+
+```python
+
+ import aspose.pdf as apdf
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+
+ # Open PDF document
+ document = apdf.Document(path_infile)
+
+ fonts = document.font_utilities.get_all_fonts()
+ for font in fonts:
+ print(font.font_name)
+```
diff --git a/pt/python-net/parsing/extract-images-from-pdf/_index.md b/pt/python-net/parsing/extract-images-from-pdf/_index.md
new file mode 100644
index 0000000000..7aeb8bb5c6
--- /dev/null
+++ b/pt/python-net/parsing/extract-images-from-pdf/_index.md
@@ -0,0 +1,37 @@
+---
+title: Extrair imagens de PDF usando Python
+linktitle: Extrair imagens de PDF
+type: docs
+weight: 20
+url: /pt/python-net/extract-images-from-the-pdf-file/
+description: Aprenda como extrair imagens incorporadas de arquivos PDF com Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Como extrair imagens de PDF via Python
+Abstract: Este artigo explica como extrair imagens incorporadas de um documento PDF com Aspose.PDF for Python. Ele abrange a abertura do PDF de origem com a classe Document, o acesso a uma imagem da coleção de recursos da página e a gravação da XImage extraída em um arquivo externo para reutilização, inspeção ou processamento subsequente.
+---
+
+Usar [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/) para abrir o PDF, então acessar os recursos da página para recuperar um [XImage](https://reference.aspose.com/pdf/python-net/aspose.pdf/ximage/) objeto e salvá-lo como um arquivo separado. Essa abordagem é útil quando você precisa reutilizar imagens, inspecionar ativos extraídos ou criar fluxos de trabalho de processamento de imagens a partir do conteúdo PDF.
+
+1. Abra o PDF como um `Document`.
+1. Acesse o recurso de imagem da página de destino.
+1. Recuperar o necessário `XImage` da coleção de imagens da página.
+1. Salve a imagem extraída em um arquivo de saída.
+
+```python
+
+ import aspose.pdf as apdf
+ from io import FileIO
+ from os import path
+
+ path_infile = path.join(self.dataDir, infile)
+ path_outfile = path.join(self.dataDir, outfile)
+
+ document = apdf.Document(path_infile)
+ xImage = document.pages[1].resources.images[1]
+ with FileIO(path_outfile, "w") as output_image:
+ xImage.save(output_image)
+```
diff --git a/pt/python-net/parsing/extract-text-from-pdf/_index.md b/pt/python-net/parsing/extract-text-from-pdf/_index.md
new file mode 100644
index 0000000000..248f51cf43
--- /dev/null
+++ b/pt/python-net/parsing/extract-text-from-pdf/_index.md
@@ -0,0 +1,19 @@
+---
+title: Extrair texto de PDF usando Python
+linktitle: Extrair texto de PDF
+type: docs
+weight: 10
+url: /pt/python-net/extract-text-from-pdf/
+description: Esta seção contém artigos sobre extração de texto de documentos PDF usando Aspose.PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+## Artigos nesta seção
+
+- [Extração Básica de Texto](/pdf/pt/python-net/basic-text-extraction/)
+- [Extração baseada em região](/pdf/pt/python-net/region-based-extraction/)
+- [Extração de Texto de PDFs Multi‑Coluna](/pdf/pt/python-net/text-extraction-from-multi‑column-pdf/)
+- [Anotações e Texto Especial](/pdf/pt/python-net/annotations-and-special-text/)
\ No newline at end of file
diff --git a/pt/python-net/parsing/extract-text-from-pdf/annotations-and-special-text/_index.md b/pt/python-net/parsing/extract-text-from-pdf/annotations-and-special-text/_index.md
new file mode 100644
index 0000000000..252dc05f87
--- /dev/null
+++ b/pt/python-net/parsing/extract-text-from-pdf/annotations-and-special-text/_index.md
@@ -0,0 +1,161 @@
+---
+title: Anotações e Texto Especial usando Python
+linktitle: Anotações e Texto Especial
+type: docs
+weight: 40
+url: /pt/python-net/annotation-and-special-text/
+description: Aprenda como extrair texto de anotações de selo, texto destacado e conteúdo de sobrescrito/subscrito em documentos PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Extrair Texto de Anotações de Selo
+
+Usar [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber) para extrair texto incorporado em um [StampAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/stampannotation) fluxo de aparência. Isso é útil quando o conteúdo do carimbo é renderizado como um XObject de formulário em vez de ser armazenado como texto simples.
+
+1. Abra o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Acesse a anotação de destino a partir de `page.annotations`.
+1. Verifique se é um `StampAnnotation`, então recupere sua aparência normal XForm.
+1. Passe o XForm para `TextAbsorber.visit()` para extrair o texto incorporado.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_text_from_stamp(infile, page_number, annotation_index, outfile):
+ """
+ Extracts text from a stamp annotation on a given page in a PDF document.
+ Args:
+ infile (str): Path to the input PDF file.
+ page_number (int): 1-based index of the page containing the stamp.
+ annotation_index (int): 1-based index of the annotation in that page.
+ outfile (str): Path to the output text file where extracted text will be saved.
+ """
+ document = ap.Document(infile)
+ try:
+ page = document.pages[page_number]
+ annot = page.annotations[annotation_index]
+ # Ensure it's a StampAnnotation
+ if isinstance(annot, ap.annotations.StampAnnotation):
+ # Get normal appearance XForm of the stamp
+ xform = annot.appearance["N"]
+ absorber = ap.text.TextAbsorber()
+ absorber.visit(xform)
+ extracted = absorber.text
+ with open(outfile, "w", encoding="utf-8") as f:
+ f.write(extracted)
+ finally:
+ document.close()
+```
+
+## Extrair Texto Realçado
+
+Iterar sobre as anotações de uma página e usar [HighlightAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/highlightannotation) para ler os trechos de texto cobertos por cada realce. A coleção de anotações da página usa indexação a partir de 1.
+
+1. Abra o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document) e selecione a página de destino.
+1. Percorrer `page.annotations`.
+1. Usar `is_assignable` para filtrar [HighlightAnnotation](https://reference.aspose.com/pdf/python-net/aspose.pdf.annotations/highlightannotation) instâncias.
+1. Faça o cast da anotação e chame `get_marked_text()` para recuperar o conteúdo destacado.
+
+```python
+def extract_highlight_text(infile):
+ """
+ Extract text from highlight annotations.
+
+ Args:
+ infile (str): Input PDF filename
+
+ Returns:
+ None
+
+ Example:
+ extract_highlight_text("sample.pdf")
+
+ Note:
+ Prints marked text from each highlight annotation on first page.
+ """
+ document = ap.Document(infile)
+ page = document.pages[1]
+
+ for annotation in page.annotations:
+ if is_assignable(annotation, ap.annotations.HighlightAnnotation):
+ highlight_annotation = cast(ap.annotations.HighlightAnnotation, annotation)
+ print(highlight_annotation.get_marked_text())
+```
+
+## Extrair texto sobrescrito e subscrito
+
+Sobrescritos e subscritos aparecem com frequência em fórmulas, expressões matemáticas e nomes de compostos químicos. Aspose.PDF for Python via .NET suporta a extração desse conteúdo através de [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber), que detecta metadados de posicionamento ao nível de caracteres.
+
+1. Abra o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Criar um `TextFragmentAbsorber` instância.
+1. Chamar `document.pages[page_number].accept(absorber)` para digitalizar a página de destino.
+1. Recupere o texto extraído completo de `absorber.text`.
+1. Escreva o resultado em um arquivo e feche o documento.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_super_sub_text(infile, outfile, page_number=1):
+ """
+ Extract text (including superscript/subscript) from a specified page of a PDF and write to a text file.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ page_number (int): 1‑based index of the page to extract.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.TextFragmentAbsorber()
+ # Accept only the specific page for extraction
+ document.pages[page_number].accept(absorber)
+ extracted_text = absorber.text
+ with open(outfile, "w", encoding="utf-8") as f:
+ f.write(extracted_text)
+ finally:
+ document.close()
+```
+
+## Iterar pelos Fragmentos de Texto para Detectar Sobrescrito/Subscrito
+
+Para inspeção por fragmento, itere sobre `absorber.text_fragments` e leia o `text_state.superscript` e `text_state.subscript` bandeiras booleanas em cada [TextFragment](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragment).
+
+1. Abra o [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document) e criar um [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber).
+1. Aceite o absorvedor na página de destino para preencher `absorber.text_fragments`.
+1. Para cada fragmento, leia `fragment.text`, `fragment.text_state.superscript`, e `fragment.text_state.subscript`.
+1. Escreva os resultados no arquivo de saída e feche o documento.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_super_sub_details(infile, outfile, page_number=1):
+ """
+ Extract details of each text fragment on a page, identifying superscript and subscript items.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ page_number (int): 1‑based page index.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.TextFragmentAbsorber()
+ document.pages[page_number].accept(absorber)
+
+ with open(outfile, "w", encoding="utf-8") as f:
+ for fragment in absorber.text_fragments:
+ text = fragment.text
+ is_sup = fragment.text_state.superscript # True if superscript
+ is_sub = fragment.text_state.subscript # True if subscript
+ f.write(
+ f"Text: '{text}' | Superscript: {is_sup} | Subscript: {is_sub}\n"
+ )
+ finally:
+ document.close()
+```
diff --git a/pt/python-net/parsing/extract-text-from-pdf/basic-text-extraction/_index.md b/pt/python-net/parsing/extract-text-from-pdf/basic-text-extraction/_index.md
new file mode 100644
index 0000000000..daff71ea6b
--- /dev/null
+++ b/pt/python-net/parsing/extract-text-from-pdf/basic-text-extraction/_index.md
@@ -0,0 +1,78 @@
+---
+title: Extração Básica de Texto usando Python
+linktitle: Extração Básica de Texto
+type: docs
+weight: 10
+url: /pt/python-net/basic-text-extraction/
+description: Aprenda como extrair texto de documentos PDF usando Aspose.PDF for Python — de todas as páginas de uma vez ou de uma página específica.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Extrair texto de todas as páginas de um documento PDF
+
+Usar [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber) capturar todo o texto de cada página de um documento PDF e gravá-lo em um arquivo de texto. Essa abordagem é bem adequada para converter PDFs em texto pesquisável, executar análise de conteúdo ou preparar o texto para indexação e processamento subsequente.
+
+1. Abra o documento PDF usando [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Criar um `TextAbsorber` instância.
+1. Chamar `document.pages.accept(text_absorber)` para escanear todas as páginas.
+1. Recuperar o texto extraído de `text_absorber.text`.
+1. Grave o resultado em um arquivo de texto de saída.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_text_from_all_pages(infile, outfile):
+ """
+ Extract all text from every page of the PDF and write to an output text file.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ """
+ # Open the PDF document
+ document = ap.Document(infile)
+ # Create a TextAbsorber to extract text
+ text_absorber = ap.text.TextAbsorber()
+ # Accept the absorber for all pages
+ document.pages.accept(text_absorber)
+ # Get extracted text
+ extracted_text = text_absorber.text
+ # Write the text to an output file
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
+
+## Extrair texto de uma página específica
+
+Aplicar [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber) para uma única página para isolar e salvar o texto daquela seção de um documento de várias páginas. Isso é útil quando você precisa de conteúdo de apenas uma página — por exemplo, uma fatura, uma seção de relatório ou um resumo de formulário.
+
+1. Abra o documento PDF usando [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document).
+1. Criar um `TextAbsorber` instância.
+1. Chamar `accept` na página de destino: `document.pages[page_number].accept(text_absorber)`.
+1. Recupere o texto extraído e escreva-o em um arquivo.
+
+```python
+import os
+import aspose.pdf as ap
+
+
+def extract_text_from_page(infile, outfile, page_number):
+ """
+ Extract text from a specific page number of the PDF.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ page_number (int): 1-based page index to extract.
+ """
+ document = ap.Document(infile)
+ text_absorber = ap.text.TextAbsorber()
+ # Accept the absorber on only the specified page
+ document.pages[page_number].accept(text_absorber)
+ extracted_text = text_absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
diff --git a/pt/python-net/parsing/extract-text-from-pdf/region-based-extraction/_index.md b/pt/python-net/parsing/extract-text-from-pdf/region-based-extraction/_index.md
new file mode 100644
index 0000000000..7b195bd7ad
--- /dev/null
+++ b/pt/python-net/parsing/extract-text-from-pdf/region-based-extraction/_index.md
@@ -0,0 +1,140 @@
+---
+title: Extração baseada em região usando Python
+linktitle: Extração baseada em região
+type: docs
+weight: 20
+url: /pt/python-net/region-based-extraction/
+description: Aprenda como extrair texto de uma região específica da página ou da estrutura de parágrafos em documentos PDF com Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Extrair texto de uma região específica de uma página
+
+Usar [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/) juntamente com um [Rectangle](https://reference.aspose.com/pdf/python-net/aspose.pdf/rectangle/) para limitar a extração a uma área específica de uma página. Esta abordagem é útil para extração baseada em zonas de cabeçalhos, rodapés, células de tabela, campos de formulário, faturas ou outras regiões de layout fixo onde a posição do texto é conhecida antecipadamente.
+
+1. Abra o PDF de origem como um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Criar um `TextAbsorber` instância.
+1. Configurar `text_search_options` para limitar a extração a um retângulo.
+1. Aceite o absorvedor na página de destino.
+1. Escreva o texto extraído em um arquivo de saída.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_text_from_region(infile, page_number, rect_coords, outfile):
+ """
+ Extract text from a specified rectangular region on a given page.
+ Args:
+ infile (str): Path to input PDF file.
+ page_number (int): 1-based index of the page.
+ rect_coords (tuple): (llx, lly, urx, ury) coordinates of the rectangle.
+ outfile (str): Output text file path.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.TextAbsorber()
+ # Set options to restrict search to the rectangle
+ absorber.text_search_options.limit_to_page_bounds = True
+ llx, lly, urx, ury = rect_coords
+ absorber.text_search_options.rectangle = ap.Rectangle(llx, lly, urx, ury, True)
+ # Accept on the specific page
+ document.pages[page_number].accept(absorber)
+ extracted_text = absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+ finally:
+ document.close()
+```
+
+## Extrair parágrafos iterando sobre eles
+
+Usar [ParagraphAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/paragraphabsorber/) quando você precisa de extração consciente de parágrafos em vez de texto de página simples. Ao contrário [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/) ou [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/), esta API organiza a saída por página, seção e parágrafo, o que é útil para análise de texto, exportação estruturada e processamento sensível ao layout.
+
+1. Abra o PDF de origem como um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Criar um `ParagraphAbsorber` instância.
+1. Chamar `absorber.visit(document)` para analisar todas as páginas.
+1. Iterar através `page_markups`, então através de cada seção e parágrafo.
+1. Leia os fragmentos de texto de cada parágrafo e escreva o resultado em um arquivo.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_paragraphs_from_pdf(infile, outfile):
+ """
+ Extract all paragraphs from a PDF document, and write each paragraph’s text into an output file.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.ParagraphAbsorber()
+ absorber.visit(document)
+
+ with open(outfile, "w", encoding="utf-8") as tw:
+ for page_markup in absorber.page_markups:
+ for sec_idx, section in enumerate(page_markup.sections, start=1):
+ for para_idx, paragraph in enumerate(section.paragraphs, start=1):
+ # Concatenate all fragments/lines in the paragraph
+ parts = []
+ for line in paragraph.lines:
+ for fragment in line:
+ parts.append(fragment.text)
+ parts.append("\r\n")
+ paragraph_text = "".join(parts)
+ tw.write(
+ f"Page {page_markup.number}, Section {sec_idx}, Paragraph {para_idx}:\n"
+ )
+ tw.write(paragraph_text + "\n")
+ finally:
+ document.close()
+```
+
+## Extrair Parágrafos com renderização de polígono delimitador
+
+Você também pode usar [ParagraphAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/paragraphabsorber/) para inspecionar a geometria do parágrafo. Além de extrair texto, esta abordagem registra o retângulo de cada seção e o polígono do parágrafo, o que é útil para mapeamento de layout, análise de documentos, ferramentas de acessibilidade ou pós-processamento sensível à região.
+
+1. Abra o PDF de origem como um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Criar um `ParagraphAbsorber` instância.
+1. Visite a página de destino.
+1. Ler a marcação da página de `absorber.page_markups`.
+1. Itere pelas seções e parágrafos para capturar geometria e texto.
+1. Escreva os dados de retângulo, polígono e texto no arquivo de saída.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_paragraphs_with_geometry(infile, outfile):
+ """
+ Extract paragraphs and record geometry info (rectangle / polygon) for each paragraph in a PDF.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file.
+ """
+ document = ap.Document(infile)
+ try:
+ absorber = ap.text.ParagraphAbsorber()
+ absorber.visit(document.pages[1]) # Visit page 2 (pages are 1-indexed)
+
+ page_markup = absorber.page_markups[0]
+ with open(outfile, "w", encoding="utf-8") as tw:
+ for sec_idx, section in enumerate(page_markup.sections, start=1):
+ tw.write(f"Section {sec_idx}: rectangle = {section.rectangle}\n")
+ for para_idx, paragraph in enumerate(section.paragraphs, start=1):
+ tw.write(f" Paragraph {para_idx}: polygon = {paragraph.points}\n")
+ # Concatenate paragraph text
+ parts = []
+ for line in paragraph.lines:
+ for fragment in line:
+ parts.append(fragment.text)
+ parts.append("\r\n")
+ tw.write(" Text: " + "".join(parts) + "\n\n")
+ finally:
+ document.close()
+```
diff --git a/pt/python-net/parsing/extract-text-from-pdf/text-extraction-from-multi-column-pdf/_index.md b/pt/python-net/parsing/extract-text-from-pdf/text-extraction-from-multi-column-pdf/_index.md
new file mode 100644
index 0000000000..29bb630e39
--- /dev/null
+++ b/pt/python-net/parsing/extract-text-from-pdf/text-extraction-from-multi-column-pdf/_index.md
@@ -0,0 +1,88 @@
+---
+title: Melhorando a Extração de Texto de PDFs Multi‑Coluna
+linktitle: Extração de Texto de PDFs Multi‑Coluna
+type: docs
+weight: 30
+url: /pt/python-net/text-extraction-from-multi-column-pdf/
+description: Aprenda técnicas para melhorar a extração de texto de layouts de PDF de múltiplas colunas com Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+---
+
+## Reduza o tamanho da fonte manualmente e então extraia
+
+Em alguns layouts de múltiplas colunas, reduzir o tamanho da fonte dos fragmentos de texto antes da extração pode melhorar a ordem de leitura e reduzir problemas de sobreposição. Essa técnica pode ajudar em documentos com formatação apertada, como revistas, artigos de pesquisa, brochuras ou relatórios com colunas de texto densas.
+
+1. Carregue o PDF.
+1. Usar [TextFragmentAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textfragmentabsorber/) para coletar os fragmentos de texto.
+1. Reduza o tamanho da fonte de cada fragmento, então salve e reabra o documento.
+1. Usar [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/) para extrair o texto.
+1. Escreva o texto extraído em um arquivo de saída.
+
+```python
+import io
+import aspose.pdf as ap
+
+
+def extract_text_reduce_font(infile, outfile, reduce_ratio=0.7):
+ """
+ Extract text from a multi-column PDF by first reducing font size of all text fragments.
+ Args:
+ infile (str): Path to input PDF.
+ outfile (str): Output text file.
+ reduce_ratio (float): Ratio to reduce font size (e.g., 0.7 = 70%).
+ """
+ doc = ap.Document(infile)
+
+ frag_absorber = ap.text.TextFragmentAbsorber()
+ doc.pages.accept(frag_absorber)
+ for frag in frag_absorber.text_fragments:
+ frag.text_state.font_size = frag.text_state.font_size * reduce_ratio
+ # Save to memory stream and reopen (to apply changes)
+ ms = io.BytesIO()
+ doc.save(ms)
+ ms.seek(0)
+ doc2 = ap.Document(ms)
+ text_absorber = ap.text.TextAbsorber()
+ doc2.pages.accept(text_absorber)
+ extracted_text = text_absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
+
+## Extrair texto com fator de escala
+
+Outra opção para extração de múltiplas colunas é configurar [TextExtractionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textextractionoptions/) com um fator de escala. Ajustar o fator de escala pode melhorar a interpretação de fragmentos densamente compactados e ajudar a preservar uma ordem de leitura mais precisa em layouts densos, tabelas ou documentos baseados em colunas.
+
+1. Carregue o PDF.
+1. Criar um [TextAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.text/textabsorber/).
+1. Configurar `TextExtractionOptions.scale_factor`.
+1. Atribua as opções de extração ao absorvedor.
+1. Extraia o texto da página e escreva o resultado em um arquivo de saída.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_text_scale_factor(infile, outfile, scale_factor=0.5):
+ """
+ Extract text from a PDF with multi-column layout using scale factor.
+ Args:
+ infile (str): Input PDF path.
+ outfile (str): Output text file path.
+ scale_factor (float): Scale factor between 0.1 and 1.0 or 0 for auto-scaling.
+ """
+ doc = ap.Document(infile)
+ text_absorber = ap.text.TextAbsorber()
+ ext_opts = ap.text.TextExtractionOptions(
+ ap.text.TextExtractionOptions.TextFormattingMode.PURE
+ )
+ ext_opts.scale_factor = scale_factor
+ text_absorber.extraction_options = ext_opts
+ doc.pages.accept(text_absorber)
+ extracted_text = text_absorber.text
+ with open(outfile, "w", encoding="utf-8") as tw:
+ tw.write(extracted_text)
+```
diff --git a/pt/python-net/parsing/extract-vector-data-from-pdf/_index.md b/pt/python-net/parsing/extract-vector-data-from-pdf/_index.md
new file mode 100644
index 0000000000..1a4a84c4ea
--- /dev/null
+++ b/pt/python-net/parsing/extract-vector-data-from-pdf/_index.md
@@ -0,0 +1,178 @@
+---
+title: Extrair Dados Vetoriais de um arquivo PDF usando Python
+linktitle: Extrair Dados Vetoriais de PDF
+type: docs
+weight: 80
+url: /pt/python-net/extract-vector-data-from-pdf/
+description: Aspose.PDF facilita a extração de dados vetoriais de um arquivo PDF. Você pode obter os dados vetoriais (caminho, polígono, polilinha), como posição, cor, espessura da linha, etc.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+## Acessar Dados Vetoriais de um Document PDF
+
+Usar [GraphicsAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicsabsorber/) para inspecionar elementos gráficos vetoriais em uma página de um [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/). Após visitar a página de destino, itere pelos elementos extraídos para examinar propriedades como limites de retângulo, posições e operadores de desenho.
+
+1. Abra o PDF de origem como um `Document`.
+1. Criar um `GraphicsAbsorber` instância.
+1. Chamar `gr_absorber.visit(page)` na página de destino.
+1. Leia os itens extraídos de `gr_absorber.elements`.
+1. Itere pelos elementos e escreva suas propriedades em um arquivo de saída.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_graphics_elements(infile, outfile):
+ """
+ Extract vector graphic elements from a specified page of a PDF and log basic element properties.
+ Args:
+ infile (str): Path to input PDF file.
+ outfile (str): Path to output text file for logging element info.
+ """
+ document = ap.Document(infile)
+ try:
+ gr_absorber = ap.vector.GraphicsAbsorber()
+ # Visit page 2 (pages collection is 1-indexed; document.pages[1] is the second page)
+ gr_absorber.visit(document.pages[1])
+
+ elements = gr_absorber.elements
+ with open(outfile, "w", encoding="utf-8") as f:
+ for idx, elem in enumerate(elements, start=1):
+ # Basic properties
+ rect = elem.rectangle
+ pos = elem.position
+ ops_count = len(elem.operators)
+ f.write(
+ f"Element {idx}: Rectangle = {rect}, Position = {pos}, Operators = {ops_count}\n"
+ )
+ finally:
+ document.close()
+```
+
+## Salvar Gráficos Vetoriais de uma Página para um Arquivo SVG
+
+Exportar gráficos vetoriais de uma página PDF para SVG para preservar caminhos e formas escaláveis fora do PDF original. Esse método é útil para reutilizar arte vetorial na Web, design ou fluxos de trabalho de publicação.
+
+1. Carregue o documento PDF.
+1. Acesse a página de destino.
+1. Chamar `page.try_save_vector_graphics()` exportar os caminhos vetoriais da página para SVG.
+1. Feche o documento.
+
+```python
+import aspose.pdf as ap
+
+
+def save_vector_graphics_to_svg(infile, svg_outfile):
+ """
+ Save vector graphics from a specified page of a PDF document into an SVG file.
+ Args:
+ infile (str): Path to input PDF file.
+ svg_outfile (str): Path to output SVG file.
+ """
+ document = ap.Document(infile)
+ try:
+ page = document.pages[1]
+ # Try to save vector graphics into SVG
+ page.try_save_vector_graphics(svg_outfile)
+ finally:
+ document.close()
+```
+
+### Extrair Cada Subcaminho para um SVG Separado
+
+Quando uma página contém vários caminhos vetoriais independentes, use [SvgExtractionOptions](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/svgextractionoptions/) com [SvgExtractor](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/svgextractor/) para gravar cada subcaminho em um arquivo SVG separado.
+
+1. Carregue o PDF.
+1. Criar `SvgExtractionOptions` e definir `extract_every_subpath_to_svg`.
+1. Acesse a primeira página do documento.
+1. Instanciar `SvgExtractor` com as opções.
+1. Chamar `extractor.extract()` para escrever arquivos SVG separados para cada subcaminho vetorial.
+1. Feche o documento.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_subpaths_to_svgs(infile, output_dir):
+ """
+ Extract each vector sub-path on a PDF page into separate SVG files using extraction options.
+ Args:
+ infile (str): Input PDF file path.
+ output_dir (str): Directory path where SVG files will be saved.
+ """
+ document = ap.Document(infile)
+ try:
+ options = ap.vector.SvgExtractionOptions()
+ options.extract_every_subpath_to_svg = True
+
+ page = document.pages[1]
+ extractor = ap.vector.SvgExtractor(options)
+ extractor.extract(page, output_dir)
+ finally:
+ document.close()
+```
+
+### Extrair uma Lista de Elementos para uma Única Imagem
+
+Extrair múltiplos elementos vetoriais de uma página PDF e salvá-los como uma única imagem SVG combinada. Isso é útil quando você deseja preservar a relação visual entre formas agrupadas, diagramas ou fragmentos de desenho.
+
+1. Abra o PDF usando [Document](https://reference.aspose.com/pdf/python-net/aspose.pdf/document/).
+1. Selecione uma página e prepare uma lista de elementos vetoriais.
+1. Usar [SvgExtractor](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/svgextractor/) para combinar esses elementos em um único SVG.
+1. Salve o arquivo de saída.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_list_of_elements_to_single_image(infile, outfile):
+ """
+ Extracts multiple vector graphic elements from a PDF page and saves them as a single SVG image.
+ Args:
+ infile (str): Path to the input PDF file.
+ outfile (str): Path to the output SVG file.
+ """
+ document = ap.Document(infile)
+ try:
+ page = document.pages[1]
+ svg_extractor = ap.vector.SvgExtractor()
+ elements = [] # Fill this list with specific graphic elements as needed
+ svg_extractor.extract(elements, page, outfile)
+ finally:
+ document.close()
+```
+
+### Extrair elemento único
+
+Extraia um elemento vetorial específico de um PDF e salve‑o como um arquivo SVG individual. Isso é útil para isolar logotipos, ícones ou formas independentes de páginas mais complexas baseadas em vetor.
+
+1. Criar um [GraphicsAbsorber](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/graphicsabsorber/) para capturar dados vetoriais.
+1. Visite uma página específica para coletar seus elementos vetoriais.
+1. Selecione um elemento alvo, como um [XFormPlacement](https://reference.aspose.com/pdf/python-net/aspose.pdf.vector/xformplacement/).
+1. Salve esse único elemento em um arquivo SVG.
+
+```python
+import aspose.pdf as ap
+
+
+def extract_single_vector_element(infile, outfile):
+ """
+ Extracts a specific vector graphic element (e.g., an XFormPlacement) from a PDF page and saves it as an SVG file.
+ Args:
+ infile (str): Path to the input PDF file.
+ outfile (str): Path to the output SVG file.
+ """
+ document = ap.Document(infile)
+ try:
+ graphics_absorber = ap.vector.GraphicsAbsorber()
+ page = document.pages[1]
+ graphics_absorber.visit(page)
+ xform_placement = graphics_absorber.elements[1]
+ if isinstance(xform_placement, ap.vector.XFormPlacement):
+ xform_placement.elements[2].save_to_svg(outfile)
+ finally:
+ document.close()
+```
diff --git a/pt/python-net/whatsnew/_index.md b/pt/python-net/whatsnew/_index.md
index 638c77baab..d6a3d25db6 100644
--- a/pt/python-net/whatsnew/_index.md
+++ b/pt/python-net/whatsnew/_index.md
@@ -1,345 +1,1169 @@
---
-title: O que há de novo
-linktitle: O que há de novo
+title: Novidades
+linktitle: Novidades
type: docs
weight: 10
url: /pt/python-net/whatsnew/
-description: Nesta página são apresentadas as novas funcionalidades mais populares no Aspose.PDF para Python via .NET que foram introduzidas em lançamentos recentes.
+description: Nesta página são apresentadas as funcionalidades novas mais populares no Aspose.PDF for Python via .NET que foram introduzidas nas versões recentes.
sitemap:
changefreq: "monthly"
priority: 0.8
-lastmod: "2021-12-24"
+lastmod: "2026-05-19"
+TechArticle: false
---
-## O que há de novo no Aspose.PDF 23.12
+## O que há de novo no Aspose.PDF 26.3
-A partir do Aspose.PDF 23.12, foi adicionada a compatibilidade com os novos recursos de conversão:
+Na **Aspose.PDF for Python via .NET** 26.3, adicionamos:
-- Implementar conversão de PDF para Markdown
+Recompressão sem perdas de fluxos de imagem durante a otimização de PDF. A propriedade OptimizationOptions.CompressAllContentStreams agora também comprime fluxos de XObject de imagem elegíveis com FlateDecode, ajudando a reduzir o tamanho do arquivo enquanto mantém a qualidade da imagem intacta.
```python
+import aspose.pdf as ap
+
+
+def optimize_pdf_with_loss_less_image_stream_recompression(infile, outfile):
+ with ap.Document(infile) as document:
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.subset_fonts = True
+ optimize_options.allow_reuse_page_content = True
+ optimize_options.compress_objects = True
+ optimize_options.link_duplicate_streams = True
+ optimize_options.remove_unused_objects = True
+ optimize_options.remove_unused_streams = True
+ # Compress content streams and eligible image streams
+ optimize_options.compress_all_content_streams = True
+ # Optimize PDF document
+ document.optimize_resources(optimize_options)
+ # Save optimized PDF document
+ document.save(outfile)
+```
+
+A recompressão de imagens agora corresponde à configuração ImageCompressionOptions.Encoding selecionada durante a otimização, garantindo resultados mais consistentes ao usar Jpeg2000 ou Flate, juntamente com redimensionamento de imagens, limites de resolução e controles de qualidade.
+
+```python
+import aspose.pdf as ap
+
+
+def optimize_pdf_images_with_selected_encoding(infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as pdf:
+ # Configure optimization options
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.allow_reuse_page_content = False
+ optimize_options.compress_objects = True
+ optimize_options.link_duplicate_streams = False
+ optimize_options.remove_unused_objects = True
+ optimize_options.remove_unused_streams = True
+ optimize_options.image_compression_options.compress_images = True
+ optimize_options.image_compression_options.resize_images = True
+ optimize_options.image_compression_options.max_resolution = 130
+ optimize_options.image_compression_options.image_quality = 100
+ optimize_options.image_compression_options.encoding = (
+ ap.optimization.ImageEncoding.FLATE
+ )
+ optimize_options.image_compression_options.version = (
+ ap.optimization.ImageCompressionVersion.MIXED
+ )
+
+ # Optimize PDF document resources
+ pdf.optimize_resources(optimize_options)
+ # Save optimized PDF document
+ pdf.save(outfile)
+```
+
+Suporte à renderização de comentários ao salvar documentos PDF como imagens ou HTML, ajudando a preservar a marcação de revisão visível ao exportar documentos anotados para compartilhamento fora de visualizadores de PDF.
- import aspose.pdf as ap
+```python
+import aspose.pdf as ap
+
+
+def render_comments_to_image_and_html(infile, outfile, output_png):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Save the first page to PNG with comments rendered
+ device = ap.devices.PngDevice()
+ device.process(document.pages[1], output_png)
+ # Save the first page to HTML with comments rendered
+ options = ap.HtmlSaveOptions()
+ options.explicit_list_of_saved_pages = [1]
+ options.use_z_order = True
+ document.save(outfile, options)
+```
- input_pdf_path = DIR_INPUT + "input.pdf"
- markdown_output_file_path = DIR_OUTPUT + "output_md_file.md"
+Desempenho de renderização de PDF para TIFF aprimorado para cenários de rasterização de alto volume, especialmente ao exportar páginas para imagens TIFF bitonais.
- doc = ap.Document(input_pdf_path)
- save_options = ap.pdftomarkdown.MarkdownSaveOptions()
- save_options.resources_directory_name = "images"
- doc.save(markdown_output_file_path, save_options)
+```python
+import aspose.pdf as ap
+
+
+def convert_pdf_to_tiff(infile, data_dir):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Create Resolution object
+ resolution = ap.devices.Resolution(300)
+
+ # Create TiffSettings object
+ tiff_settings = ap.devices.TiffSettings()
+ tiff_settings.compression = ap.devices.CompressionType.CCITT4
+ tiff_settings.shape = ap.devices.ShapeType.NONE
+ tiff_settings.skip_blank_pages = False
+ tiff_settings.depth = ap.devices.ColorDepth.FORMAT_1BPP
+
+ # Create TIFF device
+ tiff_device = ap.devices.TiffDevice(resolution, tiff_settings)
+ for i in range(1, len(document.pages) + 1):
+ target_file_name = data_dir + "Asposeout-" + str(i) + ".tif"
+ tiff_device.process(document, i, i, target_file_name)
```
-- Implementar conversão de OFD para PDF
+## O que há de novo no Aspose.PDF 26.2
+
+Aspose.PDF 26.2 introduz suporte para conversão de RTF para PDF. Esse recurso permite que os desenvolvedores convertam diretamente documentos Rich Text Format (RTF) em arquivos PDF.
+
+RTF é um formato de documento amplamente suportado e multiplataforma, originalmente desenvolvido pela Microsoft. Ele foi projetado para permitir a troca de documentos entre diferentes aplicativos de processamento de texto, preservando a formatação básica, como fontes, cores, texto em negrito e itálico, bem como imagens incorporadas.
```python
+import aspose.pdf as ap
- import aspose.pdf as ap
- input_path = DIR_INPUT + "input.ofd"
- output_path = DIR_OUTPUT + "output.pdf"
- document = ap.Document(input_path, ap.OfdLoadOptions())
- document.save(output_path)
+def convert_rtf_to_pdf(infile, outfile):
+ # Initialize RTF load options
+ options = ap.RtfLoadOptions()
+ # Open RTF document
+ with ap.Document(infile, options) as document:
+ # Save PDF document
+ document.save(outfile)
```
+Este trecho de código demonstra como inserir uma tabela após o conteúdo existente em uma página PDF usando Aspose.PDF for Python.
+
+O script abre um documento PDF existente e calcula a caixa delimitadora do conteúdo atual na primeira página. Usando essas informações, ele determina onde o conteúdo existente termina e posiciona uma nova tabela abaixo do último elemento, deixando uma margem especificada antes do início da tabela.
-O suporte para Python 3.6 foi descontinuado.
+Uma tabela é então criada e preenchida com várias linhas e colunas usando um loop. Após configurar a estrutura e o conteúdo da tabela, a tabela é adicionada à coleção de parágrafos da página. Finalmente, o documento atualizado é salvo como um novo arquivo PDF.
-## O que há de novo no Aspose.PDF 23.11
+```python
+import aspose.pdf as ap
+
+
+def add_table_after_last_element(infile, outfile):
+ # Load source PDF document
+ with ap.Document(infile) as document:
+ # Initializes a new instance of the Table
+ table = ap.Table()
+ # Determine the existing content area on the page
+ content_area_lly = document.pages[1].calculate_content_b_box().lly
+ top_margin = 20
+ # Add the table after the existing content, with the 20pt margin before the table.
+ table.top = document.pages[1].rect.height - (content_area_lly - top_margin)
+ # Set the top margin for the new pages added.
+ document.page_info.margin.top = top_margin
+ # Create a loop to add 10 rows
+ for row_count in range(1, 11):
+ # Add row to table
+ row = table.rows.add()
+ # Add table cells
+ row.cells.add("Column (" + str(row_count) + ", 1)")
+ row.cells.add("Column (" + str(row_count) + ", 2)")
+ row.cells.add("Column (" + str(row_count) + ", 3)")
+
+ # Add table object to first page of input document
+ document.pages[1].paragraphs.add(table)
+ # Save updated document containing table object
+ document.save(outfile)
+```
-Desde a versão 23.11 é possível remover o texto oculto. O seguinte trecho de código pode ser usado:
+Detectar e remover texto invisível de um documento PDF usando Aspose.PDF for Python:
```python
+import aspose.pdf as ap
+
+
+def remove_invisible_text(infile, outfile):
+ with ap.Document(infile) as pdf_doc:
+ for page in pdf_doc.pages:
+ absorber = ap.text.TextFragmentAbsorber()
+ page.accept(absorber)
+ fragments_to_remove = [
+ x
+ for x in absorber.text_fragments
+ if (
+ x.text_state.invisible
+ or x.text_state.rendering_mode
+ == ap.text.TextRenderingMode.INVISIBLE
+ or (
+ x.text_state.foreground_color is not None
+ and x.text_state.foreground_color.a == 0
+ )
+ )
+ ]
+ for fragment in fragments_to_remove:
+ absorber.text_fragments.remove(
+ fragment
+ ) # Now properly removes text from document
+ pdf_doc.save(outfile)
+```
- import aspose.pdf as ap
+## O que há de novo no Aspose.PDF 26.1
- document = ap.Document(input_file)
- text_absorber = ap.text.TextFragmentAbsorber()
- # Esta opção pode ser usada para evitar que outros fragmentos de texto se movam após a substituição do texto oculto.
- text_absorber.text_replace_options = ap.text.TextReplaceOptions(ap.text.TextReplaceOptions.ReplaceAdjustment.NONE)
- document.pages.accept(text_absorber)
+Em **Aspose.PDF for Python via .NET** 26.1, adicionamos:
- for fragment in text_absorber.text_fragments:
- if fragment.text_state.invisible:
- fragment.text = ''
+1. Melhorias de desempenho – resolvida a baixa performance ao adicionar texto aos documentos e problemas gerais de desempenho.
+1. Precisão aprimorada de renderização – corrigido texto vertical ausente no lado esquerdo dos PDFs e corrigida a renderização de caracteres chineses durante a conversão de PDF para PNG.
+1. Conversão de HTML aprimorada – a API agora respeita a cor das linhas na conversão de HTML para PDF e corrigiu problemas de sobreposição de texto na conversão de XFA para Standard.
+1. Correções de bugs para a estrutura do documento – NumberingStyle agora funciona corretamente para objetos Heading, e PDF-para-HTML agora preserva a cor do texto destacado.
- document.save(output_file)
+## O que há de novo no Aspose.PDF 25.12
+
+Converta um documento HTML em um PDF preservando as informações de estrutura lógica. O PDF resultante é mais adequado para acessibilidade, marcação e processamento subsequente que depende de conteúdo de documento estruturado.
+
+```python
+import aspose.pdf as ap
+
+
+def convert_html_to_pdf_with_logical_structure(self, infile, outfile):
+ # Initialize HtmlLoadOptions
+ options = ap.HtmlLoadOptions()
+ # Convert HTML markup to PDF logical structure elements
+ options.create_logical_structure = True
+ # Open PDF document
+ with ap.Document(infile, options) as document:
+ # Save PDF document
+ document.save(outfile)
```
-## O que há de novo no Aspose.PDF 23.8
+Analise um PDF assinado digitalmente para identificar e relatar o conteúdo que não está coberto pelas assinaturas. Use-o para validar a integridade do documento, auditar PDFs assinados e detectar modificações pós-assinatura.
-Desde a versão 23.8, há suporte para adicionar detecção de Atualizações Incrementais.
+```python
+import aspose.pdf as ap
+
+
+def extract_unsigned_content(self, infile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Create an instance of PdfFileSignature for working with signatures in the document
+ with ap.facades.PdfFileSignature(document) as signature:
+ # Create an instance of UnsignedContentAbsorber
+ unsigned_content = ap.security.UnsignedContentAbsorber(signature)
+ # Try to get unsigned content
+ result = unsigned_content.try_get_content()
+ # Print information about unsigned content
+ print(result.message)
+ print(result.coverage)
+ print(result.unsigned_content.pages.length)
+ print(result.unsigned_content.forms.length)
+```
+
+## O que há de novo no Aspose.PDF 25.11
-A função para detectar Atualizações Incrementais em um documento PDF foi adicionada.
- Essa função retorna 'true' se um documento foi salvo com atualizações incrementais; caso contrário, retorna 'false'.
+Esta função compara uma página específica de dois documentos PDF e produz uma diferença visual lado a lado. Ao personalizar as opções de comparação e as cores, destaca alterações significativas enquanto ignora diferenças insignificantes, como espaços em branco.
```python
+import aspose.pdf as ap
+
+
+def comparing_specific_pages(self, infile1, infile2, outfile):
+ # Open PDF documents
+ with ap.Document(infile1) as document1:
+ with ap.Document(infile2) as document2:
+ options = ap.comparison.SideBySideComparisonOptions()
+ options.additional_change_marks = True
+ options.comparison_mode = ap.comparison.ComparisonMode.IGNORE_SPACES
+ options.delete_color = ap.Color.dark_gray
+ options.insert_color = ap.Color.light_yellow
+ # Compare
+ ap.comparison.SideBySidePdfComparer.compare(
+ document1.pages[1], document2.pages[1], outfile, options
+ )
+```
- import aspose.pdf as ap
+Removendo dados ocultos e rasterizando páginas na versão 25.11.
- doc = ap.Document(file_path)
- updated = doc.has_incremental_update()
- print(updated)
+```python
+import aspose.pdf as ap
+
+
+def clear_hidden_data(self, infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Create preconfigured “all-enabled” options (except conversion to images):
+ options = ap.security.hiddendatasanitization.HiddenDataSanitizationOptions.all()
+ # Additionally enable page conversion to images with a specified DPI:
+ options.convert_pages_to_images = True
+ options.image_dpi = 200
+ # Create the sanitizer with the specified options
+ sanitizer = ap.security.hiddendatasanitization.HiddenDataSanitizer(options)
+ # Sanitize the document
+ sanitizer.sanitize(document)
+ # Save the sanitized PDF document
+ document.save(outfile)
```
-Além disso, o 23.8 suporta maneiras de trabalhar com campos de caixa de seleção aninhados. Muitos formulários PDF preenchíveis têm campos de caixa de seleção que atuam como grupos de rádio:
+Otimizando recursos com subconjunto de fontes e compressão de fluxo de conteúdo, versão 25.11.
-- Criar campo de caixa de seleção de múltiplos valores:
+```python
+import aspose.pdf as ap
+
+
+def optimize_resources_with_font_subsetting(self, infile, outfile):
+ # Open PDF document
+ with ap.Document(infile) as document:
+ # Configure optimization options
+ optimize_options = ap.optimization.OptimizationOptions()
+ optimize_options.subset_fonts = True
+ optimize_options.allow_reuse_page_content = True
+ optimize_options.compress_objects = True
+ optimize_options.link_duplicate_streams = True
+ optimize_options.remove_unused_objects = True
+ optimize_options.remove_unused_streams = True
+ optimize_options.compress_all_content_streams = True
+ # Optimize PDF document
+ document.optimize_resources(optimize_options)
+ # Save the optimized PDF document
+ document.save(outfile)
+ # Display file size reduction
+ original_file = os.path.getsize(infile)
+ optimized_file = os.path.getsize(outfile)
+ print(
+ f"Original file size: {original_file} bytes. Optimized file size: {optimized_file} bytes."
+ )
+```
+
+## O que há de novo no Aspose.PDF 25.10
+
+Controle aprimorado de visibilidade de camadas PDF – esta versão introduz a capacidade de definir programaticamente o estado de visibilidade inicial das camadas PDF e bloqueá-las para impedir alterações de visibilidade nos visualizadores de PDF.
+
+Uma nova propriedade 'layer.default_state' permite definir a visibilidade padrão de uma camada como visível ou oculta usando a propriedade DefaultState. Isso fornece controle detalhado para gerenciar documentos PDF complexos com camadas, com comportamento previsível de visibilidade do usuário.
```python
+import aspose.pdf as ap
+
+
+def manage_layer_visibility(self, infile, outfile):
+ # Create a new PDF document
+ with ap.Document() as document:
+ # Add a page to the document
+ page = document.pages.add()
+ page.set_page_size(500, 500)
+ # Load an image from a file stream
+ with io.FileIO(infile, "r") as stream:
+ # Create a new layer with an ID and a name
+ layer = ap.Layer("1", "testlayer")
+ # Set the initial visibility state of the layer to hidden
+ layer.default_state = ap.DefaultState.HIDDEN
+ # Add the image to the page's resources
+ image_name = page.resources.images.add(stream)
+ # Add operators to the layer's contents to display the image
+ layer.contents.append(ap.operators.GSave())
+ layer.contents.append(ap.operators.ConcatenateMatrix(500, 0, 0, 500, 0, 0))
+ layer.contents.append(ap.operators.Do(image_name))
+ layer.contents.append(ap.operators.GRestore())
+ # Lock the layer to prevent its visibility from being changed in the PDF viewer
+ layer.lock()
+ # Add the layer to the page
+ page.layers.append(layer)
+ # Save the PDF document
+ document.save(outfile)
+```
+
+## O que há de novo no Aspose.PDF 25.9
- import aspose.pdf as ap
-
- document = ap.Document()
- page = document.pages.add()
- checkbox = ap.forms.CheckboxField(page, ap.Rectangle(50, 50, 70, 70, True))
- # Definir o valor da primeira opção do grupo de caixa de seleção
- checkbox.export_value = "opção 1"
- # Adicionar nova opção logo abaixo das existentes
- checkbox.add_option("opção 2")
- # Adicionar nova opção no retângulo fornecido
- checkbox.add_option("opção 3", ap.Rectangle(100, 100, 120, 120, True))
- document.form.add(checkbox)
- # Selecionar a caixa de seleção adicionada
- checkbox.value = "opção 2"
- document.save(DIR_OUTPUT + "checkbox_group.pdf")
+A versão 25.9 introduz acessibilidade aprimorada, suporte de conformidade aprimorado e novos recursos de API para trabalhar com imagens marcadas e padrões de documentos.
+
+1. Converter PDFs para o formato PDF/E-1.
+1. Adicionar imagens marcadas a partir de fluxos de memória.
+
+### Converter PDF para o formato PDF/E-1
+
+Na versão 25.9 da biblioteca Aspose.PDF for Python, a conversão para o formato PDF/E-1 está disponível. Você pode encontrar mais informações sobre este formato no [Documentação de Formatos de Arquivo](https://docs.fileformat.com/pdf/e/).
+
+```python
+import aspose.pdf as ap
+
+
+def convert_pdf_to_pdf_e(self, infile, outfile):
+ """PDF/E-1 Standard Support: Added the capability to convert PDF files to the PDF/E-1 format and to validate
+ the output files for compliance with the standard."""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Set up the PDF/E-1 format with PdfFormatConversionOptions
+ options = ap.PdfFormatConversionOptions(
+ ap.PdfFormat.PDF_E_1, ap.ConvertErrorAction.DELETE
+ )
+ # Convert to PDF/E-1 compliant document
+ document.convert(options)
+ # Save PDF document
+ document.save(path_outfile)
```
-- Obter e definir o valor de uma checkbox de múltiplos valores:
+### Adicionar Imagens Marcadas de um Stream
+
+Adicionar imagens marcadas a partir de um fluxo em PDF. A versão 25.9 oferece suporte a acessibilidade aprimorada em documentos PDF ao adicionar uma imagem de um fluxo de memória e marcá‑la com texto alternativo.
```python
+import aspose.pdf as ap
+
+
+def add_tagged_image_from_stream(self, image_file, outfile):
+ """Enhanced Accessibility for Tagged Images: possible to add alternative text to images loaded from a memory stream."""
+
+ path_image = self.data_dir + image_file
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ page = document.pages.add()
+ # Tag the document for accessibility
+ tagged_content = document.tagged_content
+ tagged_content.set_title("Tagged Image from Stream")
+ tagged_content.set_language("en-US")
+ # Add an image from a stream to the page
+ image_stream = io.FileIO(path_image, "r")
+ page.add_image(image_stream, ap.Rectangle(100, 600, 300, 800, True), None, True)
+ # Get the added image and set its alternative text
+ img = page.resources.images[1]
+ img.try_set_alternative_text("Aspose Logo", page)
+ # Save the document
+ document.save(path_outfile)
+```
+
+## O que há de novo no Aspose.PDF 25.8
+
+Esta atualização adiciona mais flexibilidade no layout e na gestão de segurança de documentos.
+
+1. Criar índices de conteúdo marcados (TOC).
+1. Redimensionar páginas PDF com dimensionamento de conteúdo.
+1. Aplicar bordas tracejadas às tabelas.
+
+### Criar Sumário Etiquetado (TOC)
+
+Gerar automaticamente sumários acessíveis (TOC) em PDFs marcados. Criar um Sumário totalmente acessível (TOC) em um PDF permite que os leitores naveguem pelo documento de maneira eficiente e garante a conformidade PDF/UA-1 para acessibilidade.
+
+```python
+import aspose.pdf as ap
+
+
+def create_pdf_with_toc_page(self, outfile):
+ """
+ Supports generating fully accessible Tagged Table of Contents (TOC) pages with proper navigation to
+ corresponding sections, ensuring PDF/UA-1 compliance.
+ """
+
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ # Get tagged content for the PDF structure
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ # Add the table of contents (TOC) page
+ toc_page = document.pages.add()
+ toc_page.toc_info = ap.TocInfo()
+ # Create a TOC structure element
+ toc_element = content.create_toc_element()
+ # Add the TOC element to the document structure tree
+ root_element.append_child(toc_element, True)
+ # Add a content page
+ document.pages.add()
+ # Create a header element and set its text
+ header = content.create_header_element(1)
+ header.set_text("1. Header")
+ # Add the header to the document structure
+ root_element.append_child(header, True)
+ # Create a TOC item (TOCI) element
+ toci = content.create_toci_element()
+ # Add the TOCI element to the TOC element
+ toc_element.append_child(toci, True)
+ # Add an entry to the TOC page and link it to the TOCI element
+ header.add_entry_to_toc_page(toc_page, toci)
+ # Add a logical reference to the header within the TOCI element
+ toci.add_ref(header)
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Redimensionar páginas com escala de conteúdo
+
+Redimensionar páginas de PDF preservando o layout e dimensionando proporcionalmente o conteúdo. Ao trabalhar com PDFs, pode ser necessário redimensionar páginas ou dimensionar o conteúdo para se ajustar a novas dimensões.
- import aspose.pdf as ap
-
- doc = ap.Document("example.pdf")
- form = doc.form
- checkbox = cast(ap.forms.CheckboxField, form.fields[0])
-
- # Os valores permitidos podem ser recuperados da coleção AllowedStates
- # Defina o valor da checkbox usando a propriedade Value
- checkbox.value = checkbox.allowed_states[0]
- checkbox_value = checkbox.value # o valor definido anteriormente, por exemplo, "option 1"
- # O valor deve ser qualquer elemento de AllowedStates
- checkbox.value = "option 2"
- checkbox_value = checkbox.value # opção 2
- # Desmarcar caixas definindo Value como "Off" ou definindo Checked como false
- checkbox.value = "Off"
- # ou, alternativamente:
- # checkbox.checked = False
- checkbox_value = checkbox.value # Off
+```python
+import aspose.pdf as ap
+
+
+def resize_page(
+ self, document, page_number, target_width, target_height, width, height, outfile
+):
+ """
+ Resize and scale page content using PdfFileEditor.ResizeContents.
+
+ A high-level helper that scales and/or resizes the rendered content streams of one or more pages
+ without performing a full content reflow. Use this to make existing page contents larger or smaller,
+ fit content into a different page box, or uniformly scale content for printing or display.
+
+ Parameters (recommended)
+ ------------------------
+ pdf_editor : Aspose.Pdf.Facades.PdfFileEditor
+ The PdfFileEditor instance that exposes the ResizeContents API.
+ page_numbers : int | Iterable[int] | slice, optional
+ Page index (1-based) or collection of page indices to process. If omitted or None, all pages
+ in the document are processed.
+ scale : float, optional
+ Uniform scale factor to apply to content (e.g., 0.5 reduces content to 50%). Mutually exclusive
+ with target_width/target_height unless keep_aspect_ratio is explicitly handled.
+ target_width : float, optional
+ Desired content width in PDF points (1 point = 1/72 inch). When provided, content will be scaled
+ to match this width (subject to keep_aspect_ratio and fit_mode).
+ target_height : float, optional
+ Desired content height in PDF points.
+ keep_aspect_ratio : bool, default True
+ If True, preserve the original aspect ratio when scaling to a target width or height.
+ fit_mode : {'fit', 'fill', 'stretch'}, default 'fit'
+ 'fit' — scale so content fits entirely inside the target box, preserving aspect ratio;
+ 'fill' — scale so the target box is completely covered (may crop content);
+ 'stretch' — scale independently in X and Y (may distort).
+ margins : tuple(float, float, float, float), optional
+ (left, top, right, bottom) margins in points to preserve inside the target box.
+ preserve_annotations : bool, default True
+ When True, attempt to preserve annotations/forms/interactive elements; some annotations may
+ require special handling after scaling.
+ preserve_transparency : bool, default True
+ Preserve transparency settings of page contents where possible.
+
+ Returns
+ -------
+ bool
+ True if the operation completed successfully. Some implementations operate in-place and may
+ return a status rather than a new document object.
+
+ Raises
+ ------
+ ValueError
+ If parameters are invalid (e.g., scale <= 0 or both scale and conflicting target dimensions).
+ IOError
+ If input/output streams cannot be read or written.
+ PdfProcessingError
+ If the PDF content streams cannot be interpreted or transformed by the editor.
+
+ Notes
+ -----
+ - All size and margin values are in PDF points (1/72 inch). Convert from inches or millimeters
+ before calling if necessary.
+ - This API scales content streams and their transform matrices; it does not reflow text or rebuild
+ page layout. Text encoded as vectors will scale; text drawn by layout engines may not reflow.
+ - Complex page objects such as XObjects, forms, and annotations may require additional post-processing.
+ - For raster-output use-cases (images/screenshots), consider exporting to an image at a target DPI
+ instead of scaling content streams.
+ - When targeting printing, compute target page size in points from the physical paper size and DPI.
+
+ Example (conceptual)
+ --------------------
+ # Scale pages 1-3 to 50%:
+ editor = PdfFileEditor(input_stream, output_stream)
+ editor.ResizeContents(page_numbers=[1,2,3], scale=0.5)
+ editor.Save()
+
+ # Fit page content into a letter-sized box while preserving aspect ratio:
+ editor.ResizeContents(page_numbers=None, target_width=612, target_height=792, fit_mode='fit')
+
+ See also
+ --------
+ PdfFileEditor.ResizeContents : Low-level API that performs content scaling and transform adjustments.
+ """
+
+ path_outfile = self.data_dir + outfile
+
+ margin_width = (target_width - width) / 2
+ margin_height = (target_height - height) / 2
+
+ # Set the parameters
+ param = ap.facades.PdfFileEditor.ContentsResizeParameters.page_resize(width, height)
+ param.top_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(margin_height)
+ param.bottom_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(
+ margin_height
+ )
+ param.left_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(margin_width)
+ param.right_margin = ap.facades.PdfFileEditor.ContentsResizeValue.units(
+ margin_width
+ )
+ param.change_media_box = True
+
+ # Do resize
+ ap.facades.PdfFileEditor().resize_contents(document, [page_number], param)
+
+ document.save(path_outfile)
```
-- Atualizar o estado da checkbox ao clicar do usuário:
+### Aplicar bordas tracejadas às tabelas
+
+Adicionar tabelas com estilos de borda personalizados usando linhas tracejadas. Este exemplo demonstra como aplicar estilos de borda personalizados — como linhas tracejadas ou pontilhadas — em tabelas em um documento PDF usando Aspose.PDF for Python via .NET.
```python
+import aspose.pdf as ap
+
+
+def create_table_with_dashed_border(self, outfile):
+ """Support style for table borders, allowing you to set dashed, dotted, or custom border styles for tables."""
+
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ page = document.pages.add()
+ table = ap.Table()
+ graph_info = ap.GraphInfo()
+ graph_info.dash_array = [10, 10]
+ graph_info.dash_phase = 5
+ graph_info.line_width = 3
+ table.border = ap.BorderInfo(ap.BorderSide.BOX, graph_info)
+ row = table.rows.add()
+ row.cells.add("Dashed border cell")
+
+ page.paragraphs.add(table)
- import aspose.pdf as ap
- from aspose.pycore import cast
-
- input_file = DIR_INPUT + "input.pdf"
- document = ap.Document(input_file)
- point = ap.Point(62,462) # por exemplo, as coordenadas de um clique do mouse
- # Opção 1: percorrer as anotações na página
- page = document.pages[5]
- for annotation in page.annotations:
- if(annotation.rect.contains(point)):
- widget = cast(ap.annotations.WidgetAnnotation, annotation)
- checkbox = cast(ap.forms.CheckboxField, widget.parent)
- if(annotation.active_state == "Off"):
- checkbox.value = widget.get_checked_state_name()
- else:
- checkbox.value = "Off"
- break
- # Opção 2: percorrer os campos no AcroForm
- for widget in document.form:
- field = cast(ap.forms.Field, widget)
- if(field == None):
- continue
- checkBoxFound = False
- for annotation in field:
- if(annotation.rect.contains(point)):
- checkBoxFound = True
- if(annotation.active_state=="Off"):
- annotation.parent.value = annotation.get_checked_state_name()
- else:
- annotation.parent.value = "Off"
- if(checkBoxFound):
- break
+ document.save(path_outfile)
```
+## O que há de novo no Aspose.PDF 25.7
+
+A versão 25.7 foca em melhor suporte a anotações, ajuste de texto e gerenciamento de assinaturas digitais.
-## O que há de novo no Aspose.PDF 23.7
+1. Ajustar texto dentro das formas.
+1. Criptografe PDFs usando um certificado público.
+1. Adicionar anotações de nuvem e polígono.
-Desde a versão 23.7, há suporte para adicionar a extração de formas:
+### Criptografar PDFs com um Certificado Público
+
+Proteja seus PDFs com criptografia baseada em certificados públicos. A criptografia com certificado público permite que os PDFs sejam criptografados para destinatários específicos, garantindo que apenas os detentores das chaves privadas correspondentes possam abrir e ler o documento.
```python
+import aspose.pdf as ap
+
+
+def pub_sec_encryption(self, outfile, pub_cert, crypto_algorithm):
+ """Support for public certificate encryption, allowing PDFs to be encrypted so that only specified certificate
+ holders can open the document."""
- import aspose.pdf as ap
+ # The path to the recipient certificate
+ path_outfile = self.data_dir + outfile
+ path_cert = self.data_dir + pub_cert
- input1_file = DIR_INPUT + "input_1.pdf"
- input2_file = DIR_INPUT + "input_2.pdf"
+ # Create the PDF document
+ with ap.Document() as document:
+ # Add an info
+ document.info.title = "TestTitle"
+ document.info.author = "TestAuthor"
- source = ap.Document(input1_file)
- dest = ap.Document(input2_file)
+ # Add a page and add some text
+ page = document.pages.add()
+ text = ap.text.TextFragment("Hello World!")
+ page.paragraphs.add(text)
- graphic_absorber = ap.vector.GraphicsAbsorber()
- graphic_absorber.visit(source.pages[1])
- area = ap.Rectangle(90, 250, 300, 400, True)
- dest.pages[1].add_graphics(graphic_absorber.elements, area)
+ # Load certificate
+ with open(path_cert, "rb") as f:
+ cert_data = f.read()
+
+ # Encrypt the PDF document
+ document.encrypt(ap.Permissions.PRINT_DOCUMENT, crypto_algorithm, [cert_data])
+
+ # Save the PDF document. A private key certificate must be installed in the storage to open the document
+ # by Adobe Acrobat.
+ document.save(path_outfile)
```
-Também suporta a capacidade de detectar Overflow ao adicionar texto:
+### Ajustar Texto Dentro de um Retângulo
+
+Dimensionar automaticamente o texto para caber dentro de um retângulo definido. Ao atualizar ou expandir o texto em um PDF, ele pode exceder os limites originais do parágrafo.
```python
+import re
+import aspose.pdf as ap
+
+
+def fit_text_into_rectangle(self, infile, outfile):
+ """New functionality to fit expanded text content within the bounds of a paragraph’s original rectangle,
+ adjusting font size and spacing automatically."""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Extract the paragraph text (or provide the specific text you want to replace)
+ text_absorber = ap.text.TextAbsorber()
+ text_absorber.visit(document)
+ paragraph_text = text_absorber.text
+ paragraph_text = paragraph_text.replace("\n", " ")
+
+ # Search for the text fragment
+ searchable_content = re.sub(" ", r"\\s+", paragraph_text)
+ text_fragment_absorber = ap.text.TextFragmentAbsorber(
+ searchable_content, ap.text.TextSearchOptions(True)
+ )
+ document.pages.accept(text_fragment_absorber)
+ text_fragment = text_fragment_absorber.text_fragments[1]
+ # Use the text fragment’s rectangle as the target replacement area
+ text_fragment.replace_options.rectangle = text_fragment.rectangle
+ # Enable font size reduction to fit the text within the specified area
+ text_fragment.replace_options.font_size_adjustment_action = (
+ ap.text.TextReplaceOptions.FontSizeAdjustment.SHRINK_TO_FIT
+ )
+ # Optionally adjust spacing to justify the text width
+ text_fragment.replace_options.replace_adjustment_action = (
+ ap.text.TextReplaceOptions.ReplaceAdjustment.ADJUST_SPACE_WIDTH
+ )
+ # Duplicate the paragraph content and assign it to the text fragment
+ text_fragment.text = paragraph_text + " " + paragraph_text
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Adicionar anotações de polígonos em nuvem
+
+Melhore fluxos de revisão de PDF com anotações em estilo nuvem ou polígono. As anotações de polígono permitem que você destaque ou enfatize áreas específicas em um PDF usando formas geométricas.
- import aspose.pdf as ap
-
- output_file = DIR_OUTPUT + "output.pdf"
- doc = ap.Document()
- paragraph_content = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras nisl tortor, efficitur sed cursus in, lobortis vitae nulla. Quisque rhoncus, felis sed dictum semper, est tellus finibus augue, ut feugiat enim risus eget tortor. Nulla finibus velit nec ante gravida sollicitudin. Morbi sollicitudin vehicula facilisis. Vestibulum ac convallis erat. Ut eget varius sem. Nam varius pharetra lorem, id ullamcorper justo auctor ac. Integer quis erat vitae lacus mollis volutpat eget et eros. Donec a efficitur dolor. Maecenas non dapibus nisi, ut pellentesque elit. Sed pellentesque rhoncus ante, a consectetur ligula viverra vel. Integer eget bibendum ante. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Curabitur elementum, sem a auctor vulputate, ante libero iaculis dolor, vitae facilisis dolor lorem at orci. Sed laoreet dui id nisi accumsan, id posuere diam accumsan."
- fragment = ap.text.TextFragment(paragraph_content)
- rectangle = ap.Rectangle(100, 600, 500, 700, False)
- paragraph = ap.text.TextParagraph()
- paragraph.vertical_alignment = ap.VerticalAlignment.TOP
- paragraph.formatting_options.wrap_mode = ap.text.TextFormattingOptions.WordWrapMode.BY_WORDS
- paragraph.rectangle = rectangle
- is_fit_rectangle = fragment.text_state.is_fit_rectangle(paragraph_content, rectangle)
-
- while is_fit_rectangle == False:
- fragment.text_state.font_size -= 0.5
- is_fit_rectangle = fragment.text_state.is_fit_rectangle(paragraph_content, rectangle)
-
- paragraph.append_line(fragment)
- builder = ap.text.TextBuilder(doc.pages.add())
- builder.append_paragraph(paragraph)
- doc.save(output_file)
+```python
+import aspose.pdf as ap
+
+
+def add_cloud_polygon_annotation(self, outfile):
+ """The ability to apply “Cloudy” border effects to polygon annotations for enhanced visual appearance."""
+
+ path_outfile = self.data_dir + outfile
+
+ # Create the PDF document
+ with ap.Document() as document:
+ page = document.pages.add()
+ # Add Cloud Polygon (rectangle)
+ left = 100.0
+ top = 270.0
+ right = 420.0
+ bottom = 80.0
+ cloud_polygon = ap.annotations.PolygonAnnotation(
+ page,
+ ap.Rectangle(left, top, right, bottom, True),
+ [
+ ap.Point(left, top),
+ ap.Point(right, top),
+ ap.Point(right, bottom),
+ ap.Point(left, bottom),
+ ],
+ )
+ cloud_polygon.color = ap.Color.blue
+ border = ap.annotations.Border(cloud_polygon)
+ border.width = 3
+ border.effect = ap.annotations.BorderEffect.CLOUDY
+ cloud_polygon.border = border
+ page.annotations.append(cloud_polygon)
+ # Add another Cloud Polygon
+ cloud_polygon = ap.annotations.PolygonAnnotation(
+ page,
+ ap.Rectangle(400, 400, 580, 600, True),
+ [
+ ap.Point(400, 450),
+ ap.Point(450, 300),
+ ap.Point(520, 300),
+ ap.Point(580, 500),
+ ap.Point(500, 600),
+ ],
+ )
+ cloud_polygon.color = ap.Color.dark_green
+ cloud_polygon.interior_color = ap.Color.aqua
+ border = ap.annotations.Border(cloud_polygon)
+ border.width = 3
+ border.effect = ap.annotations.BorderEffect.CLOUDY
+ cloud_polygon.border = border
+ page.annotations.append(cloud_polygon)
+ # Save PDF document
+ document.save(path_outfile)
```
+## O que há de novo no Aspose.PDF 25.6
+
+Os principais recursos desta versão:
+
+1. Suporte a texto alternativo de imagem.
+1. Acesso às informações da licença.
+1. Anotações de Texto Livre Estilizado.
+1. Aparência de assinatura digital personalizável.
-## O que há de novo no Aspose.PDF 23.6
+### Suporte a Texto Alternativo da Imagem
-Suporte à capacidade de definir o título da página HTML, Epub:
+Defina e recupere o texto alternativo para imagens a fim de melhorar a acessibilidade para leitores de tela.
```python
+import aspose.pdf as ap
+
+
+def get_set_alternative_text_for_image(self, infile, outfile):
+ """To get and set the alternative text for images"""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Alternative text to be given to the image
+ alt_text = "Alternative text for image"
+ # Image for which alternative text will be set and get
+ x_image = document.pages[1].resources.images[1]
+ # Try to set alternative text for an image
+ result = x_image.try_set_alternative_text(alt_text, document.pages[1])
+ # If set is successful, then get the alternative text for the image
+ if result:
+ alt_texts = x_image.get_alternative_text(document.pages[1])
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Acesso às informações da licença
- import aspose.pdf as ap
+Recupere metadados detalhados da licença (usuário licenciado, data de validade) via LicenseInfo.
- input_pdf = DIR_INPUT + "input.pdf"
- output_html = DIR_OUTPUT + "output_title.html"
- options = ap.HtmlSaveOptions()
- options.fixed_layout = True
- options.raster_images_saving_mode = ap.HtmlSaveOptions.RasterImagesSavingModes.AS_EMBEDDED_PARTS_OF_PNG_PAGE_BACKGROUND
- options.parts_embedding_mode = ap.HtmlSaveOptions.PartsEmbeddingModes.EMBED_ALL_INTO_HTML
- options.title = "NOVA PÁGINA & TÍTULO" # <-- isto foi adicionado
+```python
+import aspose.pdf as ap
- document = ap.Document(input_pdf)
- document.save(output_html, options)
+
+def get_license_info_example(self, infile):
+ """A new way to access license information programmatically through the LicenseInfo property of the License class"""
+
+ path_infile = self.data_dir + infile
+
+ # Initialize license object
+ lic = ap.License()
+ # Set license
+ lic.set_license(path_infile)
+ # Get license info.
+ lic_license_info = lic.license_info
+ print(lic_license_info.licensed_to)
+ print(lic_license_info.subscription_expiry)
```
-## O que há de novo no Aspose.PDF 23.5
+### Anotações de Texto Livre Estilizadas
-Desde a versão 23.5, há suporte para adicionar a opção FontSize em RedactionAnnotation. Use o próximo trecho de código para resolver esta tarefa:
+Use SetTextStyle para aplicar estilos como negrito, itálico, sublinhado, ou limpar a formatação existente do texto da anotação.
```python
+import aspose.pdf as ap
+
+
+def add_free_annotation_and_set_styles(self, outfile):
+ """Extended formatting capabilities for annotation text through the SetTextStyle method family of the
+ FreeTextAnnotation class"""
+
+ path_outfile = self.data_dir + outfile
+
+ # Open PDF document
+ with ap.Document() as document:
+ # Add new page
+ page = document.pages.add()
+ # Instantiate DefaultAppearance object
+ default_appearance = ap.annotations.DefaultAppearance(
+ "Arial", 16, drawing.Color.blue
+ )
+ # Create annotation
+ free_text = ap.annotations.FreeTextAnnotation(
+ page, ap.Rectangle(20, 600, 400, 650, True), default_appearance
+ )
+ # Specify the contents of annotation
+ free_text.contents = "Text of FreeTextAnnotation with different styles"
+ # Add annotation to annotations collection of page
+ page.annotations.append(free_text)
+ # Set styles for annotation text
+ free_text.set_text_style(0, 4, ap.annotations.RichTextFontStyles.ITALIC)
+ free_text.set_text_style(
+ 8,
+ 26,
+ ap.annotations.RichTextFontStyles.UNDERLINE
+ | ap.annotations.RichTextFontStyles.BOLD,
+ )
+ free_text.set_text_style(27, 86, ap.annotations.RichTextFontStyles.BOLD)
+ free_text.set_text_style(
+ 42,
+ 45,
+ ap.annotations.RichTextFontStyles.CLEAR_EXISTING
+ | ap.annotations.RichTextFontStyles.UNDERLINE,
+ )
+ # Save PDF document
+ document.save(path_outfile)
+```
+
+### Aparência Personalizável da Assinatura Digital
+
+Adicione imagens, altere fontes e sobreponha gráficos de assinatura ao conteúdo de fundo para melhorar a identidade da marca ou a consistência de design.
- import aspose.pdf as ap
-
- doc = ap.Document(DIR_INPUT + "input.pdf")
- # Cria uma instância de RedactionAnnotation para uma região específica da página
- annot = ap.annotations.RedactionAnnotation(doc.pages[1], ap.Rectangle(367, 756.919982910156, 420, 823.919982910156, True))
- annot.fill_color = ap.Color.black
- annot.border_color = ap.Color.yellow
- annot.color = ap.Color.blue
- # Texto a ser impresso na anotação de redação
- annot.overlay_text = "(Desconhecido)"
- annot.text_alignment = ap.HorizontalAlignment.CENTER
- # Repetir texto de sobreposição sobre a anotação de redação
- annot.repeat = False
- # Nova propriedade aqui!
- annot.font_size = 20
- # Adicionar anotação à coleção de anotações da primeira página
- doc.pages[1].annotations.add(annot, False)
- # Achata a anotação e redige o conteúdo da página (ou seja, remove texto e imagem
- # Sob a anotação redigida)
- annot.redact()
- out_file = DIR_OUTPUT + "RedactPage_out.pdf"
- doc.save(out_file)
+```python
+import aspose.pdf as ap
+
+
+def customization_features_for_digital_sign(
+ self, infile, outfile, image_file, pfx_file
+):
+ """Enhanced digital signature appearance allowing signature images to appear over background text."""
+
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+ path_image = self.data_dir + image_file
+ path_pfx = self.data_dir + pfx_file
+
+ with ap.facades.PdfFileSignature() as pdf_file_signature:
+ # Bind PDF document
+ pdf_file_signature.bind_pdf(path_infile)
+ # Create a rectangle for signature location
+ rect = drawing.Rectangle(10, 10, 300, 50)
+ # Create any of the three signature types
+ signature = ap.forms.PKCS7Detached(path_pfx, "12345")
+ # Create signature appearance
+ signature_custom_appearance = ap.forms.SignatureCustomAppearance()
+ signature_custom_appearance.font_size = 6
+ signature_custom_appearance.font_family_name = "Times New Roman"
+ signature_custom_appearance.digital_signed_label = "Signed by:"
+ signature_custom_appearance.is_foreground_image = True
+ # Set signature appearance
+ signature.custom_appearance = signature_custom_appearance
+ # Set signature appearance
+ pdf_file_signature.signature_appearance = path_image
+ pdf_file_signature.sign(1, True, rect, signature)
+ # Save PDF document
+ pdf_file_signature.save(path_outfile)
```
+## O que há de novo no Aspose.PDF 25.5
+
+A última atualização do Aspose.PDF introduz várias melhorias poderosas que aprimoram a acessibilidade, compatibilidade e segurança de documentos. Os desenvolvedores agora podem extrair certificados digitais diretamente de arquivos PDF assinados, permitindo verificações avançadas e de conformidade.
-Suporte para Python 3.5 foi descontinuado. Suporte para Python 3.11 foi adicionado.
+1. Extrair certificados das assinaturas de PDF.
+1. Criar Listas Ordenadas Estruturadas em Tagged PDFs.
+1. Verificar assinaturas com certificados de chave pública.
+1. Converter formulários XFA dinâmicos para PDFs AcroForm.
+1. Substituição de Fonte em PDF - Conversão XPS.
-## O que há de novo no Aspose.PDF 23.3
+### Extrair certificados das assinaturas PDF
-A versão 23.3 introduziu suporte para adicionar uma resolução a uma imagem. Dois métodos podem ser usados para resolver este problema:
+Recupere os certificados incorporados usando 'extract_certificate()'.
```python
+import aspose.pdf as ap
+
+
+def extract_certificate(self, infile):
+ path_infile = self.data_dir + infile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ with ap.facades.PdfFileSignature(document) as signature:
+ # Get signature names
+ signature_names = signature.get_signature_names(True)
+ for signature_name in signature_names:
+ # Extract certificate
+ certificate = []
+ if signature.try_extract_certificate(signature_name, certificate):
+ print(certificate[0] is not None)
+```
- import aspose.pdf as ap
+### Criar Listas Ordenadas Estruturadas em PDFs Marcados
- input_file = DIR_INPUT + "input.jpg"
- table = ap.Table()
- table.column_widths = "600"
- image = ap.Image()
- image.is_apply_resolution = True
- image.file = input_file
- for i in range(0, 2):
- row = table.rows.add()
- cell = row.cells.add()
- cell.paragraphs.add(image)
+Gere listas numeradas acessíveis (com itens aninhados) dentro de Documentos marcados.
- page.paragraphs.add(table)
+```python
+import aspose.pdf as ap
+
+
+def create_ordered_list(self, outfile):
+ path_outfile = self.data_dir + outfile
+
+ # Create or open PDF document
+ with ap.Document() as document:
+ content = document.tagged_content
+ root_element = content.root_element
+ content.set_language("en-US")
+ root_list = content.create_list_element()
+ span_for_lbl_1 = content.create_span_element()
+ span_for_lbl_1.set_text("1. ")
+ position_settings = ap.tagged.PositionSettings()
+ position_settings.is_in_line_paragraph = True
+ span_for_lbl_1.adjust_position(position_settings)
+ span_for_body_1 = content.create_span_element()
+ span_for_body_1.set_text("bread")
+ span_for_body_1.adjust_position(position_settings)
+ lbl_1 = content.create_list_lbl_element()
+ lbl_1.append_child(span_for_body_1, True)
+ l_body_1 = content.create_list_l_body_element()
+ l_body_1.append_child(span_for_lbl_1, True)
+ li_1 = content.create_list_li_element()
+ li_1.append_child(lbl_1, True)
+ li_1.append_child(l_body_1, True)
+ root_list.append_child(li_1, True)
+ span_for_lbl_2 = content.create_span_element()
+ span_for_lbl_2.set_text("2. ")
+ span_for_body_2 = content.create_span_element()
+ span_for_body_2.set_text("milk")
+ span_for_body_2.adjust_position(position_settings)
+ lbl_2 = content.create_list_lbl_element()
+ lbl_2.append_child(span_for_lbl_2, True)
+ l_body_2 = content.create_list_l_body_element()
+ l_body_2.append_child(span_for_body_2, True)
+ li_2 = content.create_list_li_element()
+ li_2.append_child(lbl_2, True)
+ li_2.append_child(l_body_2, True)
+ root_list.append_child(li_2, True)
+ nested_list_depth_1 = content.create_list_element()
+ span_for_lbl_3_1 = content.create_span_element()
+ span_for_lbl_3_1.set_text("3.1. ")
+ position_settings_lbl_3_1 = ap.tagged.PositionSettings()
+ position_settings_lbl_3_1.is_in_line_paragraph = False
+ margin_info = ap.MarginInfo()
+ margin_info.left = 50
+ position_settings_lbl_3_1.margin = margin_info
+ span_for_lbl_3_1.adjust_position(position_settings_lbl_3_1)
+ span_for_body_3_1 = content.create_span_element()
+ span_for_body_3_1.set_text("apples")
+ span_for_body_3_1.adjust_position(position_settings)
+ lbl_3_1 = content.create_list_lbl_element()
+ lbl_3_1.append_child(span_for_lbl_3_1, True)
+ l_body_3_1 = content.create_list_l_body_element()
+ l_body_3_1.append_child(span_for_body_3_1, True)
+ li_3_1 = content.create_list_li_element()
+ li_3_1.append_child(lbl_3_1, True)
+ li_3_1.append_child(l_body_3_1, True)
+ nested_list_depth_1.append_child(li_3_1, True)
+ span_for_lbl_3_2 = content.create_span_element()
+ span_for_lbl_3_2.set_text("3.2. ")
+ span_for_lbl_3_2.adjust_position(position_settings_lbl_3_1)
+ span_for_body_3_2 = content.create_span_element()
+ span_for_body_3_2.set_text("banana")
+ span_for_body_3_2.adjust_position(position_settings)
+ lbl_3_2 = content.create_list_lbl_element()
+ lbl_3_2.append_child(span_for_lbl_3_2, True)
+ l_body_3_2 = content.create_list_l_body_element()
+ l_body_3_2.append_child(span_for_body_3_2, True)
+ li_3_2 = content.create_list_li_element()
+ li_3_2.append_child(lbl_3_2, True)
+ li_3_2.append_child(l_body_3_2, True)
+ nested_list_depth_1.append_child(li_3_2, True)
+ span_for_lbl_3 = content.create_span_element()
+ span_for_lbl_3.set_text("3. ")
+ span_for_body_3 = content.create_span_element()
+ span_for_body_3.set_text("fruits")
+ span_for_body_3.adjust_position(position_settings)
+ lbl_3 = content.create_list_lbl_element()
+ lbl_3.append_child(span_for_lbl_3, True)
+ l_body_3 = content.create_list_l_body_element()
+ l_body_3.append_child(span_for_body_3, True)
+ li_3 = content.create_list_li_element()
+ li_3.append_child(lbl_3, True)
+ li_3.append_child(l_body_3, True)
+ l_body_3.append_child(nested_list_depth_1, True)
+ root_list.append_child(li_3, True)
+ root_element.append_child(root_list, True)
+ # Save Tagged PDF Document
+ document.save(path_outfile)
```
-A imagem será colocada com resolução escalada ou você pode definir as propriedades FixedWidth ou FixedHeight em combinação com IsApplyResolution.
+### Verificar assinaturas com certificados de chave pública
-## O que há de novo no Aspose.PDF 23.1
+Validar assinaturas digitais usando certificados de chave pública externos.
-Desde a versão 23.1, há suporte para criação de anotação PrinterMark.
+```python
+import aspose.pdf as ap
-As marcas de impressora são símbolos gráficos ou texto adicionados a uma página para ajudar o pessoal de produção a identificar componentes de um trabalho de múltiplas chapas e manter uma saída consistente durante a produção.
- Exemplos comumente usados na indústria gráfica incluem:
-- Alvos de registro para alinhar chapas
-- Rampas de cinza e barras de cores para medir cores e densidades de tinta
-- Marcas de corte mostrando onde o meio de saída deve ser cortado
+def verify_with_public_key_certificate1(self, certificate, infile):
+ path_infile = self.data_dir + infile
-Mostraremos o exemplo da opção com barras de cores para medir cores e densidades de tinta. Existe uma classe abstrata básica PrinterMarkAnnotation e dela deriva ColorBarAnnotation - que já implementa essas listras. Vamos verificar o exemplo:
+ # Create an instance of PdfFileSignature for working with signatures in the document
+ with ap.facades.PdfFileSignature(path_infile) as file_sign:
+ # Get a list of signatures
+ signature_names = file_sign.get_signature_names(True)
+ # Verify the signature with the given name.
+ return file_sign.verify_signature(signature_names[0], certificate)
+```
-```python
+### Converter Formulários XFA Dinâmicos para PDFs AcroForm
+
+Padronize formulários XFA com 'ignore_needs_rendering'.
- import aspose.pdf as ap
-
- out_file = DIR_OUTPUT + "ColorBarTest.pdf"
- doc = ap.Document()
- page = doc.pages.add()
- page.trim_box = ap.Rectangle(20, 20, 580, 820, True)
- add_annotations(page)
- doc.save(out_file)
-
-
-def add_annotations(page: ap.Page):
- rect_black = ap.Rectangle(100, 300, 300, 320, True)
- rect_cyan = ap.Rectangle(200, 600, 260, 690, True)
- rect_magenta = ap.Rectangle(10, 650, 140, 670, True)
- color_bar_black = ap.annotations.ColorBarAnnotation(page, rect_black, ap.annotations.ColorsOfCMYK.BLACK)
- color_bar_cyan = ap.annotations.ColorBarAnnotation(page, rect_cyan, ap.annotations.ColorsOfCMYK.CYAN)
- color_ba_magenta = ap.annotations.ColorBarAnnotation(page, rect_magenta, ap.annotations.ColorsOfCMYK.BLACK)
- color_ba_magenta.color_of_cmyk = ap.annotations.ColorsOfCMYK.MAGENTA
- color_bar_yellow = ap.annotations.ColorBarAnnotation(page, ap.Rectangle(400, 250, 450, 700, True), ap.annotations.ColorsOfCMYK.YELLOW)
- page.annotations.add(color_bar_black, False)
- page.annotations.add(color_bar_cyan, False)
- page.annotations.add(color_ba_magenta, False)
- page.annotations.add(color_bar_yellow, False)
+```python
+import aspose.pdf as ap
+
+
+def convert_xfa_form_with_ignore_needs_rendering(self, infile, outfile):
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Load dynamic XFA form
+ with ap.Document(path_infile) as document:
+ # check if XFA is present & if rendering should be overwritten
+ if not document.form.needs_rendering and document.form.has_xfa:
+ document.form.ignore_needs_rendering = True
+ # Set the form fields type as standard AcroForm
+ document.form.type = ap.forms.FormType.STANDARD
+ # Save the resultant PDF
+ document.save(path_outfile)
```
-Also suporte a extração de imagens vetoriais. Tente usar o seguinte código para detectar e extrair gráficos vetoriais:
+
+### Substituição de Fonte em PDF - Conversão XPS
+
+Substitua fontes ausentes por um fallback padrão (por exemplo, “Courier New”).
```python
+import aspose.pdf as ap
+
+
+def replace_font_when_converting_pdf_to_xps(self, infile, outfile):
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+
+ # Create XpsSaveOptions instance
+ xps_save_options = ap.XpsSaveOptions()
+ # use_embedded_true_type_fonts option specifies whether to use embedded TrueType fonts
+ xps_save_options.use_embedded_true_type_fonts = False
+ # The specified default font will be used if the embedded font name cannot be found in the system
+ xps_save_options.default_font = "Courier New"
+ # Open PDF document
+ doc = ap.Document(path_infile)
+ # Save the resultant XPS
+ doc.save(path_outfile, xps_save_options)
+```
+
+## Novidades do Aspose.PDF 25.4
+
+### Marcação automática durante a conversão PDF/A
- import aspose.pdf as ap
+Converter PDFs para PDF/A-1b com criação automática de estrutura lógica para melhorar a acessibilidade.
- input_pdf = DIR_INPUT + "input.pdf"
- output_pdf = DIR_OUTPUT + "output.svg"
- doc = ap.Document(input_pdf)
- doc.pages[1].try_save_vector_graphics(output_pdf)
-```
\ No newline at end of file
+```python
+import aspose.pdf as ap
+
+
+def convert_to_pdfa_with_automatic_tagging(self, infile, outfile, outlogfile):
+ path_infile = self.data_dir + infile
+ path_outfile = self.data_dir + outfile
+ path_outlogfile = self.data_dir + outlogfile
+
+ # Open PDF document
+ with ap.Document(path_infile) as document:
+ # Create conversion options
+ options = ap.PdfFormatConversionOptions(
+ path_outlogfile, ap.PdfFormat.PDF_A_1B, ap.ConvertErrorAction.DELETE
+ )
+ # Create auto-tagging settings
+ # aspose.pdf.AutoTaggingSettings.default may be used to set the same settings as given below
+ auto_tagging_settings = ap.AutoTaggingSettings()
+ # Enable auto-tagging during the conversion process
+ auto_tagging_settings.enable_auto_tagging = True
+ # Use the heading recognition strategy that's optimal for the given document structure
+ auto_tagging_settings.heading_recognition_strategy = (
+ ap.HeadingRecognitionStrategy.AUTO
+ )
+ # Assign auto-tagging settings to be used during the conversion process
+ options.auto_tagging_settings = auto_tagging_settings
+ # During the conversion, the document logical structure will be automatically created
+ document.convert(options)
+ # Save PDF document
+ document.save(path_outfile)
+```
diff --git a/pt/python-net/working-with-facades/_index.md b/pt/python-net/working-with-facades/_index.md
new file mode 100644
index 0000000000..adef7d0df0
--- /dev/null
+++ b/pt/python-net/working-with-facades/_index.md
@@ -0,0 +1,60 @@
+---
+title: Trabalhando com PDF Facades
+linktitle: Trabalhando com PDF Facades
+type: docs
+weight: 100
+url: /pt/python-net/working-with-facades/
+description: Saiba como usar Aspose.PDF Facades em Python via .NET para editar conteúdo PDF, gerenciar formulários e anotações, aplicar segurança, assinar arquivos, carimbar páginas, imprimir documentos e inspecionar metadados PDF.
+is_node: true
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Use PDF Facades em Python via .NET para formulários, assinaturas, segurança, carimbos e processamento de arquivos.
+Abstract: Esta seção explica como usar Aspose.PDF Facades para Python via .NET para lidar com fluxos de trabalho PDF comuns com APIs simplificadas. Saiba como mesclar e dividir arquivos, editar conteúdo, gerenciar anotações e formulários, aplicar segurança, assinar documentos, adicionar carimbos, imprimir PDFs e recuperar informações do arquivo.
+---
+
+Aspose.PDF Facades é um conjunto de classes auxiliares no Aspose.PDF para Python via .NET que permite executar operações PDF comuns sem trabalhar diretamente com o modelo de objeto de documento de baixo nível.
+
+Esta seção cobre as principais classes fachada que você pode usar para editar conteúdo PDF, gerenciar formulários, adicionar anotações, aplicar segurança, assinar arquivos, trabalhar com carimbos, imprimir documentos e recuperar informações de arquivos PDF em aplicações Python.
+
+Se você precisar de uma API prática para tarefas cotidianas de processamento de PDF, como mesclar documentos, preencher formulários, aplicar permissões ou assinar arquivos, a API Facades oferece uma maneira simplificada de criar esses fluxos de trabalho.
+
+## Por que usar Facades no Aspose.PDF for Python via .NET
+
+Os PDF Facades fornecem uma camada de API simplificada para fluxos de trabalho comuns de documentos. Eles são úteis quando você precisa executar operações práticas de PDF rapidamente, como mesclar arquivos, preencher formulários, carimbar páginas ou aplicar assinaturas digitais, sem trabalhar diretamente com o modelo de objeto de documento completo.
+
+Eles são especialmente úteis para cenários de automação onde você deseja APIs concisas e orientadas a tarefas para edição de PDF, manipulação de formulários, atualizações de anotações, segurança de documentos e fluxos de trabalho de saída em Python.
+
+## Principais classes de facade PDF
+
+Nesta seção, você aprenderá como trabalhar com essas classes de facade:
+
+- [Divida, mescle e processe arquivos PDF com **PdfFileEditor**](/pdf/pt/python-net/pdffileeditor-class/).
+- [Edite o conteúdo PDF com **PdfContentEditor**](/pdf/pt/python-net/pdfcontenteditor-class/).
+- [Gerencie anotações e comentários de PDF com **PdfAnnotationEditor**](/pdf/pt/python-net/pdfannotationeditor-class/).
+- [Assine arquivos PDF com certificados usando **PdfFileSignature**](/pdf/pt/python-net/pdffilesignature-class/).
+- [Adicione, atualize e exclua campos de formulário com **FormEditor**](/pdf/pt/python-net/formeditor-class/).
+- [Acesse metadados PDF e detalhes do arquivo com **PdfFileInfo**](/pdf/pt/python-net/pdffileinfo-class/).
+- [Criptografe, descriptografe e defina privilégios de documento com **PdfFileSecurity**](/pdf/pt/python-net/pdffilesecurity-class/).
+- [Adicione carimbos de página e imagem com **PdfFileStamp**](/pdf/pt/python-net/pdffilestamp-class/).
+- [Imprima documentos PDF com **PdfViewer**](/pdf/pt/python-net/pdfviewer-class/).
+- [Trabalhe com dados AcroForm usando **Form**](/pdf/pt/python-net/form-class/).
+- [Aplique carimbos a documentos PDF com **Stamp**](/pdf/pt/python-net/stamp-class/).
+
+## Fluxos de trabalho populares da fachada PDF
+
+Use estas APIs de fachada quando precisar automatizar tarefas comuns de PDF em Python:
+
+- Mescle, divida e reorganize arquivos PDF para fluxos de trabalho de processamento de documentos.
+- Preencha formulários PDF interativos, atualize campos e extraia valores de formulário.
+- Adicione anotações, comentários e carimbos às páginas PDF existentes.
+- Aplique criptografia, permissões e assinaturas digitais para proteger documentos.
+- Inspecione metadados de PDF e propriedades de arquivo antes de arquivar, imprimir ou entregar.
+
+## Tarefas comuns de PDF abordadas nesta seção
+
+Use os artigos nesta seção para lidar com fluxos de trabalho práticos de PDF, como preenchimento de formulários, gerenciamento de campos, edição de anotações, manipulação de anexos, substituição de texto, processamento de páginas, segurança de PDF e operações de assinatura em Python.
+
+Para explorar APIs específicas, comece com os links de classe acima e depois vá para os artigos baseados em tarefas nesta seção para exemplos passo a passo.
diff --git a/pt/python-net/working-with-facades/form/_index.md b/pt/python-net/working-with-facades/form/_index.md
new file mode 100644
index 0000000000..d76bd9873f
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/_index.md
@@ -0,0 +1,21 @@
+---
+title: Classe Form
+type: docs
+weight: 140
+url: /pt/python-net/form-class/
+description: Esta seção explica como trabalhar com as Facades do Aspose.PDF usando a Classe Form.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Trabalhe com dados de formulário PDF e campos AcroForm em Python usando a classe Form.
+Abstract: Esta seção explica como usar a fachada Form no Aspose.PDF for Python via .NET para manipular formulários PDF interativos. Aprenda como exportar e importar dados de formulário, preencher diferentes tipos de campo, gerenciar campos existentes, trabalhar com campos de botão e imagens, e ler valores de formulário programaticamente.
+---
+
+- [Exportando Dados de Formulário](/pdf/pt/python-net/exporting-form-data/)
+- [Importando Dados do Form](/pdf/pt/python-net/importing-form-data/)
+- [Preenchendo Campos de Formulário](/pdf/pt/python-net/filling-form-fields/)
+- [Campos de Botão e Imagens](/pdf/pt/python-net/button-fields-and-images/)
+- [Gerenciando Campos de Form](/pdf/pt/python-net/managing-form-fields/)
+- [Lendo Valores do Formulário](/pdf/pt/python-net/reading-form-values/)
diff --git a/pt/python-net/working-with-facades/form/button-fields-and-images/_index.md b/pt/python-net/working-with-facades/form/button-fields-and-images/_index.md
new file mode 100644
index 0000000000..bcdb38372e
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/button-fields-and-images/_index.md
@@ -0,0 +1,85 @@
+---
+title: Campos de Botão e Imagens
+type: docs
+weight: 40
+url: /pt/python-net/button-fields-and-images/
+description: Este exemplo demonstra como gerenciar campos de botão em um formulário PDF usando a API Aspose.PDF Facades.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Adicionando Aparência de Imagem a Campos de Botão & Lendo Sinais de Submissão
+Abstract: Formulários PDF frequentemente incluem botões interativos que acionam ações JavaScript ou enviam os dados do formulário. Você pode melhorar visualmente os campos de botão adicionando imagens como sua aparência e inspecionar programaticamente seu comportamento de envio.
+---
+
+## Adicionar Aparência de Imagem a Campos de Botão
+
+Este trecho de código explica como adicionar uma aparência de imagem a um campo de botão existente em um formulário PDF. A operação melhora a apresentação visual de um botão PDF substituindo sua aparência padrão por uma imagem personalizada.
+
+1. Crie um objeto Form.
+1. Vincule o arquivo PDF ao objeto Form.
+1. Adicione imagem ao campo Button.
+
+ - Determine o caminho para o arquivo de imagem associado ao PDF
+ - Abra a imagem em modo binário como image_stream.
+ - Chame fill_image_field() com o nome totalmente qualificado do campo de botão.
+
+1. Salvar o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Add image appearance to button fields
+def add_image_appearance_to_button_fields(infile, outfile):
+ """Add image appearance to button fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Add image appearance to button fields by providing the field name and image stream
+ image_path = infile.replace(".pdf", ".jpg")
+ with open(image_path, "rb") as image_stream:
+ pdf_form.fill_image_field("Image1_af_image", image_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
+
+## Obter Flags de Envio
+
+A biblioteca Python ajuda você a recuperar os flags de envio de um botão de envio em um formulário PDF usando a API Aspose.PDF Facades. Os flags de envio definem o comportamento de um botão de envio, como se ele envia todo o formulário, inclui anotações ou envia em formato FDF, XFDF, PDF ou HTML.
+
+1. Crie um objeto Form.
+1. Chame get_submit_flags() no objeto form usando o nome totalmente qualificado do botão submit.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_submit_flags(infile, outfile):
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+ flags = pdf_form.get_submit_flags("Submit1_af_submit")
+
+ print(f"Submit flags: {flags}")
+```
diff --git a/pt/python-net/working-with-facades/form/exporting-form-data/_index.md b/pt/python-net/working-with-facades/form/exporting-form-data/_index.md
new file mode 100644
index 0000000000..e4dce67ae6
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/exporting-form-data/_index.md
@@ -0,0 +1,14 @@
+---
+title: Exportando Dados de Formulário
+type: docs
+weight: 10
+url: /pt/python-net/exporting-form-data/
+description: Este artigo demonstra como exportar os dados de formulário PDF para vários formatos estruturados usando Aspose.PDF for Python via .NET. Ele fornece exemplos práticos de extração de valores de campos de formulário de AcroForms padrão e PDFs baseados em XFA e salvá‑los como arquivos XML, FDF, XFDF e JSON com Aspose.PDF Facades usando Form Class.
+lastmod: "2026-05-18"
+---
+
+- [Exportar para FDF](/pdf/pt/python-net/export-to-fdf/)
+- [Exportar para XFDF](/pdf/pt/python-net/export-to-xfdf/)
+- [Exportar para JSON](/pdf/pt/python-net/export-to-json/)
+- [Exportar para XML](/pdf/pt/python-net/export-to-xml/)
+- [Extrair Dados XFA](/pdf/pt/python-net/extract-xfa-data/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/form/exporting-form-data/export-to-fdf/_index.md b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-fdf/_index.md
new file mode 100644
index 0000000000..efae233b41
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-fdf/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exportar para FDF
+type: docs
+weight: 10
+url: /pt/python-net/export-to-fdf/
+description: Este exemplo explica como exportar os dados de campos de formulário PDF para um arquivo FDF (Forms Data Format) usando Aspose.PDF for Python via .NET. Ele demonstra como acessar os dados de formulário interativo através da fachada Form, vincular um documento PDF de origem e salvar os valores extraídos em um fluxo FDF.
+lastmod: "2026-05-18"
+---
+
+FDF é um formato leve projetado especificamente para armazenar e transferir dados de formulário PDF sem incorporar o documento inteiro. Neste exemplo, um [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objeto é inicializado a partir do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo, permitindo que os desenvolvedores interajam com campos AcroForm e exportem seus valores.
+
+1. Crie uma instância de pdf_facades.Form() para trabalhar com campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o documento PDF que contém o formulário.
+1. Use 'open(')' para criar um fluxo binário gravável para o arquivo FDF.
+1. Exportar dados do formulário. Chame 'export_fdf()' para extrair e salvar todos os valores dos campos do formulário.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to FDF
+def export_form_data_to_fdf(infile, outfile):
+ """Export PDF form data to FDF file."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Create FDF file stream
+ with open(outfile, "wb") as fdf_output_stream:
+ # Export form data to FDF file
+ pdf_form.export_fdf(fdf_output_stream)
+```
diff --git a/pt/python-net/working-with-facades/form/exporting-form-data/export-to-json/_index.md b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-json/_index.md
new file mode 100644
index 0000000000..0b8c204525
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-json/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exportar para JSON
+type: docs
+weight: 30
+url: /pt/python-net/export-to-json/
+description: Este exemplo demonstra como exportar valores de campos de formulário PDF para um arquivo JSON usando Aspose.PDF for Python via .NET. Ele explica como carregar um formulário PDF, acessar seus campos através da fachada Form e salvar os dados extraídos em um formato JSON estruturado.
+lastmod: "2026-05-18"
+---
+
+JSON é um formato de dados amplamente utilizado que permite a troca fluida entre aplicativos e serviços. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objeto do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular um arquivo PDF e exportar seus valores de campos de formulário para uma estrutura JSON legível.
+
+1. Inicialize pdf_facades.Form() para trabalhar com campos de formulário.
+1. Use 'bind_pdf()' para anexar o documento PDF de origem.
+1. Crie um stream gravável usando 'FileIO()'.
+1. Chame 'export_json()' para extrair os valores dos campos de formulário e salvá-los em JSON formatado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to JSON
+def export_form_to_json(infile, outfile):
+ """Export PDF form field values to JSON file."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ # Create JSON file stream
+ with FileIO(outfile, "w") as json_stream:
+ # Export form field values to JSON
+ form.export_json(json_stream, indented=True)
+```
diff --git a/pt/python-net/working-with-facades/form/exporting-form-data/export-to-xfdf/_index.md b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-xfdf/_index.md
new file mode 100644
index 0000000000..610d787c62
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-xfdf/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exportar para XFDF
+type: docs
+weight: 20
+url: /pt/python-net/export-to-xfdf/
+description: Este exemplo mostra como exportar os dados de campos de formulário PDF para um arquivo XFDF (XML Forms Data Format) usando Aspose.PDF for Python via .NET. Ele demonstra como carregar um formulário PDF, acessar seus campos através da fachada Form e salvar os valores extraídos em um fluxo XFDF.
+lastmod: "2026-05-18"
+---
+
+XFDF é uma representação XML dos dados de formulário PDF que permite aos desenvolvedores transferir os valores dos campos de formulário independentemente do documento original. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objeto de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para vincular o PDF de origem e exportar seus dados para um arquivo XFDF estruturado.
+
+1. Inicialize pdf_facades.Form() para gerenciar os dados de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o documento PDF de origem.
+1. Use 'open()' para criar um fluxo binário gravável.
+1. Exportar Dados do Formulário. Chame 'export_xfdf()' para extrair e salvar os valores dos campos do formulário em formato XFDF.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to XFDF
+def export_pdf_form_to_xfdf(infile, outfile):
+ """Export PDF form data to XFDF file."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Create XFDF file stream
+ with open(outfile, "wb") as xfdf_output_stream:
+ # Export form data to XFDF file
+ pdf_form.export_xfdf(xfdf_output_stream)
+```
diff --git a/pt/python-net/working-with-facades/form/exporting-form-data/export-to-xml/_index.md b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-xml/_index.md
new file mode 100644
index 0000000000..b9f4e861d1
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/exporting-form-data/export-to-xml/_index.md
@@ -0,0 +1,42 @@
+---
+title: Exportar para XML
+type: docs
+weight: 40
+url: /pt/python-net/export-to-xml/
+description: Este exemplo demonstra como exportar os dados de formulário PDF para um arquivo XML usando Aspose.PDF for Python via .NET. Ele mostra como carregar um documento PDF, acessar seus campos de formulário através da fachada Form, e salvar os dados extraídos como XML estruturado usando a classe Form.
+lastmod: "2026-05-18"
+---
+
+Exportar dados de formulário permite que os desenvolvedores reutilizem as informações armazenadas em PDF AcroForms sem copiar manualmente os valores dos campos. Neste exemplo, um [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objeto é criado a partir do aspose.pdf. No módulo facades, o PDF de origem é vinculado a ele, e os dados do formulário são gravados em um fluxo XML.
+
+1. Crie um Objeto Form. Inicialize pdf_facades.Form() para acessar e gerenciar os campos de formulário.
+1. Use 'bind_pdf()' para anexar o documento PDF de origem à instância Form.
+1. Crie um fluxo de arquivo gravável usando 'FileIO()'.
+1. Chame 'export_xml()' para extrair todos os valores dos campos de formulário e escrevê-los no arquivo XML.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Export Data to XML
+def export_pdf_form_data_to_xml(infile, datafile):
+ """Export PDF form data to XML file."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open XML file as stream
+ with FileIO(datafile, "w") as xml_output_stream:
+ # Export data from PDF form fields to XML
+ pdf_form.export_xml(xml_output_stream)
+```
diff --git a/pt/python-net/working-with-facades/form/exporting-form-data/extract-xfa-data/_index.md b/pt/python-net/working-with-facades/form/exporting-form-data/extract-xfa-data/_index.md
new file mode 100644
index 0000000000..653ffc1e2b
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/exporting-form-data/extract-xfa-data/_index.md
@@ -0,0 +1,41 @@
+---
+title: Extrair Dados XFA
+type: docs
+weight: 50
+url: /pt/python-net/extract-xfa-data/
+description: Este exemplo explica como extrair os dados de formulário XFA de um arquivo PDF usando Aspose.PDF for Python via .NET. Ele demonstra como vincular um documento PDF baseado em XFA ao facade Form e exportar sua estrutura de dados interna para um fluxo de arquivo.
+lastmod: "2026-05-18"
+---
+
+Os formulários XFA (XML Forms Architecture) diferem dos AcroForm tradicionais porque seus dados são armazenados como XML dentro do PDF. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) objeto do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular o PDF e extrair seus dados XFA diretamente para um arquivo.
+
+1. Crie uma instância de pdf_facades.Form() para gerenciar os dados do formulário.
+1. Chame 'bind_pdf()' para anexar o PDF de origem que contém formulários XFA.
+1. Use 'FileIO()' para criar um fluxo de arquivo gravável.
+1. Chame 'extract_xfa_data()' para exportar os dados XML XFA incorporados.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Extract XFA Data
+def export_xfa_data(infile, outfile):
+ """Export XFA form data."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ with FileIO(outfile, "w") as stream:
+ # Export embedded XFA XML data to the output stream
+ form.extract_xfa_data(stream)
+```
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/_index.md
new file mode 100644
index 0000000000..14bd75e3fc
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/_index.md
@@ -0,0 +1,15 @@
+---
+title: Preenchendo Campos de Formulário
+type: docs
+weight: 30
+url: /pt/python-net/filling-form-fields/
+description: Este artigo demonstra como preencher programaticamente campos de formulário PDF usando Aspose.PDF for Python via .NET. Ele aborda técnicas práticas para popular diferentes tipos de elementos de formulário interativos, incluindo campos de texto, caixas de seleção, botões de opção, caixas de lista, campos de código de barras e pares nome‑valor mapeados dinamicamente. Ao usar a fachada Form, os desenvolvedores podem vincular um documento PDF, atualizar os valores dos campos através de chamadas simples de API e salvar o arquivo modificado automaticamente.
+lastmod: "2026-05-18"
+---
+
+- [Preencher Campos de Texto](/pdf/pt/python-net/fill-text-fields/)
+- [Preencher Campos de Caixa de Seleção](/pdf/pt/python-net/fill-check-box-fields/)
+- [Preencher Campos de Botão de Rádio](/pdf/pt/python-net/fill-radio-button-fields/)
+- [Preencher caixa de lista](/pdf/pt/python-net/fill-list-box/)
+- [Preencher Campos de Código de Barras](/pdf/pt/python-net/fill-barcode-fields/)
+- [Preencher Campos por Nome e Valor](/pdf/pt/python-net/fill-fields-by-name-and-value/)
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/fill-barcode-fields/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/fill-barcode-fields/_index.md
new file mode 100644
index 0000000000..dca23bfe69
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/fill-barcode-fields/_index.md
@@ -0,0 +1,43 @@
+---
+title: Preencher Campos de Código de Barras
+type: docs
+weight: 50
+url: /pt/python-net/fill-barcode-fields/
+description: Este exemplo demonstra como preencher programaticamente campos de código de barras em um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, atribuir um valor a um campo de código de barras e salvar o arquivo atualizado.
+lastmod: "2026-05-18"
+---
+
+Campos de código de barras em formulários PDF permitem que informações codificadas sejam armazenadas e exibidas visualmente como códigos de barras. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para acessar os campos do formulário e atribuir um valor de código de barras. Depois que os dados são preenchidos, o PDF é salvo com o conteúdo do código de barras atualizado.
+
+1. Inicialize 'pdf_facades.Form()' para gerenciar interações com formulários PDF.
+1. Chame ‘bind_pdf()’ para anexar o PDF que contém campos de código de barras.
+1. Use ‘fill_field()’ para atribuir um valor de código de barras.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Barcode Fields
+def fill_barcode_fields(infile, outfile):
+ """Fill barcode fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill barcode fields by name
+ pdf_form.fill_field("product_barcode", "123456789012")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/fill-check-box-fields/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/fill-check-box-fields/_index.md
new file mode 100644
index 0000000000..1190e32223
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/fill-check-box-fields/_index.md
@@ -0,0 +1,44 @@
+---
+title: Preencher Campos de Caixa de Seleção
+type: docs
+weight: 20
+url: /pt/python-net/fill-check-box-fields/
+description: Este exemplo demonstra como preencher programaticamente campos de caixa de seleção em um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, atualizar os valores das caixas de seleção pelo nome do campo e salvar o arquivo modificado.
+lastmod: "2026-05-18"
+---
+
+A caixa de seleção é comumente usada em formulários PDF para representar escolhas binárias, como assinaturas ou confirmações de acordo. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para acessar os campos do formulário e definir seus valores para o estado selecionado. Após atualizar as caixas de seleção, o PDF preenchido é salvo como um novo documento.
+
+1. Inicialize 'pdf_facades.Form()' para gerenciar interações com campos de formulário.
+1. Use 'bind_pdf()' para anexar o PDF de origem contendo campos de caixa de seleção.
+1. Chame 'fill_field()' para marcar campos como 'subscribe_newsletter' e 'accept_terms' como selecionados.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Check Box Fields
+def fill_check_box_fields(infile, outfile):
+ """Fill check box fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill check box fields by name
+ pdf_form.fill_field("subscribe_newsletter", "Yes")
+ pdf_form.fill_field("accept_terms", "Yes")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/fill-fields-by-name-and-value/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/fill-fields-by-name-and-value/_index.md
new file mode 100644
index 0000000000..7f8e20e50f
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/fill-fields-by-name-and-value/_index.md
@@ -0,0 +1,50 @@
+---
+title: Preencher Campos por Nome e Valor
+type: docs
+weight: 60
+url: /pt/python-net/fill-fields-by-name-and-value/
+description: Este artigo demonstra como preencher dinamicamente múltiplos campos de formulário PDF por nome e valor usando Aspose.PDF for Python via .NET. Em vez de definir cada campo individualmente, ele usa uma estrutura de dicionário para mapear nomes de campos para valores e preenchê-los em um loop.
+lastmod: "2026-05-18"
+---
+
+Preencher campos de formulário usando uma coleção de nome–valor permite que os desenvolvedores criem soluções escaláveis e flexíveis para automação de formulários PDF. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para vincular um documento PDF e iterar através de um dicionário de dados de campo. Cada entrada é aplicada usando o método ‘fill_field’, permitindo atualizações em massa eficientes dos campos de formulário.
+
+1. Inicialize ‘pdf_facades.Form()’ para trabalhar com campos de formulário interativos.
+1. Use 'bind_pdf()' para anexar o documento PDF de origem.
+1. Crie um dicionário contendo nomes de campos e os valores que você deseja inserir.
+1. Itere através do dicionário e chame 'fill_field()' para cada entrada.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Fields by Name and Value
+def fill_fields_by_name_and_value(infile, outfile):
+ """Fill PDF form fields by name and value."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill fields by name and value
+ fields = {
+ "name": "Jane Smith",
+ "address": "456 Elm St, Othertown, USA",
+ "email": "jane.smith@example.com",
+ }
+ for field_name, value in fields.items():
+ pdf_form.fill_field(field_name, value)
+
+ # Save updated PDF using outfile
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/fill-list-box/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/fill-list-box/_index.md
new file mode 100644
index 0000000000..ff68f94f9b
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/fill-list-box/_index.md
@@ -0,0 +1,43 @@
+---
+title: Preencher caixa de lista
+type: docs
+weight: 40
+url: /pt/python-net/fill-list-box/
+description: Este exemplo demonstra como preencher programaticamente caixas de lista e campos de seleção múltipla em um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, selecionar valores dentro de um campo de formulário baseado em lista e salvar o arquivo atualizado.
+lastmod: "2026-05-18"
+---
+
+Campos de caixa de lista e de seleção múltipla permitem que os usuários escolham um ou vários valores de um conjunto pré-definido de opções. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para acessar o formulário PDF e atribuir um valor selecionado ao campo favorite_colors. Depois que a opção desejada é selecionada, o documento atualizado é salvo.
+
+1. Inicialize 'pdf_facades.Form()' para gerenciar e atualizar os campos de formulário.
+1. Chame 'bind_pdf()' para anexar o PDF de origem contendo caixas de lista ou campos de seleção múltipla.
+1. Use 'fill_field()' para selecionar um valor entre as opções disponíveis.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill List Box / Multi-Select Fields
+def fill_list_box_fields(infile, outfile):
+ """Fill list box and multi-select fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill list box / multi-select fields by name
+ pdf_form.fill_field("favorite_colors", "Red")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/fill-radio-button-fields/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/fill-radio-button-fields/_index.md
new file mode 100644
index 0000000000..5dc65c5081
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/fill-radio-button-fields/_index.md
@@ -0,0 +1,44 @@
+---
+title: Preencher Campos de Botão de Rádio
+type: docs
+weight: 30
+url: /pt/python-net/fill-radio-button-fields/
+description: Este exemplo demonstra como preencher programaticamente campos de botão de rádio em um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, selecionar uma opção de botão de rádio por índice e salvar o arquivo atualizado.
+lastmod: "2026-05-18"
+---
+
+Botões de rádio permitem que os usuários selecionem uma única opção de um grupo predefinido, como campos de gênero ou preferências. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular o PDF de origem e atribuir uma opção selecionada pelo seu valor de índice. Uma vez que a opção desejada é escolhida, o documento modificado é salvo.
+
+1. Inicialize pdf_facades.Form() para gerenciar campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o PDF que contém campos de botão de rádio.
+1. Use 'fill_field()' para selecionar a primeira opção (índice 0).
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Radio Button Fields
+def fill_radio_button_fields(infile, outfile):
+ """Fill radio button fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill radio button fields by name
+ pdf_form.fill_field("gender", 0) # Select male option (index 0)
+ # pdf_form.fill_field("gender", 1) # Select female option (index 1)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/filling-form-fields/fill-text-fields/_index.md b/pt/python-net/working-with-facades/form/filling-form-fields/fill-text-fields/_index.md
new file mode 100644
index 0000000000..1d3d2666a2
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/filling-form-fields/fill-text-fields/_index.md
@@ -0,0 +1,45 @@
+---
+title: Preencher Campos de Texto
+type: docs
+weight: 10
+url: /pt/python-net/fill-text-fields/
+description: Este exemplo demonstra como preencher automaticamente campos de texto em um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como carregar um documento PDF, preencher campos de formulário específicos pelo nome e salvar o arquivo atualizado.
+lastmod: "2026-05-18"
+---
+
+Preencher campos de texto programaticamente permite que aplicativos reutilizem modelos PDF e insiram conteúdo dinâmico sem edição manual. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para vincular um formulário PDF e atualizar vários campos, como nome, endereço e e‑mail. Após atribuir valores, o PDF modificado é salvo como um novo documento.
+
+1. Inicialize 'pdf_facades.Form()' para gerenciar operações de campos de formulário.
+1. Use 'bind_pdf()' para anexar o PDF de entrada que contém campos de texto.
+1. Chame 'fill_field()' para inserir dados em campos como nome, endereço e e‑mail.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Fill Text Fields
+def fill_text_fields(infile, outfile):
+ """Fill text fields in PDF form."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Fill text fields by name
+ pdf_form.fill_field("name", "John Doe")
+ pdf_form.fill_field("address", "123 Main St, Anytown, USA")
+ pdf_form.fill_field("email", "john.doe@example.com")
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/importing-form-data/_index.md b/pt/python-net/working-with-facades/form/importing-form-data/_index.md
new file mode 100644
index 0000000000..76c1568ebf
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/importing-form-data/_index.md
@@ -0,0 +1,14 @@
+---
+title: Importando Dados do Form
+type: docs
+weight: 20
+url: /pt/python-net/importing-form-data/
+description: Esta seção demonstra como importar e substituir dados de formulário PDF de vários formatos externos usando Aspose.PDF for Python via .NET. Ela apresenta exemplos práticos de preenchimento de campos de formulário PDF a partir de arquivos XML, FDF, XFDF e JSON, bem como a substituição de conjuntos de dados XFA existentes. Ao usar a fachada Form, os desenvolvedores podem vincular um documento PDF, carregar dados estruturados por meio de fluxos de arquivo e atualizar automaticamente os campos de formulário sem edição manual.
+lastmod: "2026-05-18"
+---
+
+- [Importar Dados FDF](/pdf/pt/python-net/import-fdf-data/)
+- [Importar Dados XFDF](/pdf/pt/python-net/import-xfdf-data/)
+- [Importar Dados JSON](/pdf/pt/python-net/import-json-data/)
+- [Importar Dados XML](/pdf/pt/python-net/import-xml-data/)
+- [Substituir Dados XFA](/pdf/pt/python-net/replace-xfa-data/)
diff --git a/pt/python-net/working-with-facades/form/importing-form-data/import-fdf-data/_index.md b/pt/python-net/working-with-facades/form/importing-form-data/import-fdf-data/_index.md
new file mode 100644
index 0000000000..9e0dff49b3
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/importing-form-data/import-fdf-data/_index.md
@@ -0,0 +1,45 @@
+---
+title: Importar Dados FDF
+type: docs
+weight: 10
+url: /pt/python-net/import-fdf-data/
+description: Este exemplo demonstra como importar dados de formulário de um arquivo FDF para um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, ler valores de campos de formulário a partir de um fluxo FDF e preencher automaticamente os campos correspondentes.
+lastmod: "2026-05-18"
+---
+
+FDF (Forms Data Format) é um formato leve usado para armazenar e transferir valores de campos de formulário PDF sem incluir o documento completo. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para carregar um formulário PDF e importar dados de campo de um arquivo FDF externo. Após o processo de importação, o PDF atualizado é salvo como um novo arquivo.
+
+1. Inicialize pdf_facades.Form() para trabalhar com campos de formulário PDF interativos.
+1. Chame 'bind_pdf()' para anexar o modelo de formulário PDF.
+1. Use 'open()' para ler o arquivo FDF em modo binário.
+1. Chame 'import_fdf()' para preencher os campos PDF com dados do arquivo FDF.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import Data from FDF
+def import_fdf_to_pdf_form(infile, datafile, outfile):
+ """Import form data from FDF file into PDF form fields."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open FDF file as stream
+ with open(datafile, "rb") as fdf_input_stream:
+ pdf_form.import_fdf(fdf_input_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/importing-form-data/import-json-data/_index.md b/pt/python-net/working-with-facades/form/importing-form-data/import-json-data/_index.md
new file mode 100644
index 0000000000..f77cee67bb
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/importing-form-data/import-json-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Importar Dados JSON
+type: docs
+weight: 30
+url: /pt/python-net/import-json-data/
+description: Este exemplo demonstra como importar dados de campos de formulário de um arquivo JSON para um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, ler dados JSON estruturados através de um fluxo de arquivo e preencher automaticamente os campos de formulário correspondentes.
+lastmod: "2026-05-18"
+---
+
+JSON é amplamente usado para armazenar e transferir dados estruturados entre sistemas. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular um formulário PDF e importar valores de campos de um arquivo JSON externo. Após o processo de importação, o documento atualizado é salvo como um novo PDF.
+
+1. Inicialize pdf_facades.Form() para interagir com os campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o modelo de formulário PDF.
+1. Use \u0027FileIO()\u0027 para ler o arquivo JSON contendo os valores do formulário.
+1. Chame 'import_json()' para preencher os campos PDF usando pares chave–valor JSON.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import from JSON
+def import_json_to_pdf_form(infile, datafile, outfile):
+ """Import form data from JSON file into PDF form fields."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ # Open JSON file as stream
+ with FileIO(datafile, "r") as json_stream:
+ # Import data from JSON into PDF form fields
+ form.import_json(json_stream)
+
+ # Save updated PDF
+ form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/importing-form-data/import-xfdf-data/_index.md b/pt/python-net/working-with-facades/form/importing-form-data/import-xfdf-data/_index.md
new file mode 100644
index 0000000000..25a99680f2
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/importing-form-data/import-xfdf-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Importar Dados XFDF
+type: docs
+weight: 20
+url: /pt/python-net/import-xfdf-data/
+description: Este exemplo demonstra como importar dados de formulário de um arquivo XFDF para um formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, ler dados XFDF baseados em XML através de um fluxo de arquivo e preencher automaticamente os campos de formulário correspondentes. Importar dados XFDF possibilita a troca eficiente de dados de formulário e suporta fluxos de trabalho de documentos automatizados que dependem de formatos XML estruturados.
+lastmod: "2026-05-18"
+---
+
+XFDF (Formato de Dados de Formulários XML) é uma representação XML dos dados de formulário PDF projetada para interoperabilidade e troca de dados. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular um formulário PDF e importar valores de campo de um arquivo XFDF externo. Após a importação dos dados, o PDF atualizado é salvo como um novo documento.
+
+1. Inicialize pdf_facades.Form() para interagir com os campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o modelo de formulário PDF.
+1. Use 'open()' para ler o arquivo XFDF.
+1. Chame 'import_xfdf()' para preencher os campos PDF com valores do arquivo XFDF.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import Data from XFDF
+def import_data_from_xfdf(infile, datafile, outfile):
+ """Import form data from XFDF file into PDF form fields."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open XFDF file as stream
+ with open(datafile, "rb") as xfdf_input_stream:
+ # Import data from XFDF into PDF form fields
+ pdf_form.import_xfdf(xfdf_input_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/importing-form-data/import-xml-data/_index.md b/pt/python-net/working-with-facades/form/importing-form-data/import-xml-data/_index.md
new file mode 100644
index 0000000000..7329401268
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/importing-form-data/import-xml-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Importar Dados XML
+type: docs
+weight: 40
+url: /pt/python-net/import-xml-data/
+description: Este exemplo demonstra como importar dados de formulário de um arquivo XML para campos de formulário PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, ler dados XML estruturados através de um fluxo de arquivo e preencher automaticamente os campos de formulário correspondentes.
+lastmod: "2026-05-18"
+---
+
+XML é comumente usado para armazenar dados de formulário estruturados, tornando‑o um formato prático para transferir valores entre sistemas. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para carregar um formulário PDF e aplicar valores de campo diretamente de um arquivo XML. Após importar os dados, o PDF atualizado é salvo como um novo documento.
+
+1. Inicialize pdf_facades.Form() para interagir com os campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o modelo de formulário PDF.
+1. Use 'FileIO()' para acessar o arquivo XML que contém os dados do formulário.
+1. Chame 'import_xml()' para preencher os campos PDF com valores do arquivo XML.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Import data from XML
+def import_xml_to_pdf_fields(infile, datafile, outfile):
+ """Import form data from XML file into PDF form fields."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Open XML file as stream
+ with FileIO(datafile, "r") as xml_input_stream:
+ # Import data from XML into PDF form fields
+ pdf_form.import_xml(xml_input_stream)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/importing-form-data/replace-xfa-data/_index.md b/pt/python-net/working-with-facades/form/importing-form-data/replace-xfa-data/_index.md
new file mode 100644
index 0000000000..8c49329344
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/importing-form-data/replace-xfa-data/_index.md
@@ -0,0 +1,46 @@
+---
+title: Substituir Dados XFA
+type: docs
+weight: 50
+url: /pt/python-net/replace-xfa-data/
+description: Este exemplo demonstra como substituir os dados de formulário XFA existentes em um PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF baseado em XFA, carregar novos dados de um arquivo XFA externo e atualizar o conteúdo do formulário programaticamente.
+lastmod: "2026-05-18"
+---
+
+Formulários XFA (XML Forms Architecture) armazenam seus dados em formato XML dentro da estrutura do PDF. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular um PDF e substituir seu conjunto de dados XFA existente usando um fluxo XML externo. Após aplicar os novos dados, o PDF atualizado é salvo como um arquivo separado.
+
+1. Inicialize pdf_facades.Form() para gerenciar dados de formulário XFA.
+1. Chame 'bind_pdf()' para anexar o PDF contendo formulários XFA.
+1. Use 'FileIO()' para ler o arquivo XML XFA.
+1. Chame 'set_xfa_data()' para atualizar o PDF com novo conteúdo XFA.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Replace from XFA data
+def replace_xfa_data(infile, datafile, outfile):
+ """Import form data from XFA file into PDF form fields."""
+ # Create Form object
+ form = pdf_facades.Form()
+
+ # Bind PDF document
+ form.bind_pdf(infile)
+
+ # Open XFA file as stream
+ with FileIO(datafile, "r") as xfa_stream:
+ # Import data from XFA into PDF form fields
+ form.set_xfa_data(xfa_stream)
+
+ # Save updated PDF
+ form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/managing-form-fields/_index.md b/pt/python-net/working-with-facades/form/managing-form-fields/_index.md
new file mode 100644
index 0000000000..bf456c9dbd
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/managing-form-fields/_index.md
@@ -0,0 +1,12 @@
+---
+title: Gerenciando Campos de Form
+type: docs
+weight: 50
+url: /pt/python-net/managing-form-fields/
+description: Esta seção demonstra como gerenciar e modificar campos de formulário PDF usando Aspose.PDF for Python via .NET. Ela abrange exemplos práticos de achatamento de campos específicos, achatamento de todos os campos de formulário e renomeação de campos existentes programaticamente. Ao usar a fachada Form, os desenvolvedores podem vincular um documento PDF, ajustar o comportamento dos campos e salvar o arquivo atualizado com as alterações permanentes aplicadas.
+lastmod: "2026-05-18"
+---
+
+- [Aplanar Campos Específicos](/pdf/pt/python-net/flatten-specific-fields/)
+- [Aplanar Todos os Campos](/pdf/pt/python-net/flatten-all-fields/)
+- [Renomear Campos de Formulário](/pdf/pt/python-net/rename-form-fields/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/form/managing-form-fields/flatten-all-fields/_index.md b/pt/python-net/working-with-facades/form/managing-form-fields/flatten-all-fields/_index.md
new file mode 100644
index 0000000000..dfdcae823d
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/managing-form-fields/flatten-all-fields/_index.md
@@ -0,0 +1,43 @@
+---
+title: Aplanar Todos os Campos
+type: docs
+weight: 10
+url: /pt/python-net/flatten-all-fields/
+description: Este exemplo demonstra como achatar todos os campos de formulário em um PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um documento PDF, converter cada elemento de formulário interativo em conteúdo estático de página e salvar o arquivo finalizado.
+lastmod: "2026-05-18"
+---
+
+Aplainamento remove a interatividade dos formulários PDF ao mesclar os valores dos campos diretamente ao layout do documento. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) é usado para vincular o PDF de origem e aplicar o método flatten_all_fields(), que converte todos os campos em conteúdo não editável.
+
+1. Inicialize pdf_facades.Form() para interagir com os campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o documento de origem.
+1. Chame 'flatten_all_fields()' para converter todos os campos interativos em conteúdo estático.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Flatten all fields
+def flatten_all_fields(infile, outfile):
+ """Flatten all fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Flatten all fields in the PDF document
+ pdf_form.flatten_all_fields()
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/managing-form-fields/flatten-specific-fields/_index.md b/pt/python-net/working-with-facades/form/managing-form-fields/flatten-specific-fields/_index.md
new file mode 100644
index 0000000000..d70487afdd
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/managing-form-fields/flatten-specific-fields/_index.md
@@ -0,0 +1,47 @@
+---
+title: Aplanar Campos Específicos
+type: docs
+weight: 20
+url: /pt/python-net/flatten-specific-fields/
+description: Esta seção demonstra como gerenciar e modificar campos de formulário PDF usando Aspose.PDF for Python via .NET. Ela apresenta exemplos práticos de aplainamento de campos específicos, aplainamento de todos os campos de formulário e renomeação de campos existentes programaticamente.
+lastmod: "2026-05-18"
+---
+
+Gerenciar campos de formulário é uma parte importante dos fluxos de trabalho de processamento de PDF. Aplanar campos remove a interatividade ao converter os elementos do formulário em conteúdo regular da página, enquanto renomear campos ajuda a padronizar convenções de nomenclatura para facilitar o manuseio dos dados.
+
+1. Inicialize pdf_facades.Form() para acessar e gerenciar campos de formulário PDF.
+1. Use 'bind_pdf()' para anexar o documento de entrada.
+1. Forneça nomes de campo e chame 'flatten_field()' para converter os campos selecionados em conteúdo estático.
+1. Chame 'flatten_all_fields()' para remover a interatividade de cada campo de formulário.
+1. Defina nomes antigos e novos dos campos e aplique 'rename_field()'.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Flatten specific fields
+def flatten_specific_fields(infile, outfile):
+ """Flatten specific fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Flatten specific fields by their names
+ fields_to_flatten = ["First Name", "Last Name"]
+ for field_name in fields_to_flatten:
+ pdf_form.flatten_field(field_name)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/managing-form-fields/rename-form-fields/_index.md b/pt/python-net/working-with-facades/form/managing-form-fields/rename-form-fields/_index.md
new file mode 100644
index 0000000000..cfcb7aeadd
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/managing-form-fields/rename-form-fields/_index.md
@@ -0,0 +1,46 @@
+---
+title: Renomear Campos de Formulário
+type: docs
+weight: 30
+url: /pt/python-net/rename-form-fields/
+description: Este exemplo demonstra como renomear campos de formulário em um documento PDF usando Aspose.PDF for Python via .NET. Ele mostra como vincular um formulário PDF, atualizar programaticamente os nomes de campos existentes e salvar o arquivo modificado. Renomear campos ajuda a padronizar estruturas de formulários, melhorar o mapeamento de dados e simplificar a integração com fluxos de trabalho automatizados ou sistemas externos.
+lastmod: "2026-05-18"
+---
+
+Renomear campos de formulário é útil ao alinhar formulários PDF com convenções de nomenclatura internas ou ao preparar documentos para processamento estruturado de dados. Neste exemplo, o [Form](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/) fachada do [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo é usado para vincular o PDF de origem e aplicar um mapeamento que substitui os nomes antigos dos campos por novos. Após atualizar os identificadores dos campos, o documento é salvo com as alterações aplicadas.
+
+1. Inicialize pdf_facades.Form() para interagir com os campos de formulário PDF.
+1. Chame 'bind_pdf()' para anexar o documento PDF.
+1. Crie uma lista de tuplas contendo os nomes antigos dos campos e seus respectivos novos nomes.
+1. Itere pelo mapeamento e chame 'rename_field()' para cada entrada.
+1. Salve o Document atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Rename form fields
+def rename_form_fields(infile, outfile):
+ """Rename form fields in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Rename form fields by providing a mapping of old names to new names
+ field_renaming_map = [("First Name", "NewFirstName"), ("Last Name", "NewLastName")]
+ for old_name, new_name in field_renaming_map:
+ pdf_form.rename_field(old_name, new_name)
+
+ # Save updated PDF
+ pdf_form.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/_index.md
new file mode 100644
index 0000000000..f68ae72420
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/_index.md
@@ -0,0 +1,15 @@
+---
+title: Lendo Valores do Formulário
+type: docs
+weight: 60
+url: /pt/python-net/reading-form-values/
+description: Esta seção explica como ler valores de formulário com Aspose.PDF Facades usando a classe Form.
+lastmod: "2026-05-18"
+---
+
+- [Obter valores de campo](/pdf/pt/python-net/get-field-values/)
+- [Obter opções de botão de rádio](/pdf/pt/python-net/get-radio-button-options/)
+- [Obter Nomes de Campos Obrigatórios](/pdf/pt/python-net/get-required-field-names/)
+- [Obter Valores de Texto Rico](/pdf/pt/python-net/get-rich-text-values/)
+- [Obter Fachadas de Campo](/pdf/pt/python-net/get-field-facades/)
+- [Resolver nomes completos de campos](/pdf/pt/python-net/resolve-full-field-names/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/get-field-facades/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/get-field-facades/_index.md
new file mode 100644
index 0000000000..c400649bb3
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/get-field-facades/_index.md
@@ -0,0 +1,43 @@
+---
+title: Obter Fachadas de Campo
+type: docs
+weight: 10
+url: /pt/python-net/get-field-facades/
+description: Este exemplo demonstra como ler os valores de campos de formulário específicos de um documento PDF usando a API Aspose.PDF Facades.
+lastmod: "2026-05-18"
+---
+
+Os formulários PDF contêm campos onde os usuários podem inserir dados, como caixas de texto, caixas de seleção ou botões de opção. Para processar esses formulários programaticamente, muitas vezes é necessário recuperar os valores atuais desses campos.
+
+1. Crie um objeto Form.
+1. Vincule o documento PDF ao objeto de formulário.
+1. Recuperar Valores dos Campos.
+
+```python
+
+ from io import FileIO
+ import sys
+ from os import path
+ import aspose.pdf as ap
+ import aspose.pdf.facades as pdf_facades
+
+ sys.path.append(path.join(path.dirname(__file__), ".."))
+
+ from config import set_license, initialize_data_dir
+
+
+ # Get field values
+ def get_field_values(infile):
+ """Get field values from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get field values by their names
+ field_names = ["First Name", "Last Name"]
+ for field_name in field_names:
+ value = pdf_form.get_field(field_name)
+ print(f"Value of '{field_name}': {value}")
+```
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/get-field-values/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/get-field-values/_index.md
new file mode 100644
index 0000000000..8ffad0c841
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/get-field-values/_index.md
@@ -0,0 +1,43 @@
+---
+title: Obter valores de campo
+type: docs
+weight: 50
+url: /pt/python-net/get-field-values/
+description: Recuperando valores de campo de um formulário PDF com Aspose.PDF Facades usando a classe Form.
+lastmod: "2026-05-18"
+---
+
+Este trecho de código mostra como recuperar os valores atuais dos campos de formulário de um documento PDF usando a API Aspose.PDF Facades. O [get_field()](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/form/#methods) método permite que você acesse programaticamente os dados inseridos em campos de texto, caixas de seleção, botões de opção e outros elementos AcroForm.
+
+1. Vincule o PDF a um objeto Form.
+1. Especifique os nomes dos campos que você deseja ler.
+1. Recupere o valor de cada campo usando get_field().
+
+```python
+
+ from io import FileIO
+ import sys
+ from os import path
+ import aspose.pdf as ap
+ import aspose.pdf.facades as pdf_facades
+
+ sys.path.append(path.join(path.dirname(__file__), ".."))
+
+ from config import set_license, initialize_data_dir
+
+
+ # Get field values
+ def get_field_values(infile):
+ """Get field values from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get field values by their names
+ field_names = ["First Name", "Last Name"]
+ for field_name in field_names:
+ value = pdf_form.get_field(field_name)
+ print(f"Value of '{field_name}': {value}")
+```
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/get-radio-button-options/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/get-radio-button-options/_index.md
new file mode 100644
index 0000000000..497d1b6c96
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/get-radio-button-options/_index.md
@@ -0,0 +1,42 @@
+---
+title: Obter opções de botão de rádio
+type: docs
+weight: 20
+url: /pt/python-net/get-radio-button-options/
+description: Este artigo demonstra como recuperar o valor atualmente selecionado de um campo de botão de rádio em um documento PDF usando a API Aspose.PDF Facades.
+lastmod: "2026-05-18"
+---
+
+Os campos de botão de rádio em formulários PDF são controles agrupados onde apenas uma opção pode ser selecionada de cada vez. Cada grupo possui um nome de campo, e cada opção tem um valor correspondente.
+
+1. Criar um objeto Form
+1. Vincular o PDF Document
+1. Recuperar a opção de botão de rádio selecionada
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Get radio button options
+def get_radio_button_options(infile):
+ """Get radio button options from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get radio button options by their names
+ field_names = ["WorkType"]
+ for field_name in field_names:
+ options = pdf_form.get_button_option_current_value(field_name)
+ print(f"Options for '{field_name}': {options}")
+```
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/get-required-field-names/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/get-required-field-names/_index.md
new file mode 100644
index 0000000000..d0054678d7
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/get-required-field-names/_index.md
@@ -0,0 +1,41 @@
+---
+title: Obter Nomes de Campos Obrigatórios
+type: docs
+weight: 30
+url: /pt/python-net/get-required-field-names/
+description: Este exemplo demonstra como identificar e recuperar os nomes dos campos de formulário obrigatórios em um documento PDF usando a API Aspose.PDF Facades.
+lastmod: "2026-05-18"
+---
+
+Formulários PDF podem conter campos obrigatórios que os usuários devem preencher antes do envio. Esses campos geralmente são marcados como obrigatórios nas propriedades do formulário.
+
+1. Criar um objeto Form
+1. Vincular o PDF Document
+1. Acesse todos os nomes de campos usando ‘pdf_form.field_names’.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Get required field names
+def get_required_field_names(infile):
+ """Get required field names from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get required field names
+ for field in pdf_form.field_names:
+ if pdf_form.is_required_field(field):
+ print(f"Required field: {field}")
+```
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/get-rich-text-values/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/get-rich-text-values/_index.md
new file mode 100644
index 0000000000..d4bd520e87
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/get-rich-text-values/_index.md
@@ -0,0 +1,42 @@
+---
+title: Obter Valores de Texto Rico
+type: docs
+weight: 40
+url: /pt/python-net/get-rich-text-values/
+description: Esta seção explica como recuperar o conteúdo de texto rico de um campo de formulário em um documento PDF usando a API Aspose.PDF Facades. Ao contrário dos campos de texto simples, os campos de texto rico podem conter conteúdo formatado, como texto em negrito, diferentes fontes, cores e estilo de parágrafo.
+lastmod: "2026-05-18"
+---
+
+Formulários PDF podem incluir campos de texto que suportam formatação de texto rico. Esses campos podem armazenar conteúdo com atributos de estilo além dos valores de texto simples.
+
+1. Criar um objeto Form
+1. Vincular o PDF Document
+1. Recuperar Valores de Texto Rico.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Get rich text values
+def get_rich_text_values(infile):
+ """Get rich text values from a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Get rich text values by their names
+ field_names = ["Summary"]
+ for field_name in field_names:
+ rich_text_value = pdf_form.get_rich_text(field_name)
+ print(f"Rich text value of '{field_name}': {rich_text_value}")
+```
diff --git a/pt/python-net/working-with-facades/form/reading-form-values/resolve-full-field-names/_index.md b/pt/python-net/working-with-facades/form/reading-form-values/resolve-full-field-names/_index.md
new file mode 100644
index 0000000000..56b8cb168c
--- /dev/null
+++ b/pt/python-net/working-with-facades/form/reading-form-values/resolve-full-field-names/_index.md
@@ -0,0 +1,42 @@
+---
+title: Resolver nomes completos de campos
+type: docs
+weight: 60
+url: /pt/python-net/resolve-full-field-names/
+description: Este exemplo demonstra como recuperar os nomes totalmente qualificados dos campos de formulário em um documento PDF usando a API Aspose.PDF Facades.
+lastmod: "2026-05-18"
+---
+
+Em formulários PDF, os campos podem ser organizados hierarquicamente, especialmente quando subformulários são usados. Cada campo possui um nome curto e um nome totalmente qualificado. O nome totalmente qualificado representa o caminho completo do campo dentro da hierarquia do formulário e é exigido por muitos métodos da API que manipulam ou leem os dados do formulário.
+
+1. Criar um objeto Form
+1. Vincular o PDF Document
+1. Acesse todos os nomes de campos de formulário.
+1. O nome totalmente qualificado de cada campo é resolvido usando get_full_field_name().
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Resolve full field names
+def resolve_full_field_names(infile):
+ """Resolve full field names in a PDF document."""
+ # Create Form object
+ pdf_form = pdf_facades.Form()
+
+ # Bind PDF document
+ pdf_form.bind_pdf(infile)
+
+ # Resolve full field names
+ for field in pdf_form.field_names:
+ name = pdf_form.get_full_field_name(field)
+ print(f"Full field name: {name}")
+```
diff --git a/pt/python-net/working-with-facades/formeditor/_index.md b/pt/python-net/working-with-facades/formeditor/_index.md
new file mode 100644
index 0000000000..e22ebfad99
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe FormEditor
+type: docs
+weight: 100
+url: /pt/python-net/formeditor-class/
+description: Aprenda a usar a classe FormEditor em Aspose.PDF for Python via .NET para criar campos de formulário, modificar campos existentes, personalizar a aparência dos campos e adicionar scripts ou ações de envio.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Crie e edite campos de formulário PDF em Python com a classe FormEditor
+Abstract: Esta seção explica como usar a fachada FormEditor em Aspose.PDF for Python via .NET para construir e atualizar formulários PDF interativos. Aprenda a criar campos de formulário, personalizar a aparência dos campos, modificar campos existentes e adicionar scripts ou ações de envio programaticamente.
+---
+
+O `FormEditor` A classe em Aspose.PDF Facades foi projetada para criar e atualizar campos de formulário PDF interativos. Ela ajuda a construir estruturas de formulário, ajustar as propriedades dos campos, alterar as configurações de aparência e anexar comportamentos interativos, como scripts e ações de envio, em aplicações Python.
+
+## Tarefas comuns do FormEditor
+
+Use os seguintes tutoriais para trabalhar com as principais capacidades de `FormEditor` fachada:
+
+- [Adicionando scripts e ações de envio](/pdf/pt/python-net/adding-scripts-and-submit-actions/)
+- [Personalizando a aparência do campo](/pdf/pt/python-net/customizing-field-appearance/)
+- [Modificando Campos de Formulário](/pdf/pt/python-net/modifying-form-fields/)
+- [Criando Campo de Formulário](/pdf/pt/python-net/creating-form-field)
diff --git a/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/_index.md b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/_index.md
new file mode 100644
index 0000000000..450c69abbf
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/_index.md
@@ -0,0 +1,21 @@
+---
+title: Adicionando scripts e ações de envio
+type: docs
+weight: 40
+url: /pt/python-net/adding-scripts-and-submit-actions/
+description: Usando Aspose.PDF for Python, os desenvolvedores podem automatizar essas ações sem editar manualmente o PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar e gerenciar scripts de campos de formulário PDF e ações de envio em Python
+Abstract: Aprenda como adicionar, modificar ou remover programaticamente ações JavaScript para campos de formulário PDF e configurar URLs de envio usando Aspose.PDF for Python. Este guia explica como anexar scripts aos campos, atualizar scripts existentes, remover ações de campo e definir URLs para envio de formulários, permitindo formulários PDF dinâmicos e interativos.
+---
+
+- [Adicionar Script de Campo](/pdf/pt/python-net/add-field-script/)
+- [Definir Script de Campo](/pdf/pt/python-net/set-field-script/)
+- [Remover Ação de Campo](/pdf/pt/python-net/remove-field-action/)
+- [Definir URL de envio](/pdf/pt/python-net/set-submit-url/)
+- [Definir Sinalizador de Envio](/pdf/pt/python-net/set-submit-flag/)
+
diff --git a/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/add-field-script/_index.md b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/add-field-script/_index.md
new file mode 100644
index 0000000000..44e8634eb7
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/add-field-script/_index.md
@@ -0,0 +1,56 @@
+---
+title: Adicionar Script de Campo
+type: docs
+weight: 10
+url: /pt/python-net/add-field-script/
+description: Formulários PDF interativos podem incluir JavaScript para automatizar ações quando os usuários interagem com os campos de formulário. Usando Aspose.PDF for Python, desenvolvedores podem facilmente anexar scripts a elementos de formulário, como botões ou campos de texto.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Ações JavaScript a Campos de Formulário PDF Usando Python
+Abstract: Este artigo explica como abrir um formulário PDF, atribuir código JavaScript a um campo de formulário específico, acrescentar ações de script adicionais e salvar o documento atualizado. O exemplo usa a classe FormEditor da API Aspose.PDF Facades para manipular o comportamento do formulário programaticamente.
+---
+
+## Adicionar Ações JavaScript a Campos de Formulário PDF Usando Python
+
+Este trecho de código permite que você adicione ações JavaScript a um campo de formulário PDF existente usando a biblioteca Aspose.PDF for Python. Ele abre um documento PDF, atribui uma ação JavaScript a um campo de formulário e adiciona um script que é executado quando o campo é acionado. Finalmente, o PDF atualizado é salvo como um novo arquivo.
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo, você pode anexar programaticamente JavaScript a campos de formulário existentes:
+
+1. Abra um formulário PDF existente.
+1. Defina uma ação JavaScript para um campo específico.
+1. Anexe outra ação JavaScript ao mesmo campo.
+1. Salve o documento PDF modificado.
+
+```python
+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 add_field_script(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Set JavaScript action for the field
+ form_editor.set_field_script(
+ "Script_Demo_Button", "app.alert('Script 1 has been executed');"
+ )
+
+ # Add JavaScript action to the field
+ form_editor.add_field_script(
+ "Script_Demo_Button", "app.alert('Script 2 has been executed');"
+ )
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/remove-field-action/_index.md b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/remove-field-action/_index.md
new file mode 100644
index 0000000000..13f1e8040a
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/remove-field-action/_index.md
@@ -0,0 +1,50 @@
+---
+title: Remover Ação de Campo
+type: docs
+weight: 20
+url: /pt/python-net/remove-field-action/
+description: Remover JavaScript dos campos de formulário pode ser útil ao modificar formulários PDF interativos, desativar ações previamente atribuídas ou limpar documentos que contêm scripts desnecessários.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Ações JavaScript de Campos de Formulário PDF Usando Python
+Abstract: Usando Aspose.PDF for Python, os desenvolvedores podem remover programaticamente ações JavaScript anexadas a campos de formulário. Este artigo explica como abrir um formulário PDF existente, remover o script associado a um campo específico usando a classe FormEditor, verificar a operação e salvar o documento modificado.
+---
+
+Os formulários PDF frequentemente contêm ações JavaScript que são executadas quando os usuários interagem com elementos do formulário, como botões ou campos de entrada. Em alguns casos, esses scripts precisam ser removidos para simplificar o comportamento do formulário, melhorar a segurança ou atualizar a lógica do formulário. Remova uma ação JavaScript de um campo de formulário em um documento PDF usando Aspose.PDF for Python. O código abre um formulário PDF existente, localiza um campo específico, remove sua ação JavaScript associada e salva o documento atualizado como um novo arquivo PDF.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/), você pode remover ações JavaScript de campos específicos em um formulário PDF existente:
+
+1. Abra um formulário PDF existente.
+1. Localize um campo de formulário chamado 'Script_Demo_Button'.
+1. Remova a ação JavaScript associada a esse campo.
+1. Verifique se a remoção foi bem-sucedida.
+1. Salve o documento PDF atualizado.
+
+```python
+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 remove_field_script(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Remove JavaScript action from the field
+ if not form_editor.remove_field_action("Script_Demo_Button"):
+ raise Exception("Failed to remove field script")
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-field-script/_index.md b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-field-script/_index.md
new file mode 100644
index 0000000000..0d784fcdf6
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-field-script/_index.md
@@ -0,0 +1,59 @@
+---
+title: Definir Script de Campo
+type: docs
+weight: 30
+url: /pt/python-net/set-field-script/
+description: Este trecho de código mostra como atribuir uma ação JavaScript a um campo de formulário em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir Ações JavaScript para Campos de Formulário PDF Usando Python
+Abstract: Este artigo explica como abrir um documento PDF, atribuir código JavaScript a um campo de formulário, atualizar o script usando a classe FormEditor e salvar o arquivo modificado. O exemplo demonstra como scripts existentes podem ser substituídos para modificar o comportamento dos campos de formulário.
+---
+
+Formulários PDF interativos frequentemente dependem de JavaScript para realizar tarefas como exibir alertas, validar entradas ou acionar comportamento dinâmico do formulário. Com Aspose.PDF for Python, os desenvolvedores podem gerenciar esses scripts programaticamente.
+
+O exemplo primeiro adiciona uma ação JavaScript ao campo e depois a substitui por outro script usando o \u0027set_field_script\u0027 método. Essa abordagem permite que os desenvolvedores controlem ou atualizem o comportamento interativo dos elementos de formulário PDF, como botões ou campos de entrada.
+
+O campo de formulário usado neste exemplo se chama 'Script_Demo_Button', que normalmente representa um botão que executa o script atribuído quando acionado.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) módulo, os desenvolvedores podem gerenciar programaticamente as ações JavaScript associadas aos campos de formulário:
+
+1. Abra um documento de formulário PDF existente.
+1. Adicione uma ação JavaScript a um campo de formulário.
+1. Defina (substitua) a ação JavaScript com um novo script.
+1. Salve o documento PDF modificado.
+
+```python
+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 set_field_script(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Add JavaScript action to the field
+ form_editor.add_field_script(
+ "Script_Demo_Button", "app.alert('Script 1 has been executed');"
+ )
+
+ # Set JavaScript action for the field
+ form_editor.set_field_script(
+ "Script_Demo_Button", "app.alert('Script 2 has been executed');"
+ )
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-flag/_index.md b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-flag/_index.md
new file mode 100644
index 0000000000..1f73927fb9
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-flag/_index.md
@@ -0,0 +1,46 @@
+---
+title: Definir Sinalizador de Envio
+type: docs
+weight: 50
+url: /pt/python-net/set-submit-flag/
+description: Aprenda como definir programaticamente um submit flag para um botão de formulário PDF usando Aspose.PDF for Python. Isso permite que o botão envie os dados do formulário em um formato específico, como XFDF, quando clicado por um usuário.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir Submit Flag para um Botão de Formulário PDF Usando Aspose.PDF for Python
+Abstract: Formulários PDF podem ser configurados para enviar dados do formulário a um servidor ou endpoint em diferentes formatos. Ao definir um submit flag em um campo de botão, os desenvolvedores podem definir como os dados são enviados. Este tutorial demonstra como usar a classe FormEditor para definir um submit flag para um botão de envio existente em um documento PDF e salvar o arquivo atualizado.
+---
+
+Formulários PDF frequentemente incluem Botões de Envio para enviar a entrada do usuário a um servidor. O submit flag determina o formato de dados enviado (por exemplo, XFDF, FDF, HTML).
+
+1. Vincular um documento PDF.
+1. Acesse um botão de envio existente.
+1. Defina a flag de envio para o formato desejado.
+1. Salve o documento PDF atualizado.
+
+```python
+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 set_submit_flag(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Set submit flag for the form
+ form_editor.set_submit_flag("Script_Demo_Button", ap.facades.SubmitFormFlag.XFDF)
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-url/_index.md b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-url/_index.md
new file mode 100644
index 0000000000..4dff72e1d6
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/adding-scripts-and-submit-actions/set-submit-url/_index.md
@@ -0,0 +1,56 @@
+---
+title: Definir URL de envio
+type: docs
+weight: 40
+url: /pt/python-net/set-submit-url/
+description: Este exemplo demonstra como configurar uma ação de envio para um campo de botão em um formulário PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir uma URL de envio para um botão de formulário PDF usando Python
+Abstract: Este artigo explica como abrir um formulário PDF existente, definir uma URL de submissão para um campo de botão usando a classe FormEditor, verificar se a operação tem sucesso e salvar o documento PDF atualizado.
+---
+
+Formulários PDF podem ser projetados para enviar seus dados a um servidor web quando um usuário clica em um botão de envio. Usando Aspose.PDF for Python, desenvolvedores podem configurar programaticamente uma ação de envio para campos de formulário.
+Ao definir uma URL de envio, o formulário pode enviar os dados inseridos pelo usuário a um servidor quando o botão é clicado. Essa funcionalidade é útil em fluxos de trabalho onde formulários PDF precisam enviar informações para aplicações web, bancos de dados ou serviços de processamento.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe de [aspose.pdf.facades](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/) Módulo, os desenvolvedores podem atribuir programaticamente um URL de envio a um campo de botão em um formulário PDF existente.
+
+1. Abra um formulário PDF existente.
+1. Localize um campo de botão chamado Script_Demo_Button.
+1. Atribua um URL onde os dados do formulário serão enviados.
+1. Verifique se a ação foi aplicada com sucesso.
+1. Salve o documento PDF atualizado.
+
+```python
+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 set_submit_url(input_file_name, output_file_name):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+
+ # Set license
+ set_license()
+
+ # Open input PDF file
+ form_editor.bind_pdf(input_file_name)
+
+ # Set submit URL for the button
+ if not form_editor.set_submit_url(
+ "Script_Demo_Button", "http://www.example.com/submit"
+ ):
+ raise Exception("Failed to set submit URL")
+
+ # Save output PDF file
+ form_editor.save(output_file_name)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/_index.md
new file mode 100644
index 0000000000..bb94a99a69
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/_index.md
@@ -0,0 +1,21 @@
+---
+title: Criando Campo de Formulário
+type: docs
+weight: 50
+url: /pt/python-net/creating-form-field/
+description: Este artigo demonstra como criar campos de formulário interativos em documentos PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar Campos de Formulário PDF em Python
+Abstract: Formulários PDF permitem que os usuários insiram ou selecionem dados diretamente dentro de um documento. Usando Aspose.PDF, os desenvolvedores podem criar programaticamente uma variedade de campos de formulário - CheckBox para seleções booleanas, ComboBox para listas suspensas, ListBox para listas de seleção múltipla, RadioButton para opções exclusivas, TextBox para entrada de texto e SubmitButton para enviar os dados do formulário. Essa abordagem unificada simplifica a criação de PDFs interativos, garantindo posicionamento preciso, estilo consistente e compatibilidade com processamento automatizado e manipulação de entrada do usuário.
+---
+
+- [Criar Campo CheckBox](/pdf/pt/python-net/create-checkbox-field/)
+- [Criar Campo ComboBox](/pdf/pt/python-net/create-combobox-field/)
+- [Criar Campo ListBox](/pdf/pt/python-net/create-listbox-field/)
+- [Criar Campo RadioButton](/pdf/pt/python-net/create-radiobutton-field/)
+- [Criar Botão de Envio](/pdf/pt/python-net/create-submit-button/)
+- [Criar Campo TextBox](/pdf/pt/python-net/create-textbox-field/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/create-checkbox-field/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-checkbox-field/_index.md
new file mode 100644
index 0000000000..402a10e517
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-checkbox-field/_index.md
@@ -0,0 +1,54 @@
+---
+title: Criar Campo CheckBox
+type: docs
+weight: 10
+url: /pt/python-net/create-checkbox-field/
+description: Aprenda como adicionar programaticamente um campo de formulário checkbox a um documento PDF usando Aspose.PDF for Python. Este guia demonstra como usar a classe FormEditor para inserir uma caixa de seleção interativa em um arquivo PDF existente e salvar o documento atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Campo Checkbox em um PDF usando Aspose.PDF for Python
+Abstract: Campos de formulário interativos permitem que os usuários preencham e interajam com documentos PDF digitalmente. Neste tutorial, você aprenderá como adicionar um campo checkbox a um PDF usando a API Aspose.PDF Python. O exemplo mostra como vincular um documento PDF existente, criar um campo de formulário checkbox nas coordenadas especificadas e salvar o arquivo modificado.
+---
+
+Formulários PDF são amplamente usados para coletar entradas de usuários em documentos como solicitações, pesquisas e acordos. Um campo checkbox permite que os usuários selecionem ou desmarquem uma opção dentro de um formulário.
+
+Usando Aspose.PDF for Python, os desenvolvedores podem manipular formulários PDF programaticamente. The [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe fornece métodos para adicionar, editar e gerenciar campos de formulário dentro de um documento PDF.
+
+1. Carregue um arquivo PDF existente.
+1. Chame o método 'add_field()' com o parâmetro 'FieldType.CHECK_BOX' para criar a caixa de seleção e especificar sua posição.
+1. Defina o nome do campo, a legenda e a posição.
+1. Salve o documento PDF atualizado.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_checkbox_field(infile, outfile):
+ """Create CheckBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add CheckBox field to PDF form
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.CHECK_BOX,
+ "checkbox1",
+ "Check Box 1",
+ 1,
+ 240,
+ 498,
+ 256,
+ 514,
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/create-combobox-field/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-combobox-field/_index.md
new file mode 100644
index 0000000000..f2fd095e67
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-combobox-field/_index.md
@@ -0,0 +1,49 @@
+---
+title: Criar Campo ComboBox
+type: docs
+weight: 20
+url: /pt/python-net/create-combobox-field/
+description: Confira como adicionar programaticamente um campo ComboBox (lista suspensa) a um documento PDF usando Aspose.PDF for Python. Este exemplo demonstra como inserir um campo de formulário ComboBox, adicionar itens selecionáveis e salvar o arquivo PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Campo ComboBox em um PDF Usando Aspose.PDF for Python
+Abstract: Campos de formulário interativos tornam os PDFs mais dinâmicos e fáceis de usar. Um campo ComboBox permite que os usuários selecionem uma opção a partir de uma lista suspensa pré-definida. Neste tutorial, você aprenderá como criar um ComboBox em um PDF usando a classe FormEditor no Aspose.PDF for Python, preenchê-lo com opções e salvar o documento modificado.
+---
+
+Formulários PDF são amplamente utilizados para coletar informações estruturadas em documentos digitais, como aplicativos, pesquisas e formulários de registro. Um campo ComboBox oferece uma maneira conveniente para os usuários escolherem entre uma lista de valores pré-definidos, mantendo o formulário compacto e organizado.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe permite criar e gerenciar diferentes tipos de campos, incluindo caixas de texto, caixas de seleção, botões de opção e listas suspensas.
+
+1. Carregue um documento PDF existente.
+1. Adicione um campo ComboBox usando o método 'add_field()' e o parâmetro 'FieldType.COMBO_BOX'.
+1. Use o método 'add_list_item()' para inserir opções selecionáveis na lista suspensa.
+1. Salve o documento PDF atualizado.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_combobox_field(infile, outfile):
+ """Create ComboBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add ComboBox field to PDF form
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.COMBO_BOX, "combobox1", "Australia", 1, 230, 498, 350, 514
+ )
+ pdf_form_editor.add_list_item("combobox1", ["Australia", "Australia"])
+ pdf_form_editor.add_list_item("combobox1", ["New Zealand", "New Zealand"])
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/create-listbox-field/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-listbox-field/_index.md
new file mode 100644
index 0000000000..290e8641ef
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-listbox-field/_index.md
@@ -0,0 +1,49 @@
+---
+title: Criar Campo ListBox
+type: docs
+weight: 30
+url: /pt/python-net/create-listbox-field/
+description: Aprenda como adicionar programaticamente um campo de formulário ListBox a um documento PDF usando Aspose.PDF for Python. Este guia mostra como inserir um campo ListBox, definir itens selecionáveis e salvar o arquivo PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Campo ListBox em um PDF Usando Aspose.PDF for Python
+Abstract: Formulários PDF permitem que os usuários interajam com documentos selecionando opções, inserindo dados e enviando informações digitalmente. Um campo ListBox permite que os usuários escolham um ou vários valores de uma lista visível de opções. Neste tutorial, você aprenderá como criar um campo ListBox em um PDF usando a classe FormEditor em Aspose.PDF for Python e preenchê-lo com itens predefinidos.
+---
+
+Formulários PDF são comumente usados para aplicações, pesquisas e documentos de registro. Um campo ListBox exibe várias opções simultaneamente, facilitando para os usuários a revisão e a seleção de itens em uma lista.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe fornece funcionalidade para adicionar diferentes tipos de campos interativos, incluindo elementos ListBox.
+
+1. Carregue um documento PDF existente.
+1. Definir uma lista de opções selecionáveis.
+1. Adicionar um campo ListBox a uma página específica.
+1. Definir um valor selecionado padrão.
+1. Salve o documento PDF atualizado.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_listbox_field(infile, outfile):
+ """Create ListBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add ListBox field to PDF form
+ pdf_form_editor.items = ["Australia", "New Zealand", "Malaysia"]
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.LIST_BOX, "listbox1", "Australia", 1, 230, 398, 350, 514
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/create-radiobutton-field/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-radiobutton-field/_index.md
new file mode 100644
index 0000000000..9481a4ed60
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-radiobutton-field/_index.md
@@ -0,0 +1,49 @@
+---
+title: Criar Campo RadioButton
+type: docs
+weight: 40
+url: /pt/python-net/create-radiobutton-field/
+description: Aprenda como adicionar programaticamente um campo de formulário de botão de rádio a um documento PDF usando Aspose.PDF for Python. Este exemplo demonstra como criar um grupo de botões de rádio, definir opções selecionáveis e salvar o arquivo PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Campo de Botão de Rádio em um PDF Usando Aspose.PDF for Python
+Abstract: Botões de rádio são comumente usados em formulários PDF para permitir que os usuários selecionem uma opção de um grupo de escolhas predefinido. Neste tutorial, você aprenderá como criar um campo de botão de rádio em um PDF usando a classe FormEditor em Aspose.PDF for Python. O exemplo mostra como definir itens de botão de rádio, definir uma seleção padrão e salvar o documento atualizado.
+---
+
+Formulários PDF interativos permitem que os usuários forneçam entrada estruturada diretamente dentro de um documento. Um campo de botão de rádio é útil quando os usuários precisam escolher apenas uma opção entre várias, como selecionar um país, gênero ou preferência.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe fornece métodos para criar diferentes tipos de campos, incluindo caixas de texto, caixas de seleção, caixas de combinação, caixas de lista e botões de rádio.
+
+1. Carregue um documento PDF existente.
+1. Defina uma lista de opções de botões de opção.
+1. Adicione um campo de botão de opção a uma página específica.
+1. Definir um valor selecionado padrão.
+1. Salve o documento PDF modificado.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_radiobutton_field(infile, outfile):
+ """Create RadioButton field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add RadioButton field to PDF form
+ pdf_form_editor.items = ["Australia", "New Zealand", "Malaysia"]
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.RADIO, "radiobutton1", "Malaysia", 1, 240, 498, 256, 514
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/create-submit-button/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-submit-button/_index.md
new file mode 100644
index 0000000000..c9eee890c5
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-submit-button/_index.md
@@ -0,0 +1,54 @@
+---
+title: Criar Botão de Envio
+type: docs
+weight: 50
+url: /pt/python-net/create-submit-button/
+description: Aprenda como adicionar um Botão de Envio a um documento PDF programaticamente usando Aspose.PDF for Python. Este tutorial demonstra como criar um botão que envia os dados do formulário para uma URL especificada e salva o PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Botão de Envio em um PDF usando Aspose.PDF for Python
+Abstract: Botões de envio em formulários PDF permitem que os usuários enviem os dados do formulário diretamente para um servidor ou endpoint. Neste guia, você aprenderá como adicionar um campo Botão de Envio a um PDF usando a classe FormEditor no Aspose.PDF for Python. O exemplo mostra como configurar o nome, rótulo, URL de destino e posição do botão, e então salvar o documento PDF atualizado.
+---
+
+Formulários PDF interativos frequentemente exigem que os usuários enviem suas entradas para processamento, como o envio de resultados de pesquisas, formulários de inscrição ou dados de feedback. Um campo Botão de Envio fornece essa funcionalidade ao vincular o botão a um endpoint da web.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe permite adicionar botões, caixas de seleção, botões de opção, campos de texto e outros controles de formulário.
+
+1. Carregue um documento PDF existente.
+1. Adicionar um campo de botão Submit a uma página específica.
+1. Definir o rótulo do botão e o URL de envio de destino.
+1. Salvar o PDF atualizado com o novo botão.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_submit_button(infile, outfile):
+ """Create Submit Button in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add Submit Button to PDF form
+ pdf_form_editor.add_submit_btn(
+ "submitbtn1",
+ 1,
+ "Submit Button",
+ "http://example.com/submit",
+ 100,
+ 450,
+ 200,
+ 470,
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/creating-form-field/create-textbox-field/_index.md b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-textbox-field/_index.md
new file mode 100644
index 0000000000..5a953dd8fa
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/creating-form-field/create-textbox-field/_index.md
@@ -0,0 +1,50 @@
+---
+title: Criar Campo TextBox
+type: docs
+weight: 60
+url: /pt/python-net/create-textbox-field/
+description: Aprenda como adicionar programaticamente campos TextBox a um documento PDF usando Aspose.PDF for Python. Este tutorial mostra como inserir múltiplos campos de texto, definir valores padrão e salvar o documento PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar Campos TextBox em um PDF Usando Aspose.PDF for Python
+Abstract: Campos TextBox em formulários PDF permitem que os usuários insiram e editem texto, tornando os documentos interativos e fáceis de usar. Neste tutorial, você aprenderá como criar campos de formulário TextBox em um PDF usando a classe FormEditor no Aspose.PDF for Python. O exemplo demonstra a adição de múltiplos campos, a especificação de valores padrão e a gravação do PDF modificado.
+---
+
+Formulários PDF frequentemente exigem entrada de texto dos usuários, como nomes, endereços ou comentários. Campos TextBox habilitam essa funcionalidade ao fornecer campos editáveis diretamente dentro do documento PDF.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe permite adicionar campos de texto, caixas de seleção, botões de opção, caixas de lista, caixas combinadas e botões, facilitando a criação de PDFs interativos.
+
+1. Carregue um documento PDF existente.
+1. Adicione vários campos TextBox para entrada do usuário.
+1. Defina valores padrão para cada campo.
+1. Salve o documento PDF atualizado.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def create_textbox_field(infile, outfile):
+ """Create TextBox field in PDF document."""
+ pdf_form_editor = pdf_facades.FormEditor()
+ pdf_form_editor.bind_pdf(infile)
+
+ # Add TextBox field to PDF form
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.TEXT, "first_name", "Alexander", 1, 50, 570, 150, 590
+ )
+ pdf_form_editor.add_field(
+ pdf_facades.FieldType.TEXT, "last_name", "Smith", 1, 235, 570, 330, 590
+ )
+
+ # Save updated PDF document with form fields
+ pdf_form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/_index.md
new file mode 100644
index 0000000000..9f05ebe85d
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/_index.md
@@ -0,0 +1,23 @@
+---
+title: Personalizando a aparência do campo
+type: docs
+weight: 30
+url: /pt/python-net/customizing-field-appearance/
+description: Usando Aspose.PDF for Python, os desenvolvedores podem personalizar totalmente a aparência e o comportamento dos campos programaticamente.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Personalize a aparência do campo de formulário PDF em Python - Alinhamento, Cores, Limites e Atributos
+Abstract: Aprenda como personalizar a aparência e o comportamento dos campos de formulário PDF usando Aspose.PDF for Python. Este guia aborda a decoração dos campos com cores e bordas, a definição de alinhamento horizontal e vertical, o controle da visibilidade, o ajuste dos atributos do campo, a definição de números de separadores (comb) e limites de caracteres, e a recuperação das informações de aparência do campo. Essas técnicas ajudam os desenvolvedores a criar formulários PDF visualmente consistentes e fáceis de usar.
+---
+
+- [Decorar Campo](/pdf/pt/python-net/decorate-field/)
+- [Definir Alinhamento de Campo](/pdf/pt/python-net/set-field-alignment/)
+- [Definir Alinhamento Vertical do Campo](/pdf/pt/python-net/set-field-alignment-vertical/)
+- [Definir Aparência do Campo](/pdf/pt/python-net/set-field-appearance/)
+- [Definir número de comb do campo](/pdf/pt/python-net/set-field-comb-number/)
+- [Definir Limite de Campo](/pdf/pt/python-net/set-field-limit/)
+- [Obter Aparência do Campo](/pdf/pt/python-net/get-field-appearance/)
+
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/decorate-field/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/decorate-field/_index.md
new file mode 100644
index 0000000000..f74c752b41
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/decorate-field/_index.md
@@ -0,0 +1,55 @@
+---
+title: Decorar Campo
+type: docs
+weight: 10
+url: /pt/python-net/decorate-field/
+description: Este exemplo demonstra como personalizar a aparência de um campo de formulário em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Decorar Campos de Formulário PDF com Cores Personalizadas e Alinhamento Usando Python
+Abstract: Este artigo explica como abrir um documento PDF, configurar opções de estilo usando a classe FormFieldFacade, aplicar essas configurações a um campo de formulário e salvar o PDF atualizado. O exemplo demonstra como decorar um campo chamado "First Name" com cores personalizadas e alinhamento de texto centralizado.
+---
+
+Formulários PDF frequentemente requerem personalização visual para melhorar a usabilidade e criar um design consistente. Com Aspose.PDF for Python, os desenvolvedores podem decorar programaticamente campos de formulário definindo propriedades como cores, bordas e alinhamento de texto.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) e [FormFieldFacade](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formfieldfacade/) classes que os desenvolvedores podem modificar facilmente a aparência dos campos de formulário para melhorar a legibilidade, destacar campos obrigatórios ou atender aos requisitos de marca.
+
+1. Abra um documento PDF existente.
+1. Crie um objeto FormEditor para manipular campos de formulário.
+1. Defina o estilo visual usando FormFieldFacade.
+1. Aplique a estilização a um campo de formulário específico.
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def decorate_field(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+ form_editor.facade = pdf_facades.FormFieldFacade()
+ form_editor.facade.background_color = ap_pydrawing.Color.red
+ form_editor.facade.text_color = ap_pydrawing.Color.blue
+ form_editor.facade.border_color = ap_pydrawing.Color.green
+ form_editor.facade.alignment = pdf_facades.FormFieldFacade.ALIGN_CENTER
+ form_editor.decorate_field("First Name")
+
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/get-field-appearance/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/get-field-appearance/_index.md
new file mode 100644
index 0000000000..6c2f8b6cf3
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/get-field-appearance/_index.md
@@ -0,0 +1,45 @@
+---
+title: Obter Aparência do Campo
+type: docs
+weight: 20
+url: /pt/python-net/get-field-appearance/
+description: Este artigo explica como abrir um PDF, acessar um campo de formulário, recuperar suas configurações de aparência e exibí‑las. O exemplo demonstra a recuperação da aparência de um campo chamado "Last Name".
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recuperar Aparência do Campo de Formulário PDF Usando Python
+Abstract: Este exemplo demonstra como recuperar as propriedades de aparência visual de um campo de formulário em um documento PDF usando Aspose.PDF for Python. O código abre um PDF existente, acessa um campo de formulário específico e imprime os detalhes da sua aparência, incluindo cor de fundo, cor do texto, cor da borda e alinhamento.
+---
+
+Campos de formulário em documentos PDF possuem propriedades visuais como cor de fundo, cor do texto, cor da borda e alinhamento. Com Aspose.PDF for Python, os desenvolvedores podem inspecionar programaticamente essas configurações de aparência usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe.
+
+1. Abra um documento PDF existente.
+1. Crie um objeto FormEditor.
+1. Recupere as informações de aparência de um campo específico.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_field_appearance(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Get field appearance
+ appearance = form_editor.get_field_appearance("Last Name")
+ print("Field Appearance: " + str(appearance))
+```
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment-vertical/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment-vertical/_index.md
new file mode 100644
index 0000000000..87fd546d76
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment-vertical/_index.md
@@ -0,0 +1,56 @@
+---
+title: Definir Alinhamento Vertical do Campo
+type: docs
+weight: 40
+url: /pt/python-net/set-field-alignment-vertical/
+description: Este exemplo demonstra como definir o alinhamento vertical de um campo de formulário em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir Alinhamento Vertical para Campos de Formulário PDF Usando Python
+Abstract: Este artigo explica como abrir um PDF, definir o alinhamento vertical de um campo usando a classe FormEditor e salvar o PDF atualizado. O exemplo define o alinhamento vertical de um campo chamado "First Name" para a parte inferior da área do campo.
+---
+
+Os campos de formulário PDF podem conter texto que necessita de alinhamento vertical adequado para uma aparência consistente e profissional. Usando Aspose.PDF for Python, os desenvolvedores podem modificar programaticamente o alinhamento vertical dos campos de formulário.
+O alinhamento vertical permite que os desenvolvedores controlem se o texto do campo aparece na parte superior, central ou inferior da caixa delimitadora do campo, melhorando o layout e a legibilidade dos dados do formulário.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe e o [FormFieldFacade](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formfieldfacade/) constantes, os desenvolvedores podem ajustar o alinhamento vertical programaticamente para obter um layout de formulário consistente:
+
+1. Abra um documento PDF existente.
+1. Crie um objeto FormEditor.
+1. Defina o alinhamento vertical de um campo chamado "First Name" para a parte inferior.
+1. Salve o documento modificado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_alignment_vertical(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Attempt to set vertical alignment of the "First Name" field to bottom
+ if form_editor.set_field_alignment_v(
+ "First Name", pdf_facades.FormFieldFacade.ALIGN_BOTTOM
+ ):
+ # Save updated document
+ form_editor.save(outfile)
+ else:
+ raise Exception(
+ "Failed to set field vertical alignment. Field may not support vertical alignment."
+ )
+```
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment/_index.md
new file mode 100644
index 0000000000..77f3eeb871
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-alignment/_index.md
@@ -0,0 +1,55 @@
+---
+title: Definir Alinhamento de Campo
+type: docs
+weight: 30
+url: /pt/python-net/set-field-alignment/
+description: Este exemplo demonstra como definir o alinhamento de texto de um campo de formulário em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir Alinhamento de Texto para Campos de Formulário PDF Usando Python
+Abstract: Este artigo explica como abrir um documento PDF, definir o alinhamento de um campo específico usando a classe FormEditor e salvar o PDF atualizado. O exemplo define o alinhamento de texto de um campo chamado \u0022First Name\u0022 para centralizado.
+---
+
+Os campos de formulário PDF frequentemente requerem alinhamento de texto personalizado para manter um layout consistente e profissional. Usando Aspose.PDF for Python, os desenvolvedores podem definir programaticamente o alinhamento do conteúdo de texto de um campo de formulário\u2019s.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe, em combinação com o [FormFieldFacade](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formfieldfacade/) constants, permite que os desenvolvedores modifiquem o alinhamento dos campos de formulário existentes programaticamente.
+
+1. Abra um documento PDF existente.
+1. Crie um objeto FormEditor.
+1. Defina o alinhamento de um campo chamado "First Name" para o centro.
+1. Salve o documento modificado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_alignment(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field alignment to center
+ if form_editor.set_field_alignment(
+ "First Name", pdf_facades.FormFieldFacade.ALIGN_CENTER
+ ):
+ # Save updated document
+ form_editor.save(outfile)
+ else:
+ raise Exception(
+ "Failed to set field alignment. Field may not support alignment."
+ )
+```
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-appearance/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-appearance/_index.md
new file mode 100644
index 0000000000..faaf2fc84e
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-appearance/_index.md
@@ -0,0 +1,55 @@
+---
+title: Definir Aparência do Campo
+type: docs
+weight: 50
+url: /pt/python-net/set-field-appearance/
+description: Este exemplo demonstra como alterar a aparência visual de um campo de formulário PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir Aparência do Campo de Formulário PDF Usando Python
+Abstract: Este artigo explica como abrir um PDF, definir a aparência de um campo de formulário usando a classe FormEditor e salvar o documento atualizado. O exemplo define a aparência de um campo chamado \u0022First Name\u0022 como invisível usando a flag AnnotationFlags.INVISIBLE.
+---
+
+Os campos de formulário PDF suportam flags de aparência que controlam visibilidade, capacidade de impressão e interatividade. Usando Aspose.PDF for Python, os desenvolvedores podem modificar programaticamente essas flags para campos de formulário específicos.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe, os desenvolvedores podem modificar essas flags para ocultar, exibir ou personalizar o comportamento dos campos de formulário em um PDF interativo.
+
+1. Abra um documento PDF existente.
+1. Crie um objeto FormEditor.
+1. Defina a aparência do campo chamado "First Name" como invisível.
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_appearance(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field appearance to invisible
+ if not form_editor.set_field_appearance(
+ "First Name", ap.annotations.AnnotationFlags.INVISIBLE
+ ):
+ raise Exception(
+ "Failed to set field appearance. Field may not support appearance flags."
+ )
+
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-comb-number/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-comb-number/_index.md
new file mode 100644
index 0000000000..18aef77ed1
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-comb-number/_index.md
@@ -0,0 +1,50 @@
+---
+title: Definir número de comb do campo
+type: docs
+weight: 70
+url: /pt/python-net/set-field-comb-number/
+description: Este exemplo demonstra como definir um número de comb para um campo de formulário PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir número de comb para campos de formulário PDF usando Python
+Abstract: Usando Aspose.PDF for Python, os desenvolvedores podem definir programaticamente o número de caixas (número de comb) para um campo de formulário, a fim de impor uma entrada de comprimento fixo. Este artigo demonstra a definição do número de comb para um campo chamado "PIN".
+---
+
+O número de comb define como o conteúdo do campo é dividido em caixas igualmente espaçadas, frequentemente usado para códigos PIN, números de série ou outros campos de entrada de comprimento fixo. O código abre um PDF existente, define o número de comb para um campo e salva o documento modificado.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe fornece o método ‘set_field_comb_number’ para definir o número de caixas (caracteres) em um campo de formulário.
+
+1. Abra um formulário PDF existente.
+1. Cria um objeto FormEditor.
+1. Define o número de comb de um campo chamado "PIN" para 5.
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_comb_number(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field comb number to 5
+ form_editor.set_field_comb_number("PIN", 5)
+
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-limit/_index.md b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-limit/_index.md
new file mode 100644
index 0000000000..7f57788374
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/customizing-field-appearance/set-field-limit/_index.md
@@ -0,0 +1,53 @@
+---
+title: Definir Limite de Campo
+type: docs
+weight: 80
+url: /pt/python-net/set-field-limit/
+description: Este exemplo mostra como definir um limite máximo de caracteres para um campo de formulário em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Definir Limite Máximo de Caracteres para Campos de Formulário PDF Usando Python
+Abstract: Este exemplo demonstra a definição do limite de caracteres para um campo chamado "Last Name" com 10 caracteres, garantindo que os usuários não possam inserir mais do que o limite especificado.
+---
+
+Campos de formulário em documentos PDF podem exigir restrições de entrada para manter a formatação adequada. Usando Aspose.PDF for Python, os desenvolvedores podem programaticamente definir um número máximo de caracteres para um campo.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) a classe fornece o método 'set_field_limit' para definir o comprimento máximo de entrada para um campo.
+
+1. Abra um formulário PDF existente.
+1. Crie um objeto FormEditor.
+1. Defina o limite máximo de caracteres para o campo "Last Name".
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pydrawing as ap_pydrawing
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_field_limit(infile, outfile):
+ # Open document
+ doc = ap.Document(infile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor(doc)
+
+ # Set field limit to 10
+ if not form_editor.set_field_limit("Last Name", 10):
+ raise Exception(
+ "Failed to set field limit. Field may not support specified limit."
+ )
+
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/_index.md
new file mode 100644
index 0000000000..5d42cddd45
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/_index.md
@@ -0,0 +1,24 @@
+---
+title: Modificando Campos de Formulário
+type: docs
+weight: 20
+url: /pt/python-net/modifying-form-fields/
+description: Usando Aspose.PDF for Python, você pode modificar campos de formulário de forma eficiente programaticamente com a classe FormEditor.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Modificar Campos de Formulário PDF em Python - Adicionar, Mover, Copiar, Renomear e Excluir Campos
+Abstract: Aprenda como modificar campos de formulário PDF existentes usando Aspose.PDF for Python. Este guia explica como gerenciar elementos de formulário adicionando ou excluindo itens de lista, movendo campos, removendo ou renomeando‑os, convertendo campos de linha única em múltiplas linhas e copiando campos dentro ou entre documentos. Essas técnicas ajudam os desenvolvedores a atualizar dinamicamente os formulários PDF e adaptá‑los aos requisitos de negócios em evolução sem recriar toda a estrutura do formulário.
+---
+
+- [Adicionar item à lista](/pdf/pt/python-net/add-list-item/)
+- [Excluir item da lista](/pdf/pt/python-net/del-list-item/)
+- [Mover Campo](/pdf/pt/python-net/move-field/)
+- [Remover Campo](/pdf/pt/python-net/remove-field/)
+- [Renomear Campo](/pdf/pt/python-net/rename-field/)
+- [Único para Múltiplo](/pdf/pt/python-net/single-to-multiple/)
+- [Copiar Campo Interno](/pdf/pt/python-net/copy-inner-field/)
+- [Copiar Campo Externo](/pdf/pt/python-net/copy-outer-field/)
+
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/add-list-item/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/add-list-item/_index.md
new file mode 100644
index 0000000000..79e03425d3
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/add-list-item/_index.md
@@ -0,0 +1,45 @@
+---
+title: Adicionar item à lista
+type: docs
+weight: 10
+url: /pt/python-net/add-list-item/
+description: Este exemplo demonstra como adicionar itens a um campo de formulário de caixa de lista em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar itens aos campos de caixa de lista PDF usando Python
+Abstract: Este artigo mostra como abrir um documento PDF, acrescentar itens a um campo de caixa de lista chamado "Country", e salvar o documento atualizado.
+---
+
+Os campos de caixa de lista em PDFs permitem que os usuários selecionem uma ou várias opções de um conjunto predefinido. Usando Aspose.PDF for Python, os desenvolvedores podem adicionar programaticamente novos itens a esses campos. The [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe fornece o método 'add_list_item' para acrescentar itens a um campo de caixa de lista existente.
+
+1. Abra um formulário PDF existente.
+1. Crie um objeto FormEditor.
+1. Vincule o PDF ao FormEditor.
+1. Adicione itens ao campo de caixa de lista "Country".
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_list_item(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Add list item to list box field
+ form_editor.add_list_item("Country", ["New Zealand", "New Zealand"])
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/copy-inner-field/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/copy-inner-field/_index.md
new file mode 100644
index 0000000000..fb57efa604
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/copy-inner-field/_index.md
@@ -0,0 +1,71 @@
+---
+title: Copiar Campo Interno
+type: docs
+weight: 20
+url: /pt/python-net/copy-inner-field/
+description: Copiar PDF Form Fields para uma Nova Posição Usando Python com Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Copiar PDF Form Fields para uma Nova Posição Usando Python
+Abstract: Este exemplo demonstra como copiar um FormField existente para uma nova posição em um PDF Document usando Aspose.PDF for Python. O código abre um PDF, duplica um FormField para uma página e coordenadas especificadas e salva o Document atualizado.
+---
+
+Os formulários PDF geralmente exigem a duplicação de campos mantendo a formatação e o comportamento originais. Usando Aspose.PDF for Python, os desenvolvedores podem copiar um campo existente para uma nova posição na mesma página ou em outra página programaticamente.
+
+Este artigo explica como copiar um campo chamado ‘First Name’ para um novo campo chamado ‘First Name Copy’ na página 2 em coordenadas específicas (x=200, y=600), produzindo um PDF com o campo recém‑posicionado.
+
+1. Abra um formulário PDF existente.
+1. Crie um objeto FormEditor.
+1. Vincule o documento PDF ao FormEditor.
+1. Copie o campo ‘First Name’ para um novo campo ‘First Name Copy’ na página 2 nas coordenadas (200, 600).
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def copy_inner_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Copies an existing field to a new position specified by both page number and ordinates.
+ # A new document will be produced, which contains everything the source document has except for the newly copied field.
+ form_editor.copy_inner_field("First Name", "First Name Copy", 2, 200, 600)
+ # Save updated document
+ form_editor.save(outfile)
+```
+
+**Por favor, note:**
+
+A assinatura do método 'copy_inner_field' é a seguinte:
+
+```python
+copy_inner_field(original_field_name, new_field_name, page_number, x, y)
+```
+
+- 'original_field_name' – o campo que você deseja duplicar.
+- 'new_field_name' – o nome do novo campo.
+- 'page_number' – a página na qual o novo campo aparecerá.
+- x, y – coordenadas nessa página.
+
+O page_number deve ser um número inteiro positivo correspondente a uma página existente no PDF (indexação a partir de 1).
+
+Se você passar um parâmetro negativo, por exemplo:
+
+```python
+form_editor.copy_inner_field("First Name", "First Name Copy", -1, 200, 600)
+```
+
+O programa então redefinirá para os parâmetros anteriores.
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/copy-outer-field/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/copy-outer-field/_index.md
new file mode 100644
index 0000000000..01d67207a3
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/copy-outer-field/_index.md
@@ -0,0 +1,79 @@
+---
+title: Copiar Campo Externo
+type: docs
+weight: 30
+url: /pt/python-net/copy-outer-field/
+description: Este exemplo demonstra como copiar um campo de formulário de um documento PDF para outro usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Copiar Campos de Formulário PDF de Outro Documento Usando Python
+Abstract: Este artigo explica como criar um novo documento PDF, copiar o campo "First Name" de um PDF fonte para a página 1 nas coordenadas (200, 600) e salvar o documento de destino atualizado.
+---
+
+Às vezes, os formulários PDF exigem reutilizar campos de um documento em outro. Usando Aspose.PDF for Python, os desenvolvedores podem copiar programaticamente campos de formulário de um PDF de origem para um PDF de destino.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) a classe fornece o método 'copy_outer_field', que copia um campo de um documento de origem para um documento de destino em uma página e coordenadas especificadas.
+
+O código cria um novo PDF (destino), adiciona uma página e, em seguida, copia um campo de um PDF existente (origem) para o documento de destino nas coordenadas especificadas.
+
+1. Crie um novo documento PDF de destino.
+1. Adicione pelo menos uma página ao PDF de destino.
+1. Salve o documento de destino vazio.
+1. Crie um objeto FormEditor e vincule‑o ao PDF de destino.
+1. Copie o campo 'First Name' do PDF de origem para a página 1 em (200, 600).
+1. Salve o PDF de destino atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def copy_outer_field(infile, outfile):
+ # Since copy_outer_field() method needs to copy field from source document to target document, we need to create a new document as target document first.
+ doc = ap.Document()
+ doc.pages.add()
+ doc.save(outfile)
+
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(outfile)
+ # Copies an existing field to a new position specified by both page number and ordinates.
+ # A new document will be produced, which contains everything the source document has except for the newly copied field.
+ form_editor.copy_outer_field(infile, "First Name", 1, 200, 600)
+ # Save updated document
+ form_editor.save(outfile)
+```
+
+**Por favor, note:**
+
+A assinatura do método 'copy_outer_field' é a seguinte:
+
+```python
+copy_outer_field(original_field_name, new_field_name, page_number, x, y)
+```
+
+- 'original_field_name' – o campo que você deseja duplicar.
+- 'new_field_name' – o nome do novo campo.
+- 'page_number' – a página na qual o novo campo aparecerá.
+- x, y – coordenadas nessa página.
+
+O page_number deve ser um número inteiro positivo correspondente a uma página existente no PDF (indexação a partir de 1).
+
+Se você passar um parâmetro negativo, por exemplo:
+
+```python
+form_editor.copy_outer_field("First Name", "First Name Copy", 1, -200, 600)
+```
+
+O programa então redefinirá para os parâmetros anteriores.
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/del-list-item/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/del-list-item/_index.md
new file mode 100644
index 0000000000..0ac3cefd5b
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/del-list-item/_index.md
@@ -0,0 +1,50 @@
+---
+title: Excluir item da lista
+type: docs
+weight: 40
+url: /pt/python-net/del-list-item/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover itens de campos de caixa de lista PDF usando Python
+Abstract: Este exemplo demonstra como remover um item de um campo de caixa de lista em um documento PDF usando Aspose.PDF for Python. O código abre um PDF existente, exclui um item específico de um campo de caixa de lista e salva o documento atualizado.
+---
+
+Campos de caixa de lista em PDFs permitem que os usuários selecionem uma ou várias opções predefinidas. Usando Aspose.PDF for Python, os desenvolvedores podem remover itens desses campos programaticamente.
+
+Este artigo explica como excluir o item 'UK' de um campo de caixa de lista chamado 'Country', garantindo que o campo contenha apenas as opções desejadas.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe fornece o método 'del_list_item' para remover um item específico de um campo de caixa de lista.
+
+1. Abra um formulário PDF existente.
+1. Crie um objeto FormEditor.
+1. Vincule o documento PDF ao FormEditor.
+1. Excluir o item “UK” da caixa de listagem “Country”.
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def del_list_item(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Delete list item from list box field
+ form_editor.del_list_item("Country", "UK")
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/move-field/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/move-field/_index.md
new file mode 100644
index 0000000000..f3afd3d3e5
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/move-field/_index.md
@@ -0,0 +1,47 @@
+---
+title: Mover Campo
+type: docs
+weight: 50
+url: /pt/python-net/move-field/
+description: Mover um campo de formulário existente para uma posição diferente em um documento PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mover um Campo de Formulário PDF para uma Nova Posição Usando Python
+Abstract: Este exemplo demonstra como mover um campo de formulário existente para uma posição diferente em um documento PDF usando Aspose.PDF for Python. O código abre um PDF existente, realoca o campo de formulário especificado para novas coordenadas e salva o documento atualizado.
+---
+
+Os formulários PDF frequentemente requerem ajustes de layout após a criação. Usando Aspose.PDF for Python, os desenvolvedores podem mover campos de formulário existentes para uma nova posição sem recriá‑los.
+
+Este exemplo mostra como reposicionar o campo \"Country\" especificando novas coordenadas para sua colocação dentro da página. O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) classe fornece o método move_field para realocar campos dentro de uma página PDF.
+
+1. Abra o formulário PDF existente.
+1. Crie um objeto FormEditor.
+1. Vincule o documento PDF ao FormEditor.
+1. Mova o campo 'Country' para uma nova posição usando coordenadas.
+1. Salve o documento modificado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def move_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Move field to new page
+ form_editor.move_field("Country", 200, 600, 280, 620)
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/remove-field/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/remove-field/_index.md
new file mode 100644
index 0000000000..c181ad6dd8
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/remove-field/_index.md
@@ -0,0 +1,47 @@
+---
+title: Remover Campo
+type: docs
+weight: 60
+url: /pt/python-net/remove-field/
+description: Este exemplo mostra como excluir o campo 'Country' de um formulário PDF usando o método 'remove_field' da classe 'FormEditor'.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover um Campo de Formulário de um Documento PDF Usando Python
+Abstract: Este exemplo demonstra como remover um campo de formulário existente de um documento PDF usando Aspose.PDF for Python. O código carrega um arquivo PDF, exclui o campo especificado usando a classe FormEditor e salva o documento atualizado.
+---
+
+Formulários PDF podem conter campos que não são mais necessários devido a mudanças de design ou atualizações de fluxo de trabalho. Com Aspose.PDF for Python, os desenvolvedores podem remover facilmente campos de formulário específicos programaticamente.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) A classe em Aspose.PDF fornece o método 'remove_field', que permite aos desenvolvedores excluir um campo de formulário pelo seu nome.
+
+1. Carregue o documento PDF.
+1. Crie um objeto FormEditor.
+1. Vincule o PDF ao FormEditor.
+1. Remova o campo de formulário especificado.
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def remove_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Remove field from document
+ form_editor.remove_field("Country")
+ # Save updated document
+ form_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/rename-field/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/rename-field/_index.md
new file mode 100644
index 0000000000..a118335728
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/rename-field/_index.md
@@ -0,0 +1,48 @@
+---
+title: Renomear Campo
+type: docs
+weight: 70
+url: /pt/python-net/rename-field/
+description: Renomeie um campo de formulário existente em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Renomear um Campo de Formulário PDF Usando Python
+Abstract: Este exemplo demonstra como renomear um campo de formulário existente em um documento PDF usando Aspose.PDF for Python. O código abre um PDF de entrada, altera o nome de um campo de formulário especificado usando a classe FormEditor e salva o documento atualizado.
+---
+
+Os formulários PDF geralmente dependem dos nomes dos campos para scripts, automação e processamento de dados. Usando Aspose.PDF for Python, os desenvolvedores podem renomear campos existentes sem recriá‑los ou alterar o layout do formulário.
+
+O [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) a classe fornece o método 'rename_field', que permite aos desenvolvedores alterar o nome de um campo existente enquanto preserva sua posição, valor e aparência.
+
+1. Carregue o formulário PDF existente.
+1. Crie uma instância de FormEditor.
+1. Vincule o documento PDF ao editor.
+1. Renomeie o campo alvo.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def rename_field(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Rename field in document
+ form_editor.rename_field("City", "Town")
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/pt/python-net/working-with-facades/formeditor/modifying-form-fields/single-to-multiple/_index.md b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/single-to-multiple/_index.md
new file mode 100644
index 0000000000..395c5969f4
--- /dev/null
+++ b/pt/python-net/working-with-facades/formeditor/modifying-form-fields/single-to-multiple/_index.md
@@ -0,0 +1,48 @@
+---
+title: Campo de linha única para campo de múltiplas linhas
+type: docs
+weight: 80
+url: /pt/python-net/single-to-multiple/
+description: Converta um campo de texto de linha única em um campo de múltiplas linhas em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Converta um Campo de Texto de Linha Única em um Campo de Múltiplas Linhas em um PDF Usando Python
+Abstract: Este exemplo demonstra como converter um campo de texto de linha única em um campo de múltiplas linhas em um documento PDF usando Aspose.PDF for Python. O código carrega um formulário PDF existente, modifica o campo especificado para permitir várias linhas de texto e salva o documento atualizado.
+---
+
+Formulários PDF às vezes contêm campos de texto projetados para entrada de linha única, o que pode não ser suficiente para certos tipos de dados. Com Aspose.PDF for Python, os desenvolvedores podem converter facilmente esses campos em campos de texto de múltiplas linhas sem precisar recriá-los.
+
+Usando o [FormEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/formeditor/) class, os desenvolvedores podem modificar campos de texto existentes sem afetar sua posição ou outras propriedades.
+
+1. Carregue o documento PDF existente.
+1. Crie uma instância de FormEditor.
+1. Vincule o documento PDF ao editor.
+1. Converta o campo selecionado para várias linhas.
+1. Salve o documento atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def single2multiple(infile, outfile):
+ # Create FormEditor object
+ form_editor = pdf_facades.FormEditor()
+ # Bind document to FormEditor
+ form_editor.bind_pdf(infile)
+ # Change a single-lined text field to a multiple-lined one
+ form_editor.single_2_multiple("City")
+ # Save updated document
+ form_editor.save(outfile)
+```
+
diff --git a/pt/python-net/working-with-facades/pdfannotationeditor/_index.md b/pt/python-net/working-with-facades/pdfannotationeditor/_index.md
new file mode 100644
index 0000000000..5329eeb2ee
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfannotationeditor/_index.md
@@ -0,0 +1,21 @@
+---
+title: Classe PdfAnnotationEditor
+type: docs
+weight: 40
+url: /pt/python-net/pdfannotationeditor-class/
+description: Aprenda como usar a classe PdfAnnotationEditor no Aspose.PDF for Python via .NET para trabalhar com anotações PDF, comentários e marcações programaticamente.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Edite anotações e comentários PDF em Python com PdfAnnotationEditor
+Abstract: Esta seção apresenta a classe PdfAnnotationEditor no Aspose.PDF for Python via .NET para fluxos de trabalho relacionados a anotações PDF. Use esta fachada para gerenciar anotações PDF, comentários e marcações programaticamente enquanto trabalha com documentos existentes em aplicações Python.
+---
+
+O `PdfAnnotationEditor` A classe em Aspose.PDF Facades destina‑se a trabalhar com anotações de PDF e marcações baseadas em comentários sem editar manualmente a estrutura de baixo nível de um documento. Ela fornece uma maneira simplificada de lidar com fluxos de trabalho de anotação em Python via .NET quando você precisa inspecionar ou atualizar arquivos PDF existentes.
+
+## Para que o PdfAnnotationEditor é usado
+
+Use esta fachada quando seu fluxo de trabalho PDF envolve anotações, comentários de revisão ou outros elementos de marcação que precisam ser gerenciados programaticamente. À medida que esta seção se expande, ela deve servir como a página inicial para tutoriais relacionados a anotações construídos em torno do `PdfAnnotationEditor` classe.
+
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/_index.md
new file mode 100644
index 0000000000..56d2edfbbb
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/_index.md
@@ -0,0 +1,31 @@
+---
+title: Classe PdfContentEditor
+type: docs
+weight: 30
+url: /pt/python-net/pdfcontenteditor-class/
+description: Aprenda a usar a classe PdfContentEditor no Aspose.PDF for Python via .NET para editar conteúdo PDF, gerenciar anotações e anexos, trabalhar com links, imagens, texto, multimídia, carimbos e preferências de visualização.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Edite conteúdo PDF e elementos interativos em Python com PdfContentEditor
+Abstract: Esta seção explica como usar a classe PdfContentEditor no Aspose.PDF for Python via .NET para fluxos de trabalho de PDF em nível de conteúdo. Aprenda a gerenciar anotações, anexos, ações de documento, marcações de desenho, imagens, links, multimídia, carimbos, substituição de texto e preferências de visualização programaticamente.
+---
+
+O `PdfContentEditor` A classe em Aspose.PDF Facades foi projetada para tarefas de edição em nível de conteúdo em documentos PDF existentes. Ela fornece uma API simplificada para atualizar elementos interativos, substituir texto, trabalhar com anexos e links, e ajustar o comportamento do documento em aplicações Python via .NET.
+
+## O que você pode fazer com PdfContentEditor
+
+Use esta seção para explorar as principais áreas de edição de conteúdo PDF suportadas por `PdfContentEditor` fachada:
+
+- [Trabalhe com anotações usando o PdfContentEditor](/pdf/pt/python-net/annotations/)
+- [Gerencie anexos de PDF com PdfContentEditor](/pdf/pt/python-net/attachments/)
+- [Configure ações de documento com PdfContentEditor](/pdf/pt/python-net/document-actions/)
+- [Adicione anotações de desenho com PdfContentEditor](/pdf/pt/python-net/drawing-annotations/)
+- [Execute operações de imagem com PdfContentEditor](/pdf/pt/python-net/image-operations/)
+- [Manipule links e navegação com PdfContentEditor](/pdf/pt/python-net/links-and-navigation/)
+- [Adicione ou gerencie conteúdo multimídia com PdfContentEditor](/pdf/pt/python-net/multimedia/)
+- [Gerencie carimbos PDF com PdfContentEditor](/pdf/pt/python-net/stamps-management/)
+- [Substitua e atualize texto com PdfContentEditor](/pdf/pt/python-net/text-operations/)
+- [Altere as preferências do visualizador com PdfContentEditor](/pdf/pt/python-net/viewer-preferences/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
new file mode 100644
index 0000000000..9229f5fd15
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
@@ -0,0 +1,17 @@
+---
+title: Anotações
+type: docs
+weight: 10
+url: /pt/python-net/annotations-facades/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar Anotações de Texto](/pdf/pt/python-net/add-text-annotation/)
+- [Adicionar Anotações de Texto Livre](/pdf/pt/python-net/add-free-text-annotation/)
+- [Adicionar Anotações de Marcação](/pdf/pt/python-net/add-markup-annotation/)
+- [Adicionar Anotações Pop-up](/pdf/pt/python-net/add-popup-annotation/)
+- [Adicionar Anotação de Caret](/pdf/pt/python-net/add-caret-annotation/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-caret-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-caret-annotation/_index.md
new file mode 100644
index 0000000000..28563d35c5
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-caret-annotation/_index.md
@@ -0,0 +1,58 @@
+---
+title: Adicionar Anotação de Caret
+type: docs
+weight: 10
+url: /pt/python-net/add-caret-annotation/
+description: Este exemplo carrega um PDF existente, adiciona uma anotação de caret à primeira página e salva o documento modificado. A anotação inclui um símbolo de caret vermelho e texto de comentário descritivo.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Caret a um PDF Usando Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de caret a um documento PDF usando Aspose.PDF for Python via a API Facades. O exemplo mostra como vincular um arquivo PDF, definir a posição da anotação usando retângulos, configurar as propriedades do caret e salvar o documento atualizado.
+---
+
+Anotações de caret são comumente usadas para indicar inserções de texto ou comentários editoriais em um documento. Com o PdfContentEditor, você pode adicionar anotações de caret programaticamente, especificando o número da página, os limites da anotação, a área de chamada, o símbolo, o texto da nota e a cor.
+
+1. Criar o [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objeto.
+1. Vincular o PDF de entrada.
+1. Definir parâmetros da Anotação Caret:
+ - Número da página onde a anotação será adicionada
+ - Retângulo Caret (posição da anotação)
+ - Retângulo de chamada (área de texto)
+ - Símbolo (por exemplo "P")
+ - Texto da anotação
+ - Cor da anotação
+1. Adicionar a anotação de cursor.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_caret_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add caret annotation to page 1
+ content_editor.create_caret(
+ 1,
+ apd.Rectangle(350, 400, 10, 10),
+ apd.Rectangle(300, 380, 115, 15),
+ "P",
+ "This is a caret annotation",
+ apd.Color.red,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-free-text-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-free-text-annotation/_index.md
new file mode 100644
index 0000000000..58b84e30c5
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-free-text-annotation/_index.md
@@ -0,0 +1,47 @@
+---
+title: Adicionar Anotações de Texto Livre
+type: docs
+weight: 20
+url: /pt/python-net/add-free-text-annotation/
+description: Este exemplo carrega um arquivo PDF existente, adiciona uma anotação de texto livre à primeira página em uma posição definida e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Texto Livre a um PDF Usando Python
+Abstract: Este exemplo demonstra como inserir uma anotação de texto livre em um documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como vincular um PDF, definir a posição da anotação, adicionar texto personalizado e salvar o documento atualizado.
+---
+
+Anotações de texto livre permitem que você coloque texto visível diretamente em uma página PDF sem a necessidade de comentários pop-up. Usando PdfContentEditor, você pode especificar o retângulo da anotação, o texto exibido e a página de destino.
+
+1. Criar o [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objeto.
+1. Vincular o PDF de entrada.
+1. Defina a posição da anotação.
+1. Adicionar a Anotação de Texto Livre.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_free_text_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add free text annotation to page 1
+ content_editor.create_free_text(
+ apd.Rectangle(200, 480, 150, 25), "This is a free text annotation", 1
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-markup-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-markup-annotation/_index.md
new file mode 100644
index 0000000000..82f8cee58e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-markup-annotation/_index.md
@@ -0,0 +1,72 @@
+---
+title: Adicionar Anotações de Marcação
+type: docs
+weight: 30
+url: /pt/python-net/add-markup-annotation/
+description: Este exemplo associa um PDF de entrada, adiciona quatro anotações de marcação diferentes na primeira página e salva o documento atualizado. Cada anotação demonstra um estilo de marcação e cor diferentes.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotações de Marcação de Realce, Sublinhado, Tachado e Ondulado em um PDF Usando Python
+Abstract: Este exemplo demonstra como adicionar múltiplas anotações de marcação—realce, sublinhado, tachado e ondulado—em um documento PDF usando Aspose.PDF for Python via the Facades API. O exemplo mostra como definir áreas de anotação, especificar tipos de marcação, aplicar cores e salvar o documento modificado.
+---
+
+Anotações de marcação são usadas para enfatizar ou revisar texto dentro de um PDF. Com PdfContentEditor, você pode aplicar programaticamente estilos de marcação diferentes especificando uma área retangular, texto de comentário, tipo de marcação, número da página e cor.
+
+1. Criar o [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objeto.
+1. Vincular o PDF de entrada.
+1. Definir retângulos de anotação.
+1. Adicionar Anotações de Marcação.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_markup_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add markup annotation to page 1
+ content_editor.create_markup(
+ apd.Rectangle(120, 440, 200, 20),
+ "This is a highlight annotation",
+ 0,
+ 1,
+ apd.Color.yellow,
+ )
+ content_editor.create_markup(
+ apd.Rectangle(110, 542, 200, 20),
+ "This is a underline annotation",
+ 1,
+ 1,
+ apd.Color.yellow,
+ )
+ content_editor.create_markup(
+ apd.Rectangle(120, 568, 200, 20),
+ "This is a strikeout annotation",
+ 2,
+ 1,
+ apd.Color.orange_red,
+ )
+ content_editor.create_markup(
+ apd.Rectangle(110, 598, 200, 20),
+ "This is a squiggly annotation",
+ 3,
+ 1,
+ apd.Color.dark_blue,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-popup-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-popup-annotation/_index.md
new file mode 100644
index 0000000000..b0b1f5f2bc
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-popup-annotation/_index.md
@@ -0,0 +1,50 @@
+---
+title: Adicionar Anotações Pop-up
+type: docs
+weight: 40
+url: /pt/python-net/add-popup-annotation/
+description: Este exemplo carrega um PDF, adiciona uma anotação pop-up à primeira página e salva o documento modificado. O pop-up está configurado para ser visível por padrão e exibe o texto de comentário especificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotações Pop-up a um PDF Usando Python
+Abstract: Este exemplo demonstra como inserir uma anotação pop-up em um documento PDF usando Aspose.PDF for Python via a Facades API. Ele explica como definir a área do pop-up, definir o texto da anotação, controlar a visibilidade e salvar o documento atualizado.
+---
+
+Anotações pop-up são úteis para adicionar comentários, explicações ou notas interativas em arquivos PDF. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar anotações pop-up programaticamente especificando a localização, o conteúdo, a visibilidade e o número da página.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Defina o retângulo da Anotação Popup.
+1. Adicione a Anotação Popup.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_popup_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add popup annotation to page 1
+ content_editor.create_popup(
+ apd.Rectangle(220, 520, 180, 80),
+ "This is a popup annotation",
+ True,
+ 1,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-text-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-text-annotation/_index.md
new file mode 100644
index 0000000000..6d11d21f28
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/annotations/add-text-annotation/_index.md
@@ -0,0 +1,61 @@
+---
+title: Adicionar Anotações de Texto
+type: docs
+weight: 50
+url: /pt/python-net/add-text-annotation/
+description: Adicionar anotações de texto a um documento PDF usando a classe PdfContentEditor no Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotações de Texto em Python
+Abstract: Aprenda como adicionar anotações de texto a um documento PDF usando a classe PdfContentEditor no Aspose.PDF for Python via .NET. Este exemplo mostra como posicionar uma anotação de texto em uma posição específica, definir seu título e conteúdo, e salvar o arquivo PDF atualizado.
+---
+
+Este artigo mostra como adicionar uma anotação de texto a um documento PDF usando o [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) classe no Aspose.PDF.
+
+Anotações de texto permitem que você anexe comentários, notas ou informações extra a partes específicas de uma página de PDF. Essas anotações podem aparecer como ícones e ser expandidas pelos usuários ao visualizar o documento.
+
+Neste exemplo:
+
+- Um documento PDF é carregado no PdfContentEditor.
+- Uma anotação de texto é adicionada em uma posição específica na página.
+- A anotação inclui um título, conteúdo, tipo de ícone e configurações de visibilidade.
+- O documento modificado é salvo em um novo arquivo.
+
+1. Crie um objeto PdfContentEditor.
+1. Vincule o Document PDF de entrada.
+1. Defina a posição da anotação.
+1. Adicione anotação de texto.
+1. Salve o PDF atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_text_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add text annotation to page 1
+ content_editor.create_text(
+ apd.Rectangle(100, 400, 50, 50),
+ "Text Annotation",
+ "This is a text annotation",
+ True,
+ "Insert",
+ 1,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
new file mode 100644
index 0000000000..2c6fc172cc
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
@@ -0,0 +1,17 @@
+---
+title: Anexos
+type: docs
+weight: 20
+url: /pt/python-net/attachments-facades/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar anexo](/pdf/pt/python-net/add-attachment/)
+- [Adicionar Anexo a partir do Caminho](/pdf/pt/python-net/add-attachment-from-path/)
+- [Adicionar Anotação de Anexo de Arquivo](/pdf/pt/python-net/add-file-attachment-annotation/)
+- [Adicionar Anotação de Anexo de Arquivo a partir de Stream](/pdf/pt/python-net/add-file-attachment-annotation-from-stream/)
+- [Remover Anexos](/pdf/pt/python-net/remove-attachments/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment-from-path/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment-from-path/_index.md
new file mode 100644
index 0000000000..ffcc312ce9
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment-from-path/_index.md
@@ -0,0 +1,47 @@
+---
+title: Adicionar Anexo a partir do Caminho
+type: docs
+weight: 20
+url: /pt/python-net/add-attachment-from-path/
+description: Este exemplo vincula um PDF de entrada, anexa um arquivo externo usando seu caminho de arquivo e salva o PDF modificado com o anexo incorporado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Anexar Arquivos a um PDF usando Sobrecarga de Caminho de Arquivo em Python
+Abstract: Este exemplo demonstra como anexar arquivos externos a um documento PDF usando a sobrecarga de caminho de arquivo de 'add_document_attachment()' no Aspose.PDF for Python via the Facades API. Ele simplifica a adição de anexos sem abrir manualmente um fluxo de arquivo.
+---
+
+Um PDF pode incluir arquivos incorporados, como documentos, planilhas ou imagens, para referência ou distribuição. A sobrecarga de caminho de arquivo de 'add_document_attachment()' permite adicionar anexos diretamente a partir de um caminho de arquivo, eliminando a necessidade de abrir o arquivo manualmente.
+
+1. Criar o [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objeto.
+1. Vincular o PDF de entrada.
+1. Adicionar o Anexo usando o Caminho de Arquivo.
+1. Salvar o Document atualizado.
+
+```python
+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 add_attachment_from_path(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add attachment using file-path overload
+ content_editor.add_document_attachment(
+ attachment_file,
+ "Attachment added using file path overload.",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment/_index.md
new file mode 100644
index 0000000000..9669faecc8
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-attachment/_index.md
@@ -0,0 +1,50 @@
+---
+title: Adicionar anexo
+type: docs
+weight: 10
+url: /pt/python-net/add-attachment/
+description: Este exemplo vincula um PDF de entrada, anexa um arquivo externo à primeira página e salva o PDF modificado com o anexo incorporado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar anexos de arquivo a um PDF usando Python
+Abstract: Este exemplo demonstra como anexar arquivos externos a um documento PDF usando Aspose.PDF for Python via a Facades API. Ele mostra como vincular um PDF, adicionar anexos com descrições e salvar o documento atualizado.
+---
+
+Os anexos de arquivo em PDFs permitem incluir documentos suplementares, imagens ou outros recursos diretamente no PDF. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode anexar arquivos programaticamente a páginas específicas, definir o nome do anexo e fornecer uma descrição.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Abra o arquivo Attachment.
+1. Adicione o Attachment ao PDF.
+1. Salvar o Document atualizado.
+
+```python
+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 add_attachment(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add attachment to page 1
+ with open(attachment_file, "rb") as attachment_stream:
+ content_editor.add_document_attachment(
+ attachment_stream,
+ path.basename(attachment_file),
+ "This is a sample attachment for demonstration purposes.",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-file-attachment-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-file-attachment-annotation/_index.md
new file mode 100644
index 0000000000..08e192bf86
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add-file-attachment-annotation/_index.md
@@ -0,0 +1,51 @@
+---
+title: Adicionar Anotação de Anexo de Arquivo
+type: docs
+weight: 30
+url: /pt/python-net/add-file-attachment-annotation/
+description: O exemplo vincula um PDF de entrada, adiciona uma anotação de anexo de arquivo à primeira página usando o caminho do arquivo e salva o documento atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotações de Anexo de Arquivo a um PDF Usando Python
+Abstract: Este exemplo demonstra como criar uma anotação de anexo de arquivo em um PDF usando um caminho de arquivo com Aspose.PDF for Python via a Facades API. Ele mostra como definir a posição da anotação, definir o texto de descrição, escolher um tipo de ícone e salvar o documento modificado.
+---
+
+Anotações de anexo de arquivo permitem incorporar arquivos externos como ícones interativos em uma página de PDF. Usando a sobrecarga de caminho de arquivo, você pode anexar arquivos diretamente do disco sem abrir fluxos manualmente. Esse método também permite personalizar o ícone da anotação e fornecer uma descrição para os usuários.
+
+1. Criar o [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objeto.
+1. Vincular o PDF de entrada.
+1. Defina o Retângulo da Anotação.
+1. Adicionar a Anotação de Anexo de Arquivo.
+1. Salvar o Document atualizado.
+
+```python
+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 add_file_attachment_annotation(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Create file attachment annotation on page 1
+ content_editor.create_file_attachment(
+ apd.Rectangle(100, 520, 20, 20),
+ "Attachment annotation contents",
+ attachment_file,
+ 1,
+ "PushPin",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add_file-attachment-annotation-from-stream/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add_file-attachment-annotation-from-stream/_index.md
new file mode 100644
index 0000000000..2829c4ab8d
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/add_file-attachment-annotation-from-stream/_index.md
@@ -0,0 +1,57 @@
+---
+title: Adicionar Anotação de Anexo de Arquivo a partir de Stream
+type: docs
+weight: 40
+url: /pt/python-net/add-file-attachment-annotation-from-stream/
+description: O exemplo carrega um PDF, lê um arquivo externo para um stream de memória, adiciona uma anotação de anexo de arquivo na primeira página e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotações de Anexo de Arquivo a um PDF a partir de um Stream em Python
+Abstract: Este exemplo demonstra como criar uma anotação de anexo de arquivo em um PDF usando um stream de arquivo com Aspose.PDF for Python via the Facades API. Ele mostra como especificar a posição da anotação, definir uma descrição, incluir um valor de opacidade e salvar o documento modificado.
+---
+
+As anotações de anexo de arquivo permitem incorporar arquivos como ícones interativos dentro de uma página de PDF. Usando uma abordagem baseada em stream, você pode anexar arquivos dinamicamente sem depender de um caminho de arquivo físico. Este método também oferece suporte à personalização da aparência da anotação, incluindo opacidade.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Leia o Arquivo de Anexo como um Stream.
+1. Adicionar a Anotação de Anexo de Arquivo.
+1. Salvar o Document atualizado.
+
+```python
+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 add_file_attachment_annotation_from_stream(infile, attachment_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ with open(attachment_file, "rb") as source_stream:
+ attachment_stream = BytesIO(source_stream.read())
+
+ # Create file attachment annotation using stream+opacity overload
+ content_editor.create_file_attachment(
+ apd.Rectangle(130, 520, 20, 20),
+ "Attachment annotation from stream",
+ attachment_stream,
+ path.basename(attachment_file),
+ 1,
+ "Tag",
+ 0.75,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/attachments/remove-attachments/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/remove-attachments/_index.md
new file mode 100644
index 0000000000..33afc5e199
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/attachments/remove-attachments/_index.md
@@ -0,0 +1,44 @@
+---
+title: Remover Anexos
+type: docs
+weight: 50
+url: /pt/python-net/remove-attachments/
+description: Este exemplo vincula um PDF de entrada, exclui todos os anexos e salva o PDF modificado sem nenhum arquivo incorporado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Todos os Anexos de um PDF Usando Python
+Abstract: Este exemplo demonstra como remover todos os anexos de arquivo de um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como vincular um PDF, excluir anexos incorporados e salvar o documento atualizado.
+---
+
+Os PDFs podem conter anexos, como documentos, imagens ou outros arquivos. Existem cenários em que você precisa limpar um PDF de todos os anexos por motivos de segurança, privacidade ou distribuição. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode remover programaticamente todos os anexos incorporados em um documento.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Excluir todos os anexos.
+1. Salvar o Document atualizado.
+
+```python
+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 remove_attachments(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Remove all attachments from document
+ content_editor.delete_attachments()
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/_index.md
new file mode 100644
index 0000000000..a942d926fe
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/_index.md
@@ -0,0 +1,15 @@
+---
+title: Ações de Documento
+type: docs
+weight: 40
+url: /pt/python-net/document-actions/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar ação de marcador](/pdf/pt/python-net/add-bookmark-action/)
+- [Adicionar Ação de Documento](/pdf/pt/python-net/add-document-action/)
+- [Remover Ação de Abertura](/pdf/pt/python-net/remove-open-action/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/add-bookmark-action/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/add-bookmark-action/_index.md
new file mode 100644
index 0000000000..1993cd3c44
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/add-bookmark-action/_index.md
@@ -0,0 +1,52 @@
+---
+title: Adicionar ação de marcador
+type: docs
+weight: 10
+url: /pt/python-net/add-bookmark-action/
+description: Este exemplo vincula um PDF de entrada, cria um marcador rotulado "PdfContentEditor Bookmark" que navega para a página 1 e salva o documento atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um marcador com ação de navegação em um PDF usando Python
+Abstract: Este exemplo demonstra como adicionar um marcador com uma ação de navegação a um documento PDF usando Aspose.PDF para Python via a API Facades. Ele mostra como configurar o texto do marcador, a aparência e uma ação que direciona os usuários para uma página específica.
+---
+
+Marcadores fornecem navegação rápida dentro de documentos PDF. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar marcadores programaticamente e atribuir ações como navegar para uma página. Você também pode personalizar a aparência do marcador, incluindo opções de cor e estilo, como negrito ou itálico.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Definir propriedades do marcador.
+1. Atribuir ação ao marcador.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_bookmark_action(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add a bookmark action to navigate to page 1
+ content_editor.create_bookmarks_action(
+ "PdfContentEditor Bookmark",
+ apd.Color.blue,
+ True,
+ False,
+ "",
+ "GoTo",
+ "1",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/add-document-action/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/add-document-action/_index.md
new file mode 100644
index 0000000000..1e60d94ee0
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/add-document-action/_index.md
@@ -0,0 +1,46 @@
+---
+title: Adicionar Ação de Documento
+type: docs
+weight: 20
+url: /pt/python-net/add-document-action/
+description: Este exemplo adiciona um alerta JavaScript que aparece quando o PDF é aberto. O script está anexado ao evento de abertura do documento e é executado automaticamente em visualizadores de PDF compatíveis.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Ação JavaScript de Abertura de Documento a um PDF Usando Python
+Abstract: Este exemplo demonstra como adicionar uma ação JavaScript ao nível do documento que é acionada quando um PDF é aberto. Usando Aspose.PDF for Python via the Facades API, o exemplo mostra como vincular um documento, atribuir uma ação de evento de abertura e salvar o PDF atualizado.
+---
+
+Ações ao nível do documento permitem que você defina comportamentos que são executados automaticamente quando determinados eventos ocorrem, como a abertura de um PDF. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode anexar código JavaScript a esses eventos. Isso pode ser usado para notificações, lógica de validação ou fluxos de trabalho interativos.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Adicionar ação em nível de documento.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_document_action(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add JavaScript action for document open event
+ content_editor.add_document_additional_action(
+ content_editor.DOCUMENT_OPEN,
+ "app.alert('Document opened with PdfContentEditor action');",
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/remove-open-action/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/remove-open-action/_index.md
new file mode 100644
index 0000000000..3952f3434e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/document-actions/remove-open-action/_index.md
@@ -0,0 +1,45 @@
+---
+title: Remover Ação de Abertura
+type: docs
+weight: 30
+url: /pt/python-net/remove-open-action/
+description: Este exemplo carrega um PDF existente, remove a ação de abertura e salva o documento limpo.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Ação de Abertura de Documento de um PDF Usando Python
+Abstract: Este exemplo demonstra como remover uma ação de abertura de documento de um PDF usando Aspose.PDF for Python via a Facades API. Ele mostra como vincular um PDF, limpar a ação de abertura e salvar o documento atualizado.
+---
+
+Documentos PDF podem conter ações que são executadas automaticamente quando o arquivo é aberto, como alertas de JavaScript, comandos de navegação ou outros comportamentos. Em alguns cenários, pode ser necessário remover essas ações por razões de segurança, conformidade ou experiência do usuário.
+
+Usando PdfContentEditor, você pode remover facilmente a ação de abertura do documento e garantir que o PDF abra sem executar nenhum comportamento automático.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Remover a ação de abertura do Document Open Action.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def remove_open_action(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Remove open action from the document
+ content_editor.remove_document_open_action()
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/_index.md
new file mode 100644
index 0000000000..27a573e421
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/_index.md
@@ -0,0 +1,18 @@
+---
+title: Anotações de desenho
+type: docs
+weight: 50
+url: /pt/python-net/drawing-annotations/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar Anotação de Linha](/pdf/pt/python-net/add-line-annotation/)
+- [Adicionar Anotação Quadrada](/pdf/pt/python-net/add-square-annotation/)
+- [Adicionar Anotação de Círculo](/pdf/pt/python-net/add-circle-annotation/)
+- [Adicionar Anotação de Polígono](/pdf/pt/python-net/add-polygon-annotation/)
+- [Adicionar Anotação de Polilinha](/pdf/pt/python-net/add-polyline-annotation/)
+- [Adicionar Anotação de Curva](/pdf/pt/python-net/add-curve-annotation/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-circle-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-circle-annotation/_index.md
new file mode 100644
index 0000000000..887e2a9fdc
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-circle-annotation/_index.md
@@ -0,0 +1,49 @@
+---
+title: Adicionar Anotação de Círculo
+type: docs
+weight: 10
+url: /pt/python-net/add-circle-annotation/
+description: Este exemplo vincula um PDF de entrada, cria uma anotação de círculo na primeira página e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Círculo a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de círculo a um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como definir os limites da anotação, definir o texto de conteúdo, configurar a cor e a aparência, e salvar o documento atualizado.
+---
+
+Anotações de círculo são úteis para destacar áreas de interesse em um documento PDF. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar formas circulares especificando o retângulo que define os limites do círculo, juntamente com o texto da anotação, cor, opções de preenchimento, número da página e largura da borda.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Defina os limites do círculo.
+1. Adicione a anotação de círculo.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_circle_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ # Create CircleAnnotation object
+ rect = apd.Rectangle(300, 300, 400, 400)
+ contents = "This is circle annotation"
+ content_editor.create_square_circle(rect, contents, apd.Color.blue, False, 1, 3)
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-curve-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-curve-annotation/_index.md
new file mode 100644
index 0000000000..d04568b917
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-curve-annotation/_index.md
@@ -0,0 +1,55 @@
+---
+title: Adicionar Anotação de Curva
+type: docs
+weight: 20
+url: /pt/python-net/add-curve-annotation/
+description: Este exemplo vincula um PDF de entrada, desenha uma curva tracejada na primeira página e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Curva a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de curva a um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como definir os vértices da curva, o estilo da borda, os limites da anotação, o conteúdo de texto e salvar o documento atualizado.
+---
+
+Anotações de curva são usadas para destacar caminhos ou formas irregulares em um PDF, proporcionando ênfase visual ou marcando áreas importantes. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode desenhar curvas especificando uma sequência de vértices, estilo de borda, visibilidade, retângulo da anotação e texto descritivo.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF onput.
+1. Configure as propriedades da Curve.
+1. Desenhe a anotação Curve.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_curve_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ line_info = pdf_facades.LineInfo()
+ line_info.border_style = 1 # 1 - Dashed
+ line_info.vertice_coordinate = [120, 520, 160, 560, 220, 540, 280, 580]
+ line_info.visibility = True
+ content_editor.draw_curve(
+ line_info,
+ 1,
+ apd.Rectangle(110, 510, 220, 100),
+ "This is curve annotation",
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-line-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-line-annotation/_index.md
new file mode 100644
index 0000000000..673c359c4f
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-line-annotation/_index.md
@@ -0,0 +1,62 @@
+---
+title: Adicionar Anotação de Linha
+type: docs
+weight: 30
+url: /pt/python-net/add-line-annotation/
+description: Este exemplo vincula um PDF de entrada, desenha uma anotação de linha vermelha com pontas de linha quadradas e salva o PDF modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Linha a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de linha a um documento PDF usando Aspose.PDF for Python via a API Facades. Ele explica como definir os pontos inicial e final da linha, os limites do retângulo, as propriedades de aparência e salvar o documento atualizado.
+---
+
+Anotações de linha são úteis para enfatizar texto, destacar relacionamentos ou chamar a atenção para áreas específicas em um PDF. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar programaticamente anotações de linha especificando os pontos inicial e final, o retângulo delimitador, a cor, o estilo da borda e as pontas da linha.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Defina as propriedades da Anotação de Linha.
+1. Adicione a anotação de Linha.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_line_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ # Create LineAnnotation object
+ rect = apd.Rectangle(100, 100, 200, 200)
+ contents = "This is line annotation"
+ content_editor.create_line(
+ rect,
+ contents,
+ 100,
+ 100,
+ 200,
+ 200,
+ 1,
+ 1,
+ apd.Color.red,
+ "Solid",
+ [3, 2],
+ ["Square"],
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polygon-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polygon-annotation/_index.md
new file mode 100644
index 0000000000..249573347a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polygon-annotation/_index.md
@@ -0,0 +1,54 @@
+---
+title: Adicionar Anotação de Polígono
+type: docs
+weight: 40
+url: /pt/python-net/add-polygon-annotation/
+description: Este exemplo associa um PDF de entrada, desenha um polígono sólido na primeira página e salva o documento modificado com uma anotação.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Polígono a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de polígono a um documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como definir os vértices do polígono, o estilo da borda, os limites da anotação, texto descritivo e salvar o documento atualizado.
+---
+
+Anotações de polígonos são usadas para destacar áreas ou formas irregulares em um PDF, proporcionando ênfase visual ou marcando regiões específicas. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar polígonos especificando as coordenadas dos vértices, o estilo da borda, o número da página e o retângulo da anotação.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Configure as propriedades do Polígono.
+1. Adicione a anotação de Polígono.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_polygon_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ line_info = pdf_facades.LineInfo()
+ line_info.border_style = 0 # 0 - Solid
+ line_info.vertice_coordinate = [100, 200, 150, 260, 220, 220, 200, 160]
+ content_editor.create_polygon(
+ line_info,
+ 1,
+ apd.Rectangle(90, 150, 150, 120),
+ "This is polygon annotation",
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polyline-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polyline-annotation/_index.md
new file mode 100644
index 0000000000..6046b7b7ac
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-polyline-annotation/_index.md
@@ -0,0 +1,54 @@
+---
+title: Adicionar Anotação de Polilinha
+type: docs
+weight: 50
+url: /pt/python-net/add-polyline-annotation/
+description: O exemplo vincula um PDF de entrada, cria uma polilinha sólida na primeira página e salva o documento modificado com uma anotação.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação de Polilinha a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de polilinha a um documento PDF usando Aspose.PDF for Python via a API Facades. Mostra como definir uma sequência de vértices, estilo de borda, retângulo da anotação, texto e salvar o documento atualizado.
+---
+
+Anotações de polilinha permitem que você destaque uma série de segmentos de linha conectados em um PDF. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode desenhar uma polilinha especificando as coordenadas dos vértices, o estilo da borda, o número da página e os limites da anotação. Isso é útil para representar visualmente caminhos, tendências ou conexões em diagramas e documentos.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Configurar propriedades da Polilinha.
+1. Adicionar a anotação de Polilinha.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_polyline_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ line_info = pdf_facades.LineInfo()
+ line_info.border_style = 0 # 0 - Solid
+ line_info.vertice_coordinate = [120, 420, 180, 460, 230, 430, 290, 470]
+ content_editor.create_poly_line(
+ line_info,
+ 1,
+ apd.Rectangle(110, 410, 200, 90),
+ "This is polyline annotation",
+ )
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-square-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-square-annotation/_index.md
new file mode 100644
index 0000000000..747721a3bf
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/drawing-annotations/add-square-annotation/_index.md
@@ -0,0 +1,49 @@
+---
+title: Adicionar Anotação Quadrada
+type: docs
+weight: 60
+url: /pt/python-net/add-square-annotation/
+description: Este exemplo associa um PDF de entrada, adiciona uma anotação quadrada azul preenchida na primeira página e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Anotação Quadrada a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação quadrada a um documento PDF usando Aspose.PDF for Python via a Facades API. Ele mostra como definir o retângulo da anotação, o conteúdo de texto, a cor, as opções de preenchimento e salvar o documento atualizado.
+---
+
+Anotações quadradas são comumente usadas para destacar áreas de interesse, marcar seções importantes ou fornecer pistas visuais em um documento PDF. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar anotações quadradas (ou circulares) especificando o retângulo delimitador, o texto de conteúdo, a cor da borda, a opção de preenchimento, o número da página e a espessura da borda.
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Defina a anotação Square.
+1. Adicione a anotação Square.
+1. Salvar o Document atualizado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_square_annotation(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind input PDF file
+ content_editor.bind_pdf(infile)
+
+ # Create SquareAnnotation object
+ rect = apd.Rectangle(100, 300, 200, 400)
+ contents = "This is square annotation"
+ content_editor.create_square_circle(rect, contents, apd.Color.blue, True, 1, 3)
+
+ # Save output PDF file
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/_index.md
new file mode 100644
index 0000000000..581edc1859
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/_index.md
@@ -0,0 +1,15 @@
+---
+title: Operações de Imagem
+type: docs
+weight: 60
+url: /pt/python-net/image-operations/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Substituir Imagens em PDF](/pdf/pt/python-net/replace-image/)
+- [Excluir Imagens de PDF](/pdf/pt/python-net/delete-images/)
+- [Excluir Todas as Imagens do PDF](/pdf/pt/python-net/delete-all-images/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-all-images/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-all-images/_index.md
new file mode 100644
index 0000000000..6acc356ad6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-all-images/_index.md
@@ -0,0 +1,44 @@
+---
+title: Excluir Todas as Imagens do PDF
+type: docs
+weight: 10
+url: /pt/python-net/delete-all-images/
+description: Excluir todas as imagens de um documento PDF usando Aspose.PDF for Python via a Facades API.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Todas as Imagens de um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como excluir todas as imagens de um documento PDF usando Aspose.PDF for Python via a Facades API. Ele mostra como vincular um PDF, remover todas as imagens incorporadas e salvar o documento atualizado.
+---
+
+Documentos PDF frequentemente contêm imagens para ilustrações, branding ou decoração. Pode haver casos em que você precise remover todas as imagens de um PDF, como reduzir o tamanho do arquivo, proteger conteúdos visuais sensíveis ou preparar uma versão somente de texto.
+
+Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/)", você pode remover programaticamente todas as imagens de um PDF, garantindo que o documento contenha apenas conteúdo textual. Este exemplo associa um PDF de entrada, exclui todas as imagens e salva o arquivo modificado."
+
+1. Crie o objeto PdfContentEditor.
+1. Vincular o PDF de entrada.
+1. Excluir todas as imagens.
+1. Salvar o Document atualizado.
+
+```python
+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 delete_all_image(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Delete all images from the document
+ content_editor.delete_image()
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-images/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-images/_index.md
new file mode 100644
index 0000000000..18296eacb2
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/delete-images/_index.md
@@ -0,0 +1,44 @@
+---
+title: Excluir Imagens de PDF
+type: docs
+weight: 20
+url: /pt/python-net/delete-images/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir Imagens Específicas de uma Página PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como excluir imagens específicas de um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como direcionar imagens em uma página específica e salvar o documento atualizado.
+---
+
+Às vezes, você pode querer remover apenas certas imagens de um PDF em vez de limpar todos os elementos visuais. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode excluir imagens selecionadas especificando o número da página e o índice da imagem.
+
+Este trecho de código vincula um PDF de entrada, exclui a segunda imagem na página 1 e salva o PDF modificado, deixando as demais imagens intactas.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Exclua imagens específicas de uma página designada.
+1. Salve o documento PDF atualizado.
+
+```python
+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 delete_images(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Delete image on page 1
+ content_editor.delete_image(1, [2])
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/replace-image/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/replace-image/_index.md
new file mode 100644
index 0000000000..6c1925f87d
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/image-operations/replace-image/_index.md
@@ -0,0 +1,42 @@
+---
+title: Substituir Imagens em PDF
+type: docs
+weight: 30
+url: /pt/python-net/replace-image/
+description: Este exemplo vincula um PDF de entrada, substitui a primeira imagem na página 1 por uma nova imagem e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Substituir uma Imagem em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como substituir uma imagem existente em um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como direcionar uma imagem específica em uma página e substituí‑la por uma nova imagem, e então salvar o PDF atualizado.
+---
+
+Os PDFs frequentemente contêm imagens que podem precisar ser atualizadas ou substituídas, como logotipos, diagramas ou fotos. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode substituir uma imagem específica em uma página determinada fornecendo o número da página, o índice da imagem e o caminho do novo arquivo de imagem.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Substitua uma imagem específica em uma página determinada.
+1. Salve o documento PDF atualizado.
+
+```python
+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_image(infile, image_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace image on page 1
+ content_editor.replace_image(1, 1, image_file)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
new file mode 100644
index 0000000000..8a476ab7f3
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
@@ -0,0 +1,19 @@
+---
+title: Links e Navegação
+type: docs
+weight: 70
+url: /pt/python-net/links-and-navigation-facades/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar link da Web](/pdf/pt/python-net/add-web-link/)
+- [Adicionar link local](/pdf/pt/python-net/add-local-link/)
+- [Adicionar link de documento PDF](/pdf/pt/python-net/add-pdf-document-link/)
+- [Adicionar link JavaScript](/pdf/pt/python-net/add-javascript-link/)
+- [Adicionar Link de Aplicativo](/pdf/pt/python-net/add-application-link/)
+- [Adicionar Link de Ação Personalizada](/pdf/pt/python-net/add-custom-action-link/)
+- [Extrair Links](/pdf/pt/python-net/extract-links/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-application-link/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-application-link/_index.md
new file mode 100644
index 0000000000..9acd178cee
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-application-link/_index.md
@@ -0,0 +1,53 @@
+---
+title: Adicionar Link de Aplicativo
+type: docs
+weight: 10
+url: /pt/python-net/add-application-link/
+description: Este exemplo vincula um PDF de entrada, adiciona um link de lançamento de aplicativo na primeira página e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar um Link de Lançamento de Aplicativo a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar um link de lançamento de aplicativo a um documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como criar uma área clicável que abre um aplicativo especificado quando clicada, e salvar o PDF atualizado.
+---
+
+PDF pode incluir elementos interativos, como links que iniciam aplicativos externos. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir uma região retangular em uma página que, quando clicada, abre um arquivo executável específico.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina uma área retangular para o link clicável.
+1. Especifique o caminho da aplicação a ser lançada.
+1. Defina a cor do link.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_application_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add application launch link
+ content_editor.create_application_link(
+ apd.Rectangle(180, 530, 260, 20),
+ "notepad.exe",
+ 1,
+ apd.Color.purple,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-custom-action-link/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-custom-action-link/_index.md
new file mode 100644
index 0000000000..c7abcc0a6f
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-custom-action-link/_index.md
@@ -0,0 +1,54 @@
+---
+title: Adicionar Link de Ação Personalizada
+type: docs
+weight: 20
+url: /pt/python-net/add-custom-action-link/
+description: Este exemplo vincula um PDF de entrada, adiciona um link de ação personalizada na primeira página e salva o documento modificado. Uma lista de ações vazia é usada para simplificar, mas implementações reais podem incluir ações reais.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar um Link de Ação Personalizada a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar um link de ação personalizada a um documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como criar uma área clicável em uma página, atribuir uma ação personalizada e salvar o documento atualizado.
+---
+
+Links de ação personalizados permitem definir áreas interativas em um PDF que podem disparar ações específicas quando clicadas, como executar scripts, navegar entre páginas ou executar comandos específicos de aplicativos. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode criar um link de ação personalizada especificando a página, o retângulo, a cor e as ações.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para o link clicável.
+1. Especifique o número da página e a cor do link.
+1. Atribua ações personalizadas (vazio neste exemplo).
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_custom_action_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add custom action link. Empty action list keeps the sample runnable
+ # without requiring additional enum lookups.
+ content_editor.create_custom_action_link(
+ apd.Rectangle(200, 500, 260, 20),
+ 1,
+ apd.Color.dark_red,
+ [],
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-javascript-link/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-javascript-link/_index.md
new file mode 100644
index 0000000000..2fb90d3b15
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-javascript-link/_index.md
@@ -0,0 +1,53 @@
+---
+title: Adicionar link JavaScript
+type: docs
+weight: 30
+url: /pt/python-net/add-javascript-link/
+description: Este exemplo vincula um PDF de entrada, adiciona um link JavaScript que dispara um alerta ao ser clicado e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar um link JavaScript a um PDF usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar um link JavaScript a um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como criar uma área clicável que executa código JavaScript quando clicada e salvar o PDF atualizado.
+---
+
+Links JavaScript em PDFs permitem funcionalidades interativas, como exibir alertas, realizar cálculos ou modificar dinamicamente o conteúdo do documento. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um retângulo clicável em uma página e associá-lo a um código JavaScript personalizado.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para o link JavaScript clicável.
+1. Especifique o número da página e a cor do link.
+1. Atribua o código JavaScript a ser executado ao clicar.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_javascript_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add JavaScript link action
+ content_editor.create_java_script_link(
+ "app.alert('PdfContentEditor JavaScript link');",
+ apd.Rectangle(160, 560, 260, 20),
+ 1,
+ apd.Color.orange,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-local-link/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-local-link/_index.md
new file mode 100644
index 0000000000..fe78ccc775
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-local-link/_index.md
@@ -0,0 +1,53 @@
+---
+title: Adicionar link local
+type: docs
+weight: 40
+url: /pt/python-net/add-local-link/
+description: Este exemplo vincula um PDF de entrada, adiciona um link local de cor vermelha na página 1 que aponta para a página 1 e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar um link local a um PDF usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar um link local a um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como criar uma área clicável que navega para outra página dentro do mesmo PDF e salvar o documento atualizado.
+---
+
+Links locais em PDFs permitem navegação rápida entre páginas dentro do mesmo documento. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um retângulo clicável que vincula uma página a outra, melhorando a usabilidade e a navegação do documento.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para o link local clicável.
+1. Especifique a página de origem e a página de destino.
+1. Defina a cor do link.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_local_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add a local link on page 1 to destination page 1
+ content_editor.create_local_link(
+ apd.Rectangle(120, 620, 220, 20),
+ 1,
+ 1,
+ apd.Color.red,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-pdf-document-link/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-pdf-document-link/_index.md
new file mode 100644
index 0000000000..09a4a780d7
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-pdf-document-link/_index.md
@@ -0,0 +1,54 @@
+---
+title: Adicionar link de documento PDF
+type: docs
+weight: 50
+url: /pt/python-net/add-pdf-document-link/
+description: Este exemplo associa um PDF de entrada, adiciona um link de cor verde a uma página em outro PDF e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar um link de documento PDF usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar um link a outro documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como criar uma área clicável que abre um PDF diferente e salvar o documento atualizado.
+---
+
+Links de documentos PDF permitem que os usuários naveguem de um PDF para outro de forma contínua. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um retângulo clicável que vincula a uma página em um arquivo PDF diferente, tornando seus documentos interativos e conectados.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para o link clicável.
+1. Specifie o arquivo PDF vinculado, a página de origem e a página de destino.
+1. Defina a cor do link.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_pdf_document_link(infile, linked_pdf, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add link to another PDF document
+ content_editor.create_pdf_document_link(
+ apd.Rectangle(140, 590, 240, 20),
+ linked_pdf,
+ 1,
+ 1,
+ apd.Color.green,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-web-link/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-web-link/_index.md
new file mode 100644
index 0000000000..1c106feaa6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/add-web-link/_index.md
@@ -0,0 +1,52 @@
+---
+title: Adicionar link da Web
+type: docs
+weight: 60
+url: /pt/python-net/add-web-link/
+description: Este exemplo associa um PDF de entrada, adiciona uma anotação de link da web azul na página 1 apontando para a página do produto Python PDF da Aspose, e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar um link da Web a um PDF usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar um link da web a um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como criar uma área clicável em uma página que abre um URL especificado em um navegador web e salvar o documento atualizado.
+---
+
+Links da Web em PDFs permitem que os usuários naveguem diretamente para recursos online, sites ou documentação. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir uma área retangular em uma página PDF que, ao ser clicada, abre um URL no navegador padrão.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para o link da web clicável.
+1. Especifique o URL, número da página e cor do link.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_web_link(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add a web link annotation to page 1
+ content_editor.create_web_link(
+ apd.Rectangle(100, 650, 200, 20),
+ "https://products.aspose.com/pdf/python-net/",
+ 1,
+ apd.Color.blue,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/extract-links/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/extract-links/_index.md
new file mode 100644
index 0000000000..c50f145d82
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/extract-links/_index.md
@@ -0,0 +1,60 @@
+---
+title: Extrair Links
+type: docs
+weight: 70
+url: /pt/python-net/extract-links/
+description: Este exemplo vincula um PDF de entrada, extrai todos os links e imprime suas coordenadas e URIs (se disponíveis).
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extrair Links de um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como extrair todos os links de um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como identificar e recuperar links da web ou outros links acionáveis incorporados no PDF.
+---
+
+Os PDFs frequentemente contêm elementos interativos, como links da web, links de documento e ações personalizadas. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode extrair programaticamente todas as anotações de link de um PDF. Isso permite que você inspecione ou processe os links, por exemplo, para validar URLs ou analisar padrões de navegação em um documento.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Extrair todos os links usando 'extract_link()'.
+1. Iterar pelos links extraídos.
+1. Verificar se um link é um LinkAnnotation e se sua ação é um GoToURIAction.
+1. Imprimir as coordenadas do retângulo e a URI.
+1. Exibir uma mensagem se nenhum link for encontrado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+from aspose.pycore import cast, is_assignable
+import aspose.pydrawing as apd
+import aspose.pdf as ap
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def extract_links(infile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Extract links from the document
+ links = content_editor.extract_link()
+
+ count = 0
+ for link in links:
+ count += 1
+ print(f"Link {count}: {link.rect}")
+ if is_assignable(link, ap.annotations.LinkAnnotation):
+ annotation = cast(ap.annotations.LinkAnnotation, link)
+ if is_assignable(annotation.action, ap.annotations.GoToURIAction):
+ action = cast(ap.annotations.GoToURIAction, annotation.action)
+ print(f" URI: {action.uri}")
+
+ if count == 0:
+ print("No links found")
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/_index.md
new file mode 100644
index 0000000000..7ab1e54303
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/_index.md
@@ -0,0 +1,14 @@
+---
+title: Multimídia
+type: docs
+weight: 80
+url: /pt/python-net/multimedia/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar Anotação de Filme](/pdf/pt/python-net/add-movie-annotation/)
+- [Adicionar Anotação de Som](/pdf/pt/python-net/add-sound-annotation/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/add-movie-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/add-movie-annotation/_index.md
new file mode 100644
index 0000000000..cb1b9d0184
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/add-movie-annotation/_index.md
@@ -0,0 +1,45 @@
+---
+title: Adicionar Anotação de Filme
+type: docs
+weight: 10
+url: /pt/python-net/add-movie-annotation/
+description: Este exemplo associa um PDF de entrada, adiciona uma anotação de filme na página 1 e salva o PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar uma Anotação de Filme a um PDF usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como incorporar um filme (vídeo) em um documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como adicionar uma anotação clicável que reproduz um vídeo diretamente no PDF.
+---
+
+Anotações de filme em PDFs permitem incorporar conteúdo multimídia, como vídeos, em seus documentos. Using [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um retângulo em uma página onde o vídeo aparecerá. Quando clicado, o vídeo pode ser reproduzido diretamente do PDF, tornando seus documentos mais interativos e envolventes.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para a anotação de filme.
+1. Especifique o arquivo de vídeo a incorporar.
+1. Atribua o número da página para a anotação.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_movie_annotation(infile, movie_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add movie annotation to page 1
+ content_editor.create_movie(apd.Rectangle(80, 500, 220, 120), movie_file, 1)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/add-sound-annotation/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/add-sound-annotation/_index.md
new file mode 100644
index 0000000000..abd44d32f8
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/multimedia/add-sound-annotation/_index.md
@@ -0,0 +1,46 @@
+---
+title: Adicionar Anotação de Som
+type: docs
+weight: 20
+url: /pt/python-net/add-sound-annotation/
+description: Este exemplo vincula um PDF de entrada, adiciona uma anotação de som na página 1 e salva o PDF modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar uma Anotação de Som a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como incorporar áudio em um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como adicionar uma anotação de som clicável que reproduz um arquivo de áudio diretamente no PDF.
+---
+
+Anotações de som em PDFs permitem que você adicione conteúdo de áudio, como notas de voz, música ou efeitos sonoros aos seus documentos. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um pequeno retângulo clicável em uma página que reproduz um arquivo de áudio especificado quando ativado.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para a anotação de som.
+1. Especifique o arquivo de áudio, o nome da anotação, o número da página e a taxa de amostragem.
+1. Salve o documento PDF atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def add_sound_annotation(infile, sound_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Add sound annotation to page 1
+ content_editor.create_sound(
+ apd.Rectangle(80, 450, 30, 30), sound_file, "Speaker", 1, "8000"
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/_index.md
new file mode 100644
index 0000000000..6f614c2e9a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/_index.md
@@ -0,0 +1,22 @@
+---
+title: Gerenciamento de Carimbos
+type: docs
+weight: 90
+url: /pt/python-net/stamps-management/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Adicionar Carimbo de Borracha](/pdf/pt/python-net/add-rubber-stamp/)
+- [Excluir Carimbo por Índice](/pdf/pt/python-net/delete-stamp-by-index/)
+- [Gerenciar Carimbo por ID](/pdf/pt/python-net/manage-stamp-by-id/)
+- [Excluir Carimbo por IDs](/pdf/pt/python-net/delete-stamp-by-ids-examples/)
+- [Mover Carimbo Por Índice](/pdf/pt/python-net/move-stamp-by-index/)
+- [Mover Carimbo Por ID](/pdf/pt/python-net/move-stamp-by-id-example/)
+- [Criar Carimbo de Borracha com Arquivo de Aparência](/pdf/pt/python-net/create-rubber-stamp-with-appearance-file/)
+- [Criar Carimbo de Borracha com Fluxo de Aparência](/pdf/pt/python-net/create-rubber-stamp-with-appearance-stream/)
+- [Excluir Selos Globalmente](/pdf/pt/python-net/delete-stamps-globally/)
+- [Listar Carimbos](/pdf/pt/python-net/list-stamps/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/add-rubber-stamp/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/add-rubber-stamp/_index.md
new file mode 100644
index 0000000000..80d846960c
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/add-rubber-stamp/_index.md
@@ -0,0 +1,52 @@
+---
+title: Adicionar Carimbo de Borracha
+type: docs
+weight: 10
+url: /pt/python-net/add-rubber-stamp/
+description: Este exemplo vincula um PDF de entrada, adiciona um carimbo de borracha verde “Approved” nas quatro primeiras páginas e salva o documento modificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar uma Anotação de Carimbo de Borracha a um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como adicionar uma anotação de carimbo de borracha a um documento PDF usando Aspose.PDF for Python via a API Facades. Carimbos de borracha permitem marcar visualmente páginas com aprovações, revisões ou rótulos personalizados.
+---
+
+Anotações de carimbo de borracha são comumente usadas em PDFs para indicar aprovação, status de revisão ou outras notas. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um retângulo para o carimbo, definir seu texto e comentários, escolher uma cor e aplicá-lo a várias páginas de um documento.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Percorra as páginas 1–34.
+1. Adicione uma anotação de selo de borracha com texto personalizado, comentários e cor.
+1. Salve o documento PDF atualizado.
+
+```python
+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 add_rubber_stamp(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ for i in range(1, 5):
+ content_editor.create_rubber_stamp(
+ i,
+ apd.Rectangle(120, 450, 180, 60),
+ "Approved",
+ "Approved by reviewer",
+ apd.Color.green,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-file/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-file/_index.md
new file mode 100644
index 0000000000..e804efedc9
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-file/_index.md
@@ -0,0 +1,52 @@
+---
+title: Criar Carimbo de Borracha com Arquivo de Aparência
+type: docs
+weight: 20
+url: /pt/python-net/create-rubber-stamp-with-appearance-file/
+description: O exemplo associa um PDF de entrada, cria um carimbo de borracha na página 1 usando um arquivo de imagem como a aparência do carimbo e salva o PDF atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Carimbo de Borracha com Aparência Personalizada em um PDF usando PdfContentEditor
+Abstract: Este exemplo demonstra como adicionar uma anotação de carimbo de borracha com uma aparência personalizada (imagem) a um documento PDF usando Aspose.PDF for Python via a API Facades. Carimbos personalizados permitem incluir logotipos, assinaturas ou elementos visuais de marca como parte do carimbo.
+---
+
+As anotações de carimbo de borracha podem ser personalizadas não apenas com texto, mas também usando um arquivo de imagem como sua aparência. Essa abordagem é útil para adicionar logotipos de empresa, carimbos de assinatura ou qualquer indicador visual às suas páginas PDF.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para o carimbo.
+1. Use um arquivo de imagem personalizado para definir a aparência do carimbo de borracha.
+1. Defina o texto e a cor do carimbo.
+1. Salve o documento PDF atualizado.
+
+```python
+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 create_rubber_stamp_with_appearance_file(infile, image_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Create rubber stamp using appearance_file overload (image path)
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(100, 400, 200, 60),
+ "Stamp with custom appearance",
+ apd.Color.dark_green,
+ image_file,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-stream/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-stream/_index.md
new file mode 100644
index 0000000000..d8552e3671
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/create-rubber-stamp-with-appearance-stream/_index.md
@@ -0,0 +1,52 @@
+---
+title: Criar Carimbo de Borracha com Fluxo de Aparência
+type: docs
+weight: 30
+url: /pt/python-net/create-rubber-stamp-with-appearance-stream/
+description: Este exemplo carrega um PDF, cria um carimbo de borracha na página 1 usando um arquivo de imagem para sua aparência e salva o documento modificado. ✨
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Carimbo de Borracha com Aparência de Imagem Personalizada Usando PdfContentEditor em Python
+Abstract: Este exemplo mostra como criar uma anotação de carimbo de borracha com uma aparência de imagem personalizada em um PDF usando Aspose.PDF for Python via a API Facades. Essa abordagem permite aplicar carimbos com marca ou visualmente ricos, como logotipos, selos ou assinaturas.
+---
+
+Anotações de carimbo de borracha podem ser personalizadas usando um arquivo de imagem externo. Em vez de depender apenas de carimbos baseados em texto, você pode definir uma aparência visual (por exemplo, um logotipo da empresa ou um selo de aprovação) e colocá-la em uma página.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Defina um retângulo para a localização do carimbo.
+1. Use um arquivo de imagem como a aparência do carimbo.
+1. Aplique configurações de texto e cor.
+1. Salve o documento PDF atualizado.
+
+```python
+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 create_rubber_stamp_with_appearance_file(infile, image_file, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Create rubber stamp using appearance_file overload (image path)
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(100, 400, 200, 60),
+ "Stamp with custom appearance",
+ apd.Color.dark_green,
+ image_file,
+ )
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-ids-examples/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-ids-examples/_index.md
new file mode 100644
index 0000000000..06397cef16
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-ids-examples/_index.md
@@ -0,0 +1,68 @@
+---
+title: Excluir Carimbo por ID
+type: docs
+weight: 85
+url: /pt/python-net/delete-stamp-by-ids-examples/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir Carimbos de Borracha por IDs Únicos ou Múltiplos em um PDF Usando PdfContentEditor
+Abstract: Este exemplo demonstra como remover anotações de carimbos de borracha de um PDF com base em seus IDs exclusivos usando Aspose.PDF for Python via the Facades API. Ele abrange tanto a exclusão por ID único quanto a exclusão por múltiplos IDs.
+---
+
+Ao trabalhar com PDFs contendo múltiplos carimbos, muitas vezes é necessário remover carimbos específicos sem afetar os demais. Usando exclusão baseada em ID, você pode controlar precisamente quais carimbos remover:
+
+- `'delete_stamp_by_id(stamp_id, page_number)' – exclui um único carimbo pelo seu ID em uma página específica`
+- `'delete_stamp_by_ids(page_number, stamp_ids)' – exclui múltiplos carimbos pelos seus IDs em uma página especificada`
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Adicione dois carimbos de borracha com IDs distintos.
+1. Exclua carimbos usando métodos de exclusão de ID único e ID múltiplo.
+1. Salve o PDF atualizado.
+
+```python
+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_stamp_by_ids_examples(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ # Create two stamps on page 1 so they can be deleted by ID
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(120, 320, 180, 60),
+ "Draft",
+ "Delete by single ID",
+ apd.Color.orange,
+ )
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(120, 250, 180, 60),
+ "Draft",
+ "Delete by multiple IDs",
+ apd.Color.orange,
+ )
+
+ # Delete by single ID overload and by IDs overload
+ content_editor.delete_stamp_by_id(1, 1)
+ content_editor.delete_stamp_by_ids(1, [2])
+
+ # Save updated document
+ content_editor.save(outfile)
+```
+
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
new file mode 100644
index 0000000000..8ab60658b8
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamp-by-index/_index.md
@@ -0,0 +1,44 @@
+---
+title: Excluir Carimbo por Índice
+type: docs
+weight: 50
+url: /pt/python-net/delete-stamp-by-index/
+description: Este exemplo cria dois carimbos de borracha na página 2. Em seguida, um carimbo pode ser excluído especificando seu índice.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir um Carimbo de Borracha por Índice em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como excluir uma anotação de carimbo de borracha em um PDF usando seu índice com Aspose.PDF for Python via the Facades API. Ele mostra como adicionar vários carimbos e depois excluir um deles com base na ordem na página.
+---
+
+Quando múltiplos carimbos de borracha existem em uma página, você pode excluir um específico usando seu índice. O método delete_stamp() permite remover anotações de acordo com sua sequência, o que é útil quando você não rastreia IDs de carimbos, mas conhece sua ordem.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Vincule o arquivo PDF de entrada à instância PdfContentEditor usando bind_pdf(infile).
+1. Chame 'delete_stamp(1, [2, 3])' para remover o carimbo com índice 1 das páginas 2 e 3.
+1. Salve o documento PDF modificado no arquivo de saída usando save(outfile).
+
+```python
+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_stamp_by_index(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ content_editor.delete_stamp(1, [2, 3])
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamps-globally/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamps-globally/_index.md
new file mode 100644
index 0000000000..b07501a777
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/delete-stamps-globally/_index.md
@@ -0,0 +1,59 @@
+---
+title: Excluir Selos Globalmente
+type: docs
+weight: 60
+url: /pt/python-net/delete-stamps-globally/
+description: Este exemplo demonstra como excluir anotações de selo de borracha globalmente em todas as páginas de um PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como remover selos por ID sem especificar páginas individuais.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir Selos de Borracha Globalmente em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como excluir anotações de selo de borracha globalmente em todas as páginas de um PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como remover selos por ID sem especificar páginas individuais.
+---
+
+Ao trabalhar com múltiplas páginas, pode ser necessário remover certos selos em todo o documento. Os métodos 'delete_stamp_by_id()' e 'delete_stamp_by_ids()' permitem excluir selos globalmente pelos seus identificadores, eliminando a necessidade de iterar manualmente por cada página.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Adicionar selos de borracha a várias páginas.
+1. Excluir selos globalmente usando seus IDs.
+1. Salve o documento PDF atualizado.
+
+```python
+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)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/list-stamps/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/list-stamps/_index.md
new file mode 100644
index 0000000000..5cd81d4931
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/list-stamps/_index.md
@@ -0,0 +1,52 @@
+---
+title: Listar Carimbos
+type: docs
+weight: 70
+url: /pt/python-net/list-stamps/
+description: Este exemplo carrega um PDF, recupera todos os carimbos da página 1, os imprime e exibe uma mensagem caso nenhum carimbo seja encontrado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Listar Anotações de Carimbo de Borracha em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como recuperar e listar anotações de carimbo de borracha de um documento PDF usando Aspose.PDF for Python via the Facades API. Ele mostra como acessar os carimbos em uma página específica e exibir seus detalhes.
+---
+
+Ao trabalhar com PDFs anotados, pode ser necessário inspecionar os carimbos de borracha existentes antes de modificá-los ou removê-los. O método 'get_stamps()' permite recuperar todos os carimbos colocados em uma página específica. Você pode então percorrer os resultados e processá-los programaticamente.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Recuperar todos os carimbos da página 1.
+1. Itere pela coleção de carimbos.
+1. Imprima cada carimbo.
+1. Exiba uma mensagem se não houver carimbos.
+
+```python
+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 list_stamps(infile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # List all stamps on page 1
+ stamps = content_editor.get_stamps(1)
+
+ count = 0
+ for stamp in stamps:
+ count += 1
+ print(f"Stamp {count}: {stamp}")
+
+ if count == 0:
+ print("No stamps found")
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/manage-stamp-by-id/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/manage-stamp-by-id/_index.md
new file mode 100644
index 0000000000..e8ec5bccb2
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/manage-stamp-by-id/_index.md
@@ -0,0 +1,70 @@
+---
+title: Gerenciar Carimbo por ID
+type: docs
+weight: 95
+url: /pt/python-net/manage-stamp-by-id/
+description: Como manipular anotações de carimbo de borracha em um PDF pelos seus IDs exclusivos usando Aspose.PDF for Python
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar Carimbos de Borracha por ID em um PDF usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como manipular anotações de carimbo de borracha em um PDF pelos seus IDs únicos usando Aspose.PDF for Python via a API Facades. Você pode ocultar ou exibir carimbos específicos em determinadas páginas sem afetar outros carimbos.
+---
+
+Em PDFs com múltiplos carimbos de borracha, pode ser útil controlar carimbos individuais com base em seu ID. Os métodos 'hide_stamp_by_id()' e 'show_stamp_by_id()' permitem o controle seletivo de visibilidade. Este exemplo mostra como:
+
+- Adicionar múltiplos carimbos com IDs exclusivos
+- Ocultar um carimbo em uma página específica
+- Mostrar um carimbo em outra página
+
+Ao usar operações baseadas em ID, você evita rastrear carimbos por posição de página ou outros atributos.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Adicionar carimbos de borracha com IDs específicos.
+1. Ocultar e mostrar carimbos com base em seus IDs e números de página.
+1. Salve o documento PDF atualizado.
+
+```python
+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 manage_stamp_by_id(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(200, 380, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+
+ content_editor.create_rubber_stamp(
+ 2,
+ apd.Rectangle(200, 480, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+
+ # Apply ID-based stamp operations
+ content_editor.hide_stamp_by_id(1, 1)
+ content_editor.show_stamp_by_id(1, 2)
+
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-id-example/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-id-example/_index.md
new file mode 100644
index 0000000000..99831e5d3c
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-id-example/_index.md
@@ -0,0 +1,55 @@
+---
+title: Mover Carimbo Por ID
+type: docs
+weight: 80
+url: /pt/python-net/move-stamp-by-id-example/
+description: Neste exemplo, um carimbo de borracha é adicionado à página 1 e, em seguida, movido para uma nova posição usando seu ID antes de salvar o documento atualizado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mover um Carimbo de Borracha por ID em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como reposicionar uma anotação de carimbo de borracha existente em um PDF usando Aspose.PDF for Python via a Facades API. Ele mostra como criar um carimbo e, em seguida, movê-lo programaticamente usando seu ID.
+---
+
+Depois de adicionar uma anotação de carimbo de borracha a um PDF, pode ser necessário ajustar sua posição. O método 'move_stamp_by_id()' permite realocar um carimbo com base em seu identificador, sem recriá‑lo. Isso é útil em fluxos de trabalho automatizados onde a colocação do carimbo deve ser ajustada dinamicamente.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Adicionar uma anotação de carimbo de borracha.
+1. Mova o carimbo usando seu ID.
+1. Salve o documento PDF atualizado.
+
+```python
+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 move_stamp_by_id_example(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ content_editor.create_rubber_stamp(
+ 1,
+ apd.Rectangle(300, 420, 180, 60),
+ "Approved",
+ "Move this stamp by ID",
+ apd.Color.green,
+ )
+
+ # Move stamp by ID overload
+ content_editor.move_stamp_by_id(1, 1, 240, 360)
+
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-index/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-index/_index.md
new file mode 100644
index 0000000000..1e6272d0a1
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/stamps-management/move-stamp-by-index/_index.md
@@ -0,0 +1,70 @@
+---
+title: Mover Carimbo Por Índice
+type: docs
+weight: 90
+url: /pt/python-net/move-stamp-by-index/
+description: Como reposicionar anotações de carimbo de borracha em um PDF usando seu índice em uma página com Aspose.PDF for Python
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mover Carimbos de Borracha em um PDF Usando Posicionamento Baseado em Índice
+Abstract: Este exemplo demonstra como reposicionar anotações de carimbo de borracha em um PDF usando seu índice em uma página com Aspose.PDF for Python via a Facades API. Ele destaca a criação de vários carimbos e a preparação deles para operações de movimentação.
+---
+
+Na edição de PDF, pode ser necessário ajustar a posição de carimbos de borracha existentes. Este trecho de código mostra como:
+
+- Adicionar Vários Carimbos na Mesma Página
+- Prepare-os para reposicionamento usando seu índice
+- Opcionalmente, mova um selo especificando sua página, índice e novas coordenadas
+
+O método 'move_stamp(page_number, stamp_index, new_x, new_y)' pode reposicionar selos com precisão.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) objeto.
+1. Vincule o PDF ao editor.
+1. Adicione vários selos de borracha a uma página.
+1. Salve o documento antes de executar operações de movimentação.
+1. Mover um carimbo específico pelo seu índice.
+1. Salve o PDF atualizado.
+
+```python
+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 move_stamp_by_index(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ content_editor.create_rubber_stamp(
+ 2,
+ apd.Rectangle(200, 380, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+
+ content_editor.create_rubber_stamp(
+ 2,
+ apd.Rectangle(200, 480, 180, 60),
+ "Draft",
+ "Draft stamp for ID-based operations",
+ apd.Color.orange,
+ )
+ content_editor.save(outfile)
+
+ # Move first stamp on page 1 by index
+ # content_editor.move_stamp(1, 1, 10, 10)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/_index.md
new file mode 100644
index 0000000000..65fe3011e7
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/_index.md
@@ -0,0 +1,17 @@
+---
+title: Operações de Texto
+type: docs
+weight: 100
+url: /pt/python-net/text-operations/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Substituir Texto Simples](/pdf/pt/python-net/replace-text-simple/)
+- [Substituir Texto com Regex](/pdf/pt/python-net/replace-text-regex/)
+- [Substituir Texto na Página](/pdf/pt/python-net/replace-text-on-page/)
+- [Substituir Texto com Estado](/pdf/pt/python-net/replace-text-with-state/)
+- [Substituir Texto na Página com Estado](/pdf/pt/python-net/replace-text-on-page-with-state/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page-with-state/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page-with-state/_index.md
new file mode 100644
index 0000000000..a331b575ad
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page-with-state/_index.md
@@ -0,0 +1,53 @@
+---
+title: Substituir Texto na Página com Estado
+type: docs
+weight: 20
+url: /pt/python-net/replace-text-on-page-with-state/
+description: Neste exemplo, todas as ocorrências da palavra "software" na página 1 são substituídas por "SOFTWARE PAGE 1", usando texto vermelho com tamanho de fonte 12.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Substituir Texto com Formatação Personalizada em uma Página Específica Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como substituir texto em uma página específica de um PDF enquanto aplica formatação personalizada usando Aspose.PDF for Python via the Facades API. Ele mostra como controlar o tamanho da fonte e a cor durante a substituição de texto.
+---
+
+Às vezes, substituir texto em um PDF também requer alterações de formatação, como cor ou tamanho da fonte. Usando TextState, você pode definir propriedades de estilo e aplicá-las durante a substituição. Isso permite realçar o texto modificado ou impor formatação consistente em todos os documentos.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Defina um TextState com formatação personalizada.
+1. Configure a estratégia de substituição.
+1. Substitua texto em uma página específica.
+1. Salve o documento PDF atualizado.
+
+```python
+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_on_page_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.red
+ text_state.font_size = 12
+
+ # Replace text on a specific page with explicit text formatting
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
+ )
+ content_editor.replace_text("software", 1, "SOFTWARE PAGE 1", text_state)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page/_index.md
new file mode 100644
index 0000000000..00e13462bf
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-on-page/_index.md
@@ -0,0 +1,47 @@
+---
+title: Substituir Texto na Página
+type: docs
+weight: 10
+url: /pt/python-net/replace-text-on-page/
+description: Neste exemplo, a primeira ocorrência da palavra "PDF" é substituída por "Texto Substituído da Página 1" usando um tamanho de fonte especificado.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Substituir Texto em uma Página Específica Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como substituir texto em um documento PDF usando Aspose.PDF for Python via a API Facades. Ele mostra como substituir a primeira ocorrência de texto em uma página e salvar o documento atualizado.
+---
+
+A substituição de texto é uma necessidade comum ao atualizar documentos PDF. Usando [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode pesquisar texto específico e substituí-lo por novo conteúdo. A propriedade ‘replace_text_strategy’ permite controlar quantas ocorrências são substituídas.
+
+1. Crie uma instância de PdfContentEditor.
+1. Vincule o documento PDF de entrada.
+1. Configure a estratégia de substituição de texto.
+1. Substitua o texto alvo.
+1. Salve o documento PDF atualizado.
+
+```python
+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_on_page(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace text on page 1
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_FIRST
+ )
+ content_editor.replace_text("PDF", "Page 1 Replaced Text", 14)
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-regex/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-regex/_index.md
new file mode 100644
index 0000000000..9b173cfe9a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-regex/_index.md
@@ -0,0 +1,48 @@
+---
+title: Substituir Texto com Regex
+type: docs
+weight: 30
+url: /pt/python-net/replace-text-regex/
+description: Neste exemplo, todos os números de quatro dígitos no documento são substituídos pelo placeholder "[NUMBER]". Isso é útil para mascarar dados sensíveis, normalizar o conteúdo ou anonimizar documentos.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Substituir Texto Usando Expressões Regulares com PdfContentEditor em Python
+Abstract: Este exemplo demonstra como substituir texto em um PDF usando expressões regulares com Aspose.PDF for Python via a API Facades. Ele mostra como buscar padrões e substituir todas as correspondências ao longo do documento.
+---
+
+Expressões regulares permitem substituição flexível de texto baseada em padrões em vez de cadeias fixas. Ao habilitar o suporte a regex em 'replace_text_strategy', você pode corresponder conteúdo dinâmico, como números, datas ou strings formatadas.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Configure a estratégia de substituição para usar regex.
+1. Substitua padrões correspondentes em todo o documento.
+1. Salve o documento PDF atualizado.
+
+```python
+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_regex(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace text in the whole document
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
+ )
+ content_editor.replace_text_strategy.is_regular_expression_used = True
+ content_editor.replace_text(r"\d{4}", "[NUMBER]")
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-simple/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-simple/_index.md
new file mode 100644
index 0000000000..f56fe0ee6a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-simple/_index.md
@@ -0,0 +1,47 @@
+---
+title: Substituir Texto Simples
+type: docs
+weight: 40
+url: /pt/python-net/replace-text-simple/
+description: Neste exemplo, todas as ocorrências de "33" são substituídas por "XXXIII " em todo o documento. Isso demonstra a substituição direta de strings sem formatação personalizada ou expressões regulares.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Substituir Texto em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como substituir texto em todo um documento PDF usando Aspose.PDF for Python via a API Facades. Ele substitui todas as ocorrências de uma cadeia especificada por um novo texto.
+---
+
+A substituição simples de texto é útil ao atualizar valores repetidos em um documento. Com [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/), você pode definir um escopo de substituição e substituir o texto globalmente em todas as páginas.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Configure o escopo de substituição para todas as ocorrências.
+1. Substitua o texto alvo.
+1. Salve o documento PDF atualizado.
+
+```python
+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_simple(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Replace text in the whole document
+ content_editor.replace_text_strategy.replace_scope = (
+ pdf_facades.ReplaceTextStrategy.Scope.REPLACE_ALL
+ )
+ content_editor.replace_text("33", "XXXIII ")
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-with-state/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-with-state/_index.md
new file mode 100644
index 0000000000..44fa843c21
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/text-operations/replace-text-with-state/_index.md
@@ -0,0 +1,53 @@
+---
+title: Substituir Texto com Estado
+type: docs
+weight: 50
+url: /pt/python-net/replace-text-with-state/
+description: Neste exemplo, todas as ocorrências de \u0022software\u0022 são substituídas por \u0022SOFTWARE\u0022 e formatadas em azul com tamanho de fonte 14.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Substituir Texto com Formatação Personalizada em um PDF Usando PdfContentEditor em Python
+Abstract: Este exemplo demonstra como substituir texto em um documento PDF enquanto aplica formatação personalizada usando Aspose.PDF for Python via a API Facades. Ele mostra como controlar a cor do texto e o tamanho da fonte durante a substituição.
+---
+
+Ao atualizar texto em um PDF, você pode querer que o conteúdo substituído se destaque. Usando um objeto TextState, você pode definir estilo como cor e tamanho da fonte, e então aplicá-lo a todo o texto substituído.
+
+1. Criar um [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) instância.
+1. Vincule o documento PDF de entrada.
+1. Defina um TextState com formatação personalizada.
+1. Configurar escopo de substituição.
+1. Substituir texto em todo o documento.
+1. Salve o documento PDF atualizado.
+
+```python
+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)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/_index.md
new file mode 100644
index 0000000000..2759f28f22
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/_index.md
@@ -0,0 +1,14 @@
+---
+title: Preferências do Visualizador
+type: docs
+weight: 110
+url: /pt/python-net/viewer-preferences/
+description:
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Alterar Preferências de Exibição do PDF](/pdf/pt/python-net/change-viewer-preferences/)
+- [Obter Preferências do Visualizador de PDF](/pdf/pt/python-net/get-viewer-preferences/)
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/change-viewer-preferences/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/change-viewer-preferences/_index.md
new file mode 100644
index 0000000000..246fd49178
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/change-viewer-preferences/_index.md
@@ -0,0 +1,75 @@
+---
+title: Alterar Preferências de Exibição do PDF
+type: docs
+weight: 10
+url: /pt/python-net/change-viewer-preferences/
+description: Este módulo demonstra como ajustar as configurações de exibição de um documento PDF usando o Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Personalize a Experiência de Exibição de PDF com Python
+Abstract: Controle como seu documento PDF aparece ao ser aberto, modificando as preferências de exibição programaticamente. Essa funcionalidade permite personalizar a interface do usuário e o layout, garantindo uma experiência de visualização consistente.
+---
+
+Os arquivos PDF possuem preferências de exibição integradas que controlam aspectos como layout da página, visibilidade da barra de ferramentas e comportamento da janela. Usando este script, você pode:
+
+- Inspecionar as preferências de exibição atuais de um PDF.
+- Modificar opções de layout (por exemplo, página única, uma coluna, duas colunas).
+- Alternar elementos da interface do usuário, como barra de ferramentas, barra de menus ou exibição de título.
+- Salvar o PDF com as preferências atualizadas para uma experiência de visualização controlada.
+
+1. Definir sinalizadores de ViewerPreference.
+1. Obter as preferências de visualização atuais.
+1. Modificar preferências.
+1. Aplicar Preferências Atualizadas.
+1. Salvar o PDF.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from enum import IntFlag
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Define ViewerPreference flags
+class ViewerPreference(IntFlag):
+ HIDE_TOOLBAR = 1
+ HIDE_MENUBAR = 2
+ HIDE_WINDOW_UI = 4
+ FIT_WINDOW = 8
+ CENTER_WINDOW = 16
+ DISPLAY_DOC_TITLE = 32
+ NON_FULL_SCREEN_PAGE_MODE_USE_NONE = 64
+ NON_FULL_SCREEN_PAGE_MODE_USE_OUTLINES = 128
+ NON_FULL_SCREEN_PAGE_MODE_USE_THUMBS = 256
+ NON_FULL_SCREEN_PAGE_MODE_USE_OC = 512
+ DIRECTION_L2R = 1024
+ DISPLAY_DOC_TITLE_IN_TITLE_BAR = 2048
+ PAGE_LAYOUT_SINGLE_PAGE = 4096
+ PAGE_LAYOUT_ONE_COLUMN = 8192
+ PAGE_LAYOUT_TWO_COLUMN_LEFT = 16384
+ PAGE_LAYOUT_TWO_COLUMN_RIGHT = 32768
+ PAGE_LAYOUT_TWO_PAGE_LEFT = 65536
+ PAGE_LAYOUT_TWO_PAGE_RIGHT = 131072
+
+
+def change_viewer_preferences(infile, outfile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+
+ # Get current viewer preference and toggle single-page layout
+ current_preference = ViewerPreference(content_editor.get_viewer_preference())
+ updated_preference = current_preference | ViewerPreference.PAGE_LAYOUT_SINGLE_PAGE
+ content_editor.change_viewer_preference(int(updated_preference))
+
+ # Save updated document
+ content_editor.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/get-viewer-preferences/_index.md b/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/get-viewer-preferences/_index.md
new file mode 100644
index 0000000000..c41763d32c
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfcontenteditor/viewer-preferences/get-viewer-preferences/_index.md
@@ -0,0 +1,45 @@
+---
+title: Obter Preferências do Visualizador de PDF
+type: docs
+weight: 20
+url: /pt/python-net/get-viewer-preferences/
+description: Como ler e modificar as preferências do visualizador de PDF programaticamente usando Aspose.PDF for Python
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar Preferências do Visualizador de PDF com Aspose.PDF em Python
+Abstract: Este guia demonstra como ler e modificar as preferências do visualizador de PDF programaticamente usando Aspose.PDF for Python. As preferências do visualizador controlam como um PDF é exibido ao ser aberto em um visualizador de PDF, como abrir com contornos, ocultar barras de ferramentas ou usar layout de página única.
+---
+
+Aspose.PDF fornece ferramentas para acessar e atualizar as preferências do visualizador de PDF. Essas preferências definem o layout inicial e o comportamento de apresentação de um documento PDF nos leitores de PDF. Isso inclui opções como habilitar a visualização de contornos, ocultar barras de menus ou especificar modos de layout de página. Usando PdfContentEditor, você pode recuperar as preferências existentes, verificar flags específicas e atualizá‑las conforme necessário.
+
+1. Definir sinalizadores de ViewerPreference.
+1. Inicializar [PdfContentEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfcontenteditor/) e Vincular PDF.
+1. Obter as preferências de visualização atuais.
+1. Verificar Flags Específicas.
+1. Exibir Preferências Atuais.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from enum import IntFlag
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_viewer_preferences(infile):
+ # Create PdfContentEditor object
+ content_editor = pdf_facades.PdfContentEditor()
+ # Bind document to PdfContentEditor
+ content_editor.bind_pdf(infile)
+ # Read current viewer preference flags
+ viewer_preference = ViewerPreference(content_editor.get_viewer_preference())
+ if viewer_preference & ViewerPreference.PAGE_MODE_USE_OUTLINES:
+ print("PageModeUseOutlines is enabled")
+ print(f"Current viewer preference: {viewer_preference}")
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/_index.md b/pt/python-net/working-with-facades/pdffileeditor/_index.md
new file mode 100644
index 0000000000..0192fe794c
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/_index.md
@@ -0,0 +1,30 @@
+---
+title: Classe PdfFileEditor
+type: docs
+weight: 10
+url: /pt/python-net/pdffileeditor-class/
+description: Explore como editar e manipular arquivos PDF usando a classe PdfFileEditor em Python com Aspose.PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Edite páginas PDF, mescle arquivos e divida documentos com PdfFileEditor em Python
+Abstract: Aprenda como usar a classe PdfFileEditor no Aspose.PDF for Python via .NET para manipular páginas PDF e a estrutura do documento. Esta seção aborda alterações no layout de páginas, gerenciamento de páginas, mesclagem de PDF, divisão de documentos e fluxos de trabalho de encadernação ou imposição N-Up.
+---
+
+Trabalhar com documentos PDF inclui várias funções. Gerenciar as páginas de um arquivo PDF é uma parte importante deste trabalho. 'aspose.pdf.facades' fornece o `PdfFileEditor` classe para este propósito.
+
+A classe PdfFileEditor contém os métodos que ajudam a manipular páginas individuais; esta classe não edita nem manipula o conteúdo de uma página. Você pode inserir uma nova página, excluir uma página existente, dividir as páginas ou especificar a imposição das páginas usando PdfFileEditor.
+
+## O que você pode fazer com PdfFileEditor
+
+Os recursos fornecidos por esta classe podem ser agrupados em fluxos de trabalho de edição de páginas, imposição de PDF e divisão de documentos. Estes artigos mostram como reorganizar páginas, combinar vários PDFs, preparar arquivos para impressão e extrair seções de documentos existentes sem editar manualmente o arquivo de origem.
+
+## Tutoriais do PdfFileEditor
+
+- [Layout de Página e Margens](/pdf/pt/python-net/page-layout-and-margins/)
+- [Gerenciamento de Page](/pdf/pt/python-net/page-management/)
+- [Concatenar ou mesclar arquivos PDF](/pdf/pt/python-net/page-merging/)
+- [Dividir Documentos PDF](/pdf/pt/python-net/splitting-pdf-documents/)
+- [Layout de Folheto e N-Up](/pdf/pt/python-net/booklet-and-nup-layout/)
diff --git a/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/_index.md b/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/_index.md
new file mode 100644
index 0000000000..2810468891
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/_index.md
@@ -0,0 +1,21 @@
+---
+title: Layout de Folheto e N-Up
+type: docs
+weight: 10
+url: /pt/python-net/booklet-and-nup-layout/
+description: Preparar PDFs para impressão frequentemente requer reorganizar páginas em layouts específicos, como folhetos ou grades N-Up.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar Layouts de Folheto e N-Up para Documentos PDF em Python
+Abstract: Aprenda como transformar os layouts de páginas PDF usando Aspose.PDF for Python. Este guia explica como gerar documentos em estilo folheto e criar layouts N-Up que colocam várias páginas em uma única folha. Essas técnicas ajudam a otimizar documentos para impressão, reduzir o uso de papel e criar saídas PDF compactas.
+---
+
+Recursos de Folheto e N-Up ajudam a preparar documentos PDF para impressão e apresentação compacta de páginas. Esses fluxos de trabalho reorganizam a ordem das páginas ou colocam várias páginas de origem em uma única folha, o que é útil para folhetos, rascunhos e saída de folhetos prontos para impressão.
+
+## Tutoriais de transformação de layout
+
+- [Criar Documento PDF N-Up](/pdf/pt/python-net/create-n-up-pdf-document/)
+- [Criar livreto PDF](/pdf/pt/python-net/create-pdf-booklet/)
diff --git a/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-n-up-pdf-document/_index.md b/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-n-up-pdf-document/_index.md
new file mode 100644
index 0000000000..e5a279aba5
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-n-up-pdf-document/_index.md
@@ -0,0 +1,84 @@
+---
+title: Criar Documento PDF N-Up
+type: docs
+weight: 10
+url: /pt/python-net/create-n-up-pdf-document/
+description: Aprenda como criar um documento PDF N-Up enquanto lida com possíveis erros de forma segura usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um Layout PDF N-Up em Python
+Abstract: Aprenda como gerar um layout PDF N-Up usando Aspose.PDF for Python. Este exemplo demonstra como combinar várias páginas de um documento PDF em uma única página usando o método ‘make_n_up’ ou ‘try_make_n_up’ da classe PdfFileEditor.
+---
+
+Um layout N-Up coloca várias páginas de um documento PDF em uma única página em formato de grade. Esse layout é frequentemente usado para imprimir apresentações, folhetos ou relatórios onde várias páginas podem ser visualizadas de uma só vez.
+
+Usando Aspose.PDF for Python, os desenvolvedores podem criar rapidamente um documento N-Up especificando o número de linhas e colunas que determinam quantas páginas originais aparecem em cada página de saída.
+
+Neste trecho de código, o método 'make_n_up' da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe organiza as páginas do PDF de entrada em uma grade 2 × 2, significando que quatro páginas originais aparecem em uma página no documento de saída.
+
+No exemplo mostrado, o layout usa 2 linhas e 2 colunas, produzindo quatro páginas por folha:
+
+1. Abra o arquivo PDF de origem.
+1. Crie uma instância de PdfFileEditor.
+1. Especifique o número de linhas e colunas para o layout N-Up.
+1. Gere um novo PDF com páginas combinadas.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Create N-Up PDF Document
+def create_nup_pdf_document(infile, outfile):
+ # Create NUpMaker object
+ nup_maker = pdf_facades.PdfFileEditor()
+ # Make N-Up layout from input PDF file and save to output PDF file
+ nup_maker.make_n_up(
+ FileIO(infile), FileIO(outfile, "w"), 2, 2
+ ) # 2 rows and 2 columns for N-Up layout
+```
+
+Aspose.PDF for Python via .NET permite gerar layouts N-Up com a classe PdfFileEditor. O método 'try_make_n_up' funciona de forma semelhante ao make_n_up, mas em vez de gerar uma exceção quando uma operação falha, ele retorna um valor booleano indicando se o processo foi bem-sucedido.
+
+O layout N-Up organiza várias páginas PDF em uma única página usando uma grade definida por linhas e colunas.
+
+O método 'try_make_n_up' oferece uma maneira mais segura de executar esta operação porque:
+
+- Retorna True se o layout for criado com sucesso
+- Retorna False se a operação falhar
+- Não interrompe a execução do programa com exceções
+
+No exemplo abaixo, o documento é organizado usando uma grade 2 × 2, que coloca quatro páginas originais em cada página de saída.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Create N-Up PDF Document
+def try_create_nup_pdf_document(infile, outfile):
+ # Create NUpMaker object
+ nup_maker = pdf_facades.PdfFileEditor()
+ # Make N-Up layout from input PDF file and save to output PDF file
+ if not nup_maker.try_make_n_up(FileIO(infile), FileIO(outfile, "w"), 2, 2):
+ print("Failed to create N-Up PDF document.")
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-pdf-booklet/_index.md b/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-pdf-booklet/_index.md
new file mode 100644
index 0000000000..7cdbe670fa
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/booklet-and-nup-layout/create-pdf-booklet/_index.md
@@ -0,0 +1,81 @@
+---
+title: Criar livreto PDF
+type: docs
+weight: 20
+url: /pt/python-net/create-pdf-booklet/
+description: Gerar um PDF no estilo livreto a partir de um documento existente usando Aspose.PDF for Python
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criar um livreto PDF a partir de um PDF existente usando Python
+Abstract: Saiba como gerar um PDF no estilo livreto a partir de um documento existente usando Aspose.PDF for Python. Este exemplo demonstra como usar a classe PdfFileEditor para reorganizar páginas de modo que elas possam ser impressas e dobradas como um livreto. O método ordena automaticamente as páginas para produzir um layout de livreto adequado.
+---
+
+Criar documentos no estilo livreto é uma exigência comum ao preparar PDFs para impressão. Em um layout de livreto, as páginas são reorganizadas para que, ao serem impressas e dobradas, apareçam na ordem correta.
+
+Usando Aspose.PDF for Python, os desenvolvedores podem converter facilmente um PDF padrão em um livreto usando o [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe. O método 'make_booklet' reorganiza automaticamente as páginas do documento de entrada e gera um novo PDF otimizado para impressão em forma de livrinho.
+
+1. Abra um documento PDF existente.
+1. Crie uma instância de PdfFileEditor.
+1. Use o método make_booklet para reorganizar as páginas.
+1. Salve a saída como um arquivo PDF pronto para livrinho.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Create PDF Booklet
+def create_pdf_booklet(infile, outfile):
+ # Create BookletMaker object
+ booklet_maker = pdf_facades.PdfFileEditor()
+ # Make booklet from input PDF file and save to output PDF file
+ booklet_maker.make_booklet(FileIO(infile), FileIO(outfile, "w"))
+```
+
+Este trecho de código mostra como usar o método 'try_make_booklet' da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para reorganizar páginas para impressão em livreto sem lançar exceções caso a operação falhe.
+
+Um layout de livreto reorganiza as páginas de modo que, quando impresso e dobrado, o documento seja lido na ordem correta. Automatizar esse processo garante resultados consistentes e elimina a necessidade de reorganização manual de páginas.
+
+O método 'try_make_booklet' funciona de forma semelhante ao 'make_booklet', mas com uma diferença importante:
+
+- 'make_booklet' lança uma exceção se a operação falhar.
+- 'try_make_booklet' retorna True ou False, permitindo que os desenvolvedores gerenciem erros com mais segurança.
+
+1. Abra um documento PDF existente.
+1. Crie uma instância de PdfFileEditor.
+1. Tente criar o livreto.
+1. Manipule o resultado.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def try_create_pdf_booklet(infile, outfile):
+ # Create BookletMaker object
+ booklet_maker = pdf_facades.PdfFileEditor()
+ # Make booklet from input PDF file and save to output PDF file
+ # The try_make_booklet method is like the make_booklet method,
+ # except the try_make_booklet method does not throw an exception if the operation fails.
+ if not booklet_maker.try_make_booklet(FileIO(infile), FileIO(outfile, "w")):
+ print("Failed to create booklet.")
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/_index.md
new file mode 100644
index 0000000000..c62d5820bc
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/_index.md
@@ -0,0 +1,18 @@
+---
+title: Layout de Página e Margens
+type: docs
+weight: 20
+url: /pt/python-net/page-layout-and-margins/
+description: Gerenciar o layout das páginas PDF é uma parte importante dos fluxos de trabalho de processamento de documentos. Os desenvolvedores frequentemente precisam ajustar margens, redimensionar o conteúdo da página ou inserir quebras de página para garantir que os documentos atendam aos requisitos de formatação ou padrões de impressão.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Editar Layout de Página PDF em Python - Adicionar Margens, Redimensionar Conteúdo e Inserir Quebras de Página
+Abstract: Aprenda como modificar layouts de páginas PDF usando o Aspose.PDF for Python. Este guia explica como adicionar margens a páginas específicas, redimensionar o conteúdo das páginas e inserir quebras de página programaticamente. Esses recursos permitem que os desenvolvedores ajustem a formatação dos documentos, melhorem a legibilidade e preparem PDFs para impressão ou layouts estruturados.
+---
+
+- [Adicionar Margens às Páginas PDF](/pdf/pt/python-net/add-margins-to-pdf-pages/)
+- [Redimensionar Conteúdo da Página PDF](/pdf/pt/python-net/resize-pdf-page-contents/)
+- [Adicionar quebras de página em PDF](/pdf/pt/python-net/add-page-breaks-in-pdf/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-margins-to-pdf-pages/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-margins-to-pdf-pages/_index.md
new file mode 100644
index 0000000000..5b45393777
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-margins-to-pdf-pages/_index.md
@@ -0,0 +1,51 @@
+---
+title: Adicionar Margens às Páginas PDF
+type: docs
+weight: 10
+url: /pt/python-net/add-margins-to-pdf-pages/
+description: Adicionar margens personalizadas às páginas selecionadas de um PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar Margens Personalizadas a Páginas PDF Específicas em Python
+Abstract: Aprenda como adicionar margens personalizadas às páginas selecionadas de um PDF usando Aspose.PDF for Python. Este exemplo demonstra como expandir os limites da página especificando margens superior, inferior, esquerda e direita para páginas individuais, tornando os PDFs mais imprimíveis ou visualmente consistentes.
+---
+
+Adicionar margens às páginas PDF pode melhorar a legibilidade, preparar documentos para impressão ou alocar espaço para anotações. Usando Aspose.PDF for Python, desenvolvedores podem adicionar programaticamente margens a páginas específicas de um PDF sem modificar o layout do conteúdo.
+
+Neste trecho de código, o [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) A classe é usada para adicionar margens de 0,5 polegada nas páginas 1 e 3 do documento de entrada. As margens são definidas em pontos (1 polegada = 72 pontos) e aplicadas individualmente à esquerda, à direita, ao topo e à base de cada página.
+
+1. Abra o documento PDF de origem.
+1. Crie uma instância de 'PdfFileEditor'.
+1. Defina as margens e as páginas a serem modificadas.
+1. Aplique as margens usando o método 'add_margins'.
+1. Salve o PDF atualizado no arquivo de saída.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Add Margins to PDF Pages
+def add_margins_to_pdf_pages(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ # Define the margins to be added (in points)
+ left_margin = 36 # 0.5 inch
+ right_margin = 36 # 0.5 inch
+ top_margin = 36 # 0.5 inch
+ bottom_margin = 36 # 0.5 inch
+
+ pdf_editor.add_margins(
+ infile, outfile, [1, 3], left_margin, right_margin, top_margin, bottom_margin
+ )
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-page-breaks-in-pdf/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-page-breaks-in-pdf/_index.md
new file mode 100644
index 0000000000..6e852c685e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/add-page-breaks-in-pdf/_index.md
@@ -0,0 +1,47 @@
+---
+title: Adicionar quebras de página em PDF
+type: docs
+weight: 20
+url: /pt/python-net/add-page-breaks-in-pdf/
+description: Inserir quebras de página em um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicionar quebras de página às páginas PDF programaticamente em Python
+Abstract: Saiba como inserir quebras de página em um documento PDF usando Aspose.PDF for Python. Este exemplo demonstra como dividir uma página em uma posição vertical especificada, permitindo que os desenvolvedores reorganizem o conteúdo e criem páginas adicionais dinamicamente.
+---
+
+Quebras de página são úteis quando você precisa dividir páginas PDF longas em várias páginas ou controlar como o conteúdo é distribuído em um documento. Usando Aspose.PDF for Python, os desenvolvedores podem inserir quebras de página em posições específicas sem editar manualmente o PDF.
+
+Este artigo mostra como usar o método 'add_page_break' de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para inserir uma quebra de página em uma coordenada vertical definida em uma página selecionada. O método cria uma nova página e move o conteúdo abaixo do ponto de quebra para essa página.
+
+1. Crie um objeto PdfFileEditor.
+1. Defina a posição da quebra de página.
+1. Insira a quebra de página.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Add Page Breaks in PDF
+def add_page_breaks_in_pdf(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.add_page_break(
+ infile,
+ outfile,
+ [
+ pdf_facades.PdfFileEditor.PageBreak(1, 400),
+ ],
+ )
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/resize-pdf-page-contents/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/resize-pdf-page-contents/_index.md
new file mode 100644
index 0000000000..eb7f523913
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-layout-and-margins/resize-pdf-page-contents/_index.md
@@ -0,0 +1,50 @@
+---
+title: Redimensionar Conteúdo da Página PDF
+type: docs
+weight: 30
+url: /pt/python-net/resize-pdf-page-contents/
+description: Redimensione o conteúdo de páginas PDF específicas usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Redimensionar Conteúdo da Página PDF Programaticamente em Python
+Abstract: Aprenda como redimensionar o conteúdo de páginas PDF específicas usando Aspose.PDF for Python. Este exemplo demonstra como ajustar a largura e a altura do conteúdo da página enquanto preserva a estrutura do documento, facilitando a otimização de layouts para impressão ou visualização.
+---
+
+Ajustar o tamanho do conteúdo da página PDF é frequentemente necessário ao preparar documentos para impressão, adaptar o conteúdo a um layout específico ou padronizar os formatos de página em um documento. Usando Aspose.PDF for Python, os desenvolvedores podem redimensionar o conteúdo de páginas selecionadas programaticamente sem editar manualmente o documento.
+
+Este artigo mostra como usar o método \u0027resize_contents\u0027 de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para modificar as dimensões do conteúdo da página para páginas específicas em um arquivo PDF. Ao especificar a largura e a altura desejadas, o conteúdo nas páginas selecionadas é redimensionado de acordo.
+
+1. Crie um objeto PdfFileEditor.
+1. Redimensionar Conteúdos da Página.
+
+Parâmetros:
+
+- [1, 3] – lista de números de página cujos conteúdos serão redimensionados.
+- 400 – a nova largura do conteúdo da página (em pontos).
+- 750 – a nova altura do conteúdo da página (em pontos).
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Resize PDF Page Contents
+def resize_pdf_page_contents(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ if not pdf_editor.resize_contents(
+ FileIO(infile), FileIO(outfile, "w"), [1, 3], 400, 750
+ ):
+ raise Exception("Failed to resize PDF page contents.")
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-managment/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-managment/_index.md
new file mode 100644
index 0000000000..da2c7a9b2e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-managment/_index.md
@@ -0,0 +1,25 @@
+---
+title: Gerenciamento de Page
+type: docs
+weight: 30
+url: /pt/python-net/page-management/
+description: Gerenciar páginas PDF programaticamente permite que os desenvolvedores modifiquem documentos sem edição manual.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar PDF Pages programaticamente em Python - Extrair, Excluir, Inserir e Anexar
+Abstract: Aprenda como executar operações ao nível de páginas em documentos PDF usando Aspose.PDF for Python. Este guia demonstra como extrair páginas específicas, excluir páginas indesejadas, inserir páginas de outro PDF e anexar páginas a um documento existente, permitindo gerenciamento de páginas PDF eficiente e automatizado.
+---
+
+Tarefas de gerenciamento de Page são centrais para muitos fluxos de trabalho PDF. Com Aspose.PDF for Python, você pode reorganizar a estrutura do documento, remover páginas desnecessárias e combinar conteúdo de vários PDFs enquanto mantém o conteúdo original da página intacto.
+
+## Operações comuns de gerenciamento de Page
+
+Use os tutoriais a seguir para lidar com as tarefas de edição de nível de página mais comuns com `PdfFileEditor`:
+
+- [Extrair Páginas de PDF](/pdf/pt/python-net/extract-pages-from-pdf/)
+- [Excluir páginas de PDF](/pdf/pt/python-net/delete-pages-from-pdf/)
+- [Inserir páginas em PDF](/pdf/pt/python-net/insert-pages-into-pdf/)
+- [Anexar páginas ao PDF](/pdf/pt/python-net/append-pages-to-pdf/)
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-managment/append-pages-to-pdf/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-managment/append-pages-to-pdf/_index.md
new file mode 100644
index 0000000000..7c2fa3c9b3
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-managment/append-pages-to-pdf/_index.md
@@ -0,0 +1,42 @@
+---
+title: Anexar páginas ao PDF
+type: docs
+weight: 10
+url: /pt/python-net/append-pages-to-pdf/
+description: Anexar páginas de um documento PDF a outro usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Anexar páginas de um PDF a outro em Python
+Abstract: Aprenda como anexar páginas de um documento PDF a outro usando Aspose.PDF for Python. Este exemplo demonstra como usar a classe PdfFileEditor para combinar páginas de vários PDFs e criar um único documento de saída.
+---
+
+Combinar páginas de diferentes documentos PDF é uma necessidade comum em fluxos de trabalho de processamento de documentos. Usando Aspose.PDF for Python, os desenvolvedores podem facilmente anexar páginas de um ou mais arquivos PDF a um documento existente.
+
+Este trecho de código mostra como usar o método append de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para adicionar páginas selecionadas de outro arquivo PDF ao final de um PDF de origem. Ao especificar o intervalo de páginas, os desenvolvedores podem controlar exatamente quais páginas são incluídas no documento final.
+
+1. Crie um objeto PdfFileEditor.
+1. Anexar Páginas de Outro PDF.
+
+As páginas especificadas do documento PDF secundário são anexadas ao final do PDF original, criando um arquivo de saída combinado.
+
+```python
+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
+
+
+# Append Pages to PDF
+def append_pages_to_pdf(infile, sample_file, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ # Append pages from the specified PDF document to the end of the source PDF document
+ pdf_editor.append(infile, [sample_file], 1, 2, outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-managment/delete-pages-from-pdf/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-managment/delete-pages-from-pdf/_index.md
new file mode 100644
index 0000000000..17a4c6d041
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-managment/delete-pages-from-pdf/_index.md
@@ -0,0 +1,46 @@
+---
+title: Excluir páginas de PDF
+type: docs
+weight: 20
+url: /pt/python-net/delete-pages-from-pdf/
+description: Remova páginas selecionadas de um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Excluir páginas específicas de um documento PDF em Python
+Abstract: Aprenda como remover páginas selecionadas de um documento PDF usando Aspose.PDF for Python. Este exemplo demonstra como excluir páginas específicas de um arquivo PDF existente programaticamente, criando um novo documento sem as páginas removidas.
+---
+
+Às vezes, documentos PDF contêm páginas desnecessárias ou confidenciais que precisam ser removidas. Usando Aspose.PDF for Python, desenvolvedores podem excluir programaticamente páginas específicas de um PDF sem editar o arquivo manualmente.
+
+Nosso exemplo mostra como usar o método delete do [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para remover páginas de um documento PDF. Ao especificar os números das páginas a serem excluídas, você pode criar um novo PDF que exclui páginas indesejadas. Essa funcionalidade é útil para limpar relatórios, remover informações confidenciais ou preparar extratos personalizados de documentos.
+
+1. Crie um objeto PdfFileEditor.
+1. Defina as páginas a serem excluídas.
+1. Exclua as páginas.
+
+```python
+
+ 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
+
+
+ # Delete Pages from PDF
+ def delete_pages_from_pdf(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ # Define the page numbers to be deleted (1-based index)
+ pages_to_delete = [2, 4]
+
+ # Delete the specified pages from the PDF document
+ pdf_editor.delete(infile, pages_to_delete, outfile)
+```
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-managment/extract-pages-from-pdf/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-managment/extract-pages-from-pdf/_index.md
new file mode 100644
index 0000000000..57c728cd25
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-managment/extract-pages-from-pdf/_index.md
@@ -0,0 +1,45 @@
+---
+title: Extrair Páginas de PDF
+type: docs
+weight: 30
+url: /pt/python-net/extract-pages-from-pdf/
+description: Extrair páginas selecionadas de um documento PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extrair Páginas Específicas de um Documento PDF em Python
+Abstract: Aprenda como extrair páginas selecionadas de um documento PDF usando Aspose.PDF for Python. Este exemplo demonstra como criar um novo PDF contendo apenas as páginas que você precisa, permitindo a criação de documentos personalizados e a manipulação de nível de página.
+---
+
+Extrair páginas de um PDF é útil quando você precisa criar um subconjunto de um documento, compartilhar apenas conteúdo específico ou reorganizar PDFs para apresentações, relatórios ou impressão. Usando Aspose.PDF for Python, os desenvolvedores podem extrair programaticamente páginas de um arquivo PDF e salvá-las como um novo documento.
+
+Aprenda como usar o método extract de [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe. Ao especificar uma lista de páginas para extrair, você pode gerar um novo PDF contendo apenas as páginas selecionadas, preservando o conteúdo e a formatação originais.
+
+1. Crie um objeto PdfFileEditor.
+1. Definir Páginas para Extrair.
+1. Extrair as Páginas.
+
+```python
+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
+
+
+# Extract Pages from PDF
+def extract_pages_from_pdf(infile, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ # Define the page numbers to be extracted (1-based index)
+ pages_to_extract = [1, 4, 3]
+
+ # Extract the specified pages from the PDF document and save to a new PDF document
+ pdf_editor.extract(infile, pages_to_extract, outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-managment/insert-pages-into-pdf/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-managment/insert-pages-into-pdf/_index.md
new file mode 100644
index 0000000000..f33ab92a7f
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-managment/insert-pages-into-pdf/_index.md
@@ -0,0 +1,44 @@
+---
+title: Inserir páginas em PDF
+type: docs
+weight: 40
+url: /pt/python-net/insert-pages-into-pdf/
+description: Inserir páginas de um PDF em outro usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Inserir páginas de outro PDF em um PDF existente em Python
+Abstract: Aprenda como inserir páginas de um PDF em outro usando Aspose.PDF for Python. Este exemplo demonstra como adicionar páginas selecionadas de um PDF secundário em uma posição específica do documento original, criando um PDF combinado com posicionamento preciso das páginas.
+---
+
+Inserir páginas em um PDF existente é uma necessidade comum ao combinar documentos, adicionar conteúdo ou reorganizar relatórios. Usando Aspose.PDF for Python, os desenvolvedores podem inserir programaticamente páginas de um PDF em outro em um local especificado.
+
+Este artigo mostra como usar o método insert da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe. Ao especificar os números das páginas a inserir e a localização de destino, você pode mesclar conteúdo de diferentes PDFs enquanto mantém a formatação e a estrutura originais.
+
+1. Crie um objeto PdfFileEditor.
+1. Defina a Posição de Inserção e as Páginas.
+1. Inserir Páginas.
+
+```python
+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
+
+
+# Insert Pages into PDF
+def insert_pages_into_pdf(infile, sample_file, outfile):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+
+ # Define the page number where new pages will be inserted (1-based index)
+ insert_page_number = 2
+
+ pdf_editor.insert(infile, insert_page_number, sample_file, [1, 2], outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/_index.md
new file mode 100644
index 0000000000..959b405270
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/_index.md
@@ -0,0 +1,22 @@
+---
+title: Mesclar arquivos PDF
+type: docs
+weight: 40
+url: /pt/python-net/page-merging/
+description: Combinar documentos PDF é uma necessidade comum em fluxos de trabalho automatizados, geração de relatórios e gerenciamento de documentos.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Combinar arquivos PDF em Python - Mesclar dois ou vários PDFs com Aspose.PDF
+Abstract: Aprenda como concatenar arquivos PDF programaticamente usando Aspose.PDF for Python. Este guia demonstra métodos para mesclar dois ou vários PDFs, lidar com grandes quantidades de arquivos, otimizar a saída e concatenar formulários PDF com sufixos únicos para evitar conflitos de nomenclatura.
+---
+
+- [Concatenar Dois Arquivos PDF](/pdf/pt/python-net/concatenate-two-files/)
+- [Concatenar vários arquivos PDF](/pdf/pt/python-net/concatenate-pdf-files/)
+- [Tente Concatenar Dois Arquivos PDF](/pdf/pt/python-net/try-concatenate-two-files/)
+- [Experimente concatenar vários arquivos PDF](/pdf/pt/python-net/try-concatenate-pdf-files/)
+- [Concatenar grande número de arquivos PDF](/pdf/pt/python-net/concatenate-large-number-files/)
+- [Concatenar arquivos PDF com otimização](/pdf/pt/python-net/concatenate-pdf-files-with-optimization/)
+- [Concatenar Formulários PDF com Sufixo Exclusivo](/pdf/pt/python-net/concatenate-pdf-forms/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-large-number-files/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-large-number-files/_index.md
new file mode 100644
index 0000000000..25fe75f2a3
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-large-number-files/_index.md
@@ -0,0 +1,37 @@
+---
+title: Concatenar grande número de arquivos PDF
+type: docs
+weight: 10
+url: /pt/python-net/concatenate-large-number-files/
+description: Mescle um grande número de arquivos PDF de forma eficiente usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Concatenar arquivos PDF grandes em Python usando buffering de disco
+Abstract: Aprenda como mesclar um grande número de arquivos PDF de forma eficiente usando Aspose.PDF for Python. Este exemplo demonstra como habilitar o buffering de disco para lidar com PDFs grandes sem esgotar a memória do sistema, garantindo uma concatenação suave de muitos arquivos.
+---
+
+Ao trabalhar com grandes coleções de arquivos PDF, o consumo de memória pode se tornar um gargalo durante a concatenação. Usando Aspose.PDF for Python, você pode habilitar o buffering de disco no [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para mesclar muitos PDFs de forma eficiente. O método concatenate combina os arquivos de entrada em um único PDF enquanto o buffer de disco evita alto uso de memória. Esta abordagem é ideal para processar documentos em massa, geração automática de relatórios ou consolidação de grandes arquivos PDF.
+
+1. Crie um objeto PdfFileEditor.
+1. Mesclar vários arquivos PDF.
+
+```python
+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 concatenate_large_number_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.use_disk_buffer = True # Enable disk buffering for large files
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files-with-optimization/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files-with-optimization/_index.md
new file mode 100644
index 0000000000..8e637d42c6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files-with-optimization/_index.md
@@ -0,0 +1,37 @@
+---
+title: Concatenar arquivos PDF com otimização
+type: docs
+weight: 30
+url: /pt/python-net/concatenate-pdf-files-with-optimization/
+description: Concatenar vários arquivos PDF em um único PDF otimizado usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mesclar arquivos PDF com saída otimizada em Python
+Abstract: Aprenda como concatenar vários arquivos PDF em um único PDF otimizado usando Aspose.PDF for Python. Este exemplo demonstra como habilitar a otimização de tamanho para reduzir o tamanho do arquivo de saída, preservando o conteúdo e a formatação.
+---
+
+Ao mesclar vários PDFs, o arquivo resultante pode ficar grande, especialmente se contiver imagens ou conteúdo complexo. Usando Aspose.PDF for Python, os desenvolvedores podem habilitar a otimização durante a concatenação para reduzir o tamanho do arquivo sem perder qualidade. A propriedade optimize_size na [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe garante que o PDF mesclado seja compacto e eficiente, tornando-o adequado para compartilhamento, armazenamento ou arquivamento.
+
+1. Crie um objeto PdfFileEditor e habilite a otimização.
+1. Mescle arquivos PDF.
+
+```python
+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 concatenate_pdf_files_with_optimization(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.optimize_size = True # Enable optimization for smaller output file size
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files/_index.md
new file mode 100644
index 0000000000..17a404f531
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-files/_index.md
@@ -0,0 +1,36 @@
+---
+title: Concatenar vários arquivos PDF
+type: docs
+weight: 20
+url: /pt/python-net/concatenate-pdf-files/
+description: Combine vários arquivos PDF em um único documento usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mesclar vários arquivos PDF em um PDF único em Python
+Abstract: Aprenda como combinar vários arquivos PDF em um único documento usando Aspose.PDF for Python. Este exemplo demonstra como usar o método concatenate para mesclar vários PDFs sem interrupções, preservando seu conteúdo e formatação.
+---
+
+Mesclar arquivos PDF é uma tarefa comum na gestão de documentos, relatórios e fluxos de trabalho automatizados. Usando Aspose.PDF for Python, os desenvolvedores podem combinar facilmente vários arquivos PDF em um único documento consolidado. O método concatenate da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe garante que todas as páginas dos arquivos de entrada sejam preservadas na saída final, mantendo seu layout e conteúdo originais. Essa abordagem é útil para criar relatórios abrangentes, combinar formulários ou arquivar vários documentos de forma eficiente.
+
+1. Crie um objeto PdfFileEditor.
+1. Mesclar Vários Arquivos PDF.
+
+```python
+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 concatenate_pdf_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-forms/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-forms/_index.md
new file mode 100644
index 0000000000..8b9aa1332a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-pdf-forms/_index.md
@@ -0,0 +1,39 @@
+---
+title: Concatenar Formulários PDF com Sufixo Exclusivo
+type: docs
+weight: 50
+url: /pt/python-net/concatenate-pdf-forms/
+description: Concatenar vários formulários PDF usando Aspose.PDF for Python enquanto garante nomes de campos de formulário exclusivos.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mesclar Formulários PDF em Python evitando Conflitos de Nomes de Campo
+Abstract: Aprenda como concatenar vários formulários PDF usando Aspose.PDF for Python enquanto garante nomes de campos de formulário exclusivos. Este exemplo demonstra como definir um sufixo personalizado para evitar conflitos de nomenclatura ao mesclar PDFs que contêm campos de formulário interativos.
+---
+
+A mesclagem de formulários PDF pode gerar conflitos se vários arquivos contiverem campos com o mesmo nome. Usando Aspose.PDF for Python, os desenvolvedores podem atribuir um sufixo exclusivo aos campos de formulário durante a concatenação. A propriedade unique_suffix no [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe renomeia automaticamente os campos conflitantes, preservando a interatividade e garantindo que todos os dados do formulário permaneçam funcionais. Essa abordagem é ideal para combinar pesquisas, aplicativos ou quaisquer documentos PDF interativos programaticamente.
+
+1. Crie um objeto PdfFileEditor e defina um sufixo exclusivo.
+1. Mesclar formulários PDF.
+
+```python
+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 concatenate_pdf_forms(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.unique_suffix = (
+ "_xy_%NUM%" # Set a unique suffix to avoid form field name conflicts
+ )
+ pdf_editor.concatenate(files_to_merge, output_file)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-two-files/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-two-files/_index.md
new file mode 100644
index 0000000000..6aa67902b8
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/concatenate-two-files/_index.md
@@ -0,0 +1,36 @@
+---
+title: Concatenar Dois Arquivos PDF
+type: docs
+weight: 60
+url: /pt/python-net/concatenate-two-files/
+description: Concatenar dois arquivos PDF em um único documento usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mesclar Dois Arquivos PDF em um PDF Único no Python
+Abstract: Aprenda como concatenar dois arquivos PDF em um único documento usando Aspose.PDF for Python. Este exemplo demonstra como mesclar dois PDFs de forma contínua, preservando seu conteúdo e formatação originais.
+---
+
+Combinar dois arquivos PDF é uma tarefa comum ao consolidar relatórios, contratos ou formulários. Usando Aspose.PDF for Python, você pode mesclar programaticamente dois PDFs em um único documento usando o método concatenate da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe. Isso garante que todas as páginas de ambos os arquivos sejam incluídas no PDF de saída, mantendo o layout, conteúdo e estrutura originais.
+
+1. Crie um objeto PdfFileEditor.
+1. Mesclar dois arquivos PDF.
+
+```python
+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 concatenate_two_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ pdf_editor.concatenate(files_to_merge[0], files_to_merge[1], output_file)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-pdf-files/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-pdf-files/_index.md
new file mode 100644
index 0000000000..ea6a011e62
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-pdf-files/_index.md
@@ -0,0 +1,37 @@
+---
+title: Tente Concatenar Arquivos PDF
+type: docs
+weight: 70
+url: /pt/python-net/try-concatenate-pdf-files/
+description: Concatenar vários arquivos PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mesclar Arquivos PDF com Segurança em Python com Tratamento de Erros
+Abstract: Aprenda como concatenar vários arquivos PDF com segurança usando Aspose.PDF for Python. O método try_concatenate tenta mesclar os PDFs sem lançar exceções, permitindo que os desenvolvedores lidem com falhas de forma elegante.
+---
+
+A mesclagem de arquivos PDF pode, às vezes, falhar devido a arquivos corrompidos, formatos incompatíveis ou outros problemas. Usando Aspose.PDF for Python, você pode usar o método try_concatenate da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe para tentar a concatenação com segurança. Em vez de gerar uma exceção, o método retorna False se a operação falhar, permitindo o tratamento controlado de erros em fluxos de trabalho automatizados.
+
+1. Crie um objeto PdfFileEditor.
+1. Tentar concatenar arquivos PDF.
+
+```python
+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 try_concatenate_pdf_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ if not pdf_editor.try_concatenate(files_to_merge, output_file):
+ print("Concatenation failed for the provided files.")
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-two-files/_index.md b/pt/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-two-files/_index.md
new file mode 100644
index 0000000000..d55a8890b6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/page-merging/try-concatenate-two-files/_index.md
@@ -0,0 +1,39 @@
+---
+title: Tente Concatenar Dois Arquivos PDF
+type: docs
+weight: 90
+url: /pt/python-net/try-concatenate-two-files/
+description: Concatene dois arquivos PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Mesclar Dois Arquivos PDF com Segurança em Python sem Exceções
+Abstract: Aprenda como concatenar dois arquivos PDF com segurança usando Aspose.PDF for Python. O método try_concatenate mescla os arquivos sem gerar exceções, permitindo um tratamento de erro elegante caso a operação falhe.
+---
+
+A fusão de dois arquivos PDF pode às vezes falhar devido a corrupção de arquivos, formatos incompatíveis ou outros problemas. Usando Aspose.PDF for Python, o método try_concatenate da classe PdfFileEditor permite tentar mesclar dois PDFs com segurança. Se a operação falhar, ele retorna False em vez de gerar uma exceção, proporcionando controle total sobre o tratamento de erros em fluxos de trabalho automatizados ou processamento em lotes.
+
+1. Crie um objeto PdfFileEditor.
+1. Tente Mesclar Dois Arquivos PDF.
+
+```python
+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 try_concatenate_two_files(files_to_merge, output_file):
+ # Create a PdfFileEditor object
+ pdf_editor = pdf_facades.PdfFileEditor()
+ if not pdf_editor.try_concatenate(
+ files_to_merge[0], files_to_merge[1], output_file
+ ):
+ print("Concatenation failed for the provided files.")
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/_index.md b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/_index.md
new file mode 100644
index 0000000000..9f65fc967a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/_index.md
@@ -0,0 +1,22 @@
+---
+title: Dividir Documentos PDF
+type: docs
+weight: 50
+url: /pt/python-net/splitting-pdf-documents/
+description: Dividir PDFs é um requisito comum para gerenciamento de documentos, relatórios e fluxos de trabalho de automação.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dividir Documentos PDF em Python - Do Início, ao Fim, ou Em Arquivo Único
+Abstract: Aprenda como dividir documentos PDF programaticamente usando Aspose.PDF for Python. Este guia demonstra métodos para extrair páginas do início ou do fim, dividir um PDF em vários documentos ou dividi-lo em PDFs de página única para um gerenciamento flexível de documentos.
+---
+
+Dividir documentos PDF é útil quando você precisa extrair seções selecionadas, distribuir páginas individuais ou dividir arquivos grandes em unidades menores para armazenamento e processamento. Aspose.PDF for Python fornece vários `PdfFileEditor` métodos para lidar com esses cenários de forma eficiente.
+
+## Tutoriais de divisão de PDF
+
+- [Dividir PDF a partir do Início](/pdf/pt/python-net/split-pdf-from-beginning/)
+- [Dividir PDF até o final](/pdf/pt/python-net/split-pdf-to-end/)
+- [Dividir PDF em Páginas Únicas](/pdf/pt/python-net/split-pdf-into-single-pages/)
diff --git a/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-from-beginning/_index.md b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-from-beginning/_index.md
new file mode 100644
index 0000000000..ee2a83a5ad
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-from-beginning/_index.md
@@ -0,0 +1,37 @@
+---
+title: Dividir PDF a partir do Início
+type: docs
+weight: 10
+url: /pt/python-net/split-pdf-from-beginning/
+description: Divida um documento PDF a partir do início usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Divida PDF a partir do Início em Python Usando Aspose.PDF
+Abstract: Aprenda como dividir um documento PDF a partir do início usando Aspose.PDF for Python. Este exemplo demonstra a extração de um número específico de páginas a partir da primeira página para criar um novo documento PDF.
+---
+
+Dividir PDFs a partir do início é útil quando você precisa das primeiras páginas de um documento como um arquivo separado. Usando Aspose.PDF for Python, o método split_from_first na [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe permite extrair um número definido de páginas a partir da página um. Esse recurso é ideal para gerar trechos, visualizações ou seções menores de um PDF maior sem editar manualmente o arquivo original.
+
+1. Crie um objeto PdfFileEditor.
+1. Dividir PDF a partir da primeira página.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Split PDF from Beginning
+def split_pdf_from_beginning(input_pdf_path, output_pdf_path):
+ pdf_file_editor = pdf_facades.PdfFileEditor()
+ pdf_file_editor.split_from_first(input_pdf_path, 3, output_pdf_path)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-into-single-pages/_index.md b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-into-single-pages/_index.md
new file mode 100644
index 0000000000..7358b5deb7
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-into-single-pages/_index.md
@@ -0,0 +1,37 @@
+---
+title: Dividir PDF em Páginas Únicas
+type: docs
+weight: 30
+url: /pt/python-net/split-pdf-into-single-pages/
+description: Divida o documento PDF em PDFs de página única usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Dividir um PDF em Páginas Individuais em Python
+Abstract: Saiba como dividir um documento PDF em PDFs de página única usando Aspose.PDF for Python. Este método extrai cada página do PDF original e a salva como um arquivo separado para gerenciamento e processamento flexíveis de documentos.
+---
+
+Dividir um PDF em páginas individuais é útil para processamento ao nível de página, impressão ou distribuição de seções de um documento individualmente. Usando Aspose.PDF for Python, o método 'split_to_pages' da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe cria arquivos PDF separados para cada página no documento de origem. Essa abordagem permite a extração automatizada de páginas para arquivamento, revisão ou compartilhamento individual, preservando o layout e o conteúdo originais.
+
+1. Crie um objeto PdfFileEditor.
+1. Dividir PDF em páginas individuais.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Split PDF into Single Pages
+def split_pdf_into_single_pages(input_pdf_path, output_pdf_path):
+ pdf_file_editor = pdf_facades.PdfFileEditor()
+ pdf_file_editor.split_to_pages(input_pdf_path, output_pdf_path)
+```
diff --git a/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-to-end/_index.md b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-to-end/_index.md
new file mode 100644
index 0000000000..6f246d7be6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileeditor/splitting-pdf-documents/split-pdf-to-end/_index.md
@@ -0,0 +1,37 @@
+---
+title: Dividir PDF até o final
+type: docs
+weight: 40
+url: /pt/python-net/split-pdf-to-end/
+description: Divida um documento PDF de uma página fornecida até a última página usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Divida um PDF de uma página específica até o final em Python.
+Abstract: Aprenda como dividir um documento PDF a partir de uma página dada até a última página usando Aspose.PDF for Python. Este exemplo demonstra a extração de todas as páginas a partir de uma página especificada para criar um novo arquivo PDF.
+---
+
+Dividir um PDF de uma página específica até o final é útil quando você precisa da parte posterior de um documento como um arquivo separado. Usando Aspose.PDF for Python, o método split_to_end da [PdfFileEditor](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileeditor/) classe permite que você extraia páginas a partir de qualquer número de página até a última página do documento. Isso é ideal para criar trechos, extrair capítulos ou processar partes de um PDF grande sem editá-lo manualmente.
+
+1. Crie um objeto PdfFileEditor.
+1. Dividir PDF a partir de uma página específica até o final.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Split PDF to End
+def split_pdf_to_end(input_pdf_path, output_pdf_path):
+ pdf_file_editor = pdf_facades.PdfFileEditor()
+ pdf_file_editor.split_to_end(input_pdf_path, 2, output_pdf_path)
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/_index.md b/pt/python-net/working-with-facades/pdffileinfo/_index.md
new file mode 100644
index 0000000000..6f8b1f3578
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe PdfFileInfo
+type: docs
+weight: 110
+url: /pt/python-net/pdffileinfo-class/
+description: Aprenda como usar a classe PdfFileInfo no Aspose.PDF for Python via .NET para inspecionar metadados de PDF, propriedades do documento, privilégios, detalhes da versão e informações de página.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Inspecione metadados de PDF, propriedades e informações de página em Python com PdfFileInfo
+Abstract: Esta seção explica como usar a classe PdfFileInfo no Aspose.PDF for Python via .NET para inspecionar detalhes de arquivos PDF programaticamente. Aprenda a trabalhar com metadados de PDF, propriedades do documento, privilégios, informações de versão e dados ao nível da página em aplicações Python.
+---
+
+O `PdfFileInfo` A classe em Aspose.PDF Facades fornece acesso às informações PDF em nível de documento e de página sem exigir análise de baixo nível. É útil quando você precisa inspecionar metadados, recuperar propriedades do documento, verificar privilégios ou examinar dimensões e deslocamentos de página em fluxos de trabalho automatizados.
+
+## O que você pode fazer com PdfFileInfo
+
+Use os artigos nesta seção para explorar os principais recursos de inspeção de arquivos do `PdfFileInfo` fachada:
+
+- [Gerencie metadados PDF com PdfFileInfo](/pdf/pt/python-net/pdf-metadata/)
+- [Inspecione propriedades do documento com PdfFileInfo](/pdf/pt/python-net/document-properties/)
+- [Recupere informações de página com PdfFileInfo](/pdf/pt/python-net/page-information/)
diff --git a/pt/python-net/working-with-facades/pdffileinfo/document-properties/_index.md b/pt/python-net/working-with-facades/pdffileinfo/document-properties/_index.md
new file mode 100644
index 0000000000..6a8ca9cdcb
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/document-properties/_index.md
@@ -0,0 +1,18 @@
+---
+title: Propriedades do Documento
+type: docs
+weight: 10
+url: /pt/python-net/document-properties/
+description: Aprenda como acessar programaticamente os metadados de PDF usando Aspose.PDF for Python. Este guia aborda como recuperar a versão do PDF e verificar os privilégios do documento, incluindo permissões para impressão, cópia, modificação e preenchimento de formulários.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obtenha a Versão do PDF e os Privilégios do Documento Usando Aspose.PDF for Python
+Abstract: Compreender os metadados de um PDF é essencial para o processamento, conformidade e automação de fluxos de trabalho. Os números de versão do PDF indicam os recursos suportados e a compatibilidade, enquanto os privilégios do documento controlam ações como impressão, cópia de conteúdo, modificação de anotações ou preenchimento de campos de formulário. Este tutorial demonstra como usar a classe PdfFileInfo no Aspose.PDF for Python.
+---
+
+- [Obter Versão do PDF](/pdf/pt/python-net/get-pdf-version/)
+- [Obter privilégios do Document](/pdf/pt/python-net/get-document-privileges/)
\ No newline at end of file
diff --git a/pt/python-net/working-with-facades/pdffileinfo/document-properties/get-document-privileges/_index.md b/pt/python-net/working-with-facades/pdffileinfo/document-properties/get-document-privileges/_index.md
new file mode 100644
index 0000000000..94825a425a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/document-properties/get-document-privileges/_index.md
@@ -0,0 +1,59 @@
+---
+title: Obter privilégios do Document
+type: docs
+weight: 10
+url: /pt/python-net/get-document-privileges/
+description: Saiba como verificar programaticamente os privilégios de um documento PDF usando Aspose.PDF for Python. Este tutorial demonstra como usar a classe PdfFileInfo para ler as configurações de segurança do documento, como impressão, cópia ou permissões de modificação.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recuperar privilégios do PDF Document usando Aspose.PDF for Python
+Abstract: Documentos PDF podem ter restrições de segurança que limitam ações como impressão, cópia, modificação ou preenchimento de formulários. Ao acessar esses privilégios programaticamente, os desenvolvedores podem determinar quais operações são permitidas em um PDF. Este guia mostra como usar a classe PdfFileInfo para recuperar os privilégios do documento PDF e exibí‑los em Python.
+---
+
+Os privilégios do PDF controlam o que os usuários podem e não podem fazer com um documento. As permissões comuns incluem:
+
+- Impressão do documento
+- Copiando conteúdo
+- Modificando anotações ou conteúdos
+- Preenchendo campos de formulário
+- Usando leitores de tela
+- Montando ou mesclando documentos
+
+Com Aspose.PDF for Python, você pode inspecionar essas configurações programaticamente usando o [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) class. Esta é especialmente útil ao trabalhar com vários PDFs em fluxos de trabalho automatizados, verificando conformidade ou controlando o manuseio de documentos em aplicativos.
+
+1. Carregue um arquivo PDF.
+1. Recupere os privilégios do documento.
+1. Exiba quais ações são permitidas para o documento.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_document_privileges(input_file_name):
+ pdf_metadata = pdf_facades.PdfFileInfo(input_file_name)
+
+ privileges = pdf_metadata.get_document_privilege()
+
+ print("Document Privileges:")
+ print(f" Can Print: {privileges.allow_print}")
+ print(f" Can Degraded Print: {privileges.allow_degraded_printing}")
+ print(f" Can Copy: {privileges.allow_copy}")
+ print(f" Can Modify Contents: {privileges.allow_modify_contents}")
+ print(f" Can Modify Annotations: {privileges.allow_modify_annotations}")
+ print(f" Can Fill In: {privileges.allow_fill_in}")
+ print(f" Can Screen Readers: {privileges.allow_screen_readers}")
+ print(f" Can Assembly: {privileges.allow_assembly}")
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/document-properties/get-pdf-version/_index.md b/pt/python-net/working-with-facades/pdffileinfo/document-properties/get-pdf-version/_index.md
new file mode 100644
index 0000000000..c08fdbead4
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/document-properties/get-pdf-version/_index.md
@@ -0,0 +1,43 @@
+---
+title: Obter Versão do PDF
+type: docs
+weight: 20
+url: /pt/python-net/get-pdf-version/
+description: Aprenda como determinar programaticamente a versão de um documento PDF usando Aspose.PDF for Python. Este tutorial demonstra como usar a classe PdfFileInfo para verificar a versão PDF de um arquivo.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recuperar Versão do PDF Usando Aspose.PDF for Python
+Abstract: Documentos PDF têm números de versão que indicam os recursos e especificações que suportam (por exemplo, 1.4, 1.7, 2.0). Conhecer a versão do PDF é importante para compatibilidade, suporte a recursos e fluxos de trabalho de processamento de documentos. Neste guia, você aprenderá como recuperar a versão do PDF programaticamente usando a classe PdfFileInfo no Aspose.PDF for Python.
+---
+
+As versões de PDF definem os recursos e capacidades suportados em um documento, incluindo campos de formulário, criptografia, anotações e compressão. Para desenvolvedores que trabalham com múltiplos PDFs, verificar a versão garante compatibilidade com ferramentas, bibliotecas ou fluxos de trabalho que processam esses arquivos.
+
+Usando Aspose.PDF for Python, você pode inspecionar facilmente a versão do PDF com o [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe.
+
+1. Carregue um documento PDF.
+1. Recupere sua versão PDF.
+1. Exiba a versão no console.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_pdf_version(input_file_name):
+
+ pdf_metadata = pdf_facades.PdfFileInfo(input_file_name)
+ version = pdf_metadata.get_pdf_version()
+ print(f"\nPDF Version: {version}")
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/page-information/_index.md b/pt/python-net/working-with-facades/pdffileinfo/page-information/_index.md
new file mode 100644
index 0000000000..e2b5d2e7bc
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/page-information/_index.md
@@ -0,0 +1,18 @@
+---
+title: Informação da Página
+type: docs
+weight: 20
+url: /pt/python-net/page-information/
+description: Este artigo explica como extrair detalhes chave de layout e posicionamento de páginas PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recuperar Informações da Página PDF e Deslocamentos
+Abstract: As páginas PDF podem diferir em tamanho, rotação e posicionamento interno do conteúdo. As funções Get Page Information e Get Page Offset fornecem aos desenvolvedores uma visão completa do layout de cada página. Get Page Information devolve a largura, altura e rotação da página, enquanto Get Page Offset recupera os deslocamentos X e Y em polegadas. Juntos, esses métodos permitem o alinhamento preciso de texto, imagens, anotações e outro conteúdo, suportando fluxos de trabalho automáticos de página única e de múltiplas páginas.
+---
+
+- [Obter Info da Página](/pdf/pt/python-net/get-page-info/)
+- [Obter Deslocamento da Página](/pdf/pt/python-net/get-page-offset/)
diff --git a/pt/python-net/working-with-facades/pdffileinfo/page-information/get-page-info/_index.md b/pt/python-net/working-with-facades/pdffileinfo/page-information/get-page-info/_index.md
new file mode 100644
index 0000000000..a15dd6044d
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/page-information/get-page-info/_index.md
@@ -0,0 +1,50 @@
+---
+title: Obter informações da página
+type: docs
+weight: 10
+url: /pt/python-net/get-page-info/
+description: Aprenda como acessar programaticamente informações ao nível de página em um PDF usando Aspose.PDF for Python. Este guia mostra como recuperar a largura, altura, rotação e deslocamentos de uma página específica em um documento PDF.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obter informações da página PDF usando Aspose.PDF for Python
+Abstract: A função extrai a largura, altura, rotação e os deslocamentos horizontal (X) e vertical (Y) de uma página PDF. Essas propriedades são retornadas em pontos e refletem o tamanho físico da página e o posicionamento do conteúdo dentro do PDF. A função imprime os valores recuperados, permitindo que os desenvolvedores compreendam o layout e a orientação da página para manipulação adicional do PDF.
+---
+
+A função utilitária ‘get_page_information’ ajuda os desenvolvedores a entender a estrutura e o layout das páginas PDF. Cada página PDF pode ter dimensões, rotação e deslocamentos internos diferentes, o que pode impactar a colocação de conteúdo ou tarefas de automação.
+
+Ela apresenta a recuperação de metadados chave e informações de layout para uma página específica em um arquivo PDF. A API Aspose.PDF Facades fornece detalhes como largura, altura, rotação da página e deslocamentos X/Y. Essas informações são essenciais para tarefas como análise de layout de página, colocação de anotações ou processamento automatizado de PDF.
+
+1. Criar um objeto fachada de PDF.
+1. Recuperar dimensões e layout da página.
+1. Imprimir ou armazenar os valores recuperados.
+
+```python
+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 get_page_information(infile):
+
+ # Get and display PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+ page_width = pdf_info.get_page_width(1)
+ page_height = pdf_info.get_page_height(1)
+ page_rotation = pdf_info.get_page_rotation(1)
+ page_x_offset = pdf_info.get_page_x_offset(1)
+ page_y_offset = pdf_info.get_page_y_offset(1)
+
+ print(f"Page Width: {page_width}")
+ print(f"Page Height: {page_height}")
+ print(f"Page Rotation: {page_rotation}")
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/page-information/get-page-offset/_index.md b/pt/python-net/working-with-facades/pdffileinfo/page-information/get-page-offset/_index.md
new file mode 100644
index 0000000000..85ff526322
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/page-information/get-page-offset/_index.md
@@ -0,0 +1,45 @@
+---
+title: Obter Deslocamento da Página
+type: docs
+weight: 20
+url: /pt/python-net/get-page-offset/
+description: Este exemplo demonstra como usar PdfFileInfo para obter os deslocamentos X e Y de uma página específica e convertê-los em polegadas para análise precisa de layout e posicionamento.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Obter Deslocamentos de Página PDF usando Python
+Abstract: A função 'get_page_offsets' extrai os deslocamentos horizontais (X) e verticais (Y) de cada página em um arquivo PDF. Esses deslocamentos representam a posição do conteúdo da página em relação à origem do PDF. Ao converter pontos em polegadas, a função fornece medições precisas e legíveis que podem ser usadas para o posicionamento exato de anotações, imagens ou texto. Ela suporta PDFs com várias páginas e destina‑se a desenvolvedores que trabalham com layout de PDF, automação ou tarefas de alinhamento de conteúdo.
+---
+
+A função 'get_page_offsets' fornece aos desenvolvedores os deslocamentos horizontais (X) e verticais (Y) exatos das páginas em um arquivo PDF. Em documentos PDF, cada página pode ter um ponto de origem interno que difere do canto superior esquerdo da página, o que pode afetar o posicionamento de texto, imagens, anotações ou outro conteúdo.
+
+Ao usar Aspose.PDF Facades, esta função extrai esses deslocamentos em pontos e os converte para polegadas para fácil interpretação. Ela suporta PDFs de várias páginas, tornando-a adequada para fluxos de trabalho automatizados que exigem posicionamento preciso do conteúdo.
+
+1. Crie o objeto PDF facade.
+1. Obtenha o número de páginas no PDF.
+1. Percorra cada página para obter os deslocamentos.
+1. Imprima ou armazene os deslocamentos.
+
+```python
+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 get_page_offsets(infile):
+ # Get and display PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+ page_x_offset = pdf_info.get_page_x_offset(1) / 72.0
+ page_y_offset = pdf_info.get_page_y_offset(1) / 72.0
+ print(f"Page X Offset: {page_x_offset} inches")
+ print(f"Page Y Offset: {page_y_offset} inches")
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/_index.md b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/_index.md
new file mode 100644
index 0000000000..87f5cefa6f
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/_index.md
@@ -0,0 +1,20 @@
+---
+title: Metadados PDF
+type: docs
+weight: 30
+url: /pt/python-net/pdf-metadata/
+description: Este artigo explica como acessar, modificar e salvar metadados em documentos PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar Metadados PDF em Python
+Abstract: Os metadados PDF contêm informações sobre um documento, como título, autor, palavras‑chave e data de criação, que auxiliam na catalogação, pesquisa e manutenção da integridade do documento. Usando Aspose.PDF, os desenvolvedores podem programaticamente Get PDF Metadata, Set PDF Metadata, Clear PDF Metadata e salvar as alterações tanto no formato padrão de metadados PDF quanto no formato XMP. Essa abordagem abrangente permite controle preciso sobre as propriedades do documento e garante um tratamento consistente em fluxos de trabalho e aplicações.
+---
+
+- [Obter Metadados PDF](/pdf/pt/python-net/get-pdf-metadata/)
+- [Definir metadados PDF](/pdf/pt/python-net/set-pdf-metadata/)
+- [Limpar Metadados do PDF](/pdf/pt/python-net/clear-pdf-metadata/)
+- [Salvar Metadados com XMP](/pdf/pt/python-net/save-metadata-with-xmp/)
diff --git a/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/clear-pdf-metadata/_index.md b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/clear-pdf-metadata/_index.md
new file mode 100644
index 0000000000..8876d4ca7a
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/clear-pdf-metadata/_index.md
@@ -0,0 +1,46 @@
+---
+title: Limpar Metadados do PDF
+type: docs
+weight: 10
+url: /pt/python-net/clear-pdf-metadata/
+description: Remova todos os metadados de um documento PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Limpeza de Metadados de PDF Usando Aspose.PDF for Python
+Abstract: Este guia explica como remover todos os metadados de um documento PDF usando Aspose.PDF for Python via .NET. Você aprenderá a limpar tanto os campos de metadados padrão quanto os personalizados e a salvar o PDF sanitizado. Isso é útil para privacidade, segurança ou para preparar PDFs para publicação pública.
+---
+
+Os PDFs frequentemente contêm metadados como título, autor, palavras‑chave, datas de criação e campos personalizados. Em alguns cenários, você pode querer remover todos os metadados de um PDF, por exemplo antes da distribuição ou arquivamento. Aspose.PDF fornece o método clear_info() para remover facilmente todos os metadados. Após a limpeza, você pode salvar o PDF usando o método save().
+
+1. Carregue o arquivo PDF.
+1. Limpar todos os metadados.
+1. Salvar o PDF limpo.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def clear_pdf_metadata(infile, outfile):
+
+ # Get PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+
+ # Clear PDF metadata
+ pdf_info.clear_info()
+
+ # Save updated metadata
+ pdf_info.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/get-pdf-metadata/_index.md b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/get-pdf-metadata/_index.md
new file mode 100644
index 0000000000..c65c8edc52
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/get-pdf-metadata/_index.md
@@ -0,0 +1,58 @@
+---
+title: Obter Metadados PDF
+type: docs
+weight: 20
+url: /pt/python-net/get-pdf-metadata/
+description: Extrair e exibir metadados de documentos PDF usando Aspose.PDF for Python.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Recuperando Metadados PDF Usando Aspose.PDF for Python.
+Abstract: Este guia demonstra como extrair e exibir metadados de documentos PDF usando Aspose.PDF for Python. Você aprenderá a acessar propriedades padrão de PDF, como título, autor, palavras‑chave, datas de criação/modificação, bem como campos de metadados personalizados. Além disso, o guia aborda verificações de validade do PDF, criptografia e status de portfólio.
+---
+
+Os documentos PDF frequentemente contêm metadados valiosos que descrevem o conteúdo do documento, autoria e permissões. Aspose.PDF fornece uma API conveniente para recuperar tanto propriedades de metadados padrão quanto personalizadas. Este trecho de código mostra como usar o [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe para inspecionar arquivos PDF programaticamente, incluindo exemplos passo a passo em Python.
+
+1. Carregue o arquivo PDF.
+1. Recuperar metadados padrão.
+1. Verificar o status e a segurança do PDF.
+1. Recuperar metadados personalizados.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def get_pdf_metadata(infile):
+
+ # Get and display PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+ print(f"Subject: {pdf_info.subject}")
+ print(f"Title: {pdf_info.title}")
+ print(f"Keywords: {pdf_info.keywords}")
+ print(f"Creator: {pdf_info.creator}")
+ print(f"Creation Date: {pdf_info.creation_date}")
+ print(f"Modification Date: {pdf_info.mod_date}")
+
+ # Check PDF status
+ print(f"Is Valid PDF: {pdf_info.is_pdf_file}")
+ print(f"Is Encrypted: {pdf_info.is_encrypted}")
+ print(f"Has Open Password: {pdf_info.has_open_password}")
+ print(f"Has Edit Password: {pdf_info.has_edit_password}")
+ print(f"Is Portfolio: {pdf_info.has_collection}")
+
+ # Retrieve and display a specific custom attribute
+ reviewer = pdf_info.get_meta_info("Reviewer")
+ print(f"Reviewer: {reviewer if reviewer else 'No Reviewer metadata found.'}")
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/save-metadata-with-xmp/_index.md b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/save-metadata-with-xmp/_index.md
new file mode 100644
index 0000000000..2f53f5bf81
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/save-metadata-with-xmp/_index.md
@@ -0,0 +1,49 @@
+---
+title: Salvar Metadados com XMP
+type: docs
+weight: 30
+url: /pt/python-net/save-metadata-with-xmp/
+description: Salvar metadados PDF usando XMP com Aspose.PDF for Python via .NET
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Salvando Metadados PDF com XMP Usando Aspose.PDF for Python
+Abstract: Este guia demonstra como salvar metadados PDF usando XMP (Extensible Metadata Platform) com Aspose.PDF for Python via .NET. O XMP garante que tanto os metadados padrão quanto os personalizados sejam incorporados em um formato XML padronizado dentro do PDF, melhorando a compatibilidade entre aplicativos e fluxos de trabalho.
+---
+
+Os metadados PDF podem ser armazenados de várias maneiras, e o XMP é o método moderno e padronizado para incorporar metadados dentro de um arquivo PDF. Usando Aspose.PDF, você pode atualizar campos padrão como Título, Assunto, Palavras‑chave e Criador, e então salvá‑los no formato XMP para garantir maior compatibilidade e preparação para o futuro. Este método é recomendado em relação aos métodos legados de armazenamento de metadados.
+
+1. Carregue o arquivo PDF.
+1. Defina campos de metadados padrão.
+1. Salvar metadados no formato XMP.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def save_info_with_xmp(infile, outfile):
+
+ # Get PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+
+ # Set PDF metadata
+ pdf_info.subject = "Aspose PDF for Python via .NET"
+ pdf_info.title = "Aspose PDF for Python via .NET"
+ pdf_info.keywords = "Aspose, PDF, Python, .NET"
+ pdf_info.creator = "Aspose Team"
+
+ # Save updated metadata
+ pdf_info.save_new_info_with_xmp(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/set-pdf-metadata/_index.md b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/set-pdf-metadata/_index.md
new file mode 100644
index 0000000000..46ca8679d2
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffileinfo/pdf-metadata/set-pdf-metadata/_index.md
@@ -0,0 +1,55 @@
+---
+title: Definir metadados PDF
+type: docs
+weight: 50
+url: /pt/python-net/set-pdf-metadata/
+description: Modifique e salve metadados em documentos PDF usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+draft: false
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Atualizando Metadados PDF Usando Aspose.PDF for Python
+Abstract: Este guia explica como modificar e salvar metadados em documentos PDF usando Aspose.PDF for Python via .NET. Ele demonstra como atualizar propriedades padrão do PDF, como título, assunto, palavras‑chave e criador, bem como campos de metadados personalizados. Ao final, você será capaz de atualizar programaticamente os metadados do PDF e salvar as alterações.
+---
+
+Documentos PDF podem conter tanto metadados padrão (Title, Subject, Keywords, Creator, Author) quanto metadados personalizados armazenados como propriedades XMP. Aspose.PDF fornece uma API simples para modificar essas propriedades em Python. Este guia aborda como atualizar esses campos e salvar o arquivo PDF modificado usando o [PdfFileInfo](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffileinfo/) classe.
+
+1. Carregue o arquivo PDF.
+1. Atualizar metadados padrão.
+1. Adicionar ou atualizar metadados personalizados.
+1. Salvar metadados atualizados.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+from io import FileIO
+
+import sys
+from os import path
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+def set_pdf_metadata(infile, outfile):
+
+ # Get PDF information
+ pdf_info = pdf_facades.PdfFileInfo(infile)
+
+ # Set PDF metadata
+ pdf_info.subject = "Aspose PDF for Python via .NET"
+ pdf_info.title = "Aspose PDF for Python via .NET"
+ pdf_info.keywords = "Aspose, PDF, Python, .NET"
+ pdf_info.creator = "Aspose Team"
+
+ pdf_info.set_meta_info("CustomKey", "CustomValue")
+
+ # pdf_info.save_new_info(outfile)
+ # Is obsolete, use save() method instead
+
+ # Save updated metadata
+ pdf_info.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffilesecurity/_index.md b/pt/python-net/working-with-facades/pdffilesecurity/_index.md
new file mode 100644
index 0000000000..e5500d8e1e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesecurity/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe PdfFileSecurity
+type: docs
+weight: 125
+url: /pt/python-net/pdffilesecurity-class/
+description: Aprenda como usar a classe PdfFileSecurity no Aspose.PDF for Python via .NET para criptografar e descriptografar PDFs, alterar senhas e controlar privilégios de documento.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criptografe, descriptografe e controle permissões de PDF em Python com PdfFileSecurity
+Abstract: Esta seção explica como usar a classe PdfFileSecurity no Aspose.PDF for Python via .NET para proteger documentos PDF programaticamente. Aprenda como criptografar e descriptografar arquivos PDF, alterar senhas e configurar privilégios e permissões de documentos em aplicações Python.
+---
+
+O `PdfFileSecurity` A classe em Aspose.PDF Facades é usada para proteger documentos PDF e controlar como os usuários podem interagir com eles. Ela suporta fluxos de trabalho de segurança comuns, como criptografia baseada em senha, descriptografia, rotação de senha e gerenciamento de permissões para impressão, cópia e edição.
+
+## O que você pode fazer com PdfFileSecurity
+
+Use os artigos nesta seção para explorar as principais tarefas de segurança de PDF suportadas por `PdfFileSecurity` fachada:
+
+- [Criptografar arquivos PDF com PdfFileSecurity](/pdf/pt/python-net/encrypt-pdf-file/)
+- [Descriptografar arquivos PDF com PdfFileSecurity](/pdf/pt/python-net/decrypt-pdf-file/)
+- [Alterar senhas de PDF com PdfFileSecurity](/pdf/pt/python-net/change-password/)
+- [Definir privilégios de PDF com PdfFileSecurity](/pdf/pt/python-net/set-privileges/)
diff --git a/pt/python-net/working-with-facades/pdffilesecurity/change-password/_index.md b/pt/python-net/working-with-facades/pdffilesecurity/change-password/_index.md
new file mode 100644
index 0000000000..e6b374bac6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesecurity/change-password/_index.md
@@ -0,0 +1,154 @@
+---
+title: Alterar senha do arquivo PDF
+type: docs
+weight: 10
+url: /pt/python-net/change-password/
+description: Altere as senhas de usuário e proprietário de um documento PDF seguro usando Aspose.PDF for Python via .NET.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "monthly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Atualizar senhas do PDF
+Abstract: Saiba como alterar tanto as senhas de usuário quanto as de proprietário em um arquivo PDF seguro usando Aspose.PDF for Python via .NET. Este exemplo demonstra como atualizar de forma segura as credenciais de acesso mantendo a criptografia e as permissões existentes intactas.
+---
+
+## Alterar senha de usuário e do proprietário
+
+Em muitos casos, pode ser necessário atualizar as senhas de um PDF protegido sem alterar sua configuração de segurança existente. Isso pode ser útil ao rotacionar credenciais, transferir a propriedade ou aprimorar a segurança do documento.
+
+O método 'change_password' de [PdfFileSecurity](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesecurity/) a classe permite:
+
+- Atualize a senha do usuário (necessária para abrir o documento)
+- Atualize a senha do proprietário (usada para controlar permissões)
+- Mantenha as configurações atuais de criptografia e permissões
+
+1. Crie um objeto 'PdfFileSecurity'.
+1. Vincule o PDF de entrada.
+1. Altere as senhas com o método 'change_password()'.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Change User and Owner Password
+def change_user_and_owner_password(infile, outfile):
+ """Change user and owner passwords while keeping existing security settings."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Change passwords
+ file_security.change_password(
+ "owner_password", "new_user_password", "new_owner_password"
+ )
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Alterar senha e redefinir segurança
+
+Ao trabalhar com documentos PDF seguros, simplesmente alterar as senhas pode não ser suficiente. Você também pode precisar ajustar permissões, como impressão, cópia ou direitos de edição.
+
+Aprenda como atualizar as senhas de usuário e de proprietário ao redefinir as configurações de segurança do PDF com Aspose.PDF for Python via .NET. Este exemplo mostra como redefinir as permissões do documento e a força da criptografia juntamente com novas credenciais de acesso.
+
+1. Crie um objeto 'PdfFileSecurity'.
+1. Vincule o PDF de entrada.
+1. Crie um objeto 'DocumentPrivilege' e configure as ações permitidas.
+1. Altere as senhas e redefina a segurança.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Change Password and Reset Security
+def change_password_and_reset_security(infile, outfile):
+ """Change passwords and reset document security settings."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define new privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Change passwords and reset security
+ file_security.change_password(
+ "owner_password",
+ "new_user_password",
+ "new_owner_password",
+ privilege,
+ pdf_facades.KeySize.X128,
+ )
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Tente Alterar Senha Sem Exceção
+
+Em alguns fluxos de trabalho, especialmente em processamento em lote ou sistemas automatizados, é importante evitar exceções que possam interromper a execução. Em vez de lançar erros, você pode preferir uma operação segura que reporte sucesso ou falha.
+
+O método 'try_change_password' da [PdfFileSecurity](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesecurity/) classe fornece esta funcionalidade por:
+
+1. Crie um objeto 'PdfFileSecurity'.
+1. Carregue o documento PDF usando o método 'bind_pdf()'.
+1. Tentativa de alterar senhas.
+1. Verifique o resultado.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Try Change Password Without Exception
+def try_change_password_without_exception(infile, outfile):
+ """Attempt to change passwords without throwing an exception on failure."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Attempt to change passwords
+ result = file_security.try_change_password(
+ "owner_password", "new_user_password", "new_owner_password"
+ )
+
+ # Save only if operation succeeded
+ if result:
+ file_security.save(outfile)
+ else:
+ print("Password change failed. Check owner password or document security.")
+```
diff --git a/pt/python-net/working-with-facades/pdffilesecurity/decrypt-pdf-file/_index.md b/pt/python-net/working-with-facades/pdffilesecurity/decrypt-pdf-file/_index.md
new file mode 100644
index 0000000000..987cfa6860
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesecurity/decrypt-pdf-file/_index.md
@@ -0,0 +1,91 @@
+---
+title: Descriptografar arquivo PDF
+type: docs
+weight: 20
+url: /pt/python-net/decrypt-pdf-file/
+description: Este guia explica como remover restrições como impressão, cópia e edição para obter acesso total ao seu documento PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover proteção por senha de um PDF
+Abstract: Este artigo demonstra como descriptografar um arquivo PDF usando uma senha de proprietário. Ele aborda o processo de remoção de restrições de segurança que limitam ações como impressão, edição ou cópia de conteúdo. Ao aplicar a senha de proprietário correta, os usuários podem desbloquear o documento e recuperar o controle total sobre sua funcionalidade.
+---
+
+## Descriptografar PDF com senha de proprietário
+
+Descriptografar um documento PDF protegido por senha usando a senha de proprietário com Aspose.PDF for Python via .NET. Esta operação remove a criptografia e permite acesso irrestrito ao documento.
+
+1. Crie um objeto 'PdfFileSecurity'.
+1. Carregue o PDF criptografado usando o método 'bind_pdf()'.
+1. Descriptografe o Document.
+1. Salve o PDF descriptografado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Decrypt PDF with Owner Password
+def decrypt_pdf_with_owner_password(infile, outfile):
+ """Decrypt a PDF document using the owner password."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Decrypt the PDF
+ file_security.decrypt_file("owner_password")
+
+ # Save decrypted PDF
+ file_security.save(outfile)
+```
+
+## Tente descriptografar PDF sem exceção
+
+Documentos PDF costumam ser protegidos com senhas para restringir o acesso e o uso. Para acessar ou modificar totalmente esses documentos, pode ser necessário remover a criptografia. Descriptografe um documento PDF protegido usando a senha do proprietário para remover a criptografia e restrições de acesso com Aspose.PDF for Python via .NET.
+
+1. Crie um objeto 'PdfFileSecurity'.
+1. Vincule o PDF de entrada.
+1. Descriptografar o PDF.
+1. Salvar o PDF de saída.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Try Decrypt PDF Without Exception
+def try_decrypt_pdf_without_exception(infile, outfile):
+ """Attempt to decrypt a PDF without throwing an exception on failure."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Attempt to decrypt the PDF
+ result = file_security.try_decrypt_file("owner_password")
+
+ # Save only if decryption was successful
+ if result:
+ file_security.save(outfile)
+ else:
+ print("Decryption failed. Check password or document security.")
+```
diff --git a/pt/python-net/working-with-facades/pdffilesecurity/encrypt-pdf-file/_index.md b/pt/python-net/working-with-facades/pdffilesecurity/encrypt-pdf-file/_index.md
new file mode 100644
index 0000000000..164f1d216d
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesecurity/encrypt-pdf-file/_index.md
@@ -0,0 +1,151 @@
+---
+title: Criptografar arquivo PDF
+type: docs
+weight: 30
+url: /pt/python-net/encrypt-pdf-file/
+description: Criptografe um documento PDF e configure permissões para controlar o que os usuários podem fazer com o arquivo.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Criptografar PDF e controlar as ações do usuário
+Abstract: Aprenda como criptografar um PDF enquanto define permissões específicas de usuário usando Aspose.PDF for Python via .NET. Este guia mostra como permitir ou restringir ações como impressão e cópia, mantendo o documento seguro.
+---
+
+## Criptografar PDF com senha de usuário e senha de proprietário
+
+Proteger documentos PDF é essencial ao compartilhar conteúdo sensível ou restrito. A criptografia permite proteger um documento com senhas e definir quais ações os usuários podem executar. Este trecho de código mostra como aplicar senhas de usuário e de proprietário juntamente com permissões de acesso para proteger um arquivo PDF.
+
+1. Criar um objeto PdfFileSecurity.
+1. Vincule o PDF de entrada.
+1. Definir privilégios do Document.
+1. Criptografar o PDF.
+1. Salvar o PDF criptografado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Encrypt PDF with User and Owner Password
+def encrypt_pdf_with_user_owner_password(infile, outfile):
+ """Encrypt a PDF document using user and owner passwords."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define document privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Encrypt the PDF
+ file_security.encrypt_file(
+ "user_password", "owner_password", privilege, pdf_facades.KeySize.X128
+ )
+
+ # Save encrypted PDF
+ file_security.save(outfile)
+```
+
+## Criptografar PDF com Permissões
+
+O próximo trecho de código explica como permitir ações selecionadas, como impressão e cópia, enquanto restringe outras.
+
+1. Inicializar o [PdfFileSecurity](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesecurity/) classe.
+1. Vincular o PDF de entrada.
+1. Configurar privilégios do Document.
+1. Chamar o método 'encrypt_file()'.
+1. Salvar o PDF criptografado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Encrypt PDF with Permissions
+def encrypt_pdf_with_permissions(infile, outfile):
+ """Encrypt a PDF document and configure specific permissions."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Configure privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+ privilege.allow_copy = True
+
+ # Encrypt the PDF
+ file_security.encrypt_file(
+ "user_password", "owner_password", privilege, pdf_facades.KeySize.X128
+ )
+
+ # Save encrypted PDF
+ file_security.save(outfile)
+```
+
+## Criptografar PDF com Algoritmo de Criptografia
+
+A criptografia de PDF não apenas protege documentos com senhas, mas também permite escolher o algoritmo de criptografia e a força. Selecionar o algoritmo apropriado garante segurança mais forte para documentos confidenciais.
+
+1. Criar um objeto PdfFileSecurity.
+1. Vincular o PDF de entrada.
+1. Definir privilégios do Document.
+1. Criptografar o PDF com Algoritmo.
+1. Salvar o PDF criptografado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Encrypt PDF with Encryption Algorithm
+def encrypt_pdf_with_encryption_algorithm(infile, outfile):
+ """Encrypt a PDF document using a specific encryption algorithm."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Encrypt the PDF using AES algorithm
+ file_security.encrypt_file(
+ "user_password",
+ "owner_password",
+ privilege,
+ pdf_facades.KeySize.X256,
+ pdf_facades.Algorithm.AES,
+ )
+
+ # Save encrypted PDF
+ file_security.save(outfile)
+```
diff --git a/pt/python-net/working-with-facades/pdffilesecurity/set-privileges/_index.md b/pt/python-net/working-with-facades/pdffilesecurity/set-privileges/_index.md
new file mode 100644
index 0000000000..33268d7bd6
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesecurity/set-privileges/_index.md
@@ -0,0 +1,147 @@
+---
+title: Definir privilégios em um arquivo PDF existente
+type: docs
+weight: 40
+url: /pt/python-net/set-privileges/
+description: Defina e gerencie privilégios de documentos PDF para controlar ações do usuário, como impressão, cópia e edição.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Gerenciar permissões e controles de acesso de PDF
+Abstract: Aprenda como controlar o que os usuários podem fazer com um PDF definindo privilégios de documento usando Aspose.PDF for Python via .NET. Este guia aborda a aplicação de permissões com ou sem senhas para restringir ações como impressão, cópia ou edição.
+---
+
+## Definir privilégios de PDF sem senhas
+
+Verifique como aplicar privilégios de documento a um PDF sem especificar senhas de usuário ou proprietário usando Aspose.PDF for Python via .NET. Este trecho de código mostra como controlar as ações permitidas mantendo o documento acessível.
+
+1. Criar um 'PdfFileSecurity' Objeto.
+1. Vincule o PDF de entrada.
+1. Definir privilégios de Document.
+1. Chame o método 'set_privilege()' sem passar senhas.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Set PDF Privileges Without Passwords
+def set_pdf_privileges_without_passwords(infile, outfile):
+ """Set PDF privileges without specifying user and owner passwords."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Apply privileges (owner password will be generated automatically)
+ file_security.set_privilege(privilege)
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Definir privilégios de PDF com senhas de usuário e proprietário
+
+Para proteger totalmente um documento PDF, muitas vezes você precisa tanto de controle de acesso (senhas) quanto de restrições de uso (permissões). Ao combinar esses recursos, você pode garantir que apenas usuários autorizados abram o documento e realizem ações específicas.
+
+Usando o método set_privilege com parâmetros de senha, você pode:
+
+- Proteja o documento com uma senha de usuário
+- Defina uma senha de proprietário para controle total
+- Configure ações permitidas e restritas
+- Aplique políticas de segurança ao nível do documento
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Set PDF Privileges with User and Owner Passwords
+def set_pdf_privileges_with_passwords(infile, outfile):
+ """Set PDF privileges using user and owner passwords."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+ privilege.allow_copy = False
+
+ # Apply privileges with passwords
+ file_security.set_privilege("user_password", "owner_password", privilege)
+
+ # Save updated PDF
+ file_security.save(outfile)
+```
+
+## Tente definir privilégios de PDF sem exceção
+
+Este trecho de código explica como controlar o acesso e restringir ações como copiar, permitindo outras como imprimir.
+
+1. Crie um objeto 'PdfFileSecurity'.
+1. Carregue o PDF de origem usando o método 'bind_pdf()'.
+1. Definir privilégios de Document.
+1. Aplicar privilégios com senhas.
+1. Salve o PDF atualizado.
+
+```python
+from io import FileIO
+import sys
+from os import path
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+sys.path.append(path.join(path.dirname(__file__), ".."))
+
+from config import set_license, initialize_data_dir
+
+
+# Try Set PDF Privileges Without Exception
+def try_set_pdf_privileges_without_exception(infile, outfile):
+ """Attempt to set PDF privileges without throwing an exception on failure."""
+ # Create PdfFileSecurity object
+ file_security = pdf_facades.PdfFileSecurity()
+
+ # Bind PDF document
+ file_security.bind_pdf(infile)
+
+ # Define privileges
+ privilege = pdf_facades.DocumentPrivilege.forbid_all
+ privilege.allow_print = True
+
+ # Attempt to apply privileges
+ result = file_security.try_set_privilege(
+ "user_password", "owner_password", privilege
+ )
+
+ # Save only if operation succeeded
+ if result:
+ file_security.save(outfile)
+ else:
+ print("Setting privileges failed. Check passwords or document state.")
+```
diff --git a/pt/python-net/working-with-facades/pdffilesignature/_index.md b/pt/python-net/working-with-facades/pdffilesignature/_index.md
new file mode 100644
index 0000000000..2eedaf8c8b
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/_index.md
@@ -0,0 +1,82 @@
+---
+title: Classe PdfFileSignature
+type: docs
+weight: 60
+url: /pt/python-net/pdffilesignature-class/
+description: Explore como adicionar, verificar e remover assinaturas digitais de documentos PDF em Python usando a classe PdfFileSignature com Aspose.PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+- [Assinatura de PDF](/pdf/pt/python-net/pdf-signing/)
+- [Certificação de PDF](/pdf/pt/python-net/pdf-certification/)
+- [Gerenciamento de Assinaturas](/pdf/pt/python-net/signature-management/)
+- [Verificação de Assinatura](/pdf/pt/python-net/signature-verification/)
+- [Informações da Assinatura](/pdf/pt/python-net/signature-information/)
+- [Verificações de Integridade de Assinatura](/pdf/pt/python-net/signature-integrity-checks/)
+- [Revisão & Permissões](/pdf/pt/python-net/revision-permissions/)
+- [Extração de Assinatura](/pdf/pt/python-net/signature-extraction/)
+- [Gerenciamento de Direitos de Uso](/pdf/pt/python-net/usage-rights-management/)
+
+## Preparando Auxiliares de Assinatura Digital PDF
+
+Antes de aplicar uma assinatura digital a um PDF, é uma prática recomendada configurar um grupo de funções auxiliares reutilizáveis. Essas funções encapsulam tarefas comuns — como inicializar o manipulador de assinatura, definir a posição visual da assinatura e configurar a assinatura baseada em certificado — para que a lógica principal de assinatura permaneça limpa, consistente e fácil de manter.
+
+### O que esta configuração alcança
+
+Esta camada auxiliar prepara tudo o que é necessário para um fluxo de assinatura tranquilo:
+
+- Inicializa um objeto PdfFileSignature e o vincula a um documento
+- Define onde a assinatura aparecerá na página
+- Carrega e aplica um certificado de assinatura
+- Cria um objeto de assinatura PKCS#7 reutilizável com metadados
+- Personaliza a aparência visual da assinatura
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+
+
+DEFAULT_CERTIFICATE_PASSWORD = "Aspose2021"
+DEFAULT_SIGNATURE_NAME = "Signature1"
+
+
+def create_pdf_file_signature(infile):
+ pdf_signature = pdf_facades.PdfFileSignature()
+ pdf_signature.bind_pdf(infile)
+ return pdf_signature
+
+
+def create_signature_rectangle():
+ return apd.Rectangle(10, 10, 200, 60)
+
+
+def configure_signature_certificate(
+ pdf_signature, certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ pdf_signature.set_certificate(certificate_path, certificate_password)
+
+
+def create_pkcs7_signature(
+ certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ signature = ap.forms.PKCS7(certificate_path, certificate_password)
+ signature.reason = "Document approval"
+ signature.contact_info = "qa@example.com"
+ signature.location = "New York, USA"
+ signature.authority = "Aspose.PDF Example"
+ return signature
+
+
+def create_custom_signature_appearance():
+ appearance = ap.forms.SignatureCustomAppearance()
+ appearance.font_family_name = "Arial"
+ appearance.font_size = 10
+ appearance.show_contact_info = True
+ appearance.show_location = True
+ appearance.show_reason = True
+ return appearance
+```
diff --git a/pt/python-net/working-with-facades/pdffilesignature/pdf-certification/_index.md b/pt/python-net/working-with-facades/pdffilesignature/pdf-certification/_index.md
new file mode 100644
index 0000000000..204de2cc76
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/pdf-certification/_index.md
@@ -0,0 +1,85 @@
+---
+title: Certificação de PDF
+type: docs
+weight: 30
+url: /pt/python-net/pdf-certification/
+description: Aprenda como certificar documentos PDF em Python usando PdfFileSignature e DocMDPSignature com diferentes permissões de modificação de documento.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Certificar documentos PDF com permissões DocMDP em Python
+Abstract: Este artigo explica como certificar documentos PDF com Aspose.PDF for Python via .NET usando a fachada PdfFileSignature. Ele mostra como criar um DocMDPSignature, aplicar a certificação com permissões de preenchimento de formulário e bloquear um documento com um nível de certificação sem alterações.
+---
+
+Aspose.PDF for Python via .NET permite que você certifique documentos PDF aplicando uma assinatura ao nível do documento com [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/). A certificação é diferente de uma assinatura de aprovação padrão porque define quais alterações, se houver, são permitidas após o documento ter sido certificado.
+
+Este artigo demonstra dois fluxos de trabalho de certificação comuns:
+
+1. Certificar um PDF e permitir o preenchimento de formulários após a certificação.
+1. Certificar um PDF e impedir quaisquer alterações adicionais.
+
+## Certificar um PDF para preenchimento de formulários
+
+Use esta abordagem quando o documento deve permanecer certificado, mas os usuários ainda precisam completar formulários interativos ou continuar assinando o arquivo. O `FILLING_IN_FORMS` o nível de permissão permite essas alterações controladas mantendo a certificação válida.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def certify_pdf_with_mdp_signature(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ doc_mdp_signature = create_doc_mdp_signature(
+ certificate_path,
+ ap.forms.DocMDPAccessPermissions.FILLING_IN_FORMS,
+ reason="Certified for form filling and signing",
+ )
+ pdf_signature.certify(
+ 1,
+ "Certified for form filling and signing",
+ "security@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ doc_mdp_signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Aplicar certificação ao nível do documento sem alterações permitidas
+
+Use este modo quando o documento certificado deve permanecer inalterado após a certificação. O `NO_CHANGES` o nível de permissão é adequado para PDFs finalizados, onde qualquer modificação posterior deve invalidar o estado de certificação.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def apply_document_level_certification(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ doc_mdp_signature = create_doc_mdp_signature(
+ certificate_path,
+ ap.forms.DocMDPAccessPermissions.NO_CHANGES,
+ reason="Certified with no further changes allowed",
+ )
+ pdf_signature.certify(
+ 1,
+ "Certified with no further changes allowed",
+ "security@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ doc_mdp_signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilesignature/pdf-signing/_index.md b/pt/python-net/working-with-facades/pdffilesignature/pdf-signing/_index.md
new file mode 100644
index 0000000000..128a9ee7ab
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/pdf-signing/_index.md
@@ -0,0 +1,182 @@
+---
+title: Assinar documentos PDF
+type: docs
+weight: 10
+url: /pt/python-net/pdf-signing/
+description: Aprenda como assinar documentos PDF em Python usando PdfFileSignature com assinaturas digitais baseadas em certificado, nomeadas e visíveis.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Assinar documentos PDF com assinaturas digitais em Python
+Abstract: Este artigo mostra como assinar documentos PDF com Aspose.PDF for Python via .NET usando a fachada PdfFileSignature. Ele abrange a configuração de certificado, assinatura com parâmetros básicos, assinatura com um objeto PKCS7, atribuição de um nome de assinatura e aplicação de uma aparência de assinatura visível.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para aplicar assinaturas digitais a documentos PDF existentes. Usando um arquivo de certificado, você pode assinar um documento programaticamente, colocar a assinatura em uma página, atribuir metadados da assinatura e personalizar como a assinatura é exibida.
+
+Este artigo demonstra vários fluxos de trabalho comuns de assinatura:
+
+1. Criar e vincular um `PdfFileSignature` objeto para o PDF de entrada.
+1. Configure o certificado de assinatura.
+1. Aplique uma assinatura digital na página de destino.
+1. Opcionalmente, atribua um nome de assinatura e aparência visível.
+1. Salve o PDF assinado.
+
+## Prepare reusable signing helpers
+
+Antes de aplicar uma assinatura digital a um PDF, é útil configurar um pequeno conjunto de funções auxiliares reutilizáveis. Essas funções inicializam o manipulador de assinatura, definem a área de assinatura visível, configuram o certificado e criam objetos de assinatura PKCS#7 reutilizáveis, de modo que os exemplos de assinatura abaixo permaneçam autocontidos e mais fáceis de seguir.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as apd
+
+
+DEFAULT_CERTIFICATE_PASSWORD = "Aspose2021"
+DEFAULT_SIGNATURE_NAME = "Signature1"
+
+
+def create_pdf_file_signature(infile):
+ pdf_signature = pdf_facades.PdfFileSignature()
+ pdf_signature.bind_pdf(infile)
+ return pdf_signature
+
+
+def create_signature_rectangle():
+ return apd.Rectangle(10, 10, 200, 60)
+
+
+def configure_signature_certificate(
+ pdf_signature, certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ pdf_signature.set_certificate(certificate_path, certificate_password)
+
+
+def create_pkcs7_signature(
+ certificate_path, certificate_password=DEFAULT_CERTIFICATE_PASSWORD
+):
+ signature = ap.forms.PKCS7(certificate_path, certificate_password)
+ signature.reason = "Document approval"
+ signature.contact_info = "qa@example.com"
+ signature.location = "New York, USA"
+ signature.authority = "Aspose.PDF Example"
+ return signature
+
+
+def create_custom_signature_appearance():
+ appearance = ap.forms.SignatureCustomAppearance()
+ appearance.font_family_name = "Arial"
+ appearance.font_size = 10
+ appearance.show_contact_info = True
+ appearance.show_location = True
+ appearance.show_reason = True
+ return appearance
+```
+
+## Assine um PDF com parâmetros básicos de certificado
+
+Esta abordagem configura o certificado diretamente no `PdfFileSignature` objeto. É útil quando você deseja um fluxo de assinatura direto com metadados de assinatura padrão e sem gerenciamento separado de objetos de assinatura.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def sign_pdf_with_basic_parameters(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ configure_signature_certificate(pdf_signature, certificate_path)
+ pdf_signature.sign(
+ 1,
+ "Document approval",
+ "qa@example.com",
+ "New York, USA",
+ False,
+ create_signature_rectangle(),
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Assinar um PDF com um objeto PKCS7
+
+Use um `PKCS7` objeto quando você precisa preparar a assinatura primeiro e então passá‑la para a chamada de assinatura. Esse padrão lhe dá mais controle sobre as configurações da assinatura e é uma boa base para fluxos de trabalho mais avançados.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def sign_pdf_with_certificate_object(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature = create_pkcs7_signature(certificate_path)
+ pdf_signature.sign(1, False, create_signature_rectangle(), signature)
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Assine um PDF com uma assinatura nomeada
+
+Se o fluxo de trabalho do seu documento depende de um nome de campo de assinatura predefinido, passe esse nome para `sign()`. Isso torna mais fácil referenciar a assinatura mais tarde para validação, processamento ou integração com um fluxo de trabalho de aprovação.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def sign_pdf_with_named_signature(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature = create_pkcs7_signature(certificate_path)
+ signature.reason = "Approved by signing workflow"
+ pdf_signature.sign(
+ 1,
+ DEFAULT_SIGNATURE_NAME,
+ "Approved by signing workflow",
+ "qa@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Aplicar uma assinatura visível
+
+Você pode tornar a assinatura visível na página PDF atribuindo uma aparência personalizada ao `PKCS7` objeto. Isso é útil quando o documento de saída deve mostrar detalhes de aprovação, como o motivo, a localização e as informações de contato para os usuários finais.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def apply_visible_signature(infile, outfile, certificate_path):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature = create_pkcs7_signature(certificate_path)
+ signature.reason = "Visible approval signature"
+ signature.custom_appearance = create_custom_signature_appearance()
+ pdf_signature.sign(
+ 1,
+ "Visible approval signature",
+ "qa@example.com",
+ "New York, USA",
+ True,
+ create_signature_rectangle(),
+ signature,
+ )
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilesignature/revision-permissions/_index.md b/pt/python-net/working-with-facades/pdffilesignature/revision-permissions/_index.md
new file mode 100644
index 0000000000..4ac6f1db56
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/revision-permissions/_index.md
@@ -0,0 +1,81 @@
+---
+title: Revisão e Permissões
+type: docs
+weight: 40
+url: /pt/python-net/revision-permissions/
+description: Aprenda como inspecionar revisões de assinatura, revisões de documento e permissões de certificação em arquivos PDF usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ler Dados de Revisão de Assinatura PDF e Permissão de Acesso em Python
+Abstract: Este artigo explica como inspecionar informações de revisão e permissão em arquivos PDF assinados ou certificados com Aspose.PDF for Python via .NET. Ele mostra como obter o número da revisão de uma assinatura, contar o total de revisões de documento e ler as permissões de acesso de um PDF certificado.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para trabalhar com documentos PDF assinados e certificados. Além de adicionar assinaturas, você também pode inspecionar os metadados da assinatura para entender quantas revisões um documento contém e quais mudanças são permitidas após a certificação.
+
+Este exemplo demonstra três tarefas comuns de inspeção:
+
+1. Obtenha o número da revisão de uma assinatura existente.
+1. Obtenha o número total de revisões em um documento assinado.
+1. Leia as permissões de acesso de um PDF certificado.
+
+## Obtenha o número da revisão de uma assinatura
+
+Use esta abordagem quando um PDF já contém uma ou mais assinaturas e você precisar identificar a revisão associada a uma assinatura específica. O exemplo resolve o primeiro nome de assinatura disponível e então chama `get_revision()`.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_revision(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_revision = pdf_signature.get_revision(sign_name)
+ print(f"Signature Revision for '{sign_name}': {signature_revision}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenha o número total de revisões do documento
+
+Usar `get_total_revision()` quando você precisa saber quantas revisões estão armazenadas no PDF assinado. Isso é útil para verificar se o documento passou por várias atualizações após a aplicação da assinatura original.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_total_document_revisions(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ total_revisions = pdf_signature.get_total_revision()
+ print(f"Total Document Revisions: {total_revisions}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obtenha permissões de acesso de um PDF certificado
+
+Documentos certificados podem definir quais alterações são permitidas após a certificação. Use `get_access_permissions()` para inspecionar esse nível de permissão e determinar se o documento permite nenhuma alteração, preenchimento de formulários ou outras modificações controladas.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_access_permissions(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ access_permissions = pdf_signature.get_access_permissions()
+ print(f"Access Permissions: {access_permissions}")
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/pt/python-net/working-with-facades/pdffilesignature/signature-extraction/_index.md b/pt/python-net/working-with-facades/pdffilesignature/signature-extraction/_index.md
new file mode 100644
index 0000000000..2f0bd8bb10
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/signature-extraction/_index.md
@@ -0,0 +1,62 @@
+---
+title: Extração de Assinatura
+type: docs
+weight: 50
+url: /pt/python-net/signature-extraction/
+description: Saiba como extrair uma imagem de assinatura e o certificado de assinatura de um PDF assinado usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Extrair Imagem de Assinatura e Certificado de PDF em Python
+Abstract: Este artigo explica como extrair dados relacionados a assinaturas de documentos PDF assinados com Aspose.PDF for Python via .NET. Ele mostra como ler a primeira assinatura disponível, exportar sua imagem e salvar o fluxo do certificado associado em um arquivo de saída.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para inspecionar e extrair dados de documentos PDF assinados. Após um PDF ser assinado, você pode usá-la para exportar recursos de assinatura, como a imagem visual da assinatura e o certificado associado à assinatura.
+
+Este exemplo demonstra duas tarefas comuns de extração:
+
+1. Extrair a imagem visual associada a uma assinatura.
+1. Extrair o certificado de assinatura de um PDF assinado.
+
+## Extrair uma imagem de assinatura
+
+Use este método quando o PDF contém uma assinatura visível e você deseja exportar os dados da imagem. O exemplo abre o documento assinado, obtém o primeiro nome de assinatura disponível, extrai o fluxo da imagem e grava‑o em um arquivo.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def extract_signature_image(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_image = pdf_signature.extract_image(sign_name)
+ write_stream_data(signature_image, outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Extrair um certificado de assinatura
+
+Usar `extract_certificate()` quando você precisar dos dados do certificado anexados a uma assinatura. Isso é útil para inspeção, fluxos de trabalho de validação ou para armazenar o certificado do assinante separadamente do documento PDF.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def extract_signature_certificate(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_certificate = pdf_signature.extract_certificate(sign_name)
+ write_stream_data(signature_certificate, outfile)
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/pt/python-net/working-with-facades/pdffilesignature/signature-information/_index.md b/pt/python-net/working-with-facades/pdffilesignature/signature-information/_index.md
new file mode 100644
index 0000000000..993e67010e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/signature-information/_index.md
@@ -0,0 +1,111 @@
+---
+title: Informações da Assinatura
+type: docs
+weight: 60
+url: /pt/python-net/signature-information/
+description: Aprenda como ler nomes de assinaturas, detalhes do assinante, carimbos de data/hora e metadados de assinatura de arquivos PDF assinados usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Ler Detalhes da Assinatura de Documentos PDF em Python
+Abstract: Este artigo explica como inspecionar metadados de assinatura em documentos PDF assinados com Aspose.PDF for Python via .NET. Ele mostra como listar nomes de assinaturas, ler detalhes do assinante, obter a data e hora da assinatura e extrair o motivo e o local da assinatura.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para inspeção de assinaturas digitais em documentos PDF. Após um documento ter sido assinado, você pode usá-la para ler os nomes das assinaturas e recuperar metadados como o nome do assinante, informações de contato, hora da assinatura, motivo e localização.
+
+Este exemplo demonstra quatro tarefas comuns de informações de assinatura:
+
+1. Listar todos os nomes de assinatura em um PDF assinado.
+1. Ler detalhes do assinante para uma assinatura selecionada.
+1. Obtenha a data e hora da assinatura.
+1. Leia o motivo e a localização da assinatura.
+
+## Obtenha nomes de assinatura
+
+Use este método quando um PDF pode conter uma ou mais assinaturas e você deseja inspecionar quais entradas de assinatura estão disponíveis. O exemplo abre o documento e imprime a lista retornada por `get_sign_names()`.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_names(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ signature_names = list_signature_names(pdf_signature)
+ print(f"Signature Names: {signature_names}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obter detalhes do assinante
+
+Depois de conhecer o nome da assinatura, você pode recuperar metadados específicos do assinante. Este exemplo lê o nome do assinante e as informações de contato da primeira assinatura disponível no documento.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signer_details(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signer_name = pdf_signature.get_signer_name(sign_name)
+ contact_info = pdf_signature.get_contact_info(sign_name)
+ print(
+ f"Signer Details for '{sign_name}': "
+ f"signer_name={signer_name}, contact_info={contact_info}"
+ )
+ finally:
+ pdf_signature.close()
+```
+
+## Obter data e hora da assinatura
+
+Usar `get_date_time()` para determinar quando uma assinatura específica foi aplicada. Isso é útil para auditoria e para exibir o histórico de assinaturas nos fluxos de trabalho de documentos.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_date_and_time(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_date = pdf_signature.get_date_time(sign_name)
+ print(f"Signature Date and Time for '{sign_name}': {signature_date}")
+ finally:
+ pdf_signature.close()
+```
+
+## Obter motivo e localização da assinatura
+
+As assinaturas digitais também podem armazenar metadados descritivos, como o motivo e a localização da assinatura. Este exemplo recupera ambos os valores para a assinatura selecionada e os imprime juntos.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def get_signature_reason_and_location(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ signature_reason = pdf_signature.get_reason(sign_name)
+ signature_location = pdf_signature.get_location(sign_name)
+ print(
+ f"Signature Reason and Location for '{sign_name}': "
+ f"reason={signature_reason}, location={signature_location}"
+ )
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/pt/python-net/working-with-facades/pdffilesignature/signature-integrity-checks/_index.md b/pt/python-net/working-with-facades/pdffilesignature/signature-integrity-checks/_index.md
new file mode 100644
index 0000000000..c5c232747d
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/signature-integrity-checks/_index.md
@@ -0,0 +1,62 @@
+---
+title: Verificações de Integridade de Assinatura
+type: docs
+weight: 70
+url: /pt/python-net/signature-integrity-checks/
+description: Saiba como verificar se uma assinatura PDF cobre todo o documento e validar a integridade do documento assinado usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Validar Cobertura e Integridade da Assinatura PDF em Python
+Abstract: Este artigo explica como inspecionar a integridade de assinatura digital em documentos PDF assinados com Aspose.PDF for Python via .NET. Ele mostra como verificar se uma assinatura cobre todo o documento e como validar a integridade do conteúdo assinado.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para validar documentos PDF assinados. Depois que um arquivo foi assinado, você pode usá-la para verificar se a assinatura se aplica ao documento completo e se o conteúdo assinado ainda é válido.
+
+Este exemplo demonstra duas verificações de integridade comuns:
+
+1. Verifique se uma assinatura cobre todo o documento.
+1. Valide a integridade do conteúdo PDF assinado.
+
+## Verifique se uma assinatura cobre todo o documento
+
+Usar `covers_whole_document()` quando você precisa confirmar que a assinatura se aplica ao PDF completo e não apenas a parte de seu conteúdo. O exemplo lê o primeiro nome de assinatura disponível e verifica sua cobertura.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def check_signature_coverage(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ covers_document = pdf_signature.covers_whole_document(sign_name)
+ print(f"Signature '{sign_name}' covers the whole document: {covers_document}")
+ finally:
+ pdf_signature.close()
+```
+
+## Validar integridade do documento
+
+Usar `verify_signed()` para confirmar que o conteúdo do documento assinado não foi alterado após a aplicação da assinatura. Este método ajuda a verificar se o documento permanece válido para a assinatura selecionada.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def validate_document_integrity(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ is_valid = pdf_signature.verify_signed(sign_name)
+ print(f"Document integrity for '{sign_name}' is valid: {is_valid}")
+ finally:
+ pdf_signature.close()
+```
+
diff --git a/pt/python-net/working-with-facades/pdffilesignature/signature-management/_index.md b/pt/python-net/working-with-facades/pdffilesignature/signature-management/_index.md
new file mode 100644
index 0000000000..11acd7ddff
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/signature-management/_index.md
@@ -0,0 +1,61 @@
+---
+title: Gerenciamento de Assinaturas
+type: docs
+weight: 80
+url: /pt/python-net/signature-management/
+description: Aprenda como remover assinaturas digitais de documentos PDF e, opcionalmente, limpar campos de assinatura usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Assinaturas PDF e Limpar Campos de Assinatura em Python
+Abstract: Este artigo explica como gerenciar assinaturas digitais existentes em documentos PDF com Aspose.PDF for Python via .NET. Ele mostra como remover uma assinatura de um PDF e como remover uma assinatura juntamente com seu campo de assinatura associado.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para trabalhar com assinaturas digitais existentes em documentos PDF. Além de ler e validar assinaturas, você também pode removê-las quando um fluxo de trabalho requer que o conteúdo assinado seja atualizado ou que o campo de assinatura seja limpo.
+
+Este exemplo demonstra duas tarefas comuns de gerenciamento de assinaturas:
+
+1. Remova uma assinatura de um documento PDF.
+1. Remova uma assinatura e limpe o campo de assinatura associado.
+
+## Remova uma assinatura de um PDF
+
+Usar `remove_signature()` quando você deseja excluir a assinatura selecionada do documento enquanto mantém a estrutura subjacente do campo de assinatura intacta. O exemplo abre o PDF assinado, resolve o nome da assinatura, remove‑a e salva o arquivo de saída atualizado.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def remove_signature_from_pdf(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ pdf_signature.remove_signature(sign_name)
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
+
+## Remover uma assinatura e limpar o campo
+
+Use a sobrecarga com o adicional `True` marque quando quiser remover a assinatura e também limpar o campo de assinatura relacionado. Isso é útil quando o campo não deve permanecer no documento após a assinatura ter sido excluída.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def remove_signature_with_field_cleanup(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ pdf_signature.remove_signature(sign_name, True)
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilesignature/signature-verification/_index.md b/pt/python-net/working-with-facades/pdffilesignature/signature-verification/_index.md
new file mode 100644
index 0000000000..2ca529112e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/signature-verification/_index.md
@@ -0,0 +1,60 @@
+---
+title: Verificação de Assinatura
+type: docs
+weight: 90
+url: /pt/python-net/signature-verification/
+description: Saiba como verificar assinaturas digitais e verificar se um PDF contém assinaturas usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Verificar Assinaturas de PDF em Python
+Abstract: Este artigo explica como verificar assinaturas digitais em documentos PDF com Aspose.PDF for Python via .NET. Ele mostra como validar uma assinatura existente e como verificar se um PDF contém alguma assinatura.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para validar documentos PDF assinados. Depois que um PDF foi assinado, você pode usá-lo para confirmar que uma assinatura é válida e para detectar se o documento contém entradas de assinatura.
+
+Este exemplo demonstra duas tarefas comuns de verificação:
+
+1. Verifique se uma assinatura PDF existente é válida.
+1. Verifique se um PDF contém alguma assinatura.
+
+## Verificar uma assinatura PDF
+
+Usar `verify_signature()` quando você precisa validar uma assinatura específica no documento. O exemplo resolve o primeiro nome de assinatura disponível e verifica se essa assinatura é válida.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def verify_pdf_signature(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ sign_name = require_signature_name(pdf_signature)
+ is_valid = pdf_signature.verify_signature(sign_name)
+ print(f"Signature '{sign_name}' is valid: {is_valid}")
+ finally:
+ pdf_signature.close()
+```
+
+## Verificar se um PDF contém assinaturas
+
+Usar `contains_signature()` quando você só precisa saber se o PDF inclui alguma assinatura. Isso é útil como uma verificação rápida antes de executar uma lógica de verificação ou extração mais detalhada.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def check_if_pdf_contains_signatures(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ contains_signatures = pdf_signature.contains_signature()
+ print(f"PDF contains signatures: {contains_signatures}")
+ finally:
+ pdf_signature.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilesignature/usage-rights-management/_index.md b/pt/python-net/working-with-facades/pdffilesignature/usage-rights-management/_index.md
new file mode 100644
index 0000000000..adebd9e0da
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilesignature/usage-rights-management/_index.md
@@ -0,0 +1,62 @@
+---
+title: Gerenciamento de Direitos de Uso
+type: docs
+weight: 100
+url: /pt/python-net/usage-rights-management/
+description: Saiba como detectar e remover direitos de uso de documentos PDF usando PdfFileSignature em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Remover Direitos de Uso de PDF em Python
+Abstract: Este artigo explica como inspecionar e remover direitos de uso de documentos PDF com Aspose.PDF for Python via .NET. Ele mostra como verificar se um PDF contém direitos de uso e como salvar uma nova versão do documento após a remoção desses direitos.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileSignature](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilesignature/) fachada para trabalhar com PDFs assinados e configurações relacionadas de direitos de uso. Em alguns fluxos de trabalho, pode ser necessário inspecionar se um documento contém direitos de uso e removê-los antes de salvar uma versão atualizada do arquivo.
+
+Este exemplo demonstra uma tarefa comum de gerenciamento de direitos de uso:
+
+1. Verifique se um PDF contém direitos de uso.
+1. Remova os direitos de uso do documento.
+1. Salve o arquivo PDF atualizado.
+
+## Verifique se o PDF contém direitos de uso
+
+Antes de remover os direitos de uso, o exemplo verifica o estado atual do documento chamando `contains_usage_rights()`. Isto permite confirmar se os direitos de uso estão presentes antes de fazer alterações.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def check_usage_rights(infile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ had_usage_rights = pdf_signature.contains_usage_rights()
+ print(f"PDF contains usage rights: {had_usage_rights}")
+ finally:
+ pdf_signature.close()
+```
+
+## Remover direitos de uso do PDF
+
+Usar `remove_usage_rights()` quando o documento não deve mais manter as configurações de direitos de uso existentes. O exemplo verifica o estado inicial, remove os direitos e salva o PDF atualizado em um novo arquivo.
+
+```python
+import aspose.pdf.facades as pdf_facades
+import sys
+from os import path
+
+
+def remove_usage_rights(infile, outfile):
+ pdf_signature = create_pdf_file_signature(infile)
+ try:
+ had_usage_rights = pdf_signature.contains_usage_rights()
+ print(f"PDF contains usage rights before removal: {had_usage_rights}")
+ pdf_signature.remove_usage_rights()
+ pdf_signature.save(outfile)
+ finally:
+ pdf_signature.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilestamp/_index.md b/pt/python-net/working-with-facades/pdffilestamp/_index.md
new file mode 100644
index 0000000000..eb2baef52e
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilestamp/_index.md
@@ -0,0 +1,25 @@
+---
+title: Classe PdfFileStamp
+type: docs
+weight: 155
+url: /pt/python-net/pdffilestamp-class/
+description: Saiba como usar a classe PdfFileStamp no Aspose.PDF for Python via .NET para adicionar cabeçalhos, rodapés, números de página e carimbos a documentos PDF.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Adicione cabeçalhos, rodapés, números de página e carimbos a PDF em Python com PdfFileStamp
+Abstract: Esta seção explica como usar a fachada PdfFileStamp no Aspose.PDF for Python via .NET para adicionar conteúdo repetido a documentos PDF. Aprenda como colocar cabeçalhos, rodapés, números de página e carimbos nas páginas PDF programaticamente em aplicações Python.
+---
+
+O `PdfFileStamp` A classe em Aspose.PDF Facades foi projetada para adicionar conteúdo visual repetido às páginas PDF. É útil quando você precisa aplicar cabeçalhos, rodapés, números de página ou carimbos em todo o documento sem editar manualmente cada página.
+
+## O que você pode fazer com PdfFileStamp
+
+Use os artigos nesta seção para explorar as principais tarefas de marcação suportadas por `PdfFileStamp` fachada:
+
+- [Adicionar rodapés às páginas PDF com PdfFileStamp](/pdf/pt/python-net/add-footer/)
+- [Adicionar cabeçalhos às páginas PDF com PdfFileStamp](/pdf/pt/python-net/add-header/)
+- [Adicionar números de página aos documentos PDF com PdfFileStamp](/pdf/pt/python-net/page-number/)
+- [Adicionar carimbos às páginas PDF com PdfFileStamp](/pdf/pt/python-net/add-stamp/)
diff --git a/pt/python-net/working-with-facades/pdffilestamp/add-footer/_index.md b/pt/python-net/working-with-facades/pdffilestamp/add-footer/_index.md
new file mode 100644
index 0000000000..1655b0d29f
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilestamp/add-footer/_index.md
@@ -0,0 +1,84 @@
+---
+title: Adicionar rodapé ao PDF
+type: docs
+weight: 10
+url: /pt/python-net/add-footer/
+description: Aprenda como adicionar rodapés de texto e imagem às páginas PDF usando PdfFileStamp em Python.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Adicionar rodapés de texto e imagem ao PDF em Python
+Abstract: Este artigo explica como adicionar conteúdo de rodapé a documentos PDF com Aspose.PDF for Python via .NET usando a fachada PdfFileStamp. Ele mostra como adicionar um rodapé de texto, inserir um rodapé de imagem e aplicar margens de rodapé personalizadas antes de salvar o PDF atualizado.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) fachada para adicionar conteúdo repetido a páginas PDF. Você pode usá-la para colocar texto ou imagens de rodapé na parte inferior de cada página e ajustar as margens do rodapé para controlar a localização.
+
+## Adicionar um rodapé de texto
+
+Usar `add_footer()` com um `FormattedText` objeto quando você deseja colocar o mesmo rodapé de texto em cada página do PDF. O segundo argumento define a margem inferior usada para a colocação do rodapé.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_text_footer(infile: str, outfile: str) -> None:
+ """Add a text footer with a bottom margin."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ text = pdf_facades.FormattedText("Sample Footer")
+ pdf_stamper.add_footer(text, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar um rodapé de imagem
+
+Usar `add_footer()` com um fluxo de imagem quando o rodapé deve exibir um logotipo ou outra imagem em vez de texto. O exemplo abre o arquivo de imagem como um fluxo binário e o coloca na parte inferior de cada página.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_image_footer(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image footer with a bottom margin."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_footer(image_file, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicione um rodapé com margens personalizadas
+
+Use a sobrecarga com três valores de margem quando precisar de mais controle sobre a posição do rodapé. Neste exemplo, o rodapé é adicionado com margens personalizadas inferior, esquerda e direita.
+
+```python
+import sys
+from os import path
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_footer_with_margins(infile: str, outfile: str) -> None:
+ """Add a text footer with bottom, left, and right margins."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ text = pdf_facades.FormattedText("This footer has margins on all sides.")
+ pdf_stamper.add_footer(text, 20, 20, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilestamp/add-header/_index.md b/pt/python-net/working-with-facades/pdffilestamp/add-header/_index.md
new file mode 100644
index 0000000000..e7cc75b416
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilestamp/add-header/_index.md
@@ -0,0 +1,97 @@
+---
+title: Adicionar cabeçalho ao PDF
+type: docs
+weight: 20
+url: /pt/python-net/add-header/
+description: Saiba como adicionar cabeçalhos de texto e imagem às páginas PDF usando PdfFileStamp em Python.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Adicionar cabeçalhos de texto e imagem ao PDF em Python
+Abstract: Este artigo explica como adicionar conteúdo de cabeçalho a documentos PDF com Aspose.PDF for Python via .NET usando a fachada PdfFileStamp. Ele mostra como adicionar um cabeçalho de texto, inserir um cabeçalho de imagem e aplicar margens de cabeçalho personalizadas antes de salvar o PDF atualizado.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/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.
+
+```python
+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.
+
+```python
+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.
+
+```python
+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()
+```
diff --git a/pt/python-net/working-with-facades/pdffilestamp/add-page-number/_index.md b/pt/python-net/working-with-facades/pdffilestamp/add-page-number/_index.md
new file mode 100644
index 0000000000..9d4667197c
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilestamp/add-page-number/_index.md
@@ -0,0 +1,122 @@
+---
+title: Adicionar número de página ao PDF
+type: docs
+weight: 30
+url: /pt/python-net/page-number/
+description: Saiba como adicionar números de página a documentos PDF usando PdfFileStamp em Python.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Adicionar números de página ao PDF em Python
+Abstract: Este artigo explica como adicionar números de página a documentos PDF com Aspose.PDF for Python via .NET usando a fachada PdfFileStamp. Ele mostra como adicionar números de página com o posicionamento padrão, posicioná‑los em coordenadas personalizadas e controlar o alinhamento e as margens.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) fachada para adicionar conteúdo repetido às páginas PDF. Você pode usá-la para inserir números de página com posicionamento padrão, posicioná‑los em coordenadas específicas ou controlar seu alinhamento e margens.
+
+## Adicionar números de página com o posicionamento padrão
+
+Usar `add_page_number()` sem argumentos de posição adicionais quando você deseja que os números de página sejam adicionados na localização padrão. Esta é a maneira mais simples de numerar cada página do documento.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_default(infile: str, outfile: str) -> None:
+ """Add centered page numbers to the bottom of each page."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_page_number("Page #")
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar números de página em coordenadas personalizadas
+
+Use a sobrecarga baseada em coordenadas quando precisar que os números de página apareçam em uma posição X e Y específicas em cada página. Essa abordagem é útil quando o layout do documento requer um posicionamento personalizado.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_at_coordinates(infile: str, outfile: str) -> None:
+ """Add page numbers at explicit X/Y coordinates."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_page_number("Page #", 300, 20)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar números de página com alinhamento e margens
+
+Use a sobrecarga com argumentos de posição e margem quando precisar de mais controle sobre onde os números de página aparecem. Neste exemplo, os números são alinhados à área superior‑direita da página com margens explícitas.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_with_position_and_margins(infile: str, outfile: str) -> None:
+ """Add page numbers using a predefined position and page margins."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.add_page_number(
+ "Page #",
+ pdf_facades.PdfFileStamp.POS_BOTTOM_RIGHT,
+ 10,
+ 10,
+ 10,
+ 10,
+ )
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar numeração de páginas no estilo romano
+
+A função 'add_page_numbers_with_roman_style' mostra como aprimorar um documento PDF adicionando numeração de páginas usando numerais romanos maiúsculos. Ela utiliza a classe PdfFileStamp da Aspose.PDF para aplicar numeração consistente em todas as páginas.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def add_page_numbers_with_roman_style(infile: str, outfile: str) -> None:
+ """Add page numbers with a custom start value and Roman numbering."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+ pdf_stamper.numbering_style = ap.NumberingStyle.NUMERALS_ROMAN_UPPERCASE
+ pdf_stamper.starting_number = 42
+ pdf_stamper.add_page_number("Page #", pdf_facades.PdfFileStamp.POS_UPPER_RIGHT)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
diff --git a/pt/python-net/working-with-facades/pdffilestamp/add-stamp/_index.md b/pt/python-net/working-with-facades/pdffilestamp/add-stamp/_index.md
new file mode 100644
index 0000000000..7cd628f6ca
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdffilestamp/add-stamp/_index.md
@@ -0,0 +1,46 @@
+---
+title: Adicionar Carimbo ao PDF
+type: docs
+weight: 40
+url: /pt/python-net/add-stamp/
+description: Saiba como adicionar um carimbo às páginas PDF usando PdfFileStamp em Python.
+lastmod: "2026-05-18"
+TechArticle: true
+AlternativeHeadline: Adicionar Carimbos de Texto ao PDF em Python
+Abstract: Este artigo explica como adicionar conteúdo de carimbo a documentos PDF com Aspose.PDF for Python via .NET usando a fachada PdfFileStamp. Ele mostra como criar um carimbo, posicioná‑lo na página, controlar a rotação e a opacidade, e salvar o PDF atualizado.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfFileStamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdffilestamp/) fachada para adicionar conteúdo repetido às páginas PDF. Além de cabeçalhos, rodapés e números de página, você pode usá‑la para colocar carimbos baseados em texto em cada página de um documento.
+
+## Adicionar o carimbo ao PDF
+
+Depois que o carimbo é configurado, vincule o PDF de entrada a `PdfFileStamp`, adicione o selo, e salve o arquivo de saída. Isso aplica o selo configurado em todo o documento.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf.facades as pdf_facades
+
+CURRENT_DIR = path.dirname(__file__)
+EXAMPLES_DIR = path.abspath(path.join(CURRENT_DIR, "..", ".."))
+if EXAMPLES_DIR not in sys.path:
+ sys.path.insert(0, EXAMPLES_DIR)
+
+from config import initialize_data_dir, set_license
+
+
+def add_stamp_to_pdf(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image stamp to a PDF file."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
diff --git a/pt/python-net/working-with-facades/pdfviewer/_index.md b/pt/python-net/working-with-facades/pdfviewer/_index.md
new file mode 100644
index 0000000000..9baf8a251f
--- /dev/null
+++ b/pt/python-net/working-with-facades/pdfviewer/_index.md
@@ -0,0 +1,115 @@
+---
+title: Classe PdfViewer
+type: docs
+weight: 135
+url: /pt/python-net/pdfviewer-class/
+description: Aprenda como usar a classe PdfViewer no Aspose.PDF for Python via .NET para decodificar todas as páginas PDF, decodificar uma página específica e inspecionar metadados de PDF relacionados ao visualizador.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+TechArticle: true
+AlternativeHeadline: Decodifique páginas PDF e inspecione dados do visualizador em Python com PdfViewer
+Abstract: Este artigo explica como usar a fachada PdfViewer no Aspose.PDF for Python via .NET para tarefas de decodificação de páginas e inspeção relacionadas ao visualizador. Aprenda como decodificar todas as páginas PDF, renderizar uma página específica e inspecionar propriedades como contagem de páginas, tipo de coordenada e resolução.
+---
+
+Aspose.PDF for Python via .NET fornece o [PdfViewer](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/pdfviewer/) fachada para trabalhar com visualização de PDF e cenários de decodificação de página. Um caso de uso comum é converter páginas de PDF em objetos de imagem que podem então ser salvos no disco.
+
+## Crie um auxiliar PdfViewer reutilizável
+
+Antes de decodificar páginas ou ler propriedades relacionadas ao visualizador, crie um pequeno auxiliar que inicializa e retorna um `PdfViewer` instância. Isso mantém os exemplos abaixo autossuficientes e deixa claro como o objeto visualizador é criado antes de ser associado a um documento PDF.
+
+```python
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+
+def _create_viewer() -> pdf_facades.PdfViewer:
+ """Create a PdfViewer configured for decoding examples."""
+ viewer = pdf_facades.PdfViewer()
+ viewer.coordinate_type = ap.PageCoordinateType.MEDIA_BOX
+ viewer.resolution = 150
+ viewer.scale_factor = 1.0
+ viewer.show_hidden_areas = False
+ return viewer
+```
+
+## Decodificar todas as páginas PDF
+
+usar `decode_all_pages()` quando você deseja converter cada página do PDF em uma imagem separada. As imagens das páginas retornadas podem então ser salvas uma a uma em um diretório de saída.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def decode_all_pages(infile: str, output_dir: str) -> None:
+ """Decode all pages of a PDF document into image files."""
+ viewer = _create_viewer()
+ try:
+ viewer.open_pdf_file(infile)
+ decoded_pages = viewer.decode_all_pages()
+
+ for index, page_image in enumerate(decoded_pages, start=1):
+ image_path = path.join(output_dir, f"decode_all_pages_{index}.png")
+ page_image.save(image_path)
+ finally:
+ viewer.close_pdf_file()
+```
+
+## Decodificar uma página PDF específica
+
+usar `decode_page()` quando você precisa de apenas uma página do documento. Isso é útil ao gerar pré-visualizações, miniaturas ou exportações específicas de página.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def decode_specific_page(infile: str, outfile: str, page_number: int = 1) -> None:
+ """Decode a specific PDF page into an image file."""
+ viewer = _create_viewer()
+ try:
+ viewer.bind_pdf(infile)
+ page_image = viewer.decode_page(page_number)
+ page_image.save(outfile)
+
+ finally:
+ viewer.close()
+```
+
+## Inspecionar Metadados do PDF
+
+O `inspect_pdf_metadata` A função demonstra como abrir um documento PDF e recuperar metadados básicos relacionados ao visualizador usando o Aspose.PDF. Ela se concentra em extrair informações que descrevem como o documento é interpretado e exibido, em vez de seu conteúdo.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+
+from config import initialize_data_dir, set_license
+
+
+def inspect_pdf_metadata(infile: str) -> None:
+ """Open a PDF and print page-count related viewer metadata."""
+ viewer = _create_viewer()
+ try:
+ viewer.open_pdf_file(infile)
+ print(f"Page count: {viewer.page_count}")
+ print(f"Coordinate type: {viewer.coordinate_type}")
+ print(f"Resolution: {viewer.resolution}")
+ finally:
+ viewer.close_pdf_file()
+```
diff --git a/pt/python-net/working-with-facades/stamp/_index.md b/pt/python-net/working-with-facades/stamp/_index.md
new file mode 100644
index 0000000000..7d7227ad85
--- /dev/null
+++ b/pt/python-net/working-with-facades/stamp/_index.md
@@ -0,0 +1,228 @@
+---
+title: Classe Stamp
+type: docs
+weight: 150
+url: /pt/python-net/stamp-class/
+description: Aprenda a trabalhar com a classe Stamp para adicionar carimbos de imagem, PDF e baseados em texto a documentos PDF em Python.
+lastmod: "2026-05-18"
+sitemap:
+ changefreq: "weekly"
+ priority: 0.7
+---
+
+Aspose.PDF for Python via .NET fornece o [Stamp](https://reference.aspose.com/pdf/python-net/aspose.pdf.facades/stamp/) classe para colocar conteúdo visual reutilizável em páginas PDF. Uma marca pode ser baseada em texto, uma imagem ou até mesmo uma página de outro PDF, e pode ser posicionada, girada, estilizada e limitada a páginas específicas.
+
+Este artigo demonstra vários fluxos de trabalho comuns de carimbo:
+
+1. Criar recursos de texto reutilizáveis para carimbos baseados em texto.
+1. Adicionar carimbos de imagem e de página PDF.
+1. Adicionar carimbos de texto estilizados.
+1. Limite um carimbo a páginas selecionadas.
+1. Configure um carimbo de imagem de fundo.
+
+O exemplo usa duas funções auxiliares: uma cria texto formatado para carimbos baseados em texto, e a outra cria um `TextState` objeto usado para estilizar carimbos de texto.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def _create_text_logo(text: str) -> pdf_facades.FormattedText:
+ """Create formatted text for text stamp examples."""
+ return pdf_facades.FormattedText(
+ text,
+ drawing.Color.blue,
+ drawing.Color.light_gray,
+ pdf_facades.FontStyle.HELVETICA_BOLD,
+ pdf_facades.EncodingType.WINANSI,
+ True,
+ 14,
+ )
+
+
+def _create_text_state() -> ap.text.TextState:
+ """Create a text state used to style text stamps."""
+ text_state = ap.text.TextState()
+ text_state.foreground_color = ap.Color.dark_blue
+ text_state.font_size = 16
+ text_state.font_style = ap.text.FontStyles.BOLD
+ return text_state
+```
+
+## Adicionar um carimbo de imagem
+
+Usar `bind_image()` quando o carimbo deve exibir uma imagem, como um logotipo, emblema ou ícone. Depois de vincular a imagem, você pode definir o ID do carimbo e a origem antes de adicioná-lo ao documento.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_image_stamp(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image stamp to the PDF."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+ stamp.stamp_id = 1
+ stamp.set_origin(36, 520)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar uma página PDF como carimbo
+
+Usar `bind_pdf()` quando você deseja usar uma página de outro arquivo PDF como o conteúdo do selo. Isso é útil para sobreposições, como aprovações, modelos ou elementos visuais pré-construídos armazenados em um documento separado.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_pdf_page_as_stamp(infile: str, stamp_pdf: str, outfile: str) -> None:
+ """Add the first page of another PDF as a stamp."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_pdf(stamp_pdf, 1)
+ stamp.page_number = 1
+ stamp.set_origin(36, 250)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar um carimbo de texto com estado de texto
+
+Usar `bind_logo()` junto com `bind_text_state()` quando você deseja criar um selo baseado em texto com estilo de fonte personalizado. Esta abordagem é útil para marcas de aprovação, rótulos e anotações específicas de fluxo de trabalho.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_text_stamp_with_text_state(infile: str, outfile: str) -> None:
+ """Add a text stamp and style it with a TextState object."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_logo(_create_text_logo("Approved by signing workflow"))
+ stamp.bind_text_state(_create_text_state())
+ stamp.set_origin(36, 700)
+ stamp.rotation = 15.0
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar um carimbo a páginas específicas
+
+Se o carimbo não deve aparecer em todas as páginas, atribua os números das páginas de destino a `pages` propriedade. Este exemplo adiciona um carimbo de imagem apenas na primeira página.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_stamp_to_specific_pages(infile: str, image_file: str, outfile: str) -> None:
+ """Add an image stamp only to the selected pages."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+ stamp.pages = [1]
+ stamp.set_origin(400, 40)
+ stamp.set_image_size(120, 60)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Adicionar um carimbo de imagem de fundo
+
+Use um carimbo de fundo quando a imagem deve aparecer atrás do conteúdo da página. Você também pode controlar a opacidade, rotação, qualidade, tamanho e posição do carimbo para criar efeitos no estilo de marca d'água.
+
+```python
+import sys
+from os import path
+
+import aspose.pdf as ap
+import aspose.pdf.facades as pdf_facades
+import aspose.pydrawing as drawing
+
+from config import initialize_data_dir, set_license
+
+
+def add_background_image_stamp(infile: str, image_file: str, outfile: str) -> None:
+ """Add a rotated background image stamp with opacity and quality settings."""
+ pdf_stamper = pdf_facades.PdfFileStamp()
+ try:
+ pdf_stamper.bind_pdf(infile)
+
+ stamp = pdf_facades.Stamp()
+ stamp.bind_image(image_file)
+ stamp.is_background = True
+ stamp.opacity = 0.35
+ stamp.quality = 90
+ stamp.rotation = 45.0
+ stamp.set_image_size(160, 80)
+ stamp.set_origin(200, 300)
+
+ pdf_stamper.add_stamp(stamp)
+ pdf_stamper.save(outfile)
+ finally:
+ pdf_stamper.close()
+```
+
+## Tópicos Relacionados a Facades
+
+- [Trabalhando com Fachadas PDF em Python](/pdf/pt/python-net/working-with-facades/)
+- [Adicione cabeçalhos, rodapés e carimbos com PdfFileStamp](/pdf/pt/python-net/pdffilestamp-class/)
+- [Adicionar um carimbo de página a arquivos PDF em Python](/pdf/pt/python-net/add-stamp/)
diff --git a/ru/python-net/advanced-operations/_index.md b/ru/python-net/advanced-operations/_index.md
index 72724cdca6..a344402434 100644
--- a/ru/python-net/advanced-operations/_index.md
+++ b/ru/python-net/advanced-operations/_index.md
@@ -1,93 +1,35 @@
---
-title: Advanced operations
-linktitle: Advanced operations
+title: Расширенные операции
+linktitle: Расширенные операции
type: docs
weight: 90
url: /ru/python-net/advanced-operations/
-description: Aspose.PDF for Python via .NET может выполнять простые и легкие задачи, а также справляться с более сложными целями. Ознакомьтесь со следующим разделом для продвинутых пользователей и разработчиков.
-lastmod: "2023-04-17"
+description: Aspose.PDF for Python via .NET может выполнять простые и лёгкие задачи и справляться с более сложными целями. Ознакомьтесь с следующим разделом для продвинутых пользователей и разработчиков.
+lastmod: "2025-02-27"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Раздел «Расширенные операции» с Python
+Abstract: Раздел «Расширенные операции» предоставляет всестороннее руководство по программной работе с существующими PDF‑файлами, независимо от их происхождения, с использованием различных инструментов и методов. Этот раздел расширяет базовые навыки, обсуждаемые в разделе «Basic Operations», исследуя расширенные функции.
---
-
-
-**Расширенные операции** — это раздел о том, как программно работать с существующими PDF-файлами, будь то документы, созданные с помощью Aspose.PDF, как обсуждалось в [Основных операциях](/pdf/ru/python-net/basic-operations/), или PDF, созданные с помощью Adobe Acrobat, Google Docs, Microsoft Office, Open Office или любого другого средства создания PDF.
+**Advanced Operations** — это раздел, посвящённый тому, как программно работать с существующими PDF‑файлами, будь то документы, созданные с помощью Aspose.PDF, как обсуждалось в [Базовые операции](/pdf/ru/python-net/basic-operations/), или PDF, созданные в Adobe Acrobat, Google Docs, Microsoft Office, Open Office или любом другом PDF‑производителе.
Вы узнаете разные способы:
-- [Работа с документами](/pdf/ru/python-net/working-with-documents/) - сжимать, разделять и объединять документы и выполнять другие операции с целым документом.
-- [Работа с страницами](/pdf/ru/python-net/working-with-pages/) - добавлять, перемещать или удалять, обрезать страницы, добавлять водяные знаки, штампы и т.д.
-- [Работа с изображениями](/pdf/ru/python-net/working-with-images/) - добавлять, извлекать или удалять изображения из PDF-документов.
+- [Работа с документами](/pdf/ru/python-net/working-with-documents/) - сжимать, разбивать и объединять документы, а также выполнять другие операции с полным документом.
+- [Работа со страницами](/pdf/ru/python-net/working-with-pages/) - добавлять, перемещать или удалять, обрезать страницы, добавлять водяные знаки, штампы и т.д.
+- [Работа с изображениями](/pdf/ru/python-net/working-with-images/) - добавить, извлечь или удалить изображения из PDF‑документов.
- [Вложения](/pdf/ru/python-net/attachments/) - вы узнаете, как программно добавлять и удалять вложения из PDF с помощью Python.
-- [Навигация и взаимодействие](/pdf/ru/python-net/navigation-and-interaction/) - работать с действиями, закладками, навигацией по страницам.
-- [Аннотации](/pdf/ru/python-net/annotations/) - аннотации позволяют пользователям добавлять пользовательский контент на страницы PDF.
- Вы можете добавлять, удалять и изменять аннотации в PDF-документах.
-- [Работа с таблицами](/pdf/ru/python-net/working-with-tables/) - вставка, оформление таблиц в PDF, извлечение табличных данных.
-- [Работа с формами](/pdf/ru/python-net/working-with-forms/) - работа с интерактивными PDF-документами, добавление полей форм, извлечение данных.
-- [Работа с текстом](/pdf/ru/python-net/working-with-text/) - добавление, форматирование, поиск и замена текста в PDF.
\ No newline at end of file
+- [Навигация и взаимодействие](/pdf/ru/python-net/navigation-and-interaction/) - работать с действиями, закладками, перемещаться по страницам.
+- [Аннотации](/pdf/ru/python-net/annotations/) - аннотации позволяют пользователям добавлять пользовательский контент на страницы PDF. Вы можете добавлять, удалять и изменять аннотации в PDF‑документах.
+- [Работа с таблицами](/pdf/ru/python-net/working-with-tables/) - вставлять, оформлять таблицы в PDF, извлекать табличные данные.
+- [Работа с формами](/pdf/ru/python-net/working-with-forms/) - работать с интерактивными PDF‑документами, добавлять поля форм, извлекать данные.
+- [Работа с текстом](/pdf/ru/python-net/working-with-text/) - добавлять, форматировать, искать и заменять текст в PDF.
+- [Сравнение PDF документов](/pdf/ru/python-net/compare-pdf-documents/) - возможно сравнивать содержимое PDF документов.
+- [Метаданные в PDFs](/pdf/ru/python-net/pdf-file-metadata/) - получать или задавать метаданные в документах, работать с данными XMP.
+- [Работа с графиками](/pdf/ru/python-net/working-with-graphs/) - манипулировать формами на странице.
+- [Работа с операторами](/pdf/ru/python-net/working-with-operators/) - выполнять низкоуровневые операции в PDF.
+- [Артефакты](/pdf/ru/python-net/artifacts/) - работать с водяными знаками и другими специальными объектами в PDF.
+- [Работа со слоями PDF](/python-net/work-with-pdf-layers/) - блокировать уровни, извлекать элементы, уплощать и объединять уровни PDF.
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
index fc66d3b36b..a9304ded81 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/interactive-annotations/_index.md
@@ -326,5 +326,5 @@ def print_button_add(infile, outfile):
- [Медиа аннотации](/python-net/media-annotations/)
- [Аннотации безопасности](/python-net/security-annotations/)
- [Фигурные аннотации](/python-net/shape-annotations/)
-- [Текстовые аннотации](/python-net/text-based-Annotations/)
+- [Текстовые аннотации](/python-net/text-based-annotations/)
- [Аннотации водяного знака](/python-net/watermark-annotations/)
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
index a7e3232307..db6c56b91d 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/markup-annotations/_index.md
@@ -497,3 +497,12 @@ def replace_annotations_delete(infile, outfile):
document.save(outfile)
```
+
+## Связанные темы
+
+- [Импорт и экспорт аннотаций](/python-net/import-export-annotations/)
+- [Медиа аннотации](/python-net/media-annotations/)
+- [Аннотации безопасности](/python-net/security-annotations/)
+- [Фигурные аннотации](/python-net/shape-annotations/)
+- [Текстовые аннотации](/python-net/text-based-annotations/)
+- [Аннотации водяного знака](/python-net/watermark-annotations/)
\ No newline at end of file
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
index 5a5f2ee8ed..994f797dd9 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/media-annotations/_index.md
@@ -495,5 +495,5 @@ def multimedia_annotations_get(infile, outfile):
- [Разметочные аннотации](/python-net/markup-annotations/)
- [Аннотации безопасности](/python-net/security-annotations/)
- [Фигурные аннотации](/python-net/shape-annotations/)
-- [Аннотации на основе текста](/python-net/text-based-Annotations/)
+- [Аннотации на основе текста](/python-net/text-based-annotations/)
- [Аннотации водяных знаков](/python-net/watermark-annotations/)
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
index 20db54dc9c..caf73bec6f 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/security-annotations/_index.md
@@ -210,5 +210,5 @@ def redact_area(infile, outfile):
- [Разметка аннотаций](/python-net/markup-annotations/)
- [Медиа аннотации](/python-net/media-annotations/)
- [Фигурные аннотации](/python-net/shape-annotations/)
-- [Текстовые аннотации](/python-net/text-based-Annotations/)
+- [Текстовые аннотации](/python-net/text-based-annotations/)
- [Аннотации водяного знака](/python-net/watermark-annotations/)
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
index ff8c54c1b2..9226d93227 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/shape-annotations/_index.md
@@ -714,5 +714,5 @@ def polyline_annotation_delete(infile, outfile):
- [Разметка аннотаций](/python-net/markup-annotations/)
- [Медиа аннотации](/python-net/media-annotations/)
- [Аннотации безопасности](/python-net/security-annotations/)
-- [Текстовые аннотации](/python-net/text-based-Annotations/)
+- [Текстовые аннотации](/python-net/text-based-annotations/)
- [Аннотации водяного знака](/python-net/watermark-annotations/)
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
index 9a73d4b0f9..d39e128ddb 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/text-based-annotations/_index.md
@@ -3,7 +3,7 @@ title: Текстовые аннотации с использованием Pyt
linktitle: Текстовые аннотации
type: docs
weight: 10
-url: /ru/python-net/text-based-Annotations/
+url: /ru/python-net/text-based-annotations/
description: Узнайте, как добавлять, просматривать и удалять аннотации свободного текста, выделения, подчеркивания, волнистого подчеркивания и зачёркивания в PDF‑документах с использованием Aspose.PDF for Python via .NET.
lastmod: "2026-04-30"
sitemap:
diff --git a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
index daa1430d51..60b149ba09 100644
--- a/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/add-delete-and-get-annotation/watermark-annotations/_index.md
@@ -183,4 +183,4 @@ def watermark_delete(infile, outfile):
- [Медиа-аннотации](/python-net/media-annotations/)
- [Аннотации безопасности](/python-net/security-annotations/)
- [Фигурные аннотации](/python-net/shape-annotations/)
-- [Текстовые аннотации](/python-net/text-based-Annotations/)
+- [Текстовые аннотации](/python-net/text-based-annotations/)
diff --git a/ru/python-net/advanced-operations/annotations/import-export-annotations/_index.md b/ru/python-net/advanced-operations/annotations/import-export-annotations/_index.md
index 2c35bad8e4..02eb95518b 100644
--- a/ru/python-net/advanced-operations/annotations/import-export-annotations/_index.md
+++ b/ru/python-net/advanced-operations/annotations/import-export-annotations/_index.md
@@ -98,5 +98,5 @@ def import_export(infile, outfile):
- [Медиа‑аннотации](/python-net/media-annotations/)
- [Аннотации безопасности](/python-net/security-annotations/)
- [Фигурные аннотации](/python-net/shape-annotations/)
-- [Текстовые аннотации](/python-net/text-based-Annotations/)
+- [Текстовые аннотации](/python-net/text-based-annotations/)
- [Аннотации водяных знаков](/python-net/watermark-annotations/)
diff --git a/ru/python-net/basic-operations/merge-pdf/_index.md b/ru/python-net/basic-operations/merge-pdf/_index.md
index 8eb828036b..98aeca962f 100644
--- a/ru/python-net/basic-operations/merge-pdf/_index.md
+++ b/ru/python-net/basic-operations/merge-pdf/_index.md
@@ -3,7 +3,7 @@ title: Объединение PDF-файлов в Python
linktitle: Объединение PDF-файлов
type: docs
weight: 50
-url: /ru/python-net/merge-pdf-documents/
+url: /ru/python-net/merge-pdf/
description: Узнайте, как объединить несколько PDF-файлов в один документ в Python.
lastmod: "2026-04-15"
sitemap:
diff --git a/ru/python-net/basic-operations/split-pdf/_index.md b/ru/python-net/basic-operations/split-pdf/_index.md
index cd27ee9d9b..a8cea6d9c2 100644
--- a/ru/python-net/basic-operations/split-pdf/_index.md
+++ b/ru/python-net/basic-operations/split-pdf/_index.md
@@ -3,7 +3,7 @@ title: Разделить PDF-файлы в Python
linktitle: Разделить PDF-файлы
type: docs
weight: 60
-url: /ru/python-net/split-pdf-document/
+url: /ru/python-net/split-pdf/
description: Узнайте, как разделить страницы PDF на отдельные PDF-файлы в Python.
lastmod: "2026-04-15"
sitemap:
diff --git a/ru/python-net/get-started/_index.md b/ru/python-net/get-started/_index.md
index 29d7d55733..7a9d3ccfcb 100644
--- a/ru/python-net/get-started/_index.md
+++ b/ru/python-net/get-started/_index.md
@@ -1,50 +1,51 @@
---
-title: Get Started
-linktitle: Get Started
+title: Начало работы
+linktitle: Начало работы
type: docs
weight: 30
url: /ru/python-net/get-started/
-description: Этот раздел описывает основные принципы работы Aspose.PDF for Python via .NET. Библиотека Python поддерживает широкий спектр функций.
+description: Узнайте, как начать работу с Aspose.PDF for Python via .NET для создания, редактирования, преобразования, проверки и извлечения содержимого из PDF‑документов.
is_node: true
-lastmod: "2022-12-20"
+lastmod: "2026-04-14"
sitemap:
changefreq: "monthly"
priority: 0.7
---
-## Что такое PDF файл?
+## Что такое PDF‑файл?
-PDF был создан Adobe в 1990-х годах для достижения двух целей. Первая заключается в том, что вы должны иметь возможность открывать документы на любом оборудовании или операционной системе, без необходимости иметь приложение, использованное для их создания — все, что вам нужно, это PDF-ридер, и в наши дни большинство веб-браузеров справляются с этой задачей. Вторая заключается в том, что где бы вы ни открыли PDF, макет документа должен выглядеть одинаково.
+PDF был создан компанией Adobe в 1990‑х годах с целью достичь двух задач. Первая — вы должны быть в состоянии открыть документы на любом оборудовании или операционной системе, не требуя наличия приложения, использованного для их создания; всё, что нужно, — это PDF‑читалка, и в наши дни большинство веб‑браузеров подходят для этой задачи. Вторая — независимо от того, где вы открываете PDF, макет документа должен выглядеть одинаково.
-Однако, недостаточно просто открыть ваш документ. Работая с PDF, вы столкнетесь с необходимостью создать такой документ заново, отредактировать его или преобразовать в нужный вам формат.
+Aspose.PDF for Python via .NET помогает вам выйти за пределы простого открытия PDF‑файлов. Вы можете использовать библиотеку для создания PDF‑документов с нуля, редактирования существующих документов, извлечения содержимого, проверки соответствия стандартам и преобразования PDF‑файлов в другие форматы в приложениях Python.
-## Почему использовать Aspose.PDF for Python via .NET?
+## Зачем использовать Aspose.PDF for Python via .NET?
-Использование Aspose.PDF for Python via .NET в вашем проекте дает вам следующие преимущества:
+Использование Aspose.PDF for Python via .NET в вашем проекте дает следующие преимущества:
-- широкий спектр функций
-- на основе Aspose.PDF для .NET
-- удобство и простота использования
+- Широкий набор функций обработки PDF
+- Доступ к проверенному движку Aspose.PDF for .NET из Python
+- Практический API для общих задач создания, редактирования, анализа и конвертации документов
-## Широкий спектр функций
+## Общие задачи PDF, которые вы можете автоматизировать
-- Поддерживает большинство устоявшихся стандартов PDF и спецификаций PDF.
-- [Добавление, поиск, извлечение и замена текста в PDF-файлах]().
-- [Добавление/удаление, извлечение и замена изображений]().
-- [Вставка, удаление, разбиение страниц PDF]().
-- [Установка и получение XMP метаданных]().
-- [Валидация (PDF/A-1a, PDF/A-1b)]().
-- Работа с [закладками](), [аннотациями](), [формами PDF](), [штампами](), [водяными знаками]() и многим другим.
+- Поддержка широко используемых стандартов и спецификаций PDF
+- [Добавлять, искать, извлекать и заменять текст в PDF‑файлах](/pdf/ru/python-net/working-with-text/)
+- [Добавлять, удалять, извлекать и заменять изображения](/pdf/ru/python-net/working-with-images/)
+- [Вставлять, удалять, извлекать и управлять страницами PDF](/pdf/ru/python-net/working-with-pages/)
+- [Устанавливать и сохранять метаданные XMP](/pdf/ru/python-net/save-metadata-with-xmp/)
+- [Проверять PDF‑документы на соответствие PDF/A‑1a и PDF/A‑1b](/pdf/ru/python-net/manipulate-pdf-document/)
+- Работать с [закладки](/pdf/ru/python-net/bookmarks/), [аннотации](/pdf/ru/python-net/annotations/), [PDF-формы](/pdf/ru/python-net/working-with-forms/), [штампы](/pdf/ru/python-net/stamping/), и [водяные знаки](/pdf/ru/python-net/add-watermarks/)
-## Функции конвертации
+## Функции преобразования Document
-- [Конвертация PDF в Word, Excel и PowerPoint](/pdf/ru/python-net/convert-pdf-to-word/).
-- [Конвертация PDF в форматы изображений](/pdf/ru/python-net/convert-pdf-to-images-format/).
-- [Конвертация PDF в формат HTML и обратно](/pdf/ru//python-net/convert-pdf-to-html/).
-- [Конвертация PDF в EPUB, текст, XPS и др.](/pdf/ru/python-net/convert-pdf-to-other-files/).
-- Конвертация EPUB, Markdown, текст, XPS, PostScript, XML, LaTex в PDF
+- [Преобразовать PDF в Word, Excel и PowerPoint](/pdf/ru/python-net/convert-pdf-to-word/).
+- [Преобразовать PDF в форматы изображений](/pdf/ru/python-net/convert-pdf-to-images-format/).
+- [Преобразовать файлы PDF в HTML и преобразовать HTML в PDF](/pdf/ru/python-net/convert-pdf-to-html/).
+- [Преобразовать PDF в EPUB, Text, XPS и т.д.](/pdf/ru/python-net/convert-pdf-to-other-files/).
+- [Преобразовать EPUB, Markdown, Text, XPS, PostScript, XML, LaTex в PDF](/pdf/ru/python-net/convert-other-files-to-pdf/)
-### Узнайте больше о:
+## Начните с этих руководств
+
+- ["Hello, World" пример на Python](/pdf/ru/python-net/hello-world-example/)
+- [Создайте сложный PDF‑документ](/pdf/ru/python-net/complex-pdf-example/)
-- [Пример "Hello, World" на Python](/pdf/ru/python-net/hello-world-example/)
-- [Сложный PDF](/pdf/ru/python-net/complex-pdf-example/)
\ No newline at end of file
diff --git a/ru/python-net/overview/_index.md b/ru/python-net/overview/_index.md
index c52f3b7cca..f117c980ff 100644
--- a/ru/python-net/overview/_index.md
+++ b/ru/python-net/overview/_index.md
@@ -1,39 +1,41 @@
---
-title: Overview
-linktitle: Overview
+title: Обзор
+linktitle: Обзор
type: docs
weight: 20
url: /ru/python-net/overview/
-lastmod: "2022-12-20"
+lastmod: "2025-02-20"
description: Обзор ключевых функций и поддерживаемых форматов Aspose.PDF for Python via .NET, руководство по установке и лицензированию библиотеки.
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Обзор ключевых функций Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET является комплексным API для обработки PDF, разработанным для разработчиков, позволяющим работать с PDF‑документами без необходимости использования Microsoft Office или автоматизации Adobe Acrobat. Библиотека поддерживает широкий спектр функций, включая соответствие установленным стандартам и спецификациям PDF, возможность чтения и экспорта PDF в различных графических форматах, таких как BMP, GIF, JPEG и PNG, а также возможность задавать базовую информацию о документе, например автора и создателя. Она также позволяет настраивать свойства страниц PDF, такие как ширина, высота, cropbox и bleedbox, а также функции, такие как нумерация страниц, уровни закладок и размеры страниц. Пользователи могут манипулировать текстом, абзацами, заголовками, гиперссылками, графиками и вложениями в PDF. Кроме того, Aspose.PDF for Python предоставляет эффективные возможности конвертации из форматов, таких как EPUB, Markdown, Text, XPS, PostScript, XML и LaTex в PDF и обратно, обеспечивая высокую производительность и качество.
---
-_Эта страница представляет собой обзор функций Aspose.PDF для Python._
+_Эта страница представляет обзор функций Aspose.PDF for Python._
-**Aspose.PDF for Python via .NET**, API обработки PDF, который позволяет разработчикам работать с PDF-документами без необходимости в Microsoft Office® или Adobe Acrobat Automation. Ознакомьтесь с целевыми страницами [Aspose.PDF для Python](https://products.aspose.com/pdf/python-net/) для более детального описания функций и возможностей библиотеки.
+**Aspose.PDF for Python via .NET**, API обработки PDF, позволяющий разработчикам работать с PDF‑документами без необходимости использовать Microsoft Office® или автоматизацию Adobe Acrobat. Посмотрите целевые страницы [Aspose.PDF for Python](https://products.aspose.com/pdf/python-net/) для более подробного описания функций и возможностей библиотеки.
-Aspose.PDF для Python поддерживает широкий спектр функций, таких как:
+Aspose.PDF for Python поддерживает широкий набор функций, таких как:
-- Поддержка большинства установленных стандартов PDF и спецификаций PDF.
-- Возможность чтения и экспорта PDF в нескольких форматах изображений, включая BMP, GIF, JPEG и PNG.
-- Установка базовой информации (например.
- author, creator) PDF документа.
-- Настройка свойств страницы PDF (например, ширина, высота, cropbox, bleedbox и т.д.).
-- Установка нумерации страниц, уровня закладок, размеров страниц и т.д.
-- Возможность работы с текстом, абзацами, заголовками, гиперссылками, графиками, вложениями и т.д.
+- Поддерживает большинство установленных стандартов PDF и спецификаций PDF.
+- Возможность читать и экспортировать PDF в нескольких графических форматах, включая BMP, GIF, JPEG и PNG.
+- Установить базовую информацию (например, автор, создатель) PDF‑документа.
+- Настроить свойства страницы PDF (например, ширина, высота, cropbox, bleedbox и т.д.).
+- Установить нумерацию страниц, уровень закладок, размеры страниц и т.п.
+- Возможность работать с текстом, абзацами, заголовками, гиперссылками, графиками, вложениями и т.д.
-Кроме того, Aspose.PDF for Python via .NET может быть использован для легкого преобразования EPUB, Markdown, Text, XPS, PostScript, XML, LaTex в PDF и конвертации PDF в различные форматы документов с отличной производительностью и хорошим качеством.
+Кроме того, Aspose.PDF for Python via .NET можно использовать для простого преобразования EPUB, Markdown, Text, XPS, PostScript, XML, LaTex в PDF и конвертации PDF в различные форматы документов с отличной производительностью и хорошим качеством.
-Попробуйте наши [Бесплатные Онлайн Приложения](https://products.aspose.app/pdf/applications), демонстрирующие некоторые из самых популярных функций Aspose.PDF.
+Попробуйте наши [онлайн приложения](https://products.aspose.app/pdf/applications) которые демонстрируют некоторые из самых популярных функций Aspose.PDF.
-Узнайте больше о:
+Узнать больше о:
-- [Поддерживаемые Форматы Файлов](/pdf/ru/python-net/supported-file-formats/)
-- [Ключевые Особенности Aspose.PDF](/pdf/ru/python-net/key-features/)
-- [Системные Требования](/pdf/ru/python-net/system-requirements/)
+- [Поддерживаемые форматы файлов](/pdf/ru/python-net/supported-file-formats/)
+- [Ключевые возможности Aspose.PDF](/pdf/ru/python-net/key-features/)
+- [Системные требования](/pdf/ru/python-net/system-requirements/)
- [Установка](/pdf/ru/python-net/installation/)
- [Лицензирование](/pdf/ru/python-net/licensing/)
-- [Техническая Поддержка](/pdf/ru/python-net/technical-support/)
\ No newline at end of file
+- [Техническая поддержка](/pdf/ru/python-net/technical-support/)
diff --git a/ru/python-net/overview/installation/_index.md b/ru/python-net/overview/installation/_index.md
index 8423e3d6bb..6c5d3f4c2d 100644
--- a/ru/python-net/overview/installation/_index.md
+++ b/ru/python-net/overview/installation/_index.md
@@ -1,45 +1,51 @@
---
-title: How to Install Aspose.PDF for Python
-linktitle: Installation
+title: Как установить Aspose.PDF для Python
+linktitle: Установка
type: docs
weight: 40
url: /ru/python-net/installation/
-description: В этом разделе представлено описание продукта и инструкции по установке Aspose.PDF для Python.
-lastmod: "2022-12-21"
+description: Найдите пошаговые инструкции по установке Aspose.PDF для Python и .NET, чтобы начать работу с PDF‑документами.
+lastmod: "2025-02-21"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Установка Aspose.PDF для Python
+Abstract: Aspose.PDF for Python via .NET — это комплексная библиотека, предназначенная для интеграции возможностей обработки PDF в Python‑приложения, совместимая как с 32‑битными, так и с 64‑битными системами. Эта библиотека поддерживает широкий спектр задач обработки документов, включая манипуляцию текстом и страницами, обработку форм, работу с метаданными, а также управление аннотациями, закладками, водяными знаками и пользовательскими шрифтами. Она подходит для использования на различных операционных системах, где установлен Python версии 3.5 или новее. Библиотеку можно оценить, загрузив trial‑версию, которая переходит в лицензированное состояние после добавления соответствующего кода. Trial‑версия сохраняет полный функционал, но содержит оценочный водяной знак и ограничивает взаимодействие с элементами коллекций до четырёх. Пользователи могут запросить временную лицензию на 30 дней, чтобы обойти эти ограничения. Aspose.PDF for Python via .NET можно установить через pip, обеспечивая простой доступ к последним версиям.
---
{{% alert color="primary" %}}
-**Aspose.PDF for Python via .NET** — это библиотека, которая позволяет разработчикам добавлять возможности обработки PDF в свои приложения. API может использоваться для создания 32-битных и 64-битных приложений для генерации, чтения, преобразования и управления PDF-файлами без использования Adobe Acrobat.
+**Aspose.PDF for Python via .NET** — это библиотека, позволяющая разработчикам добавлять возможности работы с PDF в свои приложения. API можно использовать для создания 32‑разрядных и 64‑разрядных приложений для генерации, чтения, конвертации и манипулирования PDF‑файлами без использования Adobe Acrobat.
{{% /alert %}}
## Описание продукта
-**Aspose.PDF for Python** позволяет выполнять ряд задач по обработке документов, таких как обработка форм, получение и установка метаданных, манипуляции с текстом и страницами, управление аннотациями, добавление или удаление закладок и водяных знаков, вложения, работа с пользовательскими шрифтами и многое другое.
+**Aspose.PDF for Python** позволяет выполнять широкий спектр задач обработки документов, таких как обработка форм, получение и установка метаданных, манипуляции с текстом и страницами, управление аннотациями, добавление или удаление закладок и водяных знаков, вложения, работа с пользовательскими шрифтами и многое другое.
- **Aspose.PDF для Python** можно использовать для разработки 32-битных и 64-битных приложений Python для различных операционных систем (таких как Windows и Linux), где установлена версия Python 3.5 или выше.
+**Aspose.PDF for Python** может использоваться для разработки 32‑разрядных и 64‑разрядных Python‑приложений для различных операционных систем (например, Windows и Linux), где установлен Python версии 3.5 или более поздней.
-# Установка
+## Установка
-## Оценка Aspose.PDF for Python via .NET
+## Оцените Aspose.PDF for Python via .NET
-Вы можете легко скачать Aspose.PDF для Python для оценки. Версия для оценки аналогична купленной версии. Версия для оценки становится лицензированной, когда вы добавляете несколько строк кода для применения лицензии.
+Вы можете легко скачать Aspose.PDF for Python для оценки. Оценочная загрузка такая же, как и покупная загрузка. Оценочная версия просто становится лицензированной, когда вы добавляете несколько строк кода для применения лицензии.
-Вы можете скачать [Aspose.PDF для Python](https://releases.aspose.com/pdf/pythonnet/) для оценки. Версия для оценки аналогична купленной версии. Версия для оценки становится лицензированной, когда вы добавляете несколько строк кода, чтобы [применить лицензию](/pdf/ru/python-net/licensing/).
-
-Версия для оценки Aspose.PDF (без указанной лицензии) предоставляет полную функциональность продукта, но имеет два ограничения: она вставляет водяной знак для оценки, и только четыре элемента любой коллекции могут быть просмотрены/отредактированы.
+Вы можете скачать [Aspose.PDF for Python](https://releases.aspose.com/pdf/pythonnet/) для оценки. Оценочная загрузка такая же, как и покупная загрузка. Оценочная версия становится лицензированной, когда вы добавляете несколько строк кода, чтобы [применить лицензию](/pdf/ru/python-net/licensing/).
+Оценочная версия Aspose.PDF (без указания лицензии) предоставляет полный функционал продукта, но имеет два ограничения: она вставляет оценочный водяной знак и только четыре элемента любой коллекции могут быть просмотрены/отредактированы.
{{% alert color="primary" %}}
-Если вы хотите протестировать Aspose.PDF для Python без ограничений версии для оценки, вы также можете запросить временную лицензию на 30 дней. Пожалуйста, обратитесь к [Как получить временную лицензию?](https://purchase.aspose.com/temporary-license)
+Если вы хотите протестировать Aspose.PDF for Python без ограничений оценочной версии, вы также можете запросить 30‑дневную временную лицензию. Пожалуйста, обратитесь к [Как получить временную лицензию?](https://purchase.aspose.com/temporary-license)
{{% /alert %}}
-## Установка Aspose.PDF for Python via .NET
+## Установка Aspose.PDF for Python через .NET
+
+Вы можете легко использовать aspose-pdf для Python по ссылке для прямой загрузки [pip](https://pypi.org/project/aspose-pdf/).
+Выполните 'pip install aspose-pdf', чтобы загрузить пакет. Если у вас уже установлен Aspose.PDF for Python и вы хотите получить последнюю версию, пожалуйста, выполните 'pip install --upgrade aspose-pdf'.
+
+
-Вы можете легко использовать aspose-pdf для Python, перейдя по ссылке для прямой загрузки [pip](https://pypi.org/project/aspose-pdf/). Запустите 'pip install aspose-pdf', чтобы загрузить пакет. Если у вас уже установлен Aspose.PDF для Python и вы хотите получить последнюю версию, пожалуйста, выполните 'pip install --upgrade aspose-pdf'.
\ No newline at end of file
diff --git a/ru/python-net/overview/key-features/_index.md b/ru/python-net/overview/key-features/_index.md
index 36b83f6d18..223d645ccc 100644
--- a/ru/python-net/overview/key-features/_index.md
+++ b/ru/python-net/overview/key-features/_index.md
@@ -1,53 +1,71 @@
---
-title: Основные функции Aspose.PDF для Python
-linktitle: Основные функции
+title: Основные возможности Aspose.PDF for Python
+linktitle: Основные возможности
type: docs
weight: 20
url: /ru/python-net/key-features/
-description: Aspose.PDF for Python via .NET демонстрирует свои общие функции. Показывает поддерживаемые версии PDF и все манипуляции, которые мы можем делать с PDF.
-lastmod: "2022-12-21"
+description: Aspose.PDF for Python via .NET подчеркивает свои основные возможности, включая поддерживаемые версии PDF и доступные варианты манипулирования PDF.
+lastmod: "2025-02-21"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Общие возможности Aspose.PDF for Python
+Abstract: Aspose.PDF for Python via .NET — это мощная библиотека, предоставляющая обширные возможности для управления и манипулирования PDF‑документами. Она поддерживает установленные стандарты PDF и облегчает чтение и экспорт PDF в различные графические форматы, такие как BMP, GIF, JPEG и PNG. Пользователи могут настраивать свойства документа, атрибуты страниц и управлять текстом, абзацами, гиперссылками, графиками и вложениями. Библиотека превосходит в возможностях конвертации, позволяя без труда преобразовывать PDF в форматы Word, Excel, PowerPoint и HTML, среди прочих, а также конвертировать различные форматы обратно в PDF.
---
-## Общие функции
+## Общие возможности
- Поддерживает большинство установленных стандартов PDF и спецификаций PDF.
-- Возможность чтения и экспорта PDF в нескольких форматах изображений, включая BMP, GIF, JPEG и PNG.
-- Установка основной информации (например, автор, создатель) документа PDF.
-- Настройка свойств страницы PDF (например, ширина, высота, рамка обрезки, рамка вылетов и т. д.).
-- Установка нумерации страниц, уровня закладок, размеров страниц и т. д.
-- Возможность работы с текстом, абзацами, заголовками, гиперссылками, графиками, вложениями и т. д.
+- Возможность читать и экспортировать PDF в нескольких графических форматах, включая BMP, GIF, JPEG и PNG.
+- Установить базовую информацию (например, автор, создатель) PDF‑документа.
+- Настроить свойства страницы PDF (например, ширина, высота, cropbox, bleedbox и т.д.).
+- Установить нумерацию страниц, уровень закладок, размеры страниц и т.п.
+- Возможность работать с текстом, абзацами, заголовками, гиперссылками, графиками, вложениями и т.д.
-## Функции конверсии
+## Поддерживаемые стандарты PDF
-Библиотека Aspose.PDF for Python via .NET позволяет успешно, быстро и легко конвертировать ваши PDF-документы в наиболее популярные форматы и наоборот.
+- ISO 32000-1 (PDF 1.2, PDF 1.3, PDF 1.4, PDF 1.5, PDF 1.6, PDF 1.7).
+- ISO 32000-2 (PDF 2.0).
+- ISO 19005 (PDF/A), ISO 15930 (PDF/X), ISO 24517 (PDF/E), ISO 14289 (PDF/UA).
+
+## Функции конвертации
+
+Библиотека Aspose.PDF for Python via .NET позволяет вам успешно, быстро и легко конвертировать ваши PDF‑документы в самые популярные форматы и обратно.
- Конвертировать PDF в Word, Excel и PowerPoint.
- Конвертировать PDF в форматы изображений.
-- Конвертировать PDF файл в HTML формат и наоборот.
-- Конвертировать PDF в EPUB, текст, XPS и т. д.
-- Конвертировать EPUB, Markdown, текст, XPS, PostScript, XML, LaTex в PDF.
+- Конвертировать PDF‑файл в формат HTML и обратно.
+- Конвертировать PDF в EPUB, Text, XPS и т.д.
+- Конвертировать EPUB, Markdown, Text, XPS, PostScript, XML, LaTex в PDF.
## Поддерживаемые версии PDF
-Aspose.PDF для Python поддерживает версии PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 и 2.0.
+Aspose.PDF for Python поддерживает версии PDF 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 и 2.0.
## Текст
- Извлечь текст со страниц.
-- Искать текст на страницах.
+- Поиск текста на страницах.
- Заменить текст.
- Добавить текст в PDF файл.
+## Шрифты
+
+- 14 базовых шрифтов.
+- Шрифты Type 1.
+- Шрифты TrueType.
+- Шрифты Type 3.
+- Шрифты CJK.
+- Поддержка Unicode.
+
## Изображения
-- Добавить изображение в PDF файл.
+- Добавить изображение в файл PDF.
- Удалить изображения.
- Заменить изображения.
- Извлечь изображения.
-- Конвертация PDF в формат изображения.
+- Преобразование формата PDF в изображение.
## Вложения
@@ -59,39 +77,38 @@ Aspose.PDF для Python поддерживает версии PDF 1.2, 1.3, 1.4
- Вставить страницы PDF.
- Удалить страницы PDF.
- Разделить PDF на отдельные страницы.
-- Перемещение набора страниц из одного PDF документа в другой
-- Перемещение страницы в новое местоположение в текущем PDF документе
+- Перемещение группы страниц из одного PDF‑документа в другой
+- Перемещение страницы в новое место в текущем PDF‑документе
- Изменить размер страницы PDF
- Изменить ориентацию страницы
- Получить свойства страницы
- Получить количество страниц
- Получить количество страниц
-- Получить определенную страницу
-
-## Документ
-
-- Создать PDF файл
-- Открыть существующий PDF документ из потока
-- Открыть существующий PDF документ
-
-- Установка свойств диалогового окна печати
-- Добавить оглавление в существующий PDF
-- Добавить оглавление в существующий PDF
-- Настроить нумерацию страниц при добавлении оглавления
-- Установить срок действия PDF
-- Упрощение заполняемого PDF
-- Оптимизировать PDF-документ для Интернета
+- Получить конкретную страницу
+
+## Document
+
+- Создать PDF-файл
+- Открыть существующий PDF-документ из потока
+- Открыть существующий PDF-документ
+- Настройка предустановленных свойств диалогового окна печати
+- Добавить TOC в существующий PDF
+- Добавить TOC в существующий PDF
+- Настроить номера страниц при добавлении TOC
+- Установить дату истечения срока действия PDF
+- Уплощение заполняемого PDF
+- Оптимизировать PDF‑документ для веба
- Уменьшить размер PDF
-- Сжатие или уменьшение всех изображений
+- Сжатие всех изображений
- Удаление неиспользуемых объектов
-- Удаление дублирующих потоков
+- Связывание дублирующихся потоков
- Удаление неиспользуемых потоков
-- Отключение встраивания шрифтов
-- Получить свойства просмотра документа.
-- Установить свойства просмотра документа.
-- Проверка (PDF/A-1a, PDF/A-1b).
+- Удаление встроенных шрифтов
+- Получить свойства просмотрщика документов.
+- Установить свойства просмотрщика документов.
+- Валидация (PDF/A-1a, PDF/A-1b).
- Удаление полей формы
-- Определение и установка метаданных документов
+- Определить и установить метаданные документов
## Закладки
@@ -116,15 +133,16 @@ Aspose.PDF для Python поддерживает версии PDF 1.2, 1.3, 1.4
- Изменить поля.
- Заполнить поля.
- Получить значения полей.
+- Поддержка XFA (формы на основе XML) и AcroForms (стандартные формы).
## Штамп и водяной знак
- Добавить текстовый штамп.
- Добавить штамп изображения.
-- Добавить штамп страницы PDF.
+- Добавить штамп PDF‑страницы.
-## Открытие зашифрованного документа
+## Открыть зашифрованный PDF-документ
-- Зашифровать PDF.
-- Расшифровать PDF.
+- Зашифровать PDF.
+- Расшифровать PDF.
- Изменить пароль.
diff --git a/ru/python-net/overview/licensing/_index.md b/ru/python-net/overview/licensing/_index.md
index 78734361dd..267d2ccd2f 100644
--- a/ru/python-net/overview/licensing/_index.md
+++ b/ru/python-net/overview/licensing/_index.md
@@ -1,34 +1,36 @@
---
-title: Aspose PDF License
-linktitle: Licensing and limitations
+title: Лицензия Aspose PDF
+linktitle: Лицензирование и ограничения
type: docs
weight: 50
url: /ru/python-net/licensing/
-description: Aspose. PDF для Python приглашает своих клиентов получить классическую лицензию. Также используйте ограниченную лицензию для более детального изучения продукта.
-lastmod: "2022-12-21"
+description: Aspose.PDF for Python приглашает своих клиентов получить Classic лицензию. Также можно использовать ограниченную лицензию, чтобы лучше исследовать продукт.
+lastmod: "2025-02-21"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Лицензирование Aspose.PDF for Python
+Abstract: В статье рассматриваются ограничения и варианты лицензирования Aspose.PDF for Python. Отмечается, что оценочная версия позволяет полностью протестировать функциональность, но добавляет водяной знак к сгенерированным PDF‑файлам, отображающий надпись “Evaluation Only” вместе с информацией об авторских правах. Для пользователей, желающих тестировать без этих ограничений, доступна 30‑дневная временная лицензия. В статье также объясняется, как внедрить классическую лицензию, загрузив её из файла или потока, рекомендуется разместить файл лицензии в той же директории, что и файл Aspose.PDF.dll, и установить лицензию с помощью класса `Aspose.Pdf.License`. Приведены фрагменты кода, демонстрирующие процесс лицензирования.
---
-## Ограничения пробной версии
+## Ограничения оценочной версии
-Мы хотим, чтобы наши клиенты тщательно протестировали наши компоненты перед покупкой, поэтому пробная версия позволяет использовать их, как обычно.
+Мы хотим, чтобы наши клиенты тщательно тестировали наши компоненты перед покупкой, поэтому оценочная версия позволяет использовать её так, как вы обычно делаете.
-- **PDF, созданный с водяным знаком пробной версии.** Пробная версия Aspose.PDF для Python предоставляет полную функциональность продукта, но все страницы в сгенерированных PDF-документах помечены водяным знаком "Только для оценки. Создано с помощью Aspose.PDF. Copyright 2002-2020 Aspose Pty Ltd" вверху.
+- **PDF created with an evaluation watermark.** Оценочная версия Aspose.PDF for Python предоставляет полный функционал продукта, но все страницы в создаваемых PDF‑документах помечены водяным знаком "Evaluation Only. Created with Aspose.PDF. Copyright 2002-2020 Aspose Pty Ltd" в верхней части.
->Если вы хотите протестировать Aspose.PDF без ограничений пробной версии, вы также можете запросить временную лицензию на 30 дней.
- Пожалуйста, обратитесь к [Как получить временную лицензию?](https://purchase.aspose.com/temporary-license)
+>Если вы хотите протестировать Aspose.PDF без ограничений оценочной версии, вы также можете запросить 30‑дневную временную лицензию. Пожалуйста, обратитесь к [Как получить временную лицензию?](https://purchase.aspose.com/temporary-license)
## Классическая лицензия
-Лицензию можно загрузить из файла или объекта потока. Самый простой способ установить лицензию — поместить файл лицензии в ту же папку, что и файл Aspose.PDF.dll, и указать имя файла без пути, как показано в примере ниже.
+Лицензия может быть загружена из файла или объекта потока. Самый простой способ установить лицензию — поместить файл лицензии в ту же папку, что и файл Aspose.PDF.dll, и указать имя файла без пути, как показано в примере ниже.
-Если вы используете любой другой компонент Aspose для Python вместе с Aspose.PDF для Python, пожалуйста, укажите пространство имен для License, как [класс Aspose.Pdf.License]().
+Если вы используете любой другой компонент Aspose для Python вместе с Aspose.PDF for Python, пожалуйста, укажите пространство имён для License, как [Aspose.Pdf.License класс]().
```python
license_file = LICENSE_FILE
license = ap.License()
license.set_license(license_file)
-```
\ No newline at end of file
+```
diff --git a/ru/python-net/overview/supported-file-formats/_index.md b/ru/python-net/overview/supported-file-formats/_index.md
index 70807360ea..0a78f49916 100644
--- a/ru/python-net/overview/supported-file-formats/_index.md
+++ b/ru/python-net/overview/supported-file-formats/_index.md
@@ -4,43 +4,48 @@ linktitle: Поддерживаемые форматы файлов
type: docs
weight: 10
url: /ru/python-net/supported-file-formats/
-description: Эта страница показывает, какие форматы файлов Aspose.PDF for Python via .NET может загружать и сохранять.
-lastmod: "2022-12-22"
+description: Эта страница показывает, какие форматы файлов может загружать и сохранять Aspose.PDF for Python via .NET.
+lastmod: "2025-02-22"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Загрузка и сохранение форматов файлов с помощью Aspose.PDF for Python
+Abstract: В этой статье представлена подробная таблица, описывающая форматы файлов, с которыми может работать Aspose.PDF for Python. В ней изложены возможности библиотеки по загрузке и сохранению различных типов документов, предоставляя представление о её гибкости в управлении различными форматами файлов. В таблице охвачены известные форматы, такие как PDF, EPUB, HTML и XML, все из которых могут как загружаться, так и сохраняться библиотекой. Также поддерживаются форматы изображений, такие как JPEG, PNG и TIFF, для обеих операций. Однако некоторые форматы, такие как CGM, MHT, PCL, PS, XSLFO и MD, доступны только для загрузки, тогда как другие, такие как XLS, XLSX, PPTX, DOC, DOCX и MobiXML, доступны исключительно для сохранения. Эта таблица служит практическим руководством для пользователей, желающих понять совместимость форматов Aspose.PDF for Python, подчеркивая как её сильные стороны, так и ограничения в поддержке форматов документов и изображений.
---
-В следующей таблице указаны форматы файлов, которые Aspose.PDF для Python может загружать и сохранять.
+В следующей таблице указаны форматы файлов, которые Aspose.PDF Python может загружать и сохранять.
-|**Формат**|**Описание**|**Загрузка**|**Сохранение**|**Примечания**|
+|**Формат**|**Описание**|**Загрузка**|**Сохранить**|**Примечания**|
| :- | :- | :- | :- | :- |
-|[PDF](https://docs.fileformat.com/pdf/)|Формат портативных документов|{{< emoticons/tick >}}|{{< emoticons/tick >}} | |
-|[CGM](https://docs.fileformat.com/page-description-language/cgm/)|Метафайл компьютерной графики для 2D векторной графики|{{< emoticons/tick >}}| | |
-|[EPUB](https://docs.fileformat.com/ebook/epub/)|Формат файлов электронной книги|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[PDF](https://docs.fileformat.com/pdf/)|Переносимый формат документа|{{< emoticons/tick >}}|{{< emoticons/tick >}} | |
+|[CGM](https://docs.fileformat.com/page-description-language/cgm/)|Computer Graphics Metafile для 2D векторной графики|{{< emoticons/tick >}}| | |
+|[EPUB](https://docs.fileformat.com/ebook/epub/)|Формат файлов электронных книг|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[HTML](https://docs.fileformat.com/web/html/)|Формат HTML|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-
-|[TeX](https://docs.fileformat.com/page-description-language/tex/)|Формат файлов LaTex для набора текста|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[TeX](https://docs.fileformat.com/page-description-language/tex/)|формат файла вёрстки LaTex|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[MHT](https://docs.fileformat.com/web/mhtml/)|Документ MHTML|{{< emoticons/tick >}}| | |
-|[PCL](https://docs.fileformat.com/page-description-language/pcl/)|Файлы языка управления принтером|{{< emoticons/tick >}}| | |
+|[PCL](https://docs.fileformat.com/page-description-language/pcl/)|Файлы Printer Control Language|{{< emoticons/tick >}}| | |
|[PS](https://docs.fileformat.com/page-description-language/ps/)|Файлы Postscript|{{< emoticons/tick >}}| | |
-|[SVG](https://docs.fileformat.com/page-description-language/svg/)|Масштабируемая векторная графика (векторный формат изображения на основе XML)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[SVG](https://docs.fileformat.com/page-description-language/svg/)|Scalable Vector Graphics (векторный графический формат на основе XML)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[XML](https://docs.fileformat.com/web/xml/)|Формат XML|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[XPS](https://docs.fileformat.com/page-description-language/xps/)|Документы XPS|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[XSLFO](https://docs.fileformat.com/page-description-language/xslfo/)|XSL-FO является частью файла XSL, который используется для преобразования и форматирования данных XML|{{< emoticons/tick >}}| | |
-
+|[XSLFO](https://docs.fileformat.com/page-description-language/xslfo/)|XSL-FO является частью файла XSL, который используется для преобразования и форматирования XML‑данных|{{< emoticons/tick >}}| | |
|[MD](https://docs.fileformat.com/word-processing/md/)|Формат Markdown|{{< emoticons/tick >}}| | |
-|[XLS](https://docs.fileformat.com/spreadsheet/xls/)|Сохраняет документ в формате Microsoft Excel SpreadSheet| |{{< emoticons/tick >}}| |
+|[XLS](https://docs.fileformat.com/spreadsheet/xls/)|Сохраняет документ в электронную таблицу Microsoft Excel| |{{< emoticons/tick >}}| |
|[XLSX](https://docs.fileformat.com/spreadsheet/xlsx/)|Сохраняет документ в формате Microsoft Excel 2007| |{{< emoticons/tick >}}| |
-|[PPTX](https://docs.fileformat.com/presentation/pptx/)|Сохраняет документ в формате Microsoft PowerPoint Presentations| |{{< emoticons/tick >}}| |
+|[PPTX](https://docs.fileformat.com/presentation/pptx/)|Сохраняет документ в формате Microsoft PowerPoint| |{{< emoticons/tick >}}| |
+|[XLSM](https://docs.fileformat.com/spreadsheet/xlsm/)|Сохраняет документ в формате XLSM, который является типом файлов таблиц, поддерживающих макросы.||{{< emoticons/tick >}} | |
|[DOC](https://docs.fileformat.com/word-processing/doc/)|Сохраняет документ в формате Microsoft Word| |{{< emoticons/tick >}}| |
|[DOCX](https://docs.fileformat.com/word-processing/docx/)|Сохраняет документ в формате Microsoft Word| |{{< emoticons/tick >}}| |
-|[MobiXML](https://docs.fileformat.com/ebook/mobi/)|Сохраняет документ в стандарте eBook MobiXML| |{{< emoticons/tick >}}| |
+|[OFD](https://en.wikipedia.org/wiki/OFD)|Формат OFD относится к “Open Fixed-layout Document”, установлен как национальный стандарт Китая для электронного хранения файлов, используется как альтернатива популярному формату PDF.|{{< emoticons/tick >}}| | |
+|[DJVU](https://docs.fileformat.com/image/djvu/)|DjVu — графический файловый формат, предназначенный для сканированных документов и книг, разработанный AT&T Labs.|{{< emoticons/tick >}}| | |
+|[CDR](https://docs.fileformat.com/image/cdr/)|Файл CDR — это векторный графический файл, который нативно создаётся в CorelDRAW|{{< emoticons/tick >}}| | |
+|[MobiXML](https://docs.fileformat.com/ebook/mobi/)|Сохраняет документ в формате eBook MobiXML Standard| |{{< emoticons/tick >}}| |
|[JPEG](https://docs.fileformat.com/image/jpeg/)|Сохраняет документ в формате JPEG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-
|[EMF](https://docs.fileformat.com/image/emf/)|Формат расширенного метафайла (EMF)|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[PNG](https://docs.fileformat.com/image/png/)|Сохраняет документ в формате PNG|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
|[BMP](https://docs.fileformat.com/image/bmp/)|Сохраняет документ в формате BMP|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[GIF](https://docs.fileformat.com/image/gif/)|Формат обмена графикой| |{{< emoticons/tick >}}| |
-|[TIFF](https://docs.fileformat.com/image/tiff/)|Сохраняет документ как одностраничное или многостраничное изображение TIFF|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
-|[Text](https://docs.fileformat.com/word-processing/txt/)|Сохраняет документ в текстовом формате|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
\ No newline at end of file
+|[GIF](https://docs.fileformat.com/image/gif/)|Графический формат обмена| |{{< emoticons/tick >}}| |
+|[TIFF](https://docs.fileformat.com/image/tiff/)|Сохраняет документ как одностраничное или многостраничное TIFF‑изображение|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+|[Text](https://docs.fileformat.com/word-processing/txt/)|Сохранить документ в текстовом формате|{{< emoticons/tick >}}|{{< emoticons/tick >}}| |
+
diff --git a/ru/python-net/overview/system-requirements/_index.md b/ru/python-net/overview/system-requirements/_index.md
index 62e5311166..c17253d643 100644
--- a/ru/python-net/overview/system-requirements/_index.md
+++ b/ru/python-net/overview/system-requirements/_index.md
@@ -1,21 +1,25 @@
---
-title: System Requirements
-linktitle: System Requirements
+title: Системные требования
+linktitle: Системные требования
type: docs
weight: 30
url: /ru/python-net/system-requirements/
-description: Этот раздел перечисляет поддерживаемые операционные системы, которые необходимы разработчику для успешной работы с Aspose.PDF для Python.
-lastmod: "2022-12-22"
+description: В этом разделе перечислены поддерживаемые операционные системы, необходимые разработчику для успешной работы с Aspose.PDF for Python.
+lastmod: "2026-05-15"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Поддерживаемые операционные системы Aspose.PDF for Python через .NET
+Abstract: >
+ Aspose.PDF for Python via .NET — это API для обработки PDF, разработанное для разработчиков, позволяющее управлять PDF‑документами без необходимости использования Microsoft Office или Adobe Acrobat Automation. Оно поддерживает создание 32‑битных и 64‑битных Python‑приложений на различных операционных системах, включая Windows и Linux, где установлен Python 3.5 или более новая версия. API совместим с несколькими версиями Windows, от Windows XP до Windows 11, а также с основными дистрибутивами Linux, такими как Ubuntu, OpenSUSE и CentOS. Для систем Linux требуются специфические компоненты: библиотеки среды выполнения GCC‑6, зависимости .NET Core Runtime (без необходимости установки самого runtime) и сборка Python с pymalloc для версий 3.5‑3.7. Кроме того, необходима общая библиотека libpython, для которой может потребоваться настройка параметров, чтобы правильно распознавался путь к библиотеке.
---
-## Overview
+## Обзор
-Aspose.PDF for Python via .NET, API для обработки PDF, который позволяет разработчикам работать с PDF-документами без необходимости в Microsoft Office® или Adobe Acrobat Automation. Aspose.PDF для Python можно использовать для разработки 32-битных и 64-битных приложений на Python для различных операционных систем (таких как Windows и Linux), на которых установлена версия Python 3.5 или выше.
+Aspose.PDF for Python via .NET, API обработки PDF, позволяющий разработчикам работать с PDF‑документами без необходимости использовать Microsoft Office® или автоматизацию Adobe Acrobat. Aspose.PDF for Python может использоваться для создания 32‑разрядных и 64‑разрядных Python‑приложений для различных операционных систем (например, Windows и Linux), где установлен Python версии 3.5 или новее.
-## Supported Operating System
+## Поддерживаемая операционная система
### Windows
@@ -39,18 +43,14 @@ Aspose.PDF for Python via .NET, API для обработки PDF, которы
- CentOS
- и другие
+## Системные требования для целевого Linux
-## System Requirements for Target Linux
+- Библиотеки выполнения GCC-6 (или более поздние).
-- Библиотеки времени выполнения GCC-6 (или более поздние).
+- Зависимости .NET Core Runtime. Установка самого .NET Core Runtime НЕ требуется.
-- Зависимости среды выполнения .NET Core. Установка самой среды выполнения .NET Core НЕ требуется.
+- Для Python 3.5-3.7: требуется сборка Python с pymalloc. Параметр сборки Python --with-pymalloc включён по умолчанию. Как правило, сборка Python с pymalloc отмечена суффиксом m в имени файла.
-- Для Python 3.5-3.7: Необходим сборка pymalloc для Python. Опция сборки Python --with-pymalloc включена по умолчанию. Обычно сборка pymalloc для Python обозначается суффиксом m в названии файла.
+- Разделяемая библиотека libpython. Параметр сборки Python --enable-shared отключён по умолчанию, некоторые дистрибутивы Python не включают разделяемую библиотеку libpython. На некоторых платформах Linux разделяемую библиотеку libpython можно установить с помощью менеджера пакетов, например: sudo apt-get install libpython3.7. Распространённая проблема заключается в том, что библиотека libpython устанавливается в другое место, отличающееся от стандартного системного расположения разделяемых библиотек. Проблему можно решить, используя параметры сборки Python для указания альтернативных путей к библиотекам при компиляции Python, либо создав символическую ссылку на файл библиотеки libpython в стандартном системном расположении разделяемых библиотек. Обычно имя файла разделяемой библиотеки libpython имеет вид libpythonX.Ym.so.1.0 для Python 3.5‑3.7, или libpythonX.Y.so.1.0 для Python 3.8 и новее (например: libpython3.7m.so.1.0, libpython3.9.so.1.0).
-- Общая библиотека Python libpython.
- The --enable-shared Python build option is disabled by default, some Python distributions do not contain the libpython shared library. For some linux platforms, the libpython shared library can be installed using the package manager, for example: sudo apt-get install libpython3.7. The common issue is that libpython library is installed in a different location than the standard system location for shared libraries. The issue can be fixed by using the Python build options to set alternate library paths when compiling Python, or fixed by creating a symbolic link to the libpython library file in the system standard location for shared libraries. Typically, the libpython shared library file name is libpythonX.Ym.so.1.0 for Python 3.5-3.7, or libpythonX.Y.so.1.0 for Python 3.8 or later (for example: libpython3.7m.so.1.0, libpython3.9.so.1.0).
-
-
-Опция сборки Python --enable-shared отключена по умолчанию, некоторые дистрибутивы Python не содержат общую библиотеку libpython. Для некоторых платформ Linux общая библиотека libpython может быть установлена с помощью менеджера пакетов, например: sudo apt-get install libpython3.7. Распространенной проблемой является то, что библиотека libpython установлена в другом месте, чем стандартное системное расположение для общих библиотек. Проблема может быть решена с помощью параметров сборки Python для установки альтернативных путей к библиотекам при компиляции Python или решена путем создания символической ссылки на файл библиотеки libpython в стандартном системном расположении для общих библиотек. Как правило, имя файла общей библиотеки libpython — libpythonX.Ym.so.1.0 для Python 3.5-3.7, или libpythonX.Y.so.1.0 для Python 3.8 или более поздних версий (например: libpython3.7m.so.1.0, libpython3.9.so.1.0).
\ No newline at end of file
diff --git a/ru/python-net/overview/technical-support/_index.md b/ru/python-net/overview/technical-support/_index.md
index 915b6a3f88..b8bc794619 100644
--- a/ru/python-net/overview/technical-support/_index.md
+++ b/ru/python-net/overview/technical-support/_index.md
@@ -1,30 +1,35 @@
---
-title: Aspose.PDF для поддержки Python
+title: Поддержка Aspose.PDF for Python
linktitle: Техническая поддержка
type: docs
weight: 60
url: /ru/python-net/technical-support/
-description: Эта страница дает рекомендации для быстрого и качественного решения ваших задач с использованием Aspose.PDF для Python.
-lastmod: "2021-06-05"
+description: Эта страница даёт рекомендации для быстрого и качественного выполнения ваших задач с использованием Aspose.PDF for Python.
+lastmod: "2025-02-05"
sitemap:
changefreq: "monthly"
priority: 0.7
+TechArticle: true
+AlternativeHeadline: Техническая поддержка Aspose.PDF for Python
+Abstract: Aspose.PDF предоставляет бесплатную техническую поддержку через различные каналы, основной из которых — Aspose.Forums, в частности раздел форума Aspose.PDF, где пользователи могут задавать вопросы и получать быстрые ответы. Важно отметить, что Aspose не предоставляет техническую поддержку по телефону, а телефонные звонки ограничены запросами по продажам и покупке. Из‑за возможных различий во временных зонах время ответа может варьироваться. Чтобы обеспечить эффективное решение проблем, пользователям рекомендуется сначала убедиться, что они используют последнюю версию Aspose.PDF, проверив [Aspose.PDF for Python Downloads](https://pypi.org/project/aspose-pdf/). Кроме того, пользователи должны просмотреть существующие обсуждения форума, документацию и справочники API, чтобы узнать, решена ли их проблема уже. При размещении вопроса рекомендуется включить оригинальный документ и любые проблемные фрагменты кода, которые можно упаковать в zip‑архив для удобства. Все загруженные файлы доступны только пользователю и разработчикам Aspose, обеспечивая конфиденциальность и безопасность.
---
-Aspose.PDF позволяет вам использовать бесплатную техническую поддержку для всех своих продуктов. Если у вас есть вопросы по Aspose.PDF, ознакомьтесь со следующей статьей:
+Aspose.PDF позволяет использовать бесплатную техническую поддержку для всех своих продуктов. Если у вас есть вопросы по Aspose.PDF, ознакомьтесь со следующей статьёй:
-- Самый популярный источник поддержки - это [Aspose.Forums](https://forum.aspose.com/). В разделе [Aspose.PDF forum](https://forum.aspose.com/c/pdf/10) вы можете задать свой вопрос и получить ответ как можно скорее.
+- Самый популярный источник поддержки — это [Aspose.Forums](https://forum.aspose.com/). В [форум Aspose.PDF](https://forum.aspose.com/c/pdf/10) раздел, вы можете задать свой вопрос и получить ответ как можно быстрее.
-- Вы должны знать, что Aspose не предоставляет техническую поддержку по телефону. Звонок возможен только для вопросов продаж и покупок.
+- Вы должны знать, что Aspose не предоставляет техническую поддержку по телефону. Звонки доступны только для вопросов по продажам и покупкам.
-- Пожалуйста, помните, что у нас есть разница в часовых поясах, это может повлиять на скорость ответов вам.
+- Пожалуйста, помните, что у нас разница часовых поясов, это может сказаться на скорости ответов вам.
-Если вам нужна помощь с проблемой в Aspose.PDF, следуйте следующим рекомендациям, чтобы убедиться, что она решена наиболее эффективным способом:
+Если вам нужна помощь с проблемой Aspose.PDF, следуйте следующим рекомендациям, чтобы убедиться, что она решена максимально эффективно:
-- Во-первых, убедитесь, что вы используете последнюю версию Aspose.PDF перед тем, как сообщить о проблеме, смотрите [Aspose.PDF для Python Загрузки](https://pypi.org/project/aspose-pdf/), чтобы узнать о последней версии.
+- Во‑первых, проверьте, что вы используете последнюю версию Aspose.PDF перед тем как сообщать о проблеме, см. [Aspose.PDF for Python Downloads](https://pypi.org/project/aspose-pdf/) чтобы узнать о последней версии.
-- Возможно, решение вашей проблемы уже обсуждалось и имеет решение, для этого изучите форум и документацию, проверьте API Reference перед тем, как сообщить о проблеме.
+- Возможно, решение вашей проблемы уже обсуждалось и найдено; для этого изучите форум и документацию, проверьте справочник API перед тем как сообщать о проблеме.
+
+- Когда задаёте вопрос, пожалуйста, включайте исходный документ и, возможно, фрагмент кода, который вызывает проблему. Вы можете упаковать эти файлы в один документ, если их несколько.
+
+- Не беспокойтесь, доступ к «липким» файлам есть только у вас и разработчиков Aspose.
-- Когда вы формируете свой вопрос, пожалуйста, включите оригинальный документ и, возможно, фрагмент вашего кода, который вызывает проблему. Вы можете заархивировать эти файлы в один документ, если их несколько.
-- Не волнуйтесь, только вы и разработчики Aspose имеют доступ к прикрепленным файлам.
diff --git a/ru/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md b/ru/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
index c06f1cf11d..f43aea0dfe 100644
--- a/ru/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
+++ b/ru/python-net/working-with-facades/pdfcontenteditor/annotations/_index.md
@@ -3,7 +3,7 @@ title: Аннотации
linktitle: Аннотации
type: docs
weight: 10
-url: /ru/python-net/annotations/
+url: /ru/python-net/annotations-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/ru/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md b/ru/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
index 643dc31d3d..037809b9ff 100644
--- a/ru/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
+++ b/ru/python-net/working-with-facades/pdfcontenteditor/attachments/_index.md
@@ -3,7 +3,7 @@ title: Вложения
linktitle: Вложения
type: docs
weight: 20
-url: /ru/python-net/attachments/
+url: /ru/python-net/attachments-facades/
description:
lastmod: "2026-03-20"
sitemap:
diff --git a/ru/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md b/ru/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
index 5cf4de38c5..b0665be25f 100644
--- a/ru/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
+++ b/ru/python-net/working-with-facades/pdfcontenteditor/links-and-navigation/_index.md
@@ -3,7 +3,7 @@ title: Ссылки и навигация
linktitle: Ссылки и навигация
type: docs
weight: 70
-url: /ru/python-net/links-and-navigation/
+url: /ru/python-net/links-and-navigation-facades/
description:
lastmod: "2026-03-20"
sitemap: