久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

java怎么壓縮圖片大小不改變圖片分辨率

168次閱讀
沒有評論

共計 1600 個字符,預計需要花費 4 分鐘才能閱讀完成。

在 Java 中可以使用 javax.imageio 包中的類來壓縮圖片大小而不改變圖片分辨率。下面是一個壓縮圖片大小的示例代碼:

import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class ImageCompressor {public static void main(String[] args) {
String inputImagePath = "input.jpg";
String outputImagePath = "output.jpg";
int newWidth = 800; // 壓縮后的圖片寬度
int newHeight = 600; // 壓縮后的圖片高度
try {
// 讀取原始圖片
BufferedImage originalImage = ImageIO.read(new File(inputImagePath));
int originalWidth = originalImage.getWidth();
int originalHeight = originalImage.getHeight();
// 創(chuàng)建一個新的圖像對象,并指定壓縮后的寬高
BufferedImage resizedImage = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D g = resizedImage.createGraphics();
// 使用抗鋸齒渲染
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
// 繪制壓縮后的圖像
g.drawImage(originalImage, 0, 0, newWidth, newHeight, 0, 0, originalWidth, originalHeight, null);
g.dispose();
// 將壓縮后的圖像保存到指定路徑
ImageIO.write(resizedImage, "jpg", new File(outputImagePath));
System.out.println("圖片壓縮成功!");
} catch (IOException ex) {System.out.println("圖片壓縮失敗:" + ex.getMessage());
}
}
}

在這個示例代碼中,我們首先指定了原始圖片路徑(inputImagePath)和壓縮后圖片的路徑(outputImagePath),以及壓縮后的寬度(newWidth)和高度(newHeight)。
然后,我們使用 ImageIO 類的 read 方法讀取原始圖片,并獲取原始圖片的寬度和高度。
接下來,我們創(chuàng)建一個新的 BufferedImage 對象,并指定寬度和高度為壓縮后的尺寸。
然后,我們使用 Graphics2D 對象的 drawImage 方法將原始圖片繪制到新的 BufferedImage 對象上,指定繪制的區(qū)域為壓縮后的尺寸。
最后,我們使用 ImageIO 類的 write 方法將壓縮后的圖像保存到指定路徑。
注意,在這個示例代碼中,我們使用了抗鋸齒渲染(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR),以保持壓縮后的圖像質(zhì)量。你也可以根據(jù)需要選擇其他的渲染方式。
此外,你還可以根據(jù)實際情況對壓縮后的圖像進行其他處理,比如調(diào)整亮度、對比度等。

丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-12-20發(fā)表,共計1600字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 平顶山市| 克拉玛依市| 千阳县| 合江县| 黄龙县| 苗栗县| 札达县| 新竹县| 高阳县| 和平区| 水城县| 汨罗市| 太原市| 八宿县| 鄂伦春自治旗| 长治县| 定陶县| 融水| 汝南县| 高台县| 林西县| 盐城市| 华池县| 林芝县| 桑日县| 江津市| 高碑店市| 彭州市| 枣庄市| 高唐县| 广汉市| 全椒县| 满洲里市| 苏尼特左旗| 双柏县| 凤庆县| 田东县| 黄山市| 定州市| 若尔盖县| 垦利县|