三星手机拍照,图片旋转问题的解决
来源:互联网 发布:一号店软件下载 编辑:程序博客网 时间:2024/04/25 05:04
package com.cyhz.library.view;import android.app.Activity;import android.content.Intent;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Matrix;import android.media.ExifInterface;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.os.Handler;import android.os.Message;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.ImageView;import java.io.File;import java.io.IOException;/** * Created by MyPC on 2015/9/25. */public class PictureActivity extends Activity implements View.OnClickListener { private ImageView img; private Button take_photo; private String imgPath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "test"; private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); } }; private Bitmap bitmap1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.picture); img = (ImageView) findViewById(R.id.img); take_photo = (Button) findViewById(R.id.take_photo); take_photo.setOnClickListener(this); } @Override public void onClick(View view) { File file = new File(imgPath); if (!file.exists()) { file.mkdir(); } File file1 = new File(imgPath + "/test.jpg"); Uri uri = Uri.fromFile(file1); Intent intent = new Intent("android.media.action.IMAGE_CAPTURE"); intent.putExtra("orientation", true); intent.putExtra("output", uri); startActivityForResult(intent, 1); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == 1) { int degree = readPictureDegree(imgPath + "/test.jpg"); Log.e("sj", "degree:" + degree); try { BitmapUtil.compressBitmap(imgPath + "/test.jpg", imgPath + "/small.jpg", 202, 160, 100); Bitmap bitmap = BitmapFactory.decodeFile(imgPath + "/small.jpg"); bitmap= rotaingImageView(degree,bitmap); img.setImageBitmap(bitmap); } catch (Exception e) { e.printStackTrace(); } } } /** * 读取图片属性:旋转的角度 * * @param path 图片绝对路径 * @return degree旋转的角度 */ public static int readPictureDegree(String path) { int degree = 0; try { ExifInterface exifInterface = new ExifInterface(path); int orientation = exifInterface.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; } } catch (IOException e) { e.printStackTrace(); } return degree; } public static Bitmap rotaingImageView(int angle, Bitmap bitmap) { //旋转图片 动作 Matrix matrix = new Matrix(); ; matrix.postRotate(angle); System.out.println("angle2=" + angle); // 创建新的图片 Bitmap resizedBitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true); return resizedBitmap; }}
0 0
- 三星手机拍照,图片旋转问题的解决
- 解决三星手机拍照后,图片旋转。
- 解决三星手机拍照旋转导致崩溃的问题
- android解决三星手机拍照获取图片的问题
- 三星手机拍照旋转问题
- Android解决三星手机图片旋转问题
- Android解决三星手机拍照图片调用时逆时针旋转90度问题
- android三星等手机拍照自动旋转问题与解决
- 解决ionic在手机上拍照图片旋转的问题
- 三星手机拍照后显示图片角度旋转问题的解决方法
- Android 三星手机拍照图片旋转处理
- 解决三星手机拍照后裁剪图片时横屏问题
- 解决三星调用系统相机拍照显示图片旋转90度横着的问题
- 三星等手机拍照选取图片,图片反转的问题
- android调用系统相机的方法,并且解决三星手机遇到的问题,图片旋转、压缩
- 三星拍照旋转问题
- 真正解决三星等手机拍照问题
- 关于三星手机调用系统相机拍照旋转屏导致图片数据丢失问题
- 正则表达式 判定不包含字符串
- 初始化(2)--初始化的方法
- 【笔记】利用CSS3特性实现圆角DIV
- android Listview 软引用SoftReference异步加载图片
- 异步、同步与阻塞、非阻塞的区别
- 三星手机拍照,图片旋转问题的解决
- 黑马程序员—Foundation框架之NSMutableString及NSString的其它用法
- jvm工具系列之 -- jmap
- 任意多边形面积的计算
- UVa 1368 - DNA Consensus String【字符串】
- 怎么样把bak文件导入到SQL server?
- 两种方法删除NSUserDefaults所有记录
- Opencv对XML和YAML文件实现I/O操作
- 提示不能下载文件,或图片显示不出来