我的应用程序有一个功能,让用户捕捉照片并在该照片上添加绘图。Android画布没有绘制超过屏幕尺寸
所有照片的尺寸都精确到900 x 900
。 允许用户将图形添加到图像。我通过original image
保留transparent image
并在透明图像上进行绘制。绘图使用canvas
完成。
但是,在具有720 x 480
(高x宽)的设备中绘图时。如果我创建一个900 x 900
透明图像并从0,0
到900,900
画一条线,则画布只画一条从0,0
到480,480
的线。
下面是代码的相应部分:
准备帆布:
holder = getHolder();
if (holder.getSurface().isValid()) {
Canvas canvas = holder.lockCanvas();
canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);
/* original image is 900 x 900 */
overlayBitmap = Bitmap.createBitmap(originalImage.getWidth(), originalImage.getHeight(), originalImage.getConfig());
canvas.setBitmap(overlayBitmap);
}
图Line:
canvas.drawLine(0, 0, 900, 900, paint);
我为什么我有这个不知道问题。这是因为使用canvas
??有什么解决办法吗?任何帮助,高度赞赏:-)
感谢但添加的代码仅用于测试目的。 –
我不知道这意味着什么。我在一般意义上解释了为什么你的线条没有按预期的尺寸绘画。请作出努力,明白它的意思为Android设备有不同大小的像素。 –