成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

基于java流實現壓縮圖片過程解析

瀏覽:2日期:2022-08-22 16:41:15

整理文檔,搜刮出一個Java做圖片壓縮的代碼,稍微整理精簡一下做下分享。

首先,要壓縮的圖片格式不能說動態圖片,你可以使用bmp、png、gif等,至于壓縮質量,可以通過BufferedImage來指定。

在C盤的temp下放置一張圖片pic123.jpg,盡量找一個像素高一點的圖片,這里我找了一張5616*3744的。

package test;import java.io.*;import java.util.Date;import java.awt.*;import java.awt.p_w_picpath.*;import javax.p_w_picpathio.ImageIO;import com.sun.p_w_picpath.codec.jpeg.*;/** * 圖片壓縮處理 * @author 崔素強 */public class ImgCompress {private Image img;private int width;private int height;@SuppressWarnings('deprecation') public static void main(String[] args) throws Exception {System.out.println('開始:' + new Date().toLocaleString());ImgCompress imgCom = new ImgCompress('C:temppic123.jpg');imgCom.resizeFix(400, 400);System.out.println('結束:' + new Date().toLocaleString());}/** * 構造函數 */public ImgCompress(String fileName) throws IOException {File file = new File(fileName);// 讀入文件 img = ImageIO.read(file);// 構造Image對象 width = img.getWidth(null);// 得到源圖寬 height = img.getHeight(null);// 得到源圖長}/** * 按照寬度還是高度進行壓縮 * @param w int 最大寬度 * @param h int 最大高度 */public void resizeFix(int w, int h) throws IOException {if (width / height > w / h) {resizeByWidth(w);} else {resizeByHeight(h);}}/** * 以寬度為基準,等比例放縮圖片 * @param w int 新寬度 */public void resizeByWidth(int w) throws IOException {int h = (int) (height * w / width);resize(w, h);}/** * 以高度為基準,等比例縮放圖片 * @param h int 新高度 */public void resizeByHeight(int h) throws IOException {int w = (int) (width * h / height);resize(w, h);}/** * 強制壓縮/放大圖片到固定的大小 * @param w int 新寬度 * @param h int 新高度 */public void resize(int w, int h) throws IOException {// SCALE_SMOOTH 的縮略算法 生成縮略圖片的平滑度的 優先級比速度高 生成的圖片質量比較好 但速度慢 BufferedImage p_w_picpath = new BufferedImage(w, h,BufferedImage.TYPE_INT_RGB );p_w_picpath.getGraphics().drawImage(img, 0, 0, w, h, null);// 繪制縮小后的圖 File destFile = new File('C:temp456.jpg');FileOutputStream out = new FileOutputStream(destFile);// 輸出到文件流 // 可以正常實現bmp、png、gif轉jpg JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);encoder.encode(p_w_picpath);// JPEG編碼 out.close();}}

運行后在C盤temp下生成一個465.jpg,像素大小為600*400,像素大小是我指定的。用時也就是一兩秒的事情,注意,我這張圖片是10M的,壓縮后是40.5KB。

一些細節事項可以參考代碼中的注釋。

要注意的是,你可能想試一試較大圖片的處理能力,如果你的JDK沒有指定默認內存,那可能會有如下異常,因為內存不夠大:

Exception in thread 'main' java.lang.OutOfMemoryError: Java heap space at java.awt.p_w_picpath.DataBufferByte.<init>(DataBufferByte.java:58) at java.awt.p_w_picpath.ComponentSampleModel.createDataBuffer(ComponentSampleModel.java:397) at java.awt.p_w_picpath.Raster.createWritableRaster(Raster.java:938) at javax.p_w_picpathio.ImageTypeSpecifier.createBufferedImage(ImageTypeSpecifier.java:1169) at javax.p_w_picpathio.ImageReader.getDestination(ImageReader.java:2879) at com.sun.p_w_picpathio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:943) at com.sun.p_w_picpathio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:915) at javax.p_w_picpathio.ImageIO.read(ImageIO.java:1422) at javax.p_w_picpathio.ImageIO.read(ImageIO.java:1282) at test.ImgCompress.<init>(ImgCompress.java:31) at test.ImgCompress.main(ImgCompress.java:21)

解決方法:

在Eclipse里選:Window->Preference->Installed JREs->Edit(選中jre),

在Default VM Arguments里輸入-Xms256m -Xmx1024m,表示最小內存256M,最大1G,然后運行就可以了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
亚洲超丰满肉感bbw| 欧美日韩综合色| 欧美电影免费观看高清完整版在线| 国产精品影音先锋| 色天天综合久久久久综合片| 麻豆传媒一区二区三区| 亚洲国产影院| 日韩中文字幕91| 欧美一二区视频| 亚洲三级色网| 理论电影国产精品| 久久久欧美精品sm网站| 在线成人av| 午夜精品aaa| 日韩丝袜情趣美女图片| 亚洲精品日韩在线观看| 免费不卡在线视频| 国产三级久久久| 99热这里只有成人精品国产| 久久精品国产久精国产爱| 国产亚洲成aⅴ人片在线观看| 影院欧美亚洲| 国精产品一区一区三区mba视频| 久久久99精品免费观看| 91啪亚洲精品| 日韩精品久久久久久| 国产精品日日摸夜夜摸av| 欧美午夜精品电影| 欧美在线免费| 久久精品一区二区三区不卡牛牛| 亚洲一区二区精品在线| yourporn久久国产精品| 免费在线观看一区二区三区| 欧美激情在线看| 69堂精品视频| 国产精品久久久久久久久久妞妞| 亚洲日本免费电影| 欧美日韩国产免费| 国产一级一区二区| 欧美视频观看一区| 狠狠色2019综合网| 成人免费视频在线观看| 久久综合九色综合欧美98| 国产精品一二| 欧美永久精品| 亚洲免费观看视频| 26uuu久久综合| 欧美二区在线观看| 亚洲一区二三| 在线看无码的免费网站| 欧美色123| 欧美二区在线| 国产九色sp调教91| 蜜桃久久av一区| 亚洲综合小说图片| 亚洲精品高清视频在线观看| 国产精品视频观看| 国产亚洲一区字幕| 国产日韩欧美制服另类| xvideos.蜜桃一区二区| 欧美一级理论片| 欧美一区二区在线免费观看| 欧美日韩高清一区二区三区| 欧美性三三影院| 欧美女孩性生活视频| 欧美日韩国产精选| 欧美无砖砖区免费| 亚洲欧美日韩综合一区| 一区二区三区福利| 99re热精品| 亚洲调教视频在线观看| 国产综合第一页| 伊人久久亚洲热| 国产亚洲永久域名| 欧美性一二三区| 日韩欧美一级精品久久| 久久蜜桃av一区精品变态类天堂| 久久精品一区蜜桃臀影院| 国产日韩欧美不卡| 国产精品理伦片| 亚洲一区二区三区三| 中文子幕无线码一区tr| 欧美一级日韩免费不卡| 日韩欧美国产wwwww| 日韩亚洲欧美成人一区| 这里只有精品电影| 中文一区二区在线观看| 精品在线一区二区三区| 亚洲毛片网站| 国产网红主播福利一区二区| 另类小说色综合网站| 国产亚洲毛片在线| 国产欧美一区视频| 国产成人亚洲综合色影视| 久久亚洲影院| 亚洲国产日韩一级| 亚洲国产精品日韩| 欧美大片顶级少妇| 国产精一区二区三区| 色琪琪一区二区三区亚洲区| 亚洲欧美日韩国产另类专区| 色综合天天综合色综合av | 久久精品国产清高在天天线| 国产日韩成人精品| 波多野结衣中文字幕一区 | 欧美精品久久一区| 蜜臀精品一区二区三区在线观看| 国产精品va| 国产欧美日韩另类视频免费观看| 激情文学综合插| 欧美日韩黄色一区二区| 首页国产欧美久久| 久久成人免费| 天堂久久一区二区三区| 久久久久久久波多野高潮日日| 一区二区免费看| 老鸭窝毛片一区二区三区 | 一区二区三区免费网站| 精品91久久久久| 国产精品理伦片| 国产一区日韩欧美| 日本一区二区成人在线| 欧美久久久久久久| 日本一区二区成人在线| 在线精品在线| 亚洲成年人影院| 蓝色福利精品导航| 亚洲一区三区视频在线观看| 亚洲午夜av在线| av在线不卡免费看| 4438x成人网最大色成网站| 激情深爱一区二区| 精品日产卡一卡二卡麻豆| 91碰在线视频| 日韩一区中文字幕| 亚洲精品影院| 日本在线不卡视频一二三区| 欧美另类变人与禽xxxxx| 成人av小说网| 中文字幕一区二区三区视频| 欧美亚洲在线| 国产精品亚洲一区二区三区在线| 精品少妇一区二区三区日产乱码| 国产精品www994| 日本特黄久久久高潮| 精品久久99ma| 亚洲乱码久久| 国产麻豆日韩欧美久久| 欧美国产日韩精品免费观看| 国产欧美一区二区三区另类精品| 日韩精品视频网站| 91精品国产综合久久久久久 | 樱花草国产18久久久久| 在线观看一区二区视频| 91免费视频网址| 亚洲第一主播视频| 精品裸体舞一区二区三区| 亚洲视频二区| 成人激情午夜影院| 亚洲一区二区三区四区在线观看| 欧美亚洲综合网| 亚洲国产精品综合| 国产精一品亚洲二区在线视频| 亚洲人成网站精品片在线观看| 性欧美长视频| www.亚洲在线| 日韩成人dvd| 国产精品免费视频观看| 欧美日韩日日夜夜| 国产精品一区二区欧美| 色综合久久综合网欧美综合网 | 亚洲va欧美va人人爽午夜| 26uuu色噜噜精品一区二区| 一本大道av伊人久久综合| 欧美久久电影| 精品亚洲国产成人av制服丝袜| 欧美激情在线一区二区| 日韩一卡二卡三卡国产欧美| 久久五月激情| 国产精品日本| 国产真实久久| 91女神在线视频| 国产91在线看| 久久超碰97中文字幕| 亚洲午夜一区二区三区| 欧美国产一区二区在线观看| 日韩免费观看2025年上映的电影| 久久欧美肥婆一二区| 中文精品一区二区三区| 欧美日韩1080p| 91麻豆福利精品推荐| 国产一区在线不卡| 麻豆精品一区二区三区| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲国产激情av| 久久日一线二线三线suv| 欧美一级国产精品| 日韩欧美中文字幕制服| 日韩一区二区三区四区| 欧美一区二区三区在线观看|