amap-codigos-barras

Última modificación por Administrator el 2019/11/04 12:19

AMAPCodigosBarras-1.1.1 2017/09/29

Corrección de bug sobre la orientación por defecto para Código de Barras de tipo (BARCODE128-BARCODE39-CODABAR-DATAMATRIX-EAN-INTER25-POSTNET-QR).

AMAPCodigosBarras-1.1.0 2017/09/26

Funcionalidad de rotación de Código de Barras de tipo (BARCODE128-BARCODE39-CODABAR-DATAMATRIX-EAN-INTER25-POSTNET-QR) en amap-codigo-barras.

AMAPCodigosBarras-1.0.3 2015/10/21

Simplificada la configuración (creación del servicio).

AMAPCodigosBarras-1.0.2 2014/10/07

Corrección de bugs menores.

AMAPCodigosBarras-1.0.1 2014/10/03

Añadida la funcionalidad de generar códigos de barras en formato Macro PDF417

AMAPCodigosBarras-1.0 2012/09/24

Primera versión del componente

<dependency>
<groupId>es.gobcantabria.amap.informes</groupId>
<artifactId>amap-codigos-barras</artifactId>
<version>1.1.1</version>
</dependency>

El componente utiliza la librería AWT de java, por lo que deberá utilizarse en un sistema operativo con entorno gráfico o en su defecto deberá ser lanzado con la opción "-Djava.awt.headless=true" 

Para más informacion:

http://docs.oracle.com/javase/1.4.2/docs/guide/awt/AWTChanges.html#headless

Sin recursos disponibles.

Configuración

Configuración de la factoria de servicios

Para la utilización del componente amap-codigo-barras basta con añadir al pom.xml el componente (o bien añadir manualmente la librería y sus dependencias)  y crear un servicio del siguiente modo:

   CodigosBarrasService codigosBarrasService = CodigosBarrasService.getServicio();

Una vez creado el servicio se pueden utilizar sus métodos de la forma convencional.

Codigos de Barras

Los códigos de barras están agrupados en clases con un interfaz común, cada una de las clases que implementa el interfaz representa un tipo de codificación de barras.

Clases Codigos Barras

Nombreamap-codigos-barras
Identificadoramap-codigos-barras
Grupoes.gobcantabria.amap.informes
Versión1.1.1
Licencia
DesarrolladorDGSAC
Descripción

Componente para la generación de códigos de barras

Documentaciónamap-codigos-barras (JavaDoc)
Binarioamap-codigos-barras (Jar)

Sin particularidades. Seguir las recomendaciones del fabricante.

Configuración del código de barras


La configuración del código de barras se tomará por defecto, pero también puede ser indicada explícitamente en la creación del objeto 


// configuración del código de barras
CodigoBarrasConfig config = new CodigoBarrasConfig();
config.setBarrasProteccion(false);
config.setColor(Color.BLUE);
config.setColorFondo(Color.GREEN);

// crear el código de barras con la configuración indicada
CodigosBarrasService servicio = CodigosBarrasService.getServicio();
codigoBarras = servicio.getBarcode("890002",CodigoBarrasTypes.INTER25,config);
Image image = codigoBarras.getImage();

También es posible reconfigurar el objeto una vez creado.


// crear el código de barras con la configuración indicada
CodigosBarrasService servicio = CodigosBarrasService.getServicio();
codigoBarras = servicio.getBarcode("890002",CodigoBarrasTypes.INTER25);

// configuración del código de barras
CodigoBarrasConfig config = new CodigoBarrasConfig();
config.setColor(Color.BLUE);
config.setBarrasProteccion(false);
config.setColor(Color.BLUE);
config.setColorFondo(Color.GREEN);

//configuración orientacion para Codigo de Barras Tipo PDF417
config.setOrientacion(PDF417OrientationTypes.HORIZONTAL);

//configuración orientacion para Codigo de Barras Tipo BARCODE128-BARCODE39-CODABAR
-DATAMATRIX-EAN-INTER25-POSTNET-QR
config.setOrientacionGeneric(GenericOrientationTypes.HORIZONTAL);

codigoBarras.setConfig(config);

// obtener la imagen
Image image = codigoBarras.getImage();

Opciones de configuración

