Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/04/2016, 21:24
Avatar de Hyemin
Hyemin
 
Fecha de Ingreso: agosto-2014
Mensajes: 147
Antigüedad: 9 años, 8 meses
Puntos: 0
Error al escribir una imagen .TIF

Estoy haciendo una rutina para poner marcas de agua en imagenes, el sistema funciona muy bien con todas las imagenes menos con las TIFs donde directamente da un nullpointer

Alguna idea de por que no funciona?

Se supone que Java8 ya tenia el soporte para TIFs en el ImageIO

Código Java:
Ver original
  1. BufferedImage sourceImage = ImageIO.read(origen);
  2.    
  3.         Graphics2D g2d = (Graphics2D) sourceImage.getGraphics();
  4.  
  5.         // inicializo las propiedades de buentes, color, transparencia
  6.         AlphaComposite alphaChannel = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.1f);
  7.         g2d.setComposite(alphaChannel);
  8.         g2d.setColor(Color.WHITE);
  9.         g2d.setFont(new Font("Arial", Font.BOLD, 64));
  10.         FontMetrics fontMetrics = g2d.getFontMetrics();
  11.         Rectangle2D rect = fontMetrics.getStringBounds(text, g2d);
  12.  
  13.         // calculo las coordenadas donde poner la marca en este caso la centro
  14.         int centerX = (sourceImage.getWidth() - (int) rect.getWidth()) / 2;
  15.         int centerY = sourceImage.getHeight() / 2;
  16.  
  17.         // dibujo la marca
  18.         g2d.drawString(text, centerX, centerY);
  19.  
  20.         ImageIO.write(sourceImage, "png", destino);
  21.         g2d.dispose();