gpt4 book ai didi

python - PIL 和 pygame.image

转载 作者:太空狗 更新时间:2023-10-30 02:20:07 25 4
gpt4 key购买 nike

我用 PIL 打开了一张图片,如

image = Image.open("SomeImage.png")

在上面画一些文字,如

draw = ImageDraw.Draw(image)
draw.text(Some parameters here)

然后保存为

image.save("SomeOtherName.png")

使用pygame.image打开它

this_image = pygame.image.load("SomeOtherName.png")

我只想做而不保存..这可能吗?保存然后加载需要很多时间(0.12 秒是的,因为我有多个图像需要此操作,所以时间更长)。那个救法能被超越吗?

最佳答案

很遗憾,已接受的答案不再有效,因为 Image.tostring() 已被删除。它已被替换为 Image.tobytes()。参见 Pillow - Image Module .

函数转换 PIL Imagepygame.Surface对象:

def pilImageToSurface(pilImage):
return pygame.image.fromstring(
pilImage.tobytes(), pilImage.size, pilImage.mode).convert()

推荐到convert() Surface 具有与显示器 Surface 相同的像素格式。


最小的例子:

import pygame
from PIL import Image

def pilImageToSurface(pilImage):
return pygame.image.fromstring(
pilImage.tobytes(), pilImage.size, pilImage.mode).convert()

pygame.init()
window = pygame.display.set_mode((500, 500))
clock = pygame.time.Clock()

pilImage = Image.open('myimage.png')
pygameSurface = pilImageToSurface(pilImage)

run = True
while run:
clock.tick(60)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False

window.fill(0)
window.blit(pygameSurface, pygameSurface.get_rect(center = (250, 250)))
pygame.display.flip()

关于python - PIL 和 pygame.image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25202092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com