![](/img/trans.png)
[英]How to get image size using getImageDimensionInPixels() from java.awt.Dimension in poi ppt?
[英]Get Image Dimension and Image Size from Binary
我正在一個需要一些圖像處理的項目上。
Web客戶端將提交jpg,png,gif tif格式的圖像。 服務器端需要找出圖像的尺寸和大小。
我可以看到一些Java類通過處理圖像文件來實現此目的。 有什么方法/庫可以用來避免將二進制文件保存到文件中並仍然獲取尺寸?
非常感謝
File imageFile = new File("Pic.jpg");
double bytes = imageFile.length();
System.out.println("File Size: " + String.format("%.2f", bytes/1024) + "kb");
try{
BufferedImage image = ImageIO.read(imageFile);
System.out.println("Width: " + image.getWidth());
System.out.println("Height: " + image.getHeight());
} catch (Exception ex){
ex.printStackTrace();
}
您可以基於InputStream
創建一個圖像,然后知道它的尺寸(@ Marc,@ GGrec,我假設“ size”是“ dimension”的意思),如下所示:
BufferedImage image = ImageIO.read(in);
int width = image.getWidth();
int height = image.getHeight();
如果您不對圖像進行任何進一步的操作,則可以嘗試使用com.drewnoakes.metadata-extractor
庫。
此外,可以知道ImageIO.read()
存在一些性能問題。
如果您需要知道圖像的大小(以字節為單位),則可以簡單地進行如下操作:
byte[] imgBytes = // get you image as byte array
int imgSize = imgBytes.length;
如果您還想知道圖像的寬度和高度,則可以這樣做,例如:
BufferedImage img = ImageIO.read(new ByteArrayInputStream(imgBytes));
然后使用getWidth()
和getHeight()
方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.