国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

java中ImageReader和BufferedImage獲取圖片尺寸實例

2024-07-13 10:15:56
字體:
來源:轉載
供稿:網友

ImageReader 對象通常由特定格式的服務提供者接口 (SPI) 類實例化。服務提供者類(例如 ImageReaderSpi 的實例)向 IIORegistry 注冊,后者使用前者進行格式識別和表示可用格式 reader 和 writer。

BufferedImage子類描述具有可訪問圖像數據緩沖區的Image。BufferedImage由圖像數據的ColorModel和Raster組成。Raster的SampleModel中band的數量和類型必須與ColorModel所要求的數量和類型相匹配,以表示其顏色和alpha分量。所有BufferedImage對象的左上角坐標都為(0,0)。因此,用來構造BufferedImage的任何Raster都必須滿足:minX=0且minY=0。

多的不用說,上代碼,大家伙兒看看

java/130552.html">java;">/** *  */package com.b510;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.util.Date;import java.util.Iterator;import javax.imageio.ImageIO;import javax.imageio.ImageReader;import javax.imageio.stream.ImageInputStream;public class ImageUtil {	/**   * 源圖片路徑名稱如:c:/1.jpg   */	private String srcpath = "e:/pool.jpg";	public ImageUtil() {	}	public static void main(String[] args) throws Exception {		ImageUtil util = new ImageUtil();		util.getImageSizeByImageReader(util.getSrcpath());		util.getImageSizeByBufferedImage(util.getSrcpath());	}	/**   * 使用ImageReader獲取圖片尺寸   *    * @param src   *      源圖片路徑   */	public void getImageSizeByImageReader(String src) {		long beginTime = new Date().getTime();		File file = new File(src);		try {			Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName("jpg");			ImageReader reader = (ImageReader) readers.next();			ImageInputStream iis = ImageIO.createImageInputStream(file);			reader.setInput(iis, true);			System.out.println("width:" + reader.getWidth(0));			System.out.println("height:" + reader.getHeight(0));		}		catch (IOException e) {			e.printStackTrace();		}		long endTime = new Date().getTime();		System.out.println("使用[ImageReader]獲取圖片尺寸耗時:[" + (endTime - beginTime)+"]ms");	}	/**   * 使用BufferedImage獲取圖片尺寸   *    * @param src   *      源圖片路徑   */	public void getImageSizeByBufferedImage(String src) {		long beginTime = new Date().getTime();		File file = new File(src);		FileInputStream is = null;		try {			is = new FileInputStream(file);		}		catch (FileNotFoundException e2) {			e2.printStackTrace();		}		BufferedImage sourceImg = null;		try {			sourceImg = javax.imageio.ImageIO.read(is);			System.out.println("width:" + sourceImg.getWidth());			System.out.println("height:" + sourceImg.getHeight());		}		catch (IOException e1) {			e1.printStackTrace();		}		long endTime = new Date().getTime();		System.out.println("使用[BufferedImage]獲取圖片尺寸耗時:[" + (endTime - beginTime)+"]ms");	}	public String getSrcpath() {		return srcpath;	}	public void setSrcpath(String srcpath) {		this.srcpath = srcpath;	}}

運行結果:

java,imagereader,bufferedimage,獲取,圖片尺寸

大家可以很容易明白...應該選擇哪個方法了吧...

總結

以上就是本文關于java中ImageReader和BufferedImage獲取圖片尺寸實例的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中宁县| 石嘴山市| 阿拉善盟| 资中县| 琼结县| 常熟市| 岳普湖县| 桃源县| 长葛市| 隆化县| 万源市| 安泽县| 长岭县| 阿巴嘎旗| 隆昌县| 长海县| 巨鹿县| 洛扎县| 铜山县| 邵阳县| 固阳县| 商水县| 工布江达县| 澜沧| 湖口县| 博客| 治多县| 宜君县| 广汉市| 宝山区| 乌什县| 武胜县| 宿松县| 同德县| 兰西县| 通化县| 肇州县| 枝江市| 石门县| 青浦区| 顺义区|