2012/07/10

1pxの線が描けない

次のようなコードで線を描画すると、綺麗な 1px の線が描けない。
@Override
protected void onDraw(Canvas canvas) {
  Paint paint = new Paint();
  paint.setAntiAlias(true);
  canvas.drawLine(50f, 50f, 100f, 50f, paint);
}


アンチエイリアスを切ればうまくいくのは当然なんだけど、最終的には角丸の四角を描きたいのでアンチエイリアスを有効のまま、スッキリとした線を描きたい。

0.5pxズラせばうまくいくか?と思って、
  canvas.drawLine(50f, 50.5f, 100f, 50.5f, paint);
としてみてもダメ。

どーにかならないかなー。

1 件のコメント:

  1. エミュレータのGPUをOffにしたら、0.5pxズラしで綺麗な線が描けた!
    GPU 問題かいな。

    返信削除