[Image-SIG] PIL: Can't open saved BMP image

Sheila King sheila at thinkspot.net
Mon Aug 4 12:06:12 EDT 2003

I am just trying out PIL since last night, and only doing the most basic of

I had gotten down how to create a new image and draw lines and pixels and
save as a BMP image last night, and then I would be able to open them in
Ulead's PhotoImpact or other image viewing software if I so desired.

Well, today I ran a script and the first time it saved the image just fine
for me, but on repeated runs the script completes without error, but when I
try to open the saved image in anything (including PIL), I get an error
that it cannot open the image.

Here is the script that is creating the image (on Win32 Python 2.2.2 under
Windows 2000):

-------(begin creation script)----------------
import Image, ImageDraw

graph = Image.new("RGB", (660,350), "white")
drw = ImageDraw.Draw(graph)

## draw axes
## horizontal axis
for y in range(300,305):
## vertical axis
for x in range(45,50):

graph.save(open("graphout2.bmp", "w"))

--------(end creation script)-----------------

BTW, the "show" commands work just fine and open up BMP images for me in
Ulead PhotoImpact. 

However, the saved graphic, "graphout2.bmp" cannot be opened.

Here is a traceout from trying to open in PIL.

Python 2.2.2 (#37, Oct 14 2002, 17:02:34) [MSC 32 bit (Intel)] on win32
Type "copyright", "credits" or "license" for more information.
IDLE 0.8 -- press F1 for help
>>> import Image
>>> im = Image.open("graphout2.bmp")
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in ?
    im = Image.open("graphout2.bmp")
  File "E:\PYTHON22\Lib\site-packages\PIL\Image.py", line 1556, in open
    return factory(fp, filename)
  File "E:\PYTHON22\Lib\site-packages\PIL\ImageFile.py", line 78, in
  File "E:\PYTHON22\Lib\site-packages\PIL\BmpImagePlugin.py", line 164, in
  File "E:\PYTHON22\Lib\site-packages\PIL\BmpImagePlugin.py", line 96, in
    raise IOError("Unsupported BMP header type (%d)" % len(s))
IOError: Unsupported BMP header type (10240)

If I'm doing something stupid here, I'd certainly appreciate someone giving
me a kick in the head and setting me straight.


Sheila King

More information about the Image-SIG mailing list