Incrustar códigos de barras directamente en archivos PDF es un requisito común para el seguimiento de inventario, la emisión de boletos y flujos de trabajo de documentos seguros. Aspose.PDF for Python via .NET ofrece un SDK robusto que simplifica la adición de códigos de barras a PDF en Python. En este tutorial aprenderá cómo generar imágenes de códigos de barras, colocarlas en PDFs existentes y personalizar su apariencia. Al final podrá agregar códigos de barras a documentos PDF individuales o múltiples de forma programática y con confianza.

Cómo agregar código de barras a PDF en Python - Paso a paso

  1. Instale los paquetes requeridos: Use pip para instalar Aspose.PDF y Aspose.BarCode.
    pip install aspose-pdf
    pip install aspose-barcode-for-python-via-net
    
  2. Genere la imagen del código de barras: Cree un código de barras usando Aspose.BarCode. La imagen generada puede guardarse en un flujo de memoria.
    from aspose.barcode import generation
    

Generate the barcode image

generator = generation.BarcodeGenerator(generation.EncodeTypes.CODE39_STANDARD, “1234567”) generator.save(barcode_image, generation.BarCodeImageFormat.PNG)

<!--[CODE_SNIPPET_END]-->
3. **Cree el documento PDF de destino**: Abra el PDF existente con Aspose.PDF.  
<!--[CODE_SNIPPET_START]-->
```python
import aspose.pdf as ap

# Create a new PDF document and add a page
document = ap.Document("input.pdf")
page = document.pages.add()
page.set_page_size(595, 842)
  1. Inserte la imagen del código de barras en la página deseada: Use un ImageStamp para colocar el código de barras. Ajuste la posición y el tamaño según sea necesario.
    # Add the barcode image at the specified coordinates
    page.add_image(barcode_image, ap.Rectangle(100, 650, 300, 750, True))
    
  2. Guarde el PDF actualizado (o realice un bucle para procesamiento masivo): Persista los cambios o itere sobre varios PDFs para agregar códigos de barras en bloque a PDF en Python.
    document.save(output_pdf)
    

Insertar código de barras en PDF con Python - Ejemplo de código completo

El siguiente ejemplo muestra un flujo de trabajo completo que genera un código de barras, lo incrusta en un PDF existente y guarda el resultado.

import aspose.pdf as ap
from aspose.barcode import generation

def add_barcode_to_new_pdf(output_pdf, barcode_image):
    # Generate the barcode image
    generator = generation.BarcodeGenerator(generation.EncodeTypes.CODE39_STANDARD, "1234567")
    generator.save(barcode_image, generation.BarCodeImageFormat.PNG)

# Create a new PDF document and add a page
    document = ap.Document()
    page = document.pages.add()
    page.set_page_size(595, 842)

# Add the barcode image at the specified coordinates
    page.add_image(barcode_image, ap.Rectangle(100, 650, 300, 750, True))

# Save the resulting PDF document
    document.save(output_pdf)

if __name__ == "__main__":
    add_barcode_to_new_pdf("AddBarcodeToNewPDF.pdf", "barcode.png")

Nota: Este ejemplo de código demuestra la funcionalidad principal. Antes de usarlo en su proyecto, asegúrese de actualizar las rutas de archivo para que coincidan con sus ubicaciones reales, verifique que todas las dependencias requeridas estén correctamente instaladas y pruebe exhaustivamente en su entorno de desarrollo. Si encuentra algún problema, consulte la documentación oficial o póngase en contacto con el equipo de soporte para obtener ayuda.

Aspose.PDF for Python via .NET - Requisitos y Configuración

Para comenzar a usar el SDK, asegúrese de tener Python 3.6+ y el tiempo de ejecución .NET instalados. Luego instale los paquetes mediante pip:

pip install aspose-pdf aspose-barcode

También puede descargar los últimos binarios desde la página de descarga. No se requiere código de licencia adicional para la evaluación, pero se necesita una licencia válida para el uso en producción (consulte la página de licencia temporal y la página de precios).

Leer código de barras de un documento PDF usando Python

Podemos reconocer cualquier imagen de código de barras incrustada en cualquiera de las páginas del documento PDF utilizando la colección resources.images de una page. Esto permite extraer imágenes del PDF y luego leer la información del código de barras de la imagen extraída. Podemos leer códigos de barras de los documentos PDF siguiendo los pasos que se indican a continuación:

  1. En primer lugar, cargue el documento PDF de entrada usando la Document class.
  2. A continuación, seleccione la página objetivo y obtenga su colección resources.images.
  3. Luego, guarde cada imagen incrustada en un archivo dentro de un bucle.
  4. Después, cree una instancia de la BarCodeReader class con la ruta de la imagen y DecodeType como argumentos.
  5. Después de eso, llame al método read_bar_codes() para obtener los resultados del reconocimiento.
  6. Finalmente, recorra los resultados y muestre la información del código de barras.

El siguiente ejemplo de código demuestra cómo leer una imagen de código de barras de un documento PDF usando Python.

import aspose.pdf as ap
from aspose.barcode import recognition
from io import FileIO

def read_barcode_from_pdf(input_pdf, extracted_image):
    # Load the input PDF document
    document = ap.Document(input_pdf)
    page = document.pages[1]

# Extract the first image from the page resources
    x_image = page.resources.images[1]
    with FileIO(extracted_image, "wb") as image_stream:
        x_image.save(image_stream)

# Read the barcode from the extracted image
    reader = recognition.BarCodeReader(extracted_image, recognition.DecodeType.CODE39_STANDARD)
    for result in reader.read_bar_codes():
        print(f"Codetext found: {result.code_text}")
        print(f"Symbology: {result.code_type_name}")

if __name__ == "__main__":
    read_barcode_from_pdf("AddBarcodeToExistingPDF.pdf", "extracted_barcode.png")
Codetext found: 1234567
Symbology: Code39Standard

Conclusión

Agregar un código de barras a un PDF en Python se vuelve sencillo con Aspose.PDF for Python via .NET. Las potentes funciones de manipulación de PDF del SDK combinadas con la generación de códigos de barras de Aspose.BarCode le permiten implementar un flujo de trabajo completo de agregar código de barras a PDF con solo unas pocas líneas de código. Ya sea que esté actualizando un solo documento o realizando una inserción masiva de códigos de barras en PDF con Python para grandes lotes, la biblioteca ofrece el rendimiento y la flexibilidad que necesita. Recuerde adquirir una licencia adecuada para uso en producción; puede explorar las opciones de precios asequibles en la página de precios o obtener una licencia de evaluación temporal en la página de licencia temporal.

Preguntas frecuentes

  • ¿Cómo añado un código de barras a un PDF existente en Python?
    Utilice Aspose.PDF para cargar el PDF, genere el código de barras con Aspose.BarCode y empájelo usando add_image(). El proceso completo se ilustra en el ejemplo de código anterior.

  • ¿Cuál es el enfoque recomendado para agregar códigos de barras en bloque a PDF en Python?
    Recorra su colección de PDF, reutilice un solo BarcodeGenerator y trabaje con streams. Aplique los consejos de rendimiento de la sección “Consideraciones de rendimiento” para mantener bajo el uso de memoria.

  • ¿Hay alguna forma de personalizar el tamaño y la posición del código de barras programáticamente?
    Absolutamente. Ajuste las propiedades width, height, x, y y rotation del barcode.

Leer más