python - 文本中的 Python pygame alpha
问题描述
这个问题是从之前提出的问题扩展而来的: Pygame alpha in polygon only
现在我可以通过surface.convert_alpha()成功地在2表面下绘制多边形和带alpha的线。我不需要使用 alpha 设置整个表面(这是从在线搜索的解决方案,但不适用于我的情况)。据我了解,使用 surface.convert_alpha() 允许我在使用 pygame.draw.polygon() 时设置每个多边形中的 alpha。
此外,我还可以通过在本地使用 alpha 来清理现有的多边形。如果需要清洗多边形,我只能在同一个位置绘制相同的多边形,颜色=(0, 0, 0, 0),这样之前的颜色只覆盖在需要清洗的位置,这种方法提高了速度,因为我不需要再次绘制整个表面。我可以在多边形位置局部清理像素。
但是,当我想在 Text 上应用相同的方法时,它似乎不适用。我的示例代码是:
self.CurInfoCanv = pygame.Surface((1000, 1000), HWSURFACE|DOUBLEBUF|RESIZABLE).convert_alpha()
self.CurInfoFont = pygame.font.SysFont('Comic Sans MS', 30)
Text = self.CurInfoFont.render('TextHere', True, (0, 0, 0, 0))
TextRect = Text.get_rect()
TextRect.topleft = (0, 0)
self.CurInfoCanv.blit(Text, TextRect)
self.Displayer.blit(self.CurInfoCanv, (0, 0))
在self.CurInfoFont.render('TextHere', True, (0, 0, 0, 0))
,颜色以第 4 个元素作为 alpha 输入,文本仍然没有透明度。请告诉我是否有任何错误或更聪明的方法来做到这一点。谢谢你。
解决方案
推荐阅读
- dropwizard - 是否有 Dropwizard 和 Keycloak 的有效 Oauth2 示例实现?
- json - JQ 从 JSON 文件中提取值并分配给变量
- excel - 使用按钮取消隐藏单元格行
- php - Laravel,“getimagesize(asda.jpg):无法打开流:没有这样的文件或目录”
- c# - 从日期列表中查找最小日期值
- node.js - Jest not showing errors that are thrown
- botframework - 如何创建处理来自应用程序的所有对话框的机器人对象的多个实例
- docker - 在 docker 内构建包后,纱线冻结
- excel - VBA复制链接到列中某个关键字的单元格
- git - TFS CI 构建触发器未触发 SVN 存储库