android–Canvas drawtext定位

android–Canvas drawtext定位,第1张

概述我正在创建一个绘图工具,用户可以在其中添加文本到图像.通过画布位置将文本绘制到位图时,未正确设置.Paintpaint=newPaint();paint.setStyle(Paint.Style.FILL);paint.setColor(Color.RED);paint.setTypeface(tf);paint.setTextAlign(Pa

我正在创建一个绘图工具,用户可以在其中添加文本到图像.通过画布位置将文本绘制到位图时,未正确设置.

Paint paint = new Paint();        paint.setStyle(Paint.Style.FILL);        paint.setcolor(color.RED);        paint.setTypeface(tf);        paint.setTextAlign(Paint.Align.left);        paint.setTextSize(30);int xPos = layoutTextVIEwContainer.getleft();        int yPos = layoutTextVIEwContainer.gettop();        canvas.drawText(text, xPos, yPos, paint);

涂料

Rect textRect = new Rect();        paint.getTextBounds(text, 0, text.length(), textRect);        textRect.offset(0, -textRect.top);        Canvas canvas = new Canvas(bm);

layoutTextVIEwContainer保存编辑文本.
屏幕截图以获得更多说明.
写入黑色文本,红色文本是嵌入图像的预览

解决方法:

得到了解决方案.值应该与像素无关
在传递给drawText之前,将xPos和yPos转换为如下所示

 xPos = (int) (xPos / getResources().getdisplayMetrics().density);    yPos = (int) (yPos / getResources().getdisplayMetrics().density);
总结

以上是内存溢出为你收集整理的android – Canvas drawtext定位全部内容,希望文章能够帮你解决android – Canvas drawtext定位所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1119117.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存