我正在用 pygame 在 python 中编写游戏,需要将文本渲染到屏幕上。
我想用带有轮廓的一种颜色渲染此文本,这样我就不必担心文本显示在哪种背景上。
pygame.font 似乎不支持直接做这种事情,我想知道是否有人有任何好的解决方案来实现这一点?
一种快速而肮脏的方法是使用轮廓颜色多次渲染您的文本,在文本位置周围的圆圈上少量移动:
1 8 | 2 \ | / \|/ 7----*----3 /|\ / | \ 6 | 4 5
编辑:你已经更快了!不过我不会删除我的答案,这个 ASCII 艺术太好了,值得活下去!
编辑 2:正如 OregonGhost 所提到的,您可能需要更多或更少的步骤来进行轮廓渲染,具体取决于您的轮廓宽度。
我可以给你一个快速而糟糕的解决方案:
打印文本 8 次,围绕它,再加上一次内部文本,像这样
UUU
UIU
UUU
U 代表外部颜色,I 代表内部颜色。