Este tema aborda el proceso para crear una tabla de contenido en PDF usando Python. Cubre los detalles para establecer el entorno de desarrollo, una lista de pasos y un código de trabajo para agregar una tabla de contenido en PDF usando Python. También conocerá las configuraciones de la tabla de contenido, incluidos los hipervínculos, el texto y la conectividad con diferentes páginas del archivo PDF.
Pasos para agregar una tabla de contenido a un PDF usando Python
- Configure el entorno en use Aspose.PDF para Python a través de .NET para agregar una tabla de contenido
- Acceda al PDF de muestra Document e inserte una página al inicio para agregar TOC
- Cree instancias de las clases TocInfo y TextFragment para configurar el título de TOC
- Establecer el texto de los encabezados para la tabla de contenido.
- Iterar a través de todas las páginas PDF para agregar un título TOC respectivo
- Establezca la página de destino, sus coordenadas y el texto del encabezado durante cada iteración.
- Guarde el archivo PDF resultante con TOC en la primera página
Los pasos anteriores muestran el proceso para crear una tabla de contenido en la que se puede hacer clic en PDF usando Python. Acceda al archivo PDF de origen, agregue una página al inicio del documento para contener la tabla de contenido y use las instancias de TocInfo y TextFragment para establecer las características del TOC. Para cada página del documento PDF cargado, inserte un hipervínculo en la tabla de contenido, establezca su texto y vincúlelo a la página requerida.
Código para agregar una tabla de contenido en la que se puede hacer clic a un PDF usando Python
import aspose.pdf as pdf | |
# Set the source directory path | |
filePath = "C://Words//" | |
# Load the license in your application to create TOC in PDF | |
pdf.License().set_license(filePath + "Conholdate.Total.Product.Family.lic") | |
# Open the sample PDF document file from the disk | |
pdfDoc = pdf.Document(filePath + "Sample.pdf") | |
# Insert a page for table of contents | |
pageTOC = pdfDoc.pages.insert(1) | |
# Instantiate an object of TocInfo for TOC information | |
tocInfo = pdf.TocInfo() | |
# Create an object of TextFragment for setting TOC title | |
title = pdf.text.TextFragment("Table Of Contents") | |
title.text_state.font_size = 20 | |
# Set the title for Table of contents | |
tocInfo.title = title | |
pageTOC.toc_info = tocInfo | |
# Generate a list of strings for TOC | |
tocTitles = [] | |
# Get count of pages in the PDF | |
count = pdfDoc.pages.length | |
for j in range(0, count): | |
tocTitles.insert(j, "Page "+ str(j + 1)) | |
i = 0 | |
while i < count: | |
# Instantiate an object of the Heading class | |
heading = pdf.Heading(1) | |
heading.toc_page = pageTOC | |
# Set the destination page for the heading object | |
heading.destination_page = pdfDoc.pages[i + 1] | |
# Set the destination coordinates for TOC item | |
heading.top = pdfDoc.pages[i +1].rect.height | |
# Set TOC item text | |
textSegment = pdf.text.TextSegment() | |
textSegment.text = tocTitles[i] | |
segments = heading.segments.append(textSegment) | |
# Add heading to the TOC page | |
pageTOC.paragraphs.add(heading) | |
i += 1 | |
# Save document with TOC | |
pdfDoc.save("outputwithToc.pdf") | |
print ("Opeartion finished successfully") |
Este ejemplo demuestra cómo agregar una tabla de contenido en PDF usando Python. En este ejemplo, el contenido del TOC se genera manualmente generando una lista de cadenas utilizando los números de página. Sin embargo, puede analizar el contenido del archivo y configurarlo de manera similar a la tabla de contenido estándar donde los encabezados del contenido del PDF se utilizan dentro del TOC y vincularlos con el contenido deseado en el archivo PDF.
Este tema nos ha enseñado cómo crear una tabla de contenidos en PDF usando Python. Si está interesado en agregar hipervínculos al contenido de un archivo PDF, consulte el artículo sobre cómo agregar un hipervínculo en PDF usando Python.