Skip to content
Advertisement

PIL and pygame.image

I had opened an image using PIL, as

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

Draw some text on it, as

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

and then saved it as

image.save("SomeOtherName.png")

to open it using pygame.image

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

I just want to do it without saving.. Can that be possible? It is taking a lot of time to save and then load(0.12 sec Yes, that is more as I have multiple images which require this operation). Can that save method be surpassed?

Advertisement

Answer

You could use the fromstring() function from pygame.image. The following should work, according to the documentation:

image = Image.open("SomeImage.png")
draw = ImageDraw.Draw(image)
draw.text(Some parameters here)

mode = image.mode
size = image.size
data = image.tostring()

this_image = pygame.image.fromstring(data, size, mode)
User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement