关键字: Image 格式 大小 宽度 高度
1,判断Image格式
用UE打开GIF/PNG/JPG格式的图片文件
我们会发现在文件头部某几个位置的字节的值连起来是'GIF'/'PNG'/'JFIF'
它们的位置分别如下:
GIF: 012
JFIF(JPG): 6789
PNG: 123
这样我们可以通过判断这几个字节值来得到Image文件格式:
2,判断Image大小
3,判断Image宽度和高度
用UE打开GIF/PNG/JPG格式的图片文件
我们会发现在文件头部某几个位置的字节的值连起来是'GIF'/'PNG'/'JFIF'
它们的位置分别如下:
GIF: 012
JFIF(JPG): 6789
PNG: 123
这样我们可以通过判断这几个字节值来得到Image文件格式:
- String type = "";
- byte b0 = image.getFileData()[0];
- byte b1 = image.getFileData()[1];
- byte b2 = image.getFileData()[2];
- byte b3 = image.getFileData()[3];
- byte b6 = image.getFileData()[6];
- byte b7 = image.getFileData()[7];
- byte b8 = image.getFileData()[8];
- byte b9 = image.getFileData()[9];
- // GIF
- if (b0 == (byte) 'G' && b1 == (byte) 'I' && b2 == (byte) 'F')
- type = "GIF";
- // PNG
- else if (b1 == (byte) 'P' && b2 == (byte) 'N' && b3 == (byte) 'G')
- type = "PNG";
- // JPG
- else if (b6 == (byte) 'J' && b7 == (byte) 'F' && b8 == (byte) 'I' && b9 == (byte) 'F')
- type = "JPG";
- else
- type = "Unknown";
- image.setType(type);
String type = "";
byte b0 = image.getFileData()[0];
byte b1 = image.getFileData()[1];
byte b2 = image.getFileData()[2];
byte b3 = image.getFileData()[3];
byte b6 = image.getFileData()[6];
byte b7 = image.getFileData()[7];
byte b8 = image.getFileData()[8];
byte b9 = image.getFileData()[9];
// GIF
if (b0 == (byte) 'G' && b1 == (byte) 'I' && b2 == (byte) 'F')
type = "GIF";
// PNG
else if (b1 == (byte) 'P' && b2 == (byte) 'N' && b3 == (byte) 'G')
type = "PNG";
// JPG
else if (b6 == (byte) 'J' && b7 == (byte) 'F' && b8 == (byte) 'I' && b9 == (byte) 'F')
type = "JPG";
else
type = "Unknown";
image.setType(type);
2,判断Image大小
- FileImageInputStream fiis = new FileImageInputStream(new File(image.getPath()));
- image.setSize((float) fii.length() / 1000 + "KB");
FileImageInputStream fiis = new FileImageInputStream(new File(image.getPath()));
image.setSize((float) fii.length() / 1000 + "KB");
3,判断Image宽度和高度
- ImageIcon ii = new ImageIcon(image.getPath());
- image.setHeight(String.valueOf(ii.getIconHeight()));
- image.setWidth(String.valueOf(ii.getIconWidth()));