没有模糊/ AntiAliasing的Android Canvas.DrawBitmap?

sev*_*bar 5 java android

我正在尝试使用精灵(或非常像素化的角色,背景等)制作一款安卓游戏.我在画布上绘制它们就像这样......

matrix.preScale(xrat,yrat);

canvas.drawBitmap(img, matrix, null);

其中img是Bitmap,而xrat和yrat是比例.

我的问题是,当我测试时,Bitmap模糊或消除锯齿,有没有办法防止这种情况?如果积木模糊,游戏的僵硬艺术风格将被破坏.

任何(任何)帮助表示赞赏!

Kle*_*ine 22

创建一个新的Paint,用于在使用设置绘制位图时使用:

Paint drawPaint = new Paint();
drawPaint.setAntiAlias(false);
drawPaint.setFilterBitmap(false);
Run Code Online (Sandbox Code Playgroud)

过滤我相信默认情况下会启用,并会在按比例放大时尝试平滑位图.

  • @ Sh33p只是想知道,是不是绘画 - nodpi甚至更好? (6认同)
  • 我相信只有在你向上扩展而不是向下扩展时才应用过滤.只是想指出这一点,因为OP没有具体说明. (2认同)
  • 嘿,非常感谢大家,我还想添加到正在制作8位游戏或尝试做我正在做的事情的任何人,你需要将你的图像资源放在drawable-hdpi或android中,无论如何都要过滤它. (2认同)