我的目标是绘制资源图像的顶部。使用实际像素在图像上绘制
所以,我从我的资源加载图像:
bm = BitmapFactory.decodeResource(getResources(), R.drawable.image).copy(Bitmap.Config.ARGB_8888, true);
我知道这是不是因为它可以淡然内存问题的最佳途径,但它不是我现在的关心...... 然后,我创建一个画布,并画它
Canvas canv = new Canvas(bm);
canv.drawLine(0, 10, 50, 70, paint);
然后我将位图导出到文件。现在
,存在的问题是:
- 我用画线坐标不在原始图像
- 如果我运行在不同的设备上的应用程序,以不同的屏幕,所产生的图像的像素是不同的(线有不同的位置和大小)
有没有一种方法来指定坐标wrt原始图像的像素,还是获取图像的结果在不同设备中的结果相同?
谢谢!
完美!谢谢你太多了! – jamp
你会推荐这两种方法吗? – jamp
很高兴帮助:) 其实两者都很好,我想。但是,如果您将使用第二个 - 请确保您将该文件置于默认的“可绘制”文件夹中。因为如果你将它放在'drawables-mdpi'(例如) - 代码可能会在hdpi/xhdpi设备上崩溃,因为android不支持'升级'并且可以说“无资源”。 – AlexN