我想知道是否有可能将几个图像合并成一个完整的图像。对于我的情况,是一个平面图,被分成18个小图像,我想把它们合并成一个。我有一个想法,但不确定它是否可行。我的想法是:
我将首先放置最左上角的图像,x和y坐标为(0,0)。接下来,对于后续的图像(第一个图像的右侧/底部),使用图像的宽度和高度,我将找出放置下一个图像的坐标。要做到这一点,我估计需要18个ImageView。
顺便说一句,这18张图片是.gif格式的,所以我需要先将它们转换成位图或其他格式,然后才能使用ImageView显示它们吗?
发布于 2011-09-15 08:10:51
通过将小图像绘制到与生成的大位图相关联的画布上,可以将图像合并为大图像
Canvas c=new Canvas(result_bitmapenter);
然后在画布上画出你的小图像
c.drawBitmap(small,...);
但这可能不是最好的方法,因为大图像会消耗大量内存-也许您应该考虑动态加载而不是合并
发布于 2011-09-15 08:13:09
是的,可以创建一个足够大的bitmap对象来容纳整个平面图,并使用画布将它们绘制成大的位图。一定要缓存它,否则你每次都会重新创建它,并且为了与旧设备兼容,你必须将它转换为png。
https://stackoverflow.com/questions/7424420
复制相似问题