Acerca de la conversión de formato de imagen a través de Java
import javax.imageio.ImageIO;
public class ImageCut {
/**
* Escalar imagen
* @ param srcImageFile dirección del archivo de imagen de origen
* @param dirección de imagen escalada del resultado
* @param opciones de escala de escala: verdadero para ampliar; falso para reducir
* /
escala de vacío estática pública (String srcImageFile, resultado de cadena, escala int,
escala de vacío estática pública (String srcImageFile, resultado de cadena, escala int,
* ) Resultado de cadena, escala int,
indicador booleano) {
try {
BufferedImage src = ImageIO.read(new File(srcImageFile)); / Leer el archivo
int width = src.getWidth(); // obtener el ancho de la imagen de origen
int height = src.getHeight() // obtener el ancho de la imagen de origen
int width = src.getWidth(); // obtener la imagen de origen widthgetHeight() // Obtener la longitud de la imagen de origen
if (flag) { // Ampliar
ancho = ancho * escala;
alto = alto * escala
} else {// encoger
ancho = ancho/escala; ;
p>altura = altura / escala
}
Imagen imagen = src.getScaledInstance(ancho, alto,
Imagen .SCALE_DEFAULT);
Etiqueta BufferedImage = nueva BufferedImage(ancho, alto,
BufferedImage.TYPE_INT_RGB
Gráfico = src.getScaledInstance(
);Gráficos g = tag.getGraphics();
Gráficos g = tag.getGraphics()
Gráficos g
= tag.getGraphics();
g.drawImage(image, 0, 0, null // Dibuja una imagen reducida
g.dispose();
ImageIO.write(tag, "JPEG" new File(resultado)); // Salida al flujo de archivos
} catch (IOException e) {
e.printStackTrace( );
}
}
}
* Recorte de imagen
* @param srcImageFile imagen de origen Dirección
* @param descDir fragmento de carpeta de destino
* @param destWidth ancho del fragmento de destino
* @param destHeight alto del fragmento de destino
* /
corte vacío estático público (String srcImageFile, String descDir, int destWidth,
int destHeight) {
prueba {
Imagen img;
ImageFilter cropFilter; // Leer imagen fuente
BufferedImage bi = ImageIO.read(new File(srcImageFile));
int srcWidth = bi. getHeight(); // Ancho de la imagen de origen
int srcHeight = bi.getWidth(); // Ancho de la imagen de origen} else {
cols = (int) Floor(srcWidth) / destWidth) 1;
}
if (srcHeight destHeight == 0) {
filas = srcHeight / destHeight
} else {
filas = (int) Math.floor(srcHeight / destHeight) 1
}
}
// Bucle a través de cortes
// Idea de mejora: ¿Es posible acelerar el corte con subprocesos múltiples BufferedImage src = ImageIO.read(f
ImageIO.write(src , "JPG); ", nuevo archivo (resultado));
} catch (Excepción e) {
//TODO generar automáticamente el bloque catch
e.printStackTrace ();
}
}
// Color a blanco y negro
gris vacío estático público (fuente de cadena, resultado de cadena) {
prueba {
>
BufferedImage src = ImageIO.read(new File(source));
ColorSpace cs = ColorSpace.
ColorSpace cs = ColorSpace.getInstance(ColorSpace.CS_GRAY); /p>
ColorConvertOp op = new ColorConvertOp(cs, null);
src = op.filter(src, null);
ImageIO.write(src, "JPEG); ", nuevo archivo(resultado)) /1.jpg", "e:/t/", 200, 150
}
}
}
Referencias: