public class TestThumb {
/**简单缩小*/
@Test
public void test01(){
try {
Thumbnails.of(new File("F:/web/test/ImageTrans/Koala.jpg"))
.size(160,160)
.toFile(new File("F:/web/test/ImageTrans/test01.jpg"));
} catch (IOException e) {
e.printStackTrace();
}
}
/**压缩比例*/
@Test
public void test02(){
try {
Thumbnails.of(new File("F:/web/test/ImageTrans/Koala.jpg"))
.scale(0.3f)
.toFile(new File("F:/web/test/ImageTrans/test02.jpg"));
} catch (IOException e) {
e.printStackTrace();
}
}
/**输出格式控制*/
@Test
public void test03(){
try {
BufferedImage bi=Thumbnails.of(new File("F:/web/test/ImageTrans/Koala.jpg"))
.size(160,160)
.asBufferedImage();
ImageIO.write(bi, "bmp",new FileOutputStream("F:/web/test/ImageTrans/test03.bmp"));
} catch (IOException e) {
e.printStackTrace();
}
}
/**图片切割*/
@Test
public void test04(){
try {
BufferedImage bi=Thumbnails.of(new File("F:/web/test/ImageTrans/Koala.jpg"))
.scale(0.5f)
.asBufferedImage();
Thumbnails.of(bi)
.sourceRegion(Positions.CENTER, 300,300)
.scale(0.1f)
.toFile(new File("F:/web/test/ImageTrans/test04.jpg"));
} catch (IOException e) {
e.printStackTrace();
}
}
/**图片宽度*/
@Test
public void test05(){
try {
/*BufferedImage bi=Thumbnails.of(new FileInputStream("F:/web/test/ImageTrans/Koala.jpg"))
.scale(0.1f)
.asBufferedImage();*/
BufferedImage bi=ImageIO.read(new FileInputStream("F:/web/test/ImageTrans/Koala.jpg"));
System.out.println(bi.getHeight()+","+bi.getWidth());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**设定宽度等比例压缩*/
@Test
public void test06(){
try {
int width=400;
BufferedImage bi=ImageIO.read(new FileInputStream("F:/web/test/ImageTrans/Koala.jpg"));
Thumbnails.of(bi)
.scale((double)width/(double)bi.getWidth())
.toFile(new File("F:/web/test/ImageTrans/test06.jpg"));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
转载于:https://my.oschina.net/686991/blog/355932