温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android中怎么实现一个图片切割工具类

发布时间:2021-06-28 17:26:17 来源:亿速云 阅读:183 作者:Leah 栏目:移动开发

Android中怎么实现一个图片切割工具类,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

图片切割工具类定义:

public class ImageSplitter {   /**    * 将图片切成 , piece *piece    *    * @param bitmap    * @param piece    * @return    */   public static List<ImagePiece> split(Bitmap bitmap, int piece)   {     List<ImagePiece> pieces = new ArrayList<ImagePiece>(piece * piece);     int width = bitmap.getWidth();     int height = bitmap.getHeight();     Log.e("TAG", "bitmap Width = " + width + " , height = " + height);     int pieceWidth = Math.min(width, height) / piece;     for (int i = 0; i < piece; i++)     {       for (int j = 0; j < piece; j++)       {         ImagePiece imagePiece = new ImagePiece();         imagePiece.index = j + i * piece;         int xValue = j * pieceWidth;         int yValue = i * pieceWidth;         imagePiece.bitmap = Bitmap.createBitmap(bitmap, xValue, yValue,             pieceWidth, pieceWidth);         pieces.add(imagePiece);       }     }     return pieces;   } }

图片切割实体类:

public class ImagePiece {   public int index = 0;   public Bitmap bitmap = null; }

使用方法:

private void initBitmap() {     if (mBitmap == null)       mBitmap = BitmapFactory.decodeResource(getResources(),           R.drawable.aa);     List<ImagePiece> mItemBitmaps = ImageSplitter.split(mBitmap, mColumn);     Collections.sort(mItemBitmaps, new Comparator<ImagePiece>()     {       @Override       public int compare(ImagePiece lhs, ImagePiece rhs)       {         return Math.random() > 0.5 ? 1 : -1;       }     }); }

关于Android中怎么实现一个图片切割工具类问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI