Java中实现BMP和JPEG图片格式互转的方法
作者:RainLight
时间:2023-04-27
浏览:3
Bmp转JpegpublicstaticStringbmp2Jpeg(StringfilePath,StringoutPath){try{longstart=System.currentTimeMillis();//加载bmp图片Filefile=newFile(filePath);Imageimg=ImageIO.read(file);BufferedImagetag=newBufferedImage(img.getWidth(null),img.getHeight(null),BufferedImag
本文目录
Bmp转Jpeg
public static String bmp2Jpeg(String filePath, String outPath) {
try {
long start = System.currentTimeMillis();
// 加载bmp图片
File file = new File(filePath);
Image img = ImageIO.read(file);
BufferedImage tag = new BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(img.getScaledInstance(img.getWidth(null), img.getHeight(null), Image.SCALE_SMOOTH), 0, 0, null);
// 输出为Jpeg
FileOutputStream out = new FileOutputStream(outPath);
// JPEGImageEncoder可适用于其他图片类型的转换
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(tag);
out.close();
log.info("bmp 转 JPEG,共耗时: " + (System.currentTimeMillis() - start) + " 毫秒");
return outPath;
} catch (IOException e) {
e.printStackTrace();
}
return outPath;
}Jpeg转Bmp
public static void jpeg2Bmp(String inputPath, String outputPath) {
try {
long start = System.currentTimeMillis();
// 加载Jpeg图片资源
FileImageInputStream fiis = new FileImageInputStream(new File(inputPath));
FileImageOutputStream fios = new FileImageOutputStream(new File(outputPath));
ImageReader jpegReader = null;
Iterator it1 = ImageIO.getImageReadersByFormatName("jpeg");
if (it1.hasNext()) {
jpegReader = it1.next();
}
jpegReader.setInput(fiis);
ImageWriter bmpWriter = null;
Iterator it2 = ImageIO.getImageWritersByFormatName("bmp");
if (it2.hasNext()) {
bmpWriter = it2.next();
}
bmpWriter.setOutput(fios);
BufferedImage br = jpegReader.read(0);
bmpWriter.write(br);
fiis.close();
fios.close();
log.info("jpeg 转 bmp,共耗时:" + (System.currentTimeMillis() - start) + " 毫秒");
} catch (IOException e) {
e.printStackTrace();
}
}
作者最新文章
安装完wps后office不好用了
2026-11-02 09:50
notebooklm网页版登录入口及电脑端打开方法
2026-10-31 18:42
BoBo浏览器极速版安装与横屏锁定设置教程
2026-10-30 10:24
3dmax玻璃材质贴图怎么操作
2026-10-29 12:35
PDF转图片免费版哪款好用?怎么在线把PDF转换成图片?
2026-10-27 11:50
上一篇:
如何在ThinkPHP中实现全选功能?
下一篇:
java引用拷贝实例分析
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多

































