Android:如何更改图像的方向以在imageview中进行设置?

Android:如何更改图像的方向以在imageview中进行设置?,android,android-imageview,Android,Android Imageview,我正在将图像设置为ImageView,但是图像不是从设备存储器中拾取的,图像是由服务器发送的,我想在将图像设置为ImageView之前了解图像的方向。因此,是否可以使用其url和ExiFinInterface检查来自服务器的jpg图像的方向,然后根据需要更改其方向以设置为imageview?不确定方向是不可能的。您必须检查宽度和高度,并根据您的图像视图对齐图像。这可能会对您有所帮助 void readAndDisplayMetadata( String fileName ) { try

我正在将图像设置为ImageView,但是图像不是从设备存储器中拾取的,图像是由服务器发送的,我想在将图像设置为ImageView之前了解图像的方向。因此,是否可以使用其url和ExiFinInterface检查来自服务器的jpg图像的方向,然后根据需要更改其方向以设置为imageview?

不确定方向是不可能的。您必须检查宽度和高度,并根据您的图像视图对齐图像。

这可能会对您有所帮助

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();
    }
}

注意:如果您确定图像是纵向的,当且仅当您的图像高度高于其宽度时,您可以测量图像以确定其方向。

您可以这样检查:

不,您不能。然而,你可以做的是,当你有图像时,确定宽度是否大于高度,然后你就知道图像是横向的,等等。是的,我说的是图像方向。难道不可能改变这一点吗@Mocialov Borisi不想设置从图像库或本地存储中拾取的图像。。。