es.mcu.yingo.utils.procesador
Class ProcesadorStreamMarcaAgua

java.lang.Object
  extended by es.mcu.yingo.utils.procesador.ProcesadorStreamMarcaAgua
All Implemented Interfaces:
ProcesadorStream

public class ProcesadorStreamMarcaAgua
extends java.lang.Object
implements ProcesadorStream

Procesa el inputStream de la imagen y le añade una marca de agua

Author:
vicente.carbajo

Field Summary
static java.lang.String CENTRADO_ABAJO_DERECHA
           
static java.lang.String CENTRADO_ABAJO_IZQUIERDA
           
static java.lang.String CENTRADO_ARRIBA_DERECHA
           
static java.lang.String CENTRADO_ARRIBA_IZQUIERDA
           
static java.lang.String CENTRADO_CENTRAL
           
private  java.awt.Color color
          Color a utilizar
private  java.lang.Float factorEscalaLogo
          Factor de escala para el logo
private  java.awt.Font fuente
          Tipo de fuente a utilizar
protected  org.apache.commons.logging.Log logger
           
private  java.lang.String logo
          Logo a añadir
private  java.lang.String textoMarcaAgua
          Texto de la marca de agua
private  java.lang.String tipoCentradoLogo
          Tipo de centrado del logo
private  java.lang.String tipoCentradoTexto
          Tipo de centrado del texto
private  java.lang.Float transparencia
          Transparencia de la marca de agua
 
Constructor Summary
ProcesadorStreamMarcaAgua()
           
 
Method Summary
private  java.io.InputStream _procesar(java.io.InputStream imagenStream)
          Método privado que recoge todas las excepciones
private  void anadirLogo(java.awt.Graphics2D g2d, java.awt.image.BufferedImage foto)
          Añade el logo a la imagen.
private  void anadirTextoMarca(java.awt.Graphics2D g2d, java.awt.image.BufferedImage foto)
          Añade el texto de marca, si el atributo 'anadirTextoMarca' no está cargado no se hace nada
private  java.util.Map<java.lang.String,java.lang.Integer> centrar(java.awt.image.BufferedImage foto, java.lang.String tipoCentrado, int anchoObjeto, int altoObjeto)
          Se pasa por referencia la anchura y la altura calculadas
private  void centrarLogo(java.awt.Graphics2D g2d, java.awt.image.BufferedImage foto, java.awt.image.BufferedImage imagenEscalada)
          Centra el logo según lo cargado en el atributo tipoCentradoLogo
private  void centrarTexto(java.awt.Graphics2D g2d, java.awt.image.BufferedImage foto, java.awt.geom.Rectangle2D rect)
          Centra el texto de la transparencia
 java.awt.Color getColor()
          Color a utilizar
 java.lang.Float getFactorEscalaLogo()
          Factor de escala para el logo
 java.awt.Font getFuente()
          Tipo de fuente a utilizar
 java.lang.String getLogo()
          Logo a añadir
 java.lang.String getTextoMarcaAgua()
          Texto de la marca de agua
 java.lang.String getTipoCentradoLogo()
          Tipo de centrado para el logo
 java.lang.String getTipoCentradoTexto()
          Tipo de centrado del texto
 java.lang.Float getTransparencia()
          Transparencia de la marca de agua
 java.io.InputStream procesar(java.io.InputStream miInputStream, java.lang.String codExpediente, Usuario usuario)
          Método que procesa el InputStream devolviendo otro objeto InputStream modificado
 void setColor(java.awt.Color color)
          Color a utilizar
 void setFactorEscalaLogo(java.lang.Float factorEscalaLogo)
          Factor de escala para el logo
 void setFuente(java.awt.Font fuente)
          Tipo de fuente a utilizar
 void setLogo(java.lang.String logo)
          Logo a añadir
 void setTextoMarcaAgua(java.lang.String textoMarcaAgua)
          Texto de la marca de agua
 void setTipoCentradoLogo(java.lang.String tipoCentradoLogo)
          Tipo de centrado para el logo
 void setTipoCentradoTexto(java.lang.String tipoCentradoTexto)
          Tipo de centrado del texto
 void setTransparencia(java.lang.Float transparencia)
          Transparencia de la marca de agua
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected final org.apache.commons.logging.Log logger

CENTRADO_ARRIBA_IZQUIERDA

public static final java.lang.String CENTRADO_ARRIBA_IZQUIERDA
See Also:
Constant Field Values

CENTRADO_ABAJO_IZQUIERDA

public static final java.lang.String CENTRADO_ABAJO_IZQUIERDA
See Also:
Constant Field Values

CENTRADO_ABAJO_DERECHA

public static final java.lang.String CENTRADO_ABAJO_DERECHA
See Also:
Constant Field Values

CENTRADO_ARRIBA_DERECHA

public static final java.lang.String CENTRADO_ARRIBA_DERECHA
See Also:
Constant Field Values

CENTRADO_CENTRAL

public static final java.lang.String CENTRADO_CENTRAL
See Also:
Constant Field Values

textoMarcaAgua

private java.lang.String textoMarcaAgua
Texto de la marca de agua


transparencia

private java.lang.Float transparencia
Transparencia de la marca de agua


fuente

private java.awt.Font fuente
Tipo de fuente a utilizar


color

private java.awt.Color color
Color a utilizar


tipoCentradoTexto

private java.lang.String tipoCentradoTexto
Tipo de centrado del texto


tipoCentradoLogo

private java.lang.String tipoCentradoLogo
Tipo de centrado del logo


logo

private java.lang.String logo
Logo a añadir


factorEscalaLogo

private java.lang.Float factorEscalaLogo
Factor de escala para el logo

Constructor Detail

ProcesadorStreamMarcaAgua

public ProcesadorStreamMarcaAgua()
Method Detail

procesar

public java.io.InputStream procesar(java.io.InputStream miInputStream,
                                    java.lang.String codExpediente,
                                    Usuario usuario)
                             throws YingoException
Description copied from interface: ProcesadorStream
Método que procesa el InputStream devolviendo otro objeto InputStream modificado

Specified by:
procesar in interface ProcesadorStream
Returns:
Throws:
YingoException

_procesar

private java.io.InputStream _procesar(java.io.InputStream imagenStream)
                               throws java.io.IOException
Método privado que recoge todas las excepciones

Parameters:
imagenStream -
Returns:
Throws:
java.io.IOException

anadirLogo

private void anadirLogo(java.awt.Graphics2D g2d,
                        java.awt.image.BufferedImage foto)
                 throws java.io.IOException
Añade el logo a la imagen. Si no se ha cargado el atributo logo no se hace nada

Parameters:
g2d -
foto -
Throws:
java.io.IOException

centrarLogo

private void centrarLogo(java.awt.Graphics2D g2d,
                         java.awt.image.BufferedImage foto,
                         java.awt.image.BufferedImage imagenEscalada)
Centra el logo según lo cargado en el atributo tipoCentradoLogo

Parameters:
g2d -
foto -
imagenEscalada -

anadirTextoMarca

private void anadirTextoMarca(java.awt.Graphics2D g2d,
                              java.awt.image.BufferedImage foto)
Añade el texto de marca, si el atributo 'anadirTextoMarca' no está cargado no se hace nada

Parameters:
g2d -
foto -

centrar

private java.util.Map<java.lang.String,java.lang.Integer> centrar(java.awt.image.BufferedImage foto,
                                                                  java.lang.String tipoCentrado,
                                                                  int anchoObjeto,
                                                                  int altoObjeto)
Se pasa por referencia la anchura y la altura calculadas

Parameters:
foto -
tipoCentrado -
anchoObjeto -
altoObjeto -
anchoRes -
altoRes -

centrarTexto

private void centrarTexto(java.awt.Graphics2D g2d,
                          java.awt.image.BufferedImage foto,
                          java.awt.geom.Rectangle2D rect)
Centra el texto de la transparencia

Parameters:
g2d -
foto -
rect -

getTextoMarcaAgua

public java.lang.String getTextoMarcaAgua()
Texto de la marca de agua

Returns:
the textoMarcaAgua

setTextoMarcaAgua

public void setTextoMarcaAgua(java.lang.String textoMarcaAgua)
Texto de la marca de agua

Parameters:
textoMarcaAgua - the textoMarcaAgua to set

getTransparencia

public java.lang.Float getTransparencia()
Transparencia de la marca de agua

Returns:
the transparencia

setTransparencia

public void setTransparencia(java.lang.Float transparencia)
Transparencia de la marca de agua

Parameters:
transparencia - the transparencia to set

getFuente

public java.awt.Font getFuente()
Tipo de fuente a utilizar

Returns:
the fuente

setFuente

public void setFuente(java.awt.Font fuente)
Tipo de fuente a utilizar

Parameters:
fuente - the fuente to set

getColor

public java.awt.Color getColor()
Color a utilizar

Returns:
the color

setColor

public void setColor(java.awt.Color color)
Color a utilizar

Parameters:
color - the color to set

getTipoCentradoTexto

public java.lang.String getTipoCentradoTexto()
Tipo de centrado del texto

Returns:
the tipoCentradoTexto

setTipoCentradoTexto

public void setTipoCentradoTexto(java.lang.String tipoCentradoTexto)
Tipo de centrado del texto

Parameters:
tipoCentradoTexto - the tipoCentradoTexto to set

getLogo

public java.lang.String getLogo()
Logo a añadir

Returns:
the logo

setLogo

public void setLogo(java.lang.String logo)
Logo a añadir

Parameters:
logo - the logo to set

getFactorEscalaLogo

public java.lang.Float getFactorEscalaLogo()
Factor de escala para el logo

Returns:
the factorEscalaLogo

setFactorEscalaLogo

public void setFactorEscalaLogo(java.lang.Float factorEscalaLogo)
Factor de escala para el logo

Parameters:
factorEscalaLogo - the factorEscalaLogo to set

getTipoCentradoLogo

public java.lang.String getTipoCentradoLogo()
Tipo de centrado para el logo

Returns:
the tipoCentradoLogo

setTipoCentradoLogo

public void setTipoCentradoLogo(java.lang.String tipoCentradoLogo)
Tipo de centrado para el logo

Parameters:
tipoCentradoLogo - the tipoCentradoLogo to set