美文网首页
Android 图片绘制裁剪

Android 图片绘制裁剪

作者: 风___________ | 来源:发表于2018-12-29 14:44 被阅读9次
 // 将图片放大至屏幕,然后裁剪制定高度的图片
    public static Bitmap DrawSmailImage(Context context, int resourceID, int drawHeight) {
        Bitmap imageBitmap = BitmapFactory.decodeResource(context.getResources(), resourceID);
        Bitmap drawBitmap = null;
        // 图片放大到屏幕大小
        if (imageBitmap != null) {
            WindowManager manager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
            int screenWidth = manager.getDefaultDisplay().getWidth();
            int screenHeight = manager.getDefaultDisplay().getHeight();
            int imageWidth = imageBitmap.getWidth();
            int imageHeight = imageBitmap.getHeight();
            // 计算缩放比例
            float scaleWidth = ((float) imageWidth) /  screenWidth;
            float scaleHeight = ((float) imageHeight ) / screenHeight;
            // 取得想要缩放的matrix参数
            Matrix matrix = new Matrix();
            matrix.postScale(scaleWidth, scaleHeight);
            // 得到新的图片
            drawBitmap = Bitmap.createBitmap(imageBitmap, 0, 0, screenWidth, drawHeight, matrix, true);
        }
        return drawBitmap;
    }

    // 将图片放大至屏幕
    public static Bitmap DrawScreenImage(Context context, int resourceID) {
        Bitmap imageBitmap = BitmapFactory.decodeResource(context.getResources(), resourceID);
        Bitmap drawBitmap = null;
        // 图片放大到屏幕大小
        if (imageBitmap != null) {
            WindowManager manager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
            int screenWidth = manager.getDefaultDisplay().getWidth();
            int screenHeight = manager.getDefaultDisplay().getHeight();
            int imageWidth = imageBitmap.getWidth();
            int imageHeight = imageBitmap.getHeight();
            // 计算缩放比例
            float scaleWidth = ((float) imageWidth) /  screenWidth;
            float scaleHeight = ((float) imageHeight ) / screenHeight;
            // 取得想要缩放的matrix参数
            Matrix matrix = new Matrix();
            matrix.postScale(scaleWidth, scaleHeight);
            // 得到新的图片
            drawBitmap = Bitmap.createBitmap(imageBitmap, 0, 0, screenWidth, screenHeight, matrix, true);
        }
        return drawBitmap;
    }

相关文章

  • Quartz2D 绘图

    绘制文字 绘制图片 裁剪圆形图片

  • Android 图片绘制裁剪

  • Quartz 2D绘图 (2)再遇

    图片裁剪 直接裁剪图片 裁剪思路:绘制一个已经裁剪好的圆形的图形上下文将图片绘制上去就可以了 代码 保存到相册和沙...

  • 图片处理

    图片选择: 图片剪裁 Android 4.4 的权限问题,导致App 裁剪图片不能保存 android 7.0 U...

  • 图片的上传压缩等学习

    1.App图片压缩裁剪原理 主要讲原理,流程解释 2.Android MediaStore裁剪大图片 Inten...

  • Quartz2D绘图基础篇

    Quartz2D的作用: 绘制图形:线条\三角形\矩形\园\孤绘制文字绘制\生成图片读取\生成PDF截图\裁剪图片...

  • Android实现头像上传

    Android实现本地上传图片并设置为圆形头像 Android实现类似换QQ头像功能(图片裁剪) android上...

  • Android中的图片裁剪(一)之系统裁剪工具

    应用中图片裁剪的需求是很常见的,在android中裁剪的图片最简单的方法就是调用系统中的裁剪图片应用 当然在调用系...

  • Android裁剪图片

    原文链接

  • Quartz2D绘图

    标签: 裁剪、多边形、绘制图片、绘制文字、截图、曲线、扇形、椭圆、直线 绘图基本格式 一、绘制直线(虚线为多条直线...

网友评论

      本文标题:Android 图片绘制裁剪

      本文链接:https://www.haomeiwen.com/subject/obaulqtx.html