Java實現(xiàn)bmp和jpeg圖片格式互轉(zhuǎn)
更新時間:2023年04月12日 11:07:18 作者:劃]破
本文主要介紹了Java實現(xiàn)bmp和jpeg圖片格式互轉(zhuǎn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
Bmp轉(zhuǎn)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可適用于其他圖片類型的轉(zhuǎn)換
?? ??? ?JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
?? ??? ?encoder.encode(tag);
?? ??? ?out.close();
?? ??? ?
?? ??? ?log.info("bmp 轉(zhuǎn) JPEG,共耗時: ?" + (System.currentTimeMillis() - start) + " 毫秒");
?? ??? ?return outPath;
?? ?} catch (IOException e) {
?? ??? ?e.printStackTrace();
?? ?}
?? ??? ?return outPath;
?? ?}Jpeg轉(zhuǎn)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<ImageReader> it1 = ImageIO.getImageReadersByFormatName("jpeg");
if (it1.hasNext()) {
jpegReader = it1.next();
}
jpegReader.setInput(fiis);
ImageWriter bmpWriter = null;
Iterator<ImageWriter> 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 轉(zhuǎn) bmp,共耗時:" + (System.currentTimeMillis() - start) + " 毫秒");
} catch (IOException e) {
e.printStackTrace();
}
}
到此這篇關(guān)于Java實現(xiàn)bmp和jpeg圖片格式互轉(zhuǎn)的文章就介紹到這了,更多相關(guān)Java實現(xiàn)bmp和jpeg內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決mybatis plus 分頁查詢有條數(shù),total和pages都是零的問題
這篇文章主要介紹了解決mybatis plus 分頁查詢有條數(shù),total和pages都是零的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
Java數(shù)據(jù)結(jié)構(gòu)之紅黑樹的實現(xiàn)方法和原理詳解
這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)之紅黑樹的實現(xiàn)方法和原理,紅黑樹是一種特殊的二叉查找樹,每個結(jié)點都要儲存位表示結(jié)點的顏色,或紅或黑,本文將通過示例為大家詳細(xì)講講紅黑樹的原理及實現(xiàn),感興趣的朋友可以了解一下2024-02-02
Java實現(xiàn)直接插入排序與折半插入排序的示例詳解
這篇文章主要為大家詳細(xì)介紹了插入排序中兩個常見的排序:直接插入排序與折半插入排序。本文用Java語言實現(xiàn)了這兩個排序算法,感興趣的可以學(xué)習(xí)一下2022-06-06

