首页 > 解决方案 > Android canvas.drawText 使用paint显示坏颜色

问题描述

这是我的第一个问题,所以我希望完全尊重图表!

我正在使用 API 19。我在特定片段上显示文本,用户可以选择 2 种颜色:笔触颜色和文本颜色。我绘制彩色文本如下:

// Prepare to draw stroke text
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeJoin(Paint.Join.ROUND);
paint.setStrokeMiter(10);
// Set stroke color
paint.setColor(parseColor(customStrokeColor));
paint.setStrokeWidth(strokeSize);
// Draw Stroke text
canvas.drawText(text, x, y, paint);
// Fill text with text color
paint.setStyle(Paint.Style.FILL);
paint.setColor(parseColor(customTextColor));
canvas.drawText(text, x, y, paint);

而且我对特定的颜色有疑问(测试了超过 1000 对颜色)。事实上,如果我使用“#FFCC00”作为文本颜色并使用“#FFFFFF”作为笔划颜色,我得到的显示效果很差(黄色显示为“#FFFF00”): 图片的底部文本

但是,如果我使用“#FFCC00”作为文本颜色和“#000000”作为笔触颜色,我得到了很好的颜色图片的顶部文本

我真的需要帮助来了解原因并解决它!谢谢

标签: javaandroid

解决方案


这不是一个真正的问题,并且正在按预期工作。

#FFFFFF 是白色,而 #000000 是黑色。因此,如果您将描边颜色设置为白色,您将拥有丑陋的白色轮廓,如果将其设置为黑色,它将拥有漂亮的黑色轮廓。


推荐阅读