在我的代码中,我需要使用double值创建一个Bitmap。重要的是使用正确的值。
我正在使用:Bitmap bmp = Bitmap.createBitmap(int, int, Bitmap.Config.ARGB_8888);
......当我需要类似的东西时:
Bitmap bmp = Bitmap.createBitmap(double, double, Bitmap.Config.ARGB_8888);
我尝试进行转换的所有内容(可能?)只返回初始值或整数
创建位图时如何使用double值?
答案 0 :(得分:1)
也许我误解了这个问题,但是位图是整个像素的栅格。您不能拥有像素的分数,因此在createBitmap的参数中只能包含整数个行和列。
话虽如此,您可以使用通过Matrix drawBitmap方法应用的浮点比例因子重新缩放位图的绘制方式,例如
Canvas.drawBitmap(Bitmap bitmap, Matrix matrix, Paint paint)
Matrix matrix = new android.graphics.Matrix();
matrix.postScale(3.14f, 3.14f);
canvas.drawBitmap(bitmap, matrix, paint);
但是,当在屏幕上渲染时,它将再次仅绘制整个像素,因此您仍然无法显示小数像素。
答案 1 :(得分:0)
试试这个,将double转换为int:
double myDouble = 10.4;
int myInt = (int) (myDouble);
使用(int)将double转换为int