home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / lib / python2.6 / dist-packages / PIL / ImageChops.pyc (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2009-04-20  |  4.9 KB  |  124 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. import Image
  5.  
  6. def constant(image, value):
  7.     '''Fill a channel with a given grey level'''
  8.     return Image.new('L', image.size, value)
  9.  
  10.  
  11. def duplicate(image):
  12.     '''Create a copy of a channel'''
  13.     return image.copy()
  14.  
  15.  
  16. def invert(image):
  17.     '''Invert a channel'''
  18.     image.load()
  19.     return image._new(image.im.chop_invert())
  20.  
  21.  
  22. def lighter(image1, image2):
  23.     '''Select the lighter pixels from each image'''
  24.     image1.load()
  25.     image2.load()
  26.     return image1._new(image1.im.chop_lighter(image2.im))
  27.  
  28.  
  29. def darker(image1, image2):
  30.     '''Select the darker pixels from each image'''
  31.     image1.load()
  32.     image2.load()
  33.     return image1._new(image1.im.chop_darker(image2.im))
  34.  
  35.  
  36. def difference(image1, image2):
  37.     '''Subtract one image from another'''
  38.     image1.load()
  39.     image2.load()
  40.     return image1._new(image1.im.chop_difference(image2.im))
  41.  
  42.  
  43. def multiply(image1, image2):
  44.     '''Superimpose two positive images'''
  45.     image1.load()
  46.     image2.load()
  47.     return image1._new(image1.im.chop_multiply(image2.im))
  48.  
  49.  
  50. def screen(image1, image2):
  51.     '''Superimpose two negative images'''
  52.     image1.load()
  53.     image2.load()
  54.     return image1._new(image1.im.chop_screen(image2.im))
  55.  
  56.  
  57. def add(image1, image2, scale = 1, offset = 0):
  58.     '''Add two images'''
  59.     image1.load()
  60.     image2.load()
  61.     return image1._new(image1.im.chop_add(image2.im, scale, offset))
  62.  
  63.  
  64. def subtract(image1, image2, scale = 1, offset = 0):
  65.     '''Subtract two images'''
  66.     image1.load()
  67.     image2.load()
  68.     return image1._new(image1.im.chop_subtract(image2.im, scale, offset))
  69.  
  70.  
  71. def add_modulo(image1, image2):
  72.     '''Add two images without clipping'''
  73.     image1.load()
  74.     image2.load()
  75.     return image1._new(image1.im.chop_add_modulo(image2.im))
  76.  
  77.  
  78. def subtract_modulo(image1, image2):
  79.     '''Subtract two images without clipping'''
  80.     image1.load()
  81.     image2.load()
  82.     return image1._new(image1.im.chop_subtract_modulo(image2.im))
  83.  
  84.  
  85. def logical_and(image1, image2):
  86.     '''Logical and between two images'''
  87.     image1.load()
  88.     image2.load()
  89.     return image1._new(image1.im.chop_and(image2.im))
  90.  
  91.  
  92. def logical_or(image1, image2):
  93.     '''Logical or between two images'''
  94.     image1.load()
  95.     image2.load()
  96.     return image1._new(image1.im.chop_or(image2.im))
  97.  
  98.  
  99. def logical_xor(image1, image2):
  100.     '''Logical xor between two images'''
  101.     image1.load()
  102.     image2.load()
  103.     return image1._new(image1.im.chop_xor(image2.im))
  104.  
  105.  
  106. def blend(image1, image2, alpha):
  107.     '''Blend two images using a constant transparency weight'''
  108.     return Image.blend(image1, image2, alpha)
  109.  
  110.  
  111. def composite(image1, image2, mask):
  112.     '''Create composite image by blending images using a transparency mask'''
  113.     return Image.composite(image1, image2, mask)
  114.  
  115.  
  116. def offset(image, xoffset, yoffset = None):
  117.     '''Offset image in horizontal and/or vertical direction'''
  118.     if yoffset is None:
  119.         yoffset = xoffset
  120.     
  121.     image.load()
  122.     return image._new(image.im.offset(xoffset, yoffset))
  123.  
  124.