2009-01-08 21:11:15 +00:00
|
|
|
""" ImageKit utility functions """
|
|
|
|
|
|
2009-01-08 20:04:20 +00:00
|
|
|
import tempfile
|
|
|
|
|
|
2011-10-10 17:13:47 +00:00
|
|
|
|
2009-01-08 20:04:20 +00:00
|
|
|
def img_to_fobj(img, format, **kwargs):
|
|
|
|
|
tmp = tempfile.TemporaryFile()
|
2011-10-10 17:13:47 +00:00
|
|
|
|
|
|
|
|
# Preserve transparency if the image is in Pallette (P) mode.
|
2011-08-23 14:20:37 +00:00
|
|
|
if img.mode == 'P':
|
2011-09-25 22:53:51 +00:00
|
|
|
kwargs['transparency'] = len(img.split()[-1].getcolors())
|
2011-08-23 14:20:37 +00:00
|
|
|
else:
|
|
|
|
|
img.convert('RGB')
|
2011-10-10 17:13:47 +00:00
|
|
|
|
2011-08-23 14:20:37 +00:00
|
|
|
img.save(tmp, format, **kwargs)
|
2009-01-08 20:04:20 +00:00
|
|
|
tmp.seek(0)
|
2009-01-08 21:11:15 +00:00
|
|
|
return tmp
|