diff options
Diffstat (limited to 'Lib/plat-irix6/torgb.py')
-rw-r--r-- | Lib/plat-irix6/torgb.py | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/Lib/plat-irix6/torgb.py b/Lib/plat-irix6/torgb.py deleted file mode 100644 index 02bcb53..0000000 --- a/Lib/plat-irix6/torgb.py +++ /dev/null @@ -1,99 +0,0 @@ -# Convert "arbitrary" image files to rgb files (SGI's image format). -# Input may be compressed. -# The uncompressed file type may be PBM, PGM, PPM, GIF, TIFF, or Sun raster. -# An exception is raised if the file is not of a recognized type. -# Returned filename is either the input filename or a temporary filename; -# in the latter case the caller must ensure that it is removed. -# Other temporary files used are removed by the function. - -import os -import tempfile -import pipes -import imghdr - -table = {} - -t = pipes.Template() -t.append('fromppm $IN $OUT', 'ff') -table['ppm'] = t - -t = pipes.Template() -t.append('(PATH=$PATH:/ufs/guido/bin/sgi; exec pnmtoppm)', '--') -t.append('fromppm $IN $OUT', 'ff') -table['pnm'] = t -table['pgm'] = t -table['pbm'] = t - -t = pipes.Template() -t.append('fromgif $IN $OUT', 'ff') -table['gif'] = t - -t = pipes.Template() -t.append('tifftopnm', '--') -t.append('(PATH=$PATH:/ufs/guido/bin/sgi; exec pnmtoppm)', '--') -t.append('fromppm $IN $OUT', 'ff') -table['tiff'] = t - -t = pipes.Template() -t.append('rasttopnm', '--') -t.append('(PATH=$PATH:/ufs/guido/bin/sgi; exec pnmtoppm)', '--') -t.append('fromppm $IN $OUT', 'ff') -table['rast'] = t - -t = pipes.Template() -t.append('djpeg', '--') -t.append('(PATH=$PATH:/ufs/guido/bin/sgi; exec pnmtoppm)', '--') -t.append('fromppm $IN $OUT', 'ff') -table['jpeg'] = t - -uncompress = pipes.Template() -uncompress.append('uncompress', '--') - - -class error(Exception): - pass - -def torgb(filename): - temps = [] - ret = None - try: - ret = _torgb(filename, temps) - finally: - for temp in temps[:]: - if temp != ret: - try: - os.unlink(temp) - except os.error: - pass - temps.remove(temp) - return ret - -def _torgb(filename, temps): - if filename[-2:] == '.Z': - (fd, fname) = tempfile.mkstemp() - os.close(fd) - temps.append(fname) - sts = uncompress.copy(filename, fname) - if sts: - raise error, filename + ': uncompress failed' - else: - fname = filename - try: - ftype = imghdr.what(fname) - except IOError as msg: - if type(msg) == type(()) and len(msg) == 2 and \ - type(msg[0]) == type(0) and type(msg[1]) == type(''): - msg = msg[1] - if type(msg) is not type(''): - msg = repr(msg) - raise error, filename + ': ' + msg - if ftype == 'rgb': - return fname - if ftype is None or not table.has_key(ftype): - raise error, '%s: unsupported image file type %r' % (filename, ftype) - (fd, temp) = tempfile.mkstemp() - os.close(fd) - sts = table[ftype].copy(fname, temp) - if sts: - raise error, filename + ': conversion to rgb failed' - return temp |