hi Peter, > > Thanks for the reply folks. Here is the code I have produced so far... > #! /usr/bin/python > > import sys > import string
Don't use the string module, use the string type methods: http://python.org/doc/2.3.5/lib/string-methods.html Read the next page too, about string formatting. You'll find your helper functions are reducible to one-liners: def hexit(n): return "%.2X" % ord(n) def hex2dec(n): return int(n, 16) def invhex(n): return "%.2X" % (255 - ord(n)) It is also inadvisable to use "+" to build up a long string -- better to use a list, then join it up with ''.join(). Also, your code mixes tabs and spaces, which only leads to trouble in the long run. It ought to be possible to make you text editor stick to one or the other. Nevertheless, the main problem seems to be that you are ignoring PIL and parsing the image files yourself. I would suggest something like this: import sys import Image for arg in sys.argv[1:]: im = Image.open(arg) #this is equivalent to step 1 of Fredrik's reply. Step 2 went like this: data = im.tostring("raw", "1;I") size = len(data) data = ["%02X" % ord(byte) for byte in data] print "%d,%d^m" % (size, (im.size[0]+7)/8) print "".join(data) try it. douglas _______________________________________________ Image-SIG maillist - Image-SIG@python.org http://mail.python.org/mailman/listinfo/image-sig