Question

Trying out this simple code to write text on an image:

import ImageFont
import Image
import ImageDraw

font = ImageFont.truetype("arial.ttf", 16)
img=Image.new("RGB", (200,200),(120,20,20))
draw = ImageDraw.Draw(img)
draw.text((0, 0),"This is a test",(255,255,0),font=font)
draw = ImageDraw.Draw(img)

img.save("C:/Users/User/Desktop/test","jpeg")

and I get this error:

File "C:\Users\User\Anaconda\lib\site-packages\PIL\Image.py", line 1456, in save  
   save_handler = SAVE[format.upper()] # unknown format
KeyError: 'JPEG'

Any idea of how to fix this? I am using Python 2.7.5 Anaconda version in Windows 7 with Eclipse Kepler and PyDev plugin. I also tried img.save("test.jpeg") and img.save("test.png") resulting in the same error.

Was it helpful?

Solution

Turned out that Eclipse was using PIL rather than Pillow: I just deleted the PIL library reference in Eclipse and made sure Pillow was being used instead and it ran fine.

OTHER TIPS

Try just running

img.save("test.jpg")

and see if that does the trick. You shouldn't have to specify the type of file if you also supply a valid extension.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top