画像の上にテキストをペイントするこの方法があります。
public BitmapDrawable writeOnDrawable(int drawableId, String text){
Bitmap bm = BitmapFactory.decodeResource(getResources(), drawableId);
Typeface mFace = Typeface.createFromAsset(this.getAssets(),"fonts/progbot.ttf");
Paint paint = new Paint();
paint.setStyle(Style.FILL);
paint.setColor(Color.RED);
paint.setTypeface(mFace);
paint.setTextSize(30);
Canvas canvas = new Canvas(bm);
canvas.drawText(text, 0, bm.getHeight()/2, paint);
return new BitmapDrawable(bm);
}
これは私がこのメソッドを呼び出す方法です:
lineIconView.setImageDrawable(writeOnDrawable(R.drawable.icon_line_numbre, linea.getNumero()));
この ImageView ( lineIconView
) には、すでにR.drawable.icon_line_numbre
リソース セットがあります。関数を呼び出さないとwriteOnDrawable
、画像は元のサイズで表示されますが、呼び出した後、画像のサイズが大幅に縮小されます。
これは正常な動作ですか?