Если canvas.scale (x, y), то canvas.drawPath (path, paint) получит размытые края? - PullRequest
0 голосов
/ 04 мая 2020

У меня есть что-то вроде рисования пальцем. Почему, когда я делаю это:

public class DrawViewPixel extends View {
Paint paint;
Path mPath;
Bitmap mBitmap;
Canvas mCanvas;


int  RESOLUTION, xBefore, yBefore;
float CANVAS_SIZE, CELL_SIZE;

public DrawViewPixel(Context context, int canvasSize ) {
    super(context);
    CANVAS_SIZE = canvasSize; //CANVAS_SIZE = 300dp
    RESOLUTION = 12;
    CELL_SIZE = CANVAS_SIZE/RESOLUTION;
    paint = new Paint();
    paint.setStrokeWidth(1);
    paint.setAntiAlias(false); 
    paint.setStyle(Paint.Style.FILL_AND_STROKE);
    paint.setColor(Color.RED);
    mPath = new Path();
}

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    canvas.scale(CELL_SIZE,CELL_SIZE);
    canvas.drawPath(mPath,paint);
}

я вижу это:

Но не это: enter image description here

Я пробовал много свойств краски и холста, но ... :( Может кто-нибудь сказать мне, почему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...