渲染描边字体的好方法是什么?

7 投票
2 回答
2919 浏览
提问于 2025-04-15 12:48

我正在用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表示。

撰写回答