Cómo crear imágenes de códigos de barras en C# con IronBarcode
IronBarcode permite a los desarrolladores .NET generar códigos de barras e imágenes de códigos QR en C# con una sola línea de código, soportando múltiples formatos y tipos de imagen. Cree sistemas de gestión de inventarios, aplicaciones de venta al por menor o soluciones de procesamiento de documentos con una sólida API que crea códigos de barras de calidad profesional para una lectura fiable en los principales lectores.
como-título:2(Inicio Rápido: Crea y Guarda un Código de Barras Code128 en Una Línea)
Utilice la API de una sola línea de IronBarcode para crear un código de barras Code128 a partir de una cadena y guardarlo como una imagen PNG. Empiece inmediatamente: proporcione los datos, elija la codificación y el tamaño, y escriba su archivo de imagen.
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("Sample123", BarcodeEncoding.Code128, 250, 100).SaveAsPng("Barcode.png");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)
- Descargar la biblioteca IronBarcode de C#
- Generar códigos de barras y guardarlos como archivos de imagen
- Generar códigos QR y guardarlos como archivos de imagen
¿Cómo generar BarCodes y guardarlos como archivos de imagen?
Además de leer códigos de barras, IronBarcode permite a los usuarios escribir códigos de barras con una codificación mínima. Call the CreateBarcode() method from the BarcodeWriter class, specifying the barcode value, type, width, and height in the method parameters. Esto genera un objeto GeneratedBarcode, que se puede guardar como un archivo de imagen utilizando el método SaveAs().
¿Qué tipos de datos puedo utilizar para los valores de los códigos de barras?
El método BarcodeWriter.CreateBarcode() acepta varios tipos de datos para los valores del código de barras: byte[] array, MemoryStream y string. La longitud de las cadenas y los caracteres aceptados varían según el tipo de código de barras; consulte nuestra documentación de la API para obtener más información. Code128 admite todo el conjunto de caracteres ASCII, mientras que UPC-A requiere exactamente 12 dígitos numéricos. Para datos binarios, utilice byte[] array para codificar estructuras de datos complejas.
¿Qué tipos de codificación de códigos de barras se admiten?
IronBarcode admite numerosos formatos de códigos de barras; consulte nuestro artículo Formatos de códigos de barras admitidos para ver la lista completa. Los formatos más populares incluyen:
- Códigos de barras lineales/1D: Code128, Code39, UPC-A, UPC-E, EAN-8, EAN-13
- Códigos de Barras 2D: Código QR, Data Matrix, PDF417, Aztec
- Formatos especializados: MaxiCode para envíos, Databar para minoristas
Cada formato tiene un uso específico. Code128 maneja bien los datos alfanuméricos en general, mientras que los códigos QR ofrecen una corrección de errores superior para el escaneado móvil.
¿Cómo afectan los ajustes de anchura y altura a mi BarCode?
Establezca las dimensiones de la imagen del código de barras de salida en píxeles. Las medidas por defecto son 250 px para ambos. Algunos tipos de códigos de barras (QR, PDF417) requieren dimensiones específicas para su conformidad. Cuando las dimensiones de entrada no coinciden con los requisitos, el código de barras se genera con las dimensiones requeridas y los espacios en blanco rellenan el espacio restante. Las dimensiones demasiado pequeñas provocan una excepción.
Para una digitalización óptima:
- Códigos de barras lineales: Mantener una anchura significativamente mayor que la altura
- Códigos de barras 2D: Utilice dimensiones cuadradas para los códigos QR (por ejemplo, 250x250)
- Calidad de impresión: las dimensiones de píxel más altas mejoran la calidad de impresión en tamaños físicos más grandes
¿A qué formatos de imagen puedo exportar códigos de barras?
El objeto GeneratedBarcode de BarcodeWriter.CreateBarcode() guarda en varios formatos de imagen utilizando métodos específicos de SaveAs():
SaveAsGif(): Guarda como archivo de imagen GIFSaveAsJpeg(): Guarda como archivo de imagen JPEGSaveAsPng(): Guarda como archivo de imagen PNG (recomendado para web)SaveAsTiff(): Guarda como archivo de imagen TIFF (ideal para archivar/imprimir)SaveAsWindowsBitmap(): Guarda como archivo de imagen BMP- <código>SaveAsImage()</código>: Método general-especifica la extensión del formato en la ruta del archivo
Además, exporte códigos de barras como flujos para el procesamiento en memoria o crea códigos de barras como documentos PDF para la integración de documentos.
¿Cómo generar un código de barras y guardarlo como archivo de imagen?
Utilice BarcodeWriter.CreateBarcode() para crear un código de barras Code128 y guardarlo como una imagen JPEG:
using IronBarCode;
// Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
// Create a barcode with custom options
var myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150);
// Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(10);
// Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg");
myBarcode.SaveAsPng("product-barcode.png");using IronBarCode;
// Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
// Create a barcode with custom options
var myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150);
// Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(10);
// Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg");
myBarcode.SaveAsPng("product-barcode.png");
Para opciones de estilo avanzadas, consulte nuestra guía sobre personalización de estilos de códigos de barras.
¿Cómo generar códigos QR y guardarlos como archivos de imagen?
los códigos QR, clasificados como códigos de barras bidimensionales, son totalmente compatibles con IronBarcode. Su versatilidad, atractivo estético y características personalizables han impulsado su adopción generalizada, desde menús de restaurantes hasta sistemas de pago.
La creación de códigos QR requiere diferentes métodos debido a su complejidad. Llame al método CreateQrCode() de la clase QRCodeWriter, que acepta 4 argumentos: el valor del código de barras, el tamaño del código QR de salida, el campo enum QRCodeWriter.QrErrorCorrectionLevel y QRVersion.
¿Qué tipos de datos puedo utilizar para los valores del código QR?
QRCodeWriter.CreateQrCode() acepta valores numéricos, alfabéticos o alfanuméricos como tipos byte[] array, MemoryStream o System.String. Los códigos QR destacan en el almacenamiento:
- URL: Dirigen a los usuarios a sitios web o páginas de destino
- Texto: Almacena hasta 4.296 caracteres alfanuméricos
- Datos binarios: codificar archivos o estructuras de datos complejas
- Datos estructurados: vCards, credenciales WiFi o información de pago
Para obtener información sobre la compatibilidad con Unicode y los caracteres internacionales, consulte nuestro tutorial escritura de códigos de barras Unicode.
¿Cómo configuro el tamaño del código QR?
Especifique el tamaño del código QR directamente como Int32 en píxeles (px). El tamaño por defecto es de 500 px. Considera estos factores:
- Medio de visualización: Las pantallas suelen necesitar 200-400px
- Aplicaciones de impresión: Utilice 600px o superior para una impresión de calidad
- Distancia de escaneado: Los códigos más grandes se escanean mejor desde distancias mayores
¿Qué es el nivel de corrección de errores QR y por qué es importante?
QRErrorCorrectionLevel determina la tolerancia a fallos, con cuatro niveles: Alto, Alto, Medio y Bajo. Los niveles de corrección más altos crean códigos QR más complejos que resisten los errores de lectura incluso cuando están dañados o parcialmente oscurecidos.
Nivel de corrección de errores QR.Más alto
Genera el código QR más complejo con un 30% de corrección de errores. Admite estampación de logotipos o gráficos de imagen. Ideal para personalizar códigos QR con logotipos.

Nivel de corrección de errores QR.Alto
Se aplica un 25% de corrección de errores. Menos complejo que el nivel más alto. Equilibra la durabilidad con la capacidad de datos.

Nivel de corrección de errores QR.Medio
Se aplica un 15% de corrección de errores. Produce códigos QR más rápido pero con mayor susceptibilidad a errores. Adecuado para la mayoría de aplicaciones empresariales con una impresión clara.

Nivel de corrección de errores QR.Bajo
Aplica un 7% de corrección de errores, creando el código QR menos complejo. Utilizar cuando se requiera la máxima capacidad de datos con condiciones óptimas de escaneado.

¿Cuándo debo utilizar diferentes versiones de QR?
La versión QR (1-40) determina la complejidad de los símbolos y la capacidad de los datos. Las versiones superiores producen códigos más complejos que almacenan más datos. Una versión demasiado baja puede causar problemas a la hora de codificar grandes cantidades de datos. La versión 0 asigna automáticamente la versión adecuada en función del valor codificado. See QR Version for more information.
¿Cómo crear una imagen de código QR con una configuración específica?
Utilice QRCodeWriter.CreateQrCode() para escribir un código QR y guardarlo como imagen:
using IronBarCode;
// Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
// Advanced QR code with custom styling
var qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High);
// Add logo and styling
qrCode.AddLogo("logo.png");
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue);
// Save in multiple formats
qrCode.SaveAsPng("styled-qr.png");
qrCode.SaveAsPdf("styled-qr.pdf");using IronBarCode;
// Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
// Advanced QR code with custom styling
var qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High);
// Add logo and styling
qrCode.AddLogo("logo.png");
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue);
// Save in multiple formats
qrCode.SaveAsPng("styled-qr.png");
qrCode.SaveAsPdf("styled-qr.pdf");
El código codifica un valor alfanumérico a 250 píxeles con corrección de errores media. La versión 0 permite al programa seleccionar la versión de código QR adecuada. SaveAsJpeg() acepta el nombre de archivo con extensión JPEG.
Mejores prácticas para la generación de imágenes de códigos de barras
Para aplicaciones de producción:
- Elige el formato adecuado: PNG para web, TIFF para archivo, JPEG para uso general
- Prueba de escaneado: Verifique los códigos de barras con varios dispositivos de escaneado
- Aplique márgenes adecuados: Utilice configuración de márgenes de código de barras para un escaneado fiable
- Considere el rendimiento: Explore las opciones async y multithreading para la generación de grandes volúmenes
Para obtener más ejemplos y técnicas, visite nuestro Tutorial del generador de imágenes de códigos de barras en C#.
Preguntas Frecuentes
¿Cómo puedo crear una imagen de código de barras en C# con una sola línea de código?
Con IronBarcode, puede crear una imagen de código de barras en una línea utilizando el método BarcodeWriter.CreateBarcode(). Simplemente pase sus datos, tipo de codificación, ancho y alto, y luego guárdelo como un archivo de imagen. Por ejemplo: IronBarCode.BarcodeWriter.CreateBarcode("Sample123", BarcodeEncoding.Code128, 250, 100).SaveAsPng("Barcode.png");
¿Qué tipos de datos puedo codificar en códigos de barras?
El método BarcodeWriter.CreateBarcode() de IronBarcode acepta varios tipos de datos, como matrices de bytes, MemoryStreams y cadenas. La longitud de las cadenas y los caracteres aceptados varían según el tipo de código de barras: Code128 admite todo el conjunto de caracteres ASCII, mientras que UPC-A requiere exactamente 12 dígitos numéricos. Para los datos binarios, puede utilizar matrices de bytes para codificar estructuras de datos complejas.
¿Qué formatos de código de barras se admiten para la generación de imágenes?
IronBarcode admite numerosos formatos de códigos de barras, incluidos códigos de barras lineales/1D (Code128, Code39, UPC-A, UPC-E, EAN-8, EAN-13), códigos de barras 2D (QR Code, Data Matrix, PDF417, Aztec) y formatos especializados como MaxiCode para envíos y Databar para comercios. Cada formato tiene un uso específico, con el Código 128 gestionando datos alfanuméricos generales y los códigos QR ofreciendo una corrección de errores superior para el escaneado móvil.
¿Cómo establezco las dimensiones de mi imagen de código de barras?
Puede establecer las dimensiones de la imagen del código de barras en píxeles directamente en los parámetros del método CreateBarcode(). IronBarcode utiliza medidas por defecto de 250px tanto para la anchura como para la altura. Algunos tipos de códigos de barras como QR y PDF417 pueden requerir dimensiones específicas para su cumplimiento, y la biblioteca se ajusta automáticamente cuando las dimensiones de entrada no coinciden con los requisitos.
¿En qué formatos de archivo de imagen puedo guardar los códigos de barras generados?
IronBarcode le permite guardar los códigos de barras generados en múltiples formatos de imagen utilizando el método SaveAs(). Puede guardar como PNG utilizando SaveAsPng(), así como otros formatos comunes como JPEG, BMP y TIFF. El objeto GeneratedBarcode devuelto por CreateBarcode() proporciona varios métodos de guardado para diferentes tipos de archivo.
¿Puedo generar códigos QR además de códigos de barras tradicionales?
Sí, IronBarcode es totalmente compatible con la generación de códigos QR junto con los códigos de barras tradicionales. Puede crear códigos QR utilizando el mismo método CreateBarcode() especificando BarcodeEncoding.QRCode como tipo de codificación. Los códigos QR ofrecen ventajas como una corrección de errores superior y son ideales para aplicaciones de escaneado móvil.






