#!/usr/bin/env python import pygtk,gtk,os,sys pygtk.require('2.0') from argparse import ArgumentParser def write_image(f): clipboard = gtk.clipboard_get() image = clipboard.wait_for_image() if image==None: sys.stderr.write("No image in clipboard!\n") sys.exit(1) image.save(f, type_str(f)) def type_str(f): filename, file_extension = os.path.splitext(f.lower()) file_extension=file_extension[1:] if file_extension=="jpg": return 'jpeg' if file_extension=="tif": return 'tiff' return file_extension parser=ArgumentParser(description="Write image from clipboard to image file. Extension jpg/png/tif/ico/bmp.") parser.add_argument('image', action="store") opts=parser.parse_args() if (os.path.exists(opts.image)): sys.stderr.write("Image already exists!\n") sys.exit(1) write_image(opts.image);