我正在尝试使用以下代码将文本转换为图片:
public Bitmap textAsBitmap(String text, float textSize) {
Paint paint = new Paint(ANTI_ALIAS_FLAG);
paint.setTextSize(textSize);
paint.setColor(Color.BLACK);
paint.setStyle(Paint.Style.FILL_AND_STROKE);
paint.setTextAlign(Paint.Align.CENTER);
float baseline = -paint.ascent(); // ascent() is negative
int width = (int) (paint.measureText(text) + 0.5f); // round
int height = (int) (baseline + paint.descent() + 0.5f);
Bitmap image = Bitmap.createBitmap(width, height,
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(image);
canvas.drawText(text, 0, baseline, paint);
return image;
}
它将文本转换为图像,但问题是显示半文本。它应该显示“最喜欢的主题是英语”!
我做错了什么?或者我该如何解决这个问题
答案 0 :(得分:1)
选择宽度和宽度明智地, 像我在我的情况下做的事情
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="cars" multiple>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
<input type="button" value="get value" onclick="getvalue()"/>
答案 1 :(得分:1)
问题在于client.rb
,此属性将中心视为(0,0)。所以你的文字实际上是根据(0,0)的中心。
只需删除paint.setTextAlign(Paint.Align.CENTER);
,您的代码即可运行!!