用pygame绘制带有字体的旋转文本的最佳方法是什么?我可以在rotozoom
之后绘制字体,但是如果可以直接旋转字形,那么看起来效果会更好,特别是考虑到AA?
答案 0 :(得分:0)
Pygame没有您正在寻找的功能。
您必须使用您提到的方法,即rotozoom
对已渲染的字体。这种方法的质量实际上并不是那么糟糕。关于速度,你不想总是一直渲染字体。
如果您急需速度,并且文本不是动态的,您可以随时为要显示的每个文本创建32个方向的缓存。 Pyglet允许你旋转sprites为“free”,即硬件加速。
或者您可以查看pygame使用的原始SDL库,看看是否可以找到直接绘制旋转字体的内容并使用它来攻击pygame。
答案 1 :(得分:0)
你可以在pygame中使用pyOpenGL表面,如果这样可以简化它。 Pyglet也使用OpenGL。
(对于pygame曲面)您可以使用它来缓存渲染的文本以进行旋转。或者预先缓存所有32个方向。 [见其他答案]