zoukankan      html  css  js  c++  java
  • Android 图片旋转

    拍照后的照片有时被系统旋转,纠正步骤如下:

    1.先读取图片文件被旋转的角度:

    /**
         * 通过ExifInterface类读取图片文件的被旋转角度
         * @param path : 图片文件的路径
         * @return 图片文件的被旋转角度
         */
        public static int readPicDegree(String path) {
            int degree = 0;
    
            // 读取图片文件信息的类ExifInterface
            ExifInterface exif = null;
            try {
                exif = new ExifInterface(path);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
            if (exif != null) {
                int orientation = exif.getAttributeInt(
                        ExifInterface.TAG_ORIENTATION,
                        ExifInterface.ORIENTATION_NORMAL);
                switch (orientation) {
                case ExifInterface.ORIENTATION_ROTATE_90:
                    degree = 90;
                    break;
    
                case ExifInterface.ORIENTATION_ROTATE_180:
                    degree = 180;
                    break;
    
                case ExifInterface.ORIENTATION_ROTATE_270:
                    degree = 270;
                    break;
                }
            }
    
            return degree;
        }

    2.再将上述角度作为参数,传递给下面函数纠正:

        /**
         * 将图片纠正到正确方向
         * 
         * @param degree : 图片被系统旋转的角度
         * @param bitmap : 需纠正方向的图片
         * @return 纠向后的图片
         */
        public static Bitmap rotateBitmap(int degree, Bitmap bitmap) {
            Matrix matrix = new Matrix();
            matrix.postRotate(degree);
    
            Bitmap bm = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(),
                    bitmap.getHeight(), matrix, true);
            return bm;
        }
  • 相关阅读:
    Spring源码加载BeanDefinition过程
    设计模式之☞委派模式,通俗易懂,一学就会!!!
    SpringMvc 跨域处理
    寻找全排列的下一个数
    使用两个栈实现队列
    无序数组在排序后的最大相邻查
    判断一个数是否是2的幂
    最大公约数
    最小栈的实现
    js 原型与原型链
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4206125.html
Copyright © 2011-2022 走看看