Android中将一个图片切割成多个图片的实现方法
程序员文章站
2023-11-23 22:43:52
以下是封装好的两个类,可以实现图片的切割。仅供参考和学习。
一个是imagepiece类,此类保存了一个bitmap对象和一个标识图片的顺序索引的int变量。复制代码 代...
以下是封装好的两个类,可以实现图片的切割。仅供参考和学习。
一个是imagepiece类,此类保存了一个bitmap对象和一个标识图片的顺序索引的int变量。
复制代码 代码如下:
package arui319.blog.csdn.net;
import android.graphics.bitmap;
public class imagepiece {
public int index = 0;
public bitmap bitmap = null;
}
一个是imagesplitter类,有一个静态方法split,传入的参数是要切割的bitmap对象,和横向和竖向的切割片数。比如传入的是3、3,则横竖向都切割成3片,最终会将整个图片切割成3x3=9片。
复制代码 代码如下:
package arui319.blog.csdn.net;
import java.util.arraylist;
import java.util.list;
import android.graphics.bitmap;
public class imagesplitter {
public static list<imagepiece> split(bitmap bitmap, int xpiece, int ypiece) {
list<imagepiece> pieces = new arraylist<imagepiece>(xpiece * ypiece);
int width = bitmap.getwidth();
int height = bitmap.getheight();
int piecewidth = width / 3;
int pieceheight = height / 3;
for (int i = 0; i < ypiece; i++) {
for (int j = 0; j < xpiece; j++) {
imagepiece piece = new imagepiece();
piece.index = j + i * xpiece;
int xvalue = j * piecewidth;
int yvalue = i * pieceheight;
piece.bitmap = bitmap.createbitmap(bitmap, xvalue, yvalue,
piecewidth, pieceheight);
pieces.add(piece);
}
}
return pieces;
}
}
这里的切割,主要使用的是bitmap对象的createbitmap方法,不再做具体描述。
上一篇: python查询mysql中文乱码问题
下一篇: 怎么在IE10安装支付宝插件登录淘宝