diff options
| author | dumpfmprod <dumpfmprod@ubuntu.(none)> | 2010-10-24 20:41:34 -0400 |
|---|---|---|
| committer | dumpfmprod <dumpfmprod@ubuntu.(none)> | 2010-10-24 20:41:34 -0400 |
| commit | 2f166037d567f7215cb7799419da32a74a5d19fe (patch) | |
| tree | ca9e9616e021fd6bc7305db9c306540011d7d875 /static/resizetest/resize.py | |
| parent | fafbde26383e42858538046d4b2b3691e21bd898 (diff) | |
sostler prod commit
Diffstat (limited to 'static/resizetest/resize.py')
| -rw-r--r-- | static/resizetest/resize.py | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/static/resizetest/resize.py b/static/resizetest/resize.py new file mode 100644 index 0000000..2f01250 --- /dev/null +++ b/static/resizetest/resize.py @@ -0,0 +1,43 @@ +import os +import subprocess +import sys + +AvatarSize = '50x50!' +NormalSize = '400x400!' + +def is_image(f): + f = f.lower() + return f.endswith('.jpg') or f.endswith('.jpeg') or f.endswith('.png') or f.endswith('.gif') + +def load_avatars(path='avatars.txt'): + return open(path, 'r').read().splitlines() + +def resize_file(path, size): + cmd = "gm convert -size %s %s -resize %s %s" % (size, path, size, path) + print cmd + subprocess.Popen(cmd, shell=True) + +def resize_directory(mode, dir): + filter = None + avatars = set(load_avatars()) + if mode == 'avatars': + filter = lambda f: f in avatars + elif mode == 'all': + filter = is_image + else: + print 'unknown mode: %s' % mode + return + + files = os.listdir(dir) + for f in files: + if filter(f): + if f in avatars: + resize_file('%s/%s' % (dir, f), AvatarSize) + else: + resize_file('%s/%s' % (dir, f), NormalSize) + +if __name__ == '__main__': + if len(sys.argv) != 3: + print "usage: resize.py mode directory" + else: + resize_directory(sys.argv[1], sys.argv[2])
\ No newline at end of file |
