我正在将图像设置为ImageView,但是未从设备存储中拾取图像,图像由服务器发送,我想在将图像设置为imageview之前了解图像的方向。那么,是否可以使用其url和ExifInterface检查来自服务器的jpg图像的方向,然后根据需要更改其方向以设置为imageview?
答案 0 :(得分:0)
无法确定方向。您必须检查宽度和高度,并将图像与ImageView相对应。
答案 1 :(得分:0)
也许这可以帮到你
void readAndDisplayMetadata( String fileName ) {
try {
File file = new File( fileName );
ImageInputStream iis = ImageIO.createImageInputStream(file);
Iterator<ImageReader> readers = ImageIO.getImageReaders(iis);
if (readers.hasNext()) {
// pick the first available ImageReader
ImageReader reader = readers.next();
// attach source to the reader
reader.setInput(iis, true);
// read metadata of first image
IIOMetadata metadata = reader.getImageMetadata(0);
String[] names = metadata.getMetadataFormatNames();
int length = names.length;
for (int i = 0; i < length; i++) {
System.out.println( "Format name: " + names[ i ] );
displayMetadata(metadata.getAsTree(names[i]));
}
}
}
catch (Exception e) {
e.printStackTrace();
}
}
http://johnbokma.com/java/obtaining-image-metadata.html
注意:如果您确定图像是纵向的,当且仅当图像高度高于其宽度时,您可以测量它们以找到其方向。
答案 2 :(得分:0)