问题描述
我正在使用canvas.drawText()在自定义视图中绘制文本,并且字体没有根据我提供的浮动大小正确缩放。字体仅以离散尺寸绘制。为什么会这样,并且有一种方法可以缩放具有浮动大小的字体?
paint.setTextSize(textSize);
Log.d("DEBUG","textSize : " + textSize);
paint.setTypeface(Typeface.createFromAsset(context.getAssets(),"fonts/times.ttf"));
如以下插图所示,字体突然从3更改为2。 有没有办法以2.5f大小绘制字体?
解决方法
尝试一下:
paint.textSize = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,12f,resources.displayMetrics)
此代码设置要绘制的12sp文字大小