Canvas绘制文字,真机上位置和预览器差很多,怎么对齐?
Canvas绘制文字,真机上位置和预览器差很多,怎么对齐?
用Canvas画文字,预览器里文字居中显示,真机上偏上很多,调整y坐标也不管用
您需要先 登录 才能评论/回答
全部评论(1)
核心问题是 文字基线(baseline)不一致,预览器和真机的字体渲染基线计算有差异。
解决方法:
1. 用 TextPainter 先测量文字宽高和基线偏移,再计算绘制坐标,别直接写死y值;
2. 绘制时让文字的 centerY 对齐目标位置,比如 y = 目标Y - (textPainter.height / 2);
3. 禁用字体缩放(textPainter.textScaleFactor = 1.0),避免系统字体大小影响位置。
2025-11-22 11:32:04
