Java8 Imageio不支持WebP图像格式
我需要从WebP映像开始创建缩略图,但是ImageIO不支持此格式。有没有库可以让我做这样的事情?
String format = getImageFormat(imageFile);
Iterator readers = ImageIO.getImageReadersByFormatName(format);
// rescaling the image
BufferedImage bi = loadImageRescalingIfNeeded(imageFile, metadata,...);
//resample if needed
bi = resampleImageIfNeeded(bi, thumbWidth, thumbHeight);
// rotate if degree > 0
bi = rotateBufferedImage(bi, degree);
// create jpeg in output
try (ImageOutputStream imageOut = ImageIO.createImageOutputStream(fileOutputStream)){
try {
ImageWriter writer = ImageIO.getImageWritersBySuffix("jpeg").next();
ImageWriteParam iwp = writer.getDefaultWriteParam();
iwp.setProgressiveMode(ImageWriteParam.MODE_DEFAULT);
writer.setOutput(imageOut);
writer.write(null, new IIOImage(bi, null, metadata), iwp);
} catch (Exception e) {...}
....}
I need to create thumbnail starting from a WebP image but ImageIO doesn't support this format. Are there any library that allow me to do something like this ?
String format = getImageFormat(imageFile);
Iterator readers = ImageIO.getImageReadersByFormatName(format);
// rescaling the image
BufferedImage bi = loadImageRescalingIfNeeded(imageFile, metadata,...);
//resample if needed
bi = resampleImageIfNeeded(bi, thumbWidth, thumbHeight);
// rotate if degree > 0
bi = rotateBufferedImage(bi, degree);
// create jpeg in output
try (ImageOutputStream imageOut = ImageIO.createImageOutputStream(fileOutputStream)){
try {
ImageWriter writer = ImageIO.getImageWritersBySuffix("jpeg").next();
ImageWriteParam iwp = writer.getDefaultWriteParam();
iwp.setProgressiveMode(ImageWriteParam.MODE_DEFAULT);
writer.setOutput(imageOut);
writer.write(null, new IIOImage(bi, null, metadata), iwp);
} catch (Exception e) {...}
....}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论