bitmap缩放剪裁图片(等宽裁中间部分高)
来源:互联网 发布:编程机器人手机中文版 编辑:程序博客网 时间:2024/05/04 15:55
/*** 缩放截取宽度固定高度正中部分后的位图。** @param bitmap 原图*/public static Bitmap centerRectangleBitmap(Bitmap bitmap) {final int edgeWidth = (int) (App.screenWidth - 26 * App.mDensity) / 2;//view的宽度是屏幕宽度的一半final int edgeLength = (int) (edgeWidth / 1.5);//view的高度是宽度的2/3if (null == bitmap || edgeLength <= 0) {return null;}Bitmap result = bitmap;int widthOrg = bitmap.getWidth();int heightOrg = bitmap.getHeight();// 压缩到一个最小长度是edgeLength的bitmapint longerEdge = (int) (edgeWidth * Math.max(widthOrg, heightOrg) / Math.min(widthOrg, heightOrg));int scaledWidth = widthOrg >= heightOrg ? longerEdge : edgeWidth;Bitmap scaledBitmap = null;try {scaledBitmap = Bitmap.createScaledBitmap(bitmap, scaledWidth,scaledWidth, true);} catch (Exception e) {return null;}if (heightOrg >= edgeLength) {// 从图中截取正中间的高。int yTopLeft = (scaledWidth - edgeLength) / 2;try {if (scaledBitmap != null) {result = Bitmap.createBitmap(scaledBitmap, 0,yTopLeft, scaledWidth, edgeLength);scaledBitmap.recycle();}} catch (Exception e) {return null;}}return result;}注:需配合android:scaleType="centerCrop"
0 0
- bitmap缩放剪裁图片(等宽裁中间部分高)
- 按宽/高缩放图片到指定大小并进行裁剪得到中间部分图片 返回Bitmap
- android将给定图片维持宽高比缩放后,截取正中间的正方形部分
- android将给定图片维持宽高比缩放后,截取正中间的正方形部分
- # Bitmap 缩放 剪裁
- PHP等比例缩放图片(最大宽或高)
- Bitmap缩放剪裁便宜旋转
- 图片处理类(剪裁、缩放、水印)
- 图片处理类(剪裁、缩放、水印)
- 图片等比例缩放,图片指定宽或高按比例缩放,图片不变形缩放
- iOS 截取图片中间部分、图片缩放到宽度
- Asp.net 等比例缩放后,裁剪原图中间部分
- php图片处理代码分享,包括缩放、剪裁、缩放、翻转、旋转、透明、锐化等
- c#缩放和剪裁图片
- 安卓剪裁图片(直接操作bitmap)
- Bitmap图片缩放处理
- Bitmap 图片缩放
- div 自动缩放图片大小(根据DIV宽度自动缩放,图片不被剪裁)
- HDU 1495 非常可乐
- nginx动静分离配置心得
- 堆和栈的区别
- 关于分布式和集群的简单概念
- 使用maven构建android项目
- bitmap缩放剪裁图片(等宽裁中间部分高)
- Nginx开启Gzip压缩功能
- 抽象工厂模式
- PHP分词插件Demo
- Spring定时任务的几种实现
- Android之Universal-Image-Loader(简介)
- Linux系统下ElasticSearch的环境搭建(含插件)
- 改版的 csdn 博客很漂亮
- finaldb 使用时 idField is null