渲染描边字体的好方法是什么?
我正在用Python和pygame写一个游戏,需要把文字显示在屏幕上。
我想把这些文字渲染成一种颜色,并加上轮廓,这样我就不用担心文字显示在什么样的背景上了。
不过,pygame.font好像不直接支持这种效果,我在想有没有人能提供一些好的解决办法来实现这个?
2 个回答
4
一种简单粗暴的方法是把你的文字多次渲染,使用轮廓颜色,并且稍微移动一下位置,围绕文字的位置画一个圆圈:
1 8 | 2 \ | / \|/ 7----*----3 /|\ / | \ 6 | 4 5
编辑:哎呀,你真快!不过我不会删掉我的回答,这个ASCII艺术实在太棒了,值得保留!
编辑 2:正如OregonGhost提到的,根据你的轮廓宽度,你可能需要更多或更少的步骤来渲染轮廓。
3
我可以给你一个简单但不太好的解决办法:
把这个文本打印8次,用来包围它,再加上1次打印内部的文本,像这样
UUU
UIU
UUU
外面的颜色用U表示,里面的颜色用I表示。