Cómo estampar códigos de barras en PDF con C#
Estampe códigos de barras en documentos PDF existentes en C# utilizando el método CreateBarcode de IronBarcode con StampToExistingPdfPage para páginas individuales o StampToExistingPdfPages para páginas múltiples, especificando coordenadas y números de página.
Inicio rápido: Estampar un GeneratedBarcode en una página de PDF
Este ejemplo muestra la generación de un código de barras mediante CreateBarcode de IronBarCode y su estampado en una página PDF existente. Proporcione la ruta del PDF, las coordenadas de posición y el número de página.
Empieza a crear PDF con NuGet ahora:
Instalar IronBarcode con el gestor de paquetes NuGet
Copie y ejecute este fragmento de código.
IronBarCode.BarcodeWriter.CreateBarcode("https://my.site", IronBarCode.BarcodeEncoding.QRCode, 150, 150) .StampToExistingPdfPage("report.pdf", x: 50, y: 50, pageNumber: 1);Despliegue para probar en su entorno real
Empieza a utilizar IronBarcode en tu proyecto hoy mismo con una prueba gratuita
Flujo de trabajo mínimo (5 pasos)
- Descargue la biblioteca C# para estampar códigos de barras en archivos PDF
- Crear un código de barras con un tipo y valor de código de barras especificado
- Especificar tamaño de código de barras
- Utilice el método
StampToExistingPdfPagepara estampar el código de barras en una sola página PDF - Utilice el método
StampToExistingPdfPagespara estampar el código de barras en varias páginas PDF
¿Cómo estampar un código de barras en una página PDF existente?
<Descripción: Diagrama o captura de pantalla que ilustre el concepto de código -->
Apart from exporting barcodes as PDF, IronBarcode enables stamping the GeneratedBarcode directly onto existing PDF documents. Esta función es útil para añadir códigos de seguimiento, etiquetas de inventario o identificadores de documentos a informes, facturas o formularios existentes. El siguiente fragmento de código demuestra esta tarea.
:path=/static-assets/barcode/content-code-examples/how-to/StampBarcodeOnExistingPdfPage.csusing IronBarCode;
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100);
myBarcode.StampToExistingPdfPage("pdf_file_path.pdf", x: 200, y: 100, 3, "password");Imports IronBarCode
Private myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100)
myBarcode.StampToExistingPdfPage("pdf_file_path.pdf", x:= 200, y:= 100, 3, "password")¿Qué parámetros requiere StampToExistingPdfPage?
El fragmento de código llama al método StampToExistingPdfPage() con un objeto GeneratedBarcode para estampar el objeto en el documento PDF. Este método proporciona flexibilidad al tiempo que mantiene la sencillez. A continuación se indican los parámetros del método:
pdfFilePath: Un System.String que representa la ruta del documento PDF (relativa o absoluta).x: Un System.Int32 para la posición horizontal en píxeles desde el borde izquierdo.y: Un System.Int32 para la posición vertical en píxeles desde el borde inferior.NúmeroDePágina: Un System.Int32 que indica la página (1 indexada, la primera página es la 1).contraseña: Un System.String para PDF protegidos con contraseña (opcional).
¿Cuándo debo utilizar StampToExistingPdfPage?
Al ejecutar el fragmento de código se estampa el BarcodeGenerado directamente en el documento PDF sin guardado intermedio. Este método se adapta a situaciones que requieren:
- Códigos de seguimiento únicos en etiquetas de envío o documentos de entrega
- Números de lote en informes de fabricación
- Números de control de documentos en formularios legales o reglamentarios
- Códigos QR para autenticación digital o enlaces de acceso rápido
El método de estampación directa ahorra tiempo de procesamiento y elimina los archivos temporales. For information on different barcode types, see the supported barcode formats guide.
¿Cómo estampar un código de barras en varias páginas PDF?
<Descripción: Diagrama o captura de pantalla que ilustre el concepto de código -->
A veces es necesario estampar el mismo BarCode en varias páginas. Los usos más comunes incluyen la aplicación de identificadores de documentos a cada página de informes de varias páginas, la adición de códigos de control de versiones a lo largo de documentos técnicos o la inserción de códigos de barras de seguridad en cada página de materiales confidenciales. En lugar de utilizar el método de una sola página, utilice el método StampToExistingPdfPages() de la clase GeneratedBarcode. El siguiente fragmento de código demuestra este método.
:path=/static-assets/barcode/content-code-examples/how-to/StampBarcodeOnMultiplePdfPages.csusing IronBarCode;
using System.Collections.Generic;
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100);
List<int> pages = new List<int>();
pages.Add(1);
pages.Add(2);
pages.Add(3);
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, pages, "password");Imports IronBarCode
Imports System.Collections.Generic
Private myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100)
Private pages As New List(Of Integer)()
pages.Add(1)
pages.Add(2)
pages.Add(3)
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x:= 200, y:= 100, pages, "password")Para mayor flexibilidad, utilice LINQ para generar rangos de páginas de forma dinámica:
// Stamp on all even pages from 2 to 10
var evenPages = Enumerable.Range(1, 10).Where(x => x % 2 == 0).ToList();
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, evenPages, "password");
// Stamp on the first and last 3 pages of a 20-page document
var selectedPages = new List<int> { 1, 2, 3, 18, 19, 20 };
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, selectedPages, "password");// Stamp on all even pages from 2 to 10
var evenPages = Enumerable.Range(1, 10).Where(x => x % 2 == 0).ToList();
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, evenPages, "password");
// Stamp on the first and last 3 pages of a 20-page document
var selectedPages = new List<int> { 1, 2, 3, 18, 19, 20 };
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, selectedPages, "password");IRON VB CONVERTER ERROR developers@ironsoftware.com¿Qué parámetros acepta StampToExistingPdfPages?
A continuación se indican los parámetros del método:
pdfFilePath: Una System.String que representa la ruta del documento PDF.x: Un System.Int32 para la posición horizontal en píxeles.y: Un System.Int32 para la posición vertical en píxeles.pageNumbers: Un IEnumerable de páginas para estampar (1 indexado).contraseña: Un System.String para PDF protegidos con contraseña (opcional).
¿Por qué utilizar StampToExistingPdfPages en lugar de Looping?
Este método permite estampar eficazmente códigos de barras en varias páginas sin iteración manual, lo que mejora la legibilidad y el rendimiento del código. La implementación interna optimiza el procesamiento de PDF, lo que resulta en:
- Ejecución más rápida: El PDF se abre y procesa una vez, no varias
- Menor uso de memoria: gestión eficiente de recursos para PDF de gran tamaño
- Código más limpio: Sin gestión manual de bucles y manejo de errores
- Operaciones atómicas: Todas las páginas estampadas en una sola operación
Técnicas avanzadas de estampación
<Descripción: Diagrama o captura de pantalla que ilustre el concepto de código -->
Personalización del aspecto de los códigos de barras antes de estamparlos
Antes de estampar su código de barras en un PDF, personalice su aspecto. IronBarcode offers extensive customization options:
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Code128, 250, 80);
// Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number");
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy");
myBarcode.SetMargins(10);
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Color.DarkBlue);
// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Code128, 250, 80);
// Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number");
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy");
myBarcode.SetMargins(10);
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Color.DarkBlue);
// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);IRON VB CONVERTER ERROR developers@ironsoftware.comTrabajar con diferentes tipos de BarCode
Diferentes escenarios requieren diferentes tipos de códigos de barras. Los códigos QR son adecuados para URL y grandes conjuntos de datos, mientras que Code128 funciona para identificadores alfanuméricos. Learn more about creating QR codes or explore other formats:
// QR Code for contact information
var qrCode = BarcodeWriter.CreateBarcode("BEGIN:VCARD\nFN:John Doe\nTEL:555-1234\nEND:VCARD",
BarcodeEncoding.QRCode, 150, 150);
qrCode.StampToExistingPdfPage("businesscard.pdf", x: 400, y: 50, pageNumber: 1);
// Data Matrix for product tracking
var dataMatrix = BarcodeWriter.CreateBarcode("PROD-2024-BATCH-789",
BarcodeEncoding.DataMatrix, 100, 100);
dataMatrix.StampToExistingPdfPage("product_sheet.pdf", x: 50, y: 750, pageNumber: 1);// QR Code for contact information
var qrCode = BarcodeWriter.CreateBarcode("BEGIN:VCARD\nFN:John Doe\nTEL:555-1234\nEND:VCARD",
BarcodeEncoding.QRCode, 150, 150);
qrCode.StampToExistingPdfPage("businesscard.pdf", x: 400, y: 50, pageNumber: 1);
// Data Matrix for product tracking
var dataMatrix = BarcodeWriter.CreateBarcode("PROD-2024-BATCH-789",
BarcodeEncoding.DataMatrix, 100, 100);
dataMatrix.StampToExistingPdfPage("product_sheet.pdf", x: 50, y: 750, pageNumber: 1);IRON VB CONVERTER ERROR developers@ironsoftware.comManejo de errores y buenas prácticas
Implementar un manejo adecuado de errores al trabajar con operaciones de estampado en PDF:
try
{
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("DOCUMENT-ID-12345",
BarcodeEncoding.Code128, 200, 60);
// Verify the PDF exists before attempting to stamp
if (File.Exists("target.pdf"))
{
myBarcode.StampToExistingPdfPage("target.pdf", x: 100, y: 100, pageNumber: 1);
Console.WriteLine("Barcode stamped successfully!");
}
else
{
Console.WriteLine("PDF file not found!");
}
}
catch (Exception ex)
{
Console.WriteLine($"Error stamping barcode: {ex.Message}");
// Log the error or handle it appropriately
}try
{
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("DOCUMENT-ID-12345",
BarcodeEncoding.Code128, 200, 60);
// Verify the PDF exists before attempting to stamp
if (File.Exists("target.pdf"))
{
myBarcode.StampToExistingPdfPage("target.pdf", x: 100, y: 100, pageNumber: 1);
Console.WriteLine("Barcode stamped successfully!");
}
else
{
Console.WriteLine("PDF file not found!");
}
}
catch (Exception ex)
{
Console.WriteLine($"Error stamping barcode: {ex.Message}");
// Log the error or handle it appropriately
}IRON VB CONVERTER ERROR developers@ironsoftware.comConsideraciones sobre el rendimiento
Cuando trabaje con PDF de gran tamaño o con varias operaciones de estampado, tenga en cuenta estos consejos:
- Operaciones por lotes: Utilice
StampToExistingPdfPages()en lugar del bucleStampToExistingPdfPage() - Caché de BarCode: Crear una vez y reutilizar el objeto
GeneratedBarcode - Cálculo de coordenadas: Precalcular coordenadas de posición coherentes
- Gestión de memoria: Procese PDF muy grandes por lotes
For advanced scenarios involving reading barcodes from PDFs after stamping, see our guide on reading barcodes from PDF documents.
Integración con otras funciones de IronBarcode
La funcionalidad de estampado de PDF funciona a la perfección con otras funciones de IronBarcode. Combine it with asynchronous processing for better web application performance:
// Asynchronous PDF stamping
public async Task StampBarcodeAsync(string pdfPath, string barcodeData)
{
await Task.Run(() =>
{
var barcode = BarcodeWriter.CreateBarcode(barcodeData, BarcodeEncoding.QRCode, 200, 200);
barcode.StampToExistingPdfPage(pdfPath, x: 100, y: 100, pageNumber: 1);
});
}// Asynchronous PDF stamping
public async Task StampBarcodeAsync(string pdfPath, string barcodeData)
{
await Task.Run(() =>
{
var barcode = BarcodeWriter.CreateBarcode(barcodeData, BarcodeEncoding.QRCode, 200, 200);
barcode.StampToExistingPdfPage(pdfPath, x: 100, y: 100, pageNumber: 1);
});
}IRON VB CONVERTER ERROR developers@ironsoftware.comAdditionally, leverage IronBarcode's image correction features when working with scanned PDFs that might need enhancement before or after barcode stamping.
Solución de problemas comunes
Si tiene problemas al estampar códigos de barras en PDF, aquí tiene las soluciones:
- Problemas de coordenadas: Las coordenadas del PDF parten de la esquina inferior izquierda, no de la superior izquierda
- PDFs protegidos con contraseña: Asegurar el parámetro de contraseña correcto para PDFs encriptados
- Large File Sizes: For optimization and handling tips, see our troubleshooting guide
- Font or Encoding Issues: For special characters or Unicode, check our writing Unicode barcodes guide
Si se siguen estas directrices y se aprovechan las funciones de estampado de PDF de IronBarcode, se podrá añadir un código de barras eficaz a los documentos PDF existentes, al tiempo que se mantiene un alto rendimiento y la calidad del código.
Preguntas Frecuentes
¿Cómo añado un código de barras a un documento PDF existente en C#?
Utilice el método CreateBarcode de IronBarcode para generar un código de barras y, a continuación, aplique el método StampToExistingPdfPage para colocarlo en su PDF. Simplemente especifique la ruta del archivo PDF, las coordenadas de posición (x, y) y el número de página donde desea que aparezca el código de barras.
¿Qué parámetros son necesarios para el método StampToExistingPdfPage?
El método StampToExistingPdfPage de IronBarcode requiere: pdfFilePath (cadena para la ubicación del PDF), coordenadas x e y (números enteros para el posicionamiento en píxeles), pageNumber (número entero, 1 indexado) y un parámetro de contraseña opcional para PDF protegidos.
¿Puedo estampar el mismo código de barras en varias páginas de un PDF?
Sí, IronBarcode proporciona el método StampToExistingPdfPages (nótese el plural 'Pages') que le permite estampar un único código de barras generado en varias páginas de su documento PDF.
¿Qué sistema de coordenadas se utiliza para colocar los códigos de barras en los PDF?
IronBarcode utiliza un sistema de coordenadas basado en píxeles en el que la coordenada x mide desde el borde izquierdo de la página y la coordenada y mide desde el borde inferior de la página cuando se utiliza el método StampToExistingPdfPage.
¿Cuáles son los casos de uso habituales para estampar códigos de barras en PDF existentes?
La función de sellado de PDF de IronBarcode se utiliza habitualmente para añadir códigos de seguimiento únicos a etiquetas de envío, números de lote en informes de fabricación, números de control de documentos en formularios legales y códigos QR para autenticación digital o enlaces de acceso rápido.
¿Es necesario guardar archivos intermedios para estampar un código de barras en un PDF?
No, el método StampToExistingPdfPage de IronBarcode estampa el código de barras directamente en el documento PDF sin crear archivos temporales, lo que ahorra tiempo de procesamiento y espacio de almacenamiento.
¿Puedo estampar códigos de barras en documentos PDF protegidos por contraseña?
Sí, IronBarcode permite estampar códigos de barras en PDF protegidos por contraseña. Simplemente proporcione la contraseña del PDF como parámetro opcional en el método StampToExistingPdfPage.