Las opciones disponibles en la configuración del código de barras son las siguientes:

  • barrasProteccion: indica si se añaden barras de protección (no válido para DATAMATRIX, QR y PDF417)
  • colorFondo: color de fondo del código de barras
  • color: color de las "barras" del código de barras
  • ancho: alto del código QR (solo para el formato QR)
  • alto: ancho del código QR (solo para el formato QR) 
  • bordeBlanco: ancho del borde que rodea al código de barras (solo para el formato DATAMATRIX)

Salida


Las formas en el que se puede obtener la imagen con el código de barras corresponden con los siguientes métodos de las clases de código de barras:

  • getImage: retorna un objeto java.awt.Image con el código de barras generado.
  • getBufferedImage: retorna un objeto java.awt.BufferedImage con el código de barras generado.
  • saveImage: Guarda en fichero la imagen generada, el nombre del fichero deberá contener la ruta y el tipo del fichero a generar.

Factoria


Además de la creación de códigos de barra directamente invocando a su constructor se dispone de una factoría para crearlos de una manera uniforme indicando la información y el tipo de código de barras a codificar.


// crear el código de barras 1
CodigosBarrasService servicio = CodigosBarrasService.getServicio();
CodigoBarrasInterface codigoBarras = servicio.getBarcode("123",CodigoBarrasTypes.PDF417);
codigoBarras.saveImage("codigoBarras1.png");

Adicionalmente se puede indicar la configuración personalizada para la generación del código de barras.


// crear el código de barras con las barras de color azul
CodigoBarrasConfig config = new CodigoBarrasConfig();
config.setColor(Color.BLUE);
CodigosBarrasService servicio = CodigosBarrasService.getServicio();
codigoBarras = servicio.getBarcode("890002",CodigoBarrasTypes.POSTNET,config);
Image image = codigoBarras.getImage();

  

Macro PDF417


En caso de generación de códigos de barras en formato Macro PDF417, la información de codifica en varios códigos de barras, hay 2 opciones:

Obtener las imágenes en una lista:


CodigoBarrasConfig config = new CodigoBarrasConfig();
// Imagenes Individuales
CodigosBarrasService servicio = CodigosBarrasService.getServicio();
CodigoBarrasInterface codigoBarras = 
    servicio.getBarcode(codigo, CodigoBarrasTypes.PDF417, config);
List<Image> codigos = codigoBarras.getImages();
...

Se puede también obtener una sola imagen con toda la información:


...
Image codigoBarras;
// Una imagen en mosaico
config.setOrientacion(PDF417OrientationTypes.MOSAICO);
CodigosBarrasService servicio = CodigosBarrasService.getServicio();
codigoBarras = servicio.getBarcode(codigo, CodigoBarrasTypes.PDF417, config);
codigoBarras = codigoBarras.getImage();
// Una imagen en horizontal
config.setOrientacion(PDF417OrientationTypes.HORIZONTAL);
codigoBarras = servicio.getBarcode(codigo, CodigoBarrasTypes.PDF417, config);
codigoBarras = codigoBarras.getImage();
// Una imagen en vertical
config.setOrientacion(PDF417OrientationTypes.VERTICAL);
codigoBarras = servicio.getBarcode(codigo, CodigoBarrasTypes.PDF417, config);
codigoBarras = codigoBarras.getImage();
...

BARCODE128-BARCODE39-CODABAR-DATAMATRIX-EAN-INTER25-POSTNET-QR

Configuración por defecto para la orientación:


CodigoBarrasConfig() {
    orientacionGeneric= GenericOrientationTypes.HORIZONTAL;
 }

Configuración de una imagen con toda la información:


CodigosBarrasService servicio = CodigosBarrasService.getServicio();

CodigoBarrasConfig config = new CodigoBarrasConfig();
  
// Una imagen en horizontal
  config.setOrientacionGeneric(GenericOrientationTypes.HORIZONTAL);
codigoBarras = servicio.getBarcode(codigo, CodigoBarrasTypes.BARCODE128, config);
codigoBarras.saveImage("CodigosBarrasBARCODE128_horizontal.png");
  
// Una imagen en vertical
  config.setOrientacionGeneric(GenericOrientationTypes.VERTICAL);
codigoBarras = servicio.getBarcode(codigo, CodigoBarrasTypes.BARCODE128, config);
codigoBarras.saveImage("CodigosBarrasBARCODE128_vertical.png");

© 2014 GOBIERNO DE CANTABRIA - AVISO LEGAL Y PROTECCIÓN DE DATOS