Java 将文本拖动到位图的特定位置

Java 将文本拖动到位图的特定位置,java,android,image,bitmap,Java,Android,Image,Bitmap,我想用一些文字(姓名、姓氏等)填充信用卡图像,但我发现要正确找到文字的起始位置存在问题。 我已经用特殊像素标记了我的图像,我想在这个特定像素的开始处绘制文本,但是当我运行文本时,文本没有与它们对齐,我假设我在代码中计算的特定像素位置是从第一个画布像素开始计算的,而不是从第一个位图像素开始计算的。我怎样才能解决它?多谢各位 @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Bitmap bi

我想用一些文字(姓名、姓氏等)填充信用卡图像,但我发现要正确找到文字的起始位置存在问题。 我已经用特殊像素标记了我的图像,我想在这个特定像素的开始处绘制文本,但是当我运行文本时,文本没有与它们对齐,我假设我在代码中计算的特定像素位置是从第一个画布像素开始计算的,而不是从第一个位图像素开始计算的。我怎样才能解决它?多谢各位

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    Bitmap bitmap = ((BitmapDrawable)this.getDrawable()).getBitmap();

    final int w = bitmap.getWidth();
    final int h = bitmap.getHeight();
    int pixel;
    int redValue;
    int blueValue;
    int greenValue;

    for (int x = 0; x < w; x++) {
        for (int y = 0; y < h; y++) {
            pixel = bitmap.getPixel(x, y);
            redValue = Color.red(pixel);
            blueValue = Color.blue(pixel);
            greenValue = Color.green(pixel);
            if (redValue == 255 && greenValue == 254 && blueValue == 0){
                Paint paint = new Paint();
                paint.setColor(Color.BLACK);
                paint.setTextSize(35);
                canvas.drawText("Some Text", x, y, paint);
            }
        }
    }
}
@覆盖
受保护的void onDraw(画布){
super.onDraw(帆布);
位图位图=((BitmapDrawable)this.getDrawable()).getBitmap();
final int w=bitmap.getWidth();
final int h=bitmap.getHeight();
整数像素;
int-redValue;
int蓝值;
国际绿色价值;
对于(int x=0;x
是否要位图的每个像素?是否要位图的每个像素?