所以我有一个 PNG 文件,我在我的应用程序中用作自定义画笔。随着动作事件的发生,我不断重绘它以提供画笔效果。但是如果我拖得太快,我会错过像素,并且一些画笔看起来很糟糕——就像图像只是相互绘制一样。
有什么办法可以在drawpath
模式下绘制它吗?
下面的代码是我的onDraw
方法。该mbitmapBrush
变量具有 PNG 图像文件,pos.a
并且pos.b
是当前运动事件的“x”和“y”坐标。
@Override
protected void onDraw(Canvas canvas) {
Paint paint=mPaint;
canvas.drawColor(0xFFAAAAAA);
mCM.set(new float[]{1f, 1f, 1f, 0f, 1f,
0f, 1f, 3f, 0f, 4f,
1f, 4f, 1f, 1f, 0f,
1f, 0f, 0f, 1f, 0f });
ColorMatrixColorFilter cm3=new ColorMatrixColorFilter(mCM);
paint.setColorFilter(cm3);
canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
for (Vector2 pos : mPositions) {
canvas.drawBitmap(mBitmapBrush, pos.a, pos.b, paint);
//canvas.drawCircle(pos.a, pos.b, 7, mPaint);
}
//canvas.drawBitmap(mBitmapBrush, clickX, clickY, null);
//canvas.drawPath(mPath, mPaint);
invalidate();
}