1.1 --- a/optimiserlib.py Sat Oct 10 16:13:09 2015 +0200
1.2 +++ b/optimiserlib.py Sat Oct 10 16:39:08 2015 +0200
1.3 @@ -230,6 +230,25 @@
1.4 return (y, l)
1.5 return None
1.6
1.7 +def process_image(im, saturate, desaturate, darken, brighten):
1.8 +
1.9 + """
1.10 + Process image 'im' using the given options: 'saturate', 'desaturate',
1.11 + 'darken', 'brighten'.
1.12 + """
1.13 +
1.14 + width, height = im.size
1.15 +
1.16 + if saturate or desaturate or darken or brighten:
1.17 + for y in range(0, height):
1.18 + for x in range(0, width):
1.19 + rgb = im.getpixel((x, y))
1.20 + if saturate or desaturate:
1.21 + rgb = saturate_rgb(rgb, saturate and 0.5 / saturate or 2 * desaturate)
1.22 + if darken or brighten:
1.23 + rgb = amplify_rgb(rgb, brighten and 0.5 / brighten or 2 * darken)
1.24 + im.putpixel((x, y), rgb)
1.25 +
1.26 class SimpleImage:
1.27
1.28 "An image behaving like PIL.Image."
1.29 @@ -274,4 +293,6 @@
1.30 get_colours(im, 0) == [(1.0, (0, 0, 0))]
1.31 count_colours(im, 4)
1.32
1.33 + process_image(im, 1.0, 0.0, 1.0, 0.0)
1.34 +
1.35 # vim: tabstop=4 expandtab shiftwidth=4