【问题标题】:Android:Text became blurred after I call canvas.scale()Android:我调用 canvas.scale() 后文本变得模糊
【发布时间】:2014-04-09 02:21:29
【问题描述】:

当我想使用 canvas.scale() 放大自定义视图文本时,文本变得模糊,如下:

@override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.translate(50,50 );
canvas.scale(mDpi/72, mDpi/72);
canvas.drawText("Stackoverflow!", 50, 50, mPaint);
}

mDpi是320,在手机上运行时是模糊的;但是在nexus 10上运行代码是正常的!谁能告诉我为什么?

【问题讨论】:

    标签: android canvas scale blurry


    【解决方案1】:

    我有办法!

    private void closeHardwareAcceleration() {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            setLayerType(LAYER_TYPE_SOFTWARE, null);
        }
    }
    

    因为在api 11之后,view是用HardwareAcceleration绘制的,关闭它!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2015-11-11
      • 2017-12-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多