Este sitio utiliza cookies de Google para prestar sus servicios y analizar su tráfico. Tu dirección IP y user-agent se comparten con Google, junto con las métricas de rendimiento y de seguridad, para garantizar la calidad del servicio, generar estadísticas de uso y detectar y solucionar abusos.Más información

View site in english Ir a la página de inicio Contacta conmigo
sábado, 9 de julio de 2016

Impresión de códigos de barras

En algunas ocasiones, resulta necesario imprimir un código de barras en algún documento o etiqueta. Existen numerosos formatos y codificaciones, en una o dos dimensiones, dependiendo de la cantidad de información que deba ser leída por el terminal. En este artículo voy a mostrar tres de los formatos más comunes para códigos de una dimensión, así como proporcionar código en CSharp para codificarlos.

En este enlace puedes descargar el código fuente del proyecto BarCodes, escrito con Visual Studio 2013. En él encontrarás además tres fuentes de libre distribución para poder imprimir los códigos de barras.

Code 39

El sistema code 39, o code 3 of 9, es uno de los más simples, y se puede escribir directamente en un documento, pues solamente hay que añadir el carácter * al principio y al final de la cadena con el código. Este es el código de barras para la cadena 812345678901:

Código de barras code 39
Código de barras code 39

Este tipo de código admite caracteres alfanuméricos y algunos símbolos, es fácil comprobar cuáles son los caracteres válidos simplemente escribiendo la cadena a codificar con el Word teniendo seleccionando el fuente del código de barras.

En el programa de ejemplo, puedes codificar una cadena para imprimir en code 39 mediante la clase CBEncoder, usando el método estático CodifyCode39.

Code 128

El código code 128 también admite caracteres alfanuméricos. La ventaja que tiene sobre el code 39 es que es más compacto, ya que los datos se encuentran codificados y la cadena resultante es más corta que la de entrada. Además, se realiza un checksum de los datos, lo que evita que se realicen lecturas incorrectas. Resulta conveniente cuando la cadena de texto a codificar es larga, ya que el code 39 puede generar códigos de barra demasiado largos. Este es el resultado para la cadena del ejemplo anterior:

Código de barras code 128
Código de barras code 128

Para codificar una cadena, se utiliza la función CodifyCode128 de la clase CBEncoder.

EAN 13

El código EAN 13 es uno de los más conocidos, lo puedes ver en casi todos los productos comerciales. Se trata de un código que solo admite caracteres alfanuméricos. La cadena debe tener exactamente 12 caracteres, pudiendo valer 0 los iniciales si el código tiene menos cifras. A estos se les añade otro dígito de control calculado mediante un checksum, lo que impide que se produzcan errores de lectura. Este es el aspecto con el código que estamos utilizando como ejemplo:

Código de barras EAN 13
Código de barras EAN 13

Para codificar una cadena para este código, utiliza la función CodifyEAN13 de la clase CBEncoder.

Comparte este artículo: Compartir en Twitter Compártelo en Facebook Compartir en Google Plus Compartir en LinkedIn
Comentarios (0):
* (Su comentario será publicado después de la revisión)

E-Mail


Nombre


Web


Mensaje


CAPTCHA
Change the CAPTCHA codeSpeak the CAPTCHA code