0

早上好。我正在编写一个应用程序来显示和分析 GPR 地图。不幸的是,我得到的地图是 txt 文件,其中 char 0x00代表黑色,0xFF代表白色。该应用程序处于早期阶段,我已经设法使用以下代码在屏幕上显示这些文件:

public class DrawMap extends View {
    // ...
    public void onDraw(Canvas canvas) {
        super.onDraw(canvas);

        this.paint.setStyle(Paint.Style.FILL);
        this.paint.setStrokeWidth(1);

        for (int x = 0; x < this.map.getSize(); x++) {
            for (int y = 0; y < this.map.getSize(); y++) {
                char val = this.map.getPixel(x, y);
                this.paint.setColor(Color.argb(0xff, val, val, val));
                canvas.drawPoint(10+x, 10+y, this.paint);
            }
        }
    }
}

由于地图的大小(宽度 x 高度)可能会有所不同,因此首先在位图或类似的东西上绘制地图会更容易,然后将其显示为适合屏幕的大小。我不知道如何实现。我需要你的帮助,拜托。

4

1 回答 1

0

尝试这个:

int w = WIDTH_PX, h = HEIGHT_PX;

Bitmap.Config conf = Bitmap.Config.RGB_565;
Bitmap bmp = Bitmap.createBitmap(w, h, conf);
Canvas canvas = new Canvas(bmp);

// ready to draw on that bitmap through that canvas

来源:创建一个空位图并在 android 中通过画布绘制

希望有帮助!

于 2014-01-29T03:24:44.230 回答