From: zuber Date: Mon, 12 Oct 2009 22:36:20 +0000 (+0200) Subject: Przeniesienie skryptów do nowego katalogu scripts. X-Git-Url: https://git.mdrn.pl/redakcja.git/commitdiff_plain/97e1a72c211205e4596accbfc86cf5eeaec487ee?hp=36387dac2e103ca656be9dc65fabb936f80191d1 Przeniesienie skryptów do nowego katalogu scripts. --- diff --git a/crop.py b/crop.py deleted file mode 100755 index a7d83840..00000000 --- a/crop.py +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env python -import sys -import os -from os.path import splitext, dirname, basename, realpath -from PIL import Image - - -def crop(image, top=0, right=0, bottom=0, left=0): - width, height = image.size - if top < 1: - top = int(height * top) - if right < 1: - right = int(width * right) - if bottom < 1: - bottom = int(height * bottom) - if left < 1: - left = int(width * left) - - bounds = (int(left), int(top), int(width - right), int(height - bottom)) - image = image.crop(bounds) - image.load() - return image - - -output_dir = realpath(os.getcwd()) + '/output' -bounds = [float(i) for i in sys.argv[1].split(':')] - -for file_name in sys.argv[2:]: - base_name, ext = splitext(file_name) - try: - image = Image.open(file_name) - except IOError, e: - sys.stderr.write('\nerror:%s:%s\n' % (file_name, e.message)) - continue - - image = crop(image, *bounds) - image.save(output_dir + '/' + basename(file_name)) \ No newline at end of file diff --git a/dump_toolbar.sh b/dump_toolbar.sh deleted file mode 100755 index aede1747..00000000 --- a/dump_toolbar.sh +++ /dev/null @@ -1 +0,0 @@ -./project/manage.py dumpdata --format=xml toolbar | xmllint --format - > apps/toolbar/fixtures/przyciski.xml diff --git a/imgconv.py b/imgconv.py deleted file mode 100755 index ce514b32..00000000 --- a/imgconv.py +++ /dev/null @@ -1,94 +0,0 @@ -#!/usr/bin/env python -import sys -import os -import shutil -from os.path import splitext, dirname, basename, realpath -from PIL import Image, ImageFilter, ImageEnhance, ImageOps - - -def resize(image, max_width, max_height): - """Resize image so it's not wider than max_width and not higher than max_height.""" - width, height = image.size - ratio = max(1.0, float(width) / max_width, float(height) / max_height) - new_width, new_height = int(width / ratio), int(height / ratio) - return image.resize((new_width, new_height), Image.ANTIALIAS) - - -def crop(image, ratio, from_right=False): - """Crop image to ratio of current width.""" - width, height = image.size - new_width = width * ratio - if from_right: - bounds = (int(width - new_width), 0, int(width), int(height)) - else: - bounds = (0, 0, int(new_width), int(height)) - image = image.crop(bounds) - image.load() - return image - - -def ratio(image): - """Return width to height ratio of image.""" - width, height = image.size - return float(width) / height - - -def try_creating(directory): - try: - os.mkdir(directory) - except: - pass - - -output_dir = realpath(os.getcwd()) + '/output' -# big_output_dir = output_dir + '/big' -tmp_output_dir = output_dir + '/tmp' - -try_creating(output_dir) -# try_creating(big_output_dir) -try_creating(tmp_output_dir) - - -for file_name in sys.argv[1:]: - base_name, ext = splitext(file_name) - try: - image = Image.open(file_name) - except IOError, e: - sys.stderr.write('\nerror:%s:%s\n' % (file_name, e.message)) - continue - - # Check ratio - if ratio(image) > 1: - images = [crop(image, 0.6), crop(image, 0.6, from_right=True)] - else: - images = [image] - - for i, image in enumerate(images): - image_name = '%s.%d.png' % (basename(base_name), i) - - # Save files - small_image = resize(image, 640, 960) - small_image = small_image.convert('L') - small_image = ImageOps.autocontrast(small_image, cutoff=85) - # small_image = small_image.filter(ImageFilter.SHARPEN) - small_image.save(tmp_output_dir + '/' + image_name) - - os.system('pngnq -n 128 -s 1 -e .png -d "%s" -f "%s"' % ( - output_dir, - tmp_output_dir + '/' + image_name, - )) - os.remove(tmp_output_dir + '/' + image_name) - - # big_image = resize(image, 960, 1440) - # big_image = big_image.convert('L') - # big_image = big_image.filter(ImageFilter.SHARPEN) - # big_image.save(tmp_output_dir + '/' + image_name, optimize=True) - # os.system('pngnq -n 16 -s 1 -e .png -d "%s" -f "%s"' % ( - # big_output_dir, - # tmp_output_dir + '/' + image_name, - # )) - # os.remove(tmp_output_dir + '/' + image_name) - - sys.stderr.write('.') - -shutil.rmtree(tmp_output_dir) diff --git a/scripts/crop.py b/scripts/crop.py new file mode 100755 index 00000000..a7d83840 --- /dev/null +++ b/scripts/crop.py @@ -0,0 +1,37 @@ +#!/usr/bin/env python +import sys +import os +from os.path import splitext, dirname, basename, realpath +from PIL import Image + + +def crop(image, top=0, right=0, bottom=0, left=0): + width, height = image.size + if top < 1: + top = int(height * top) + if right < 1: + right = int(width * right) + if bottom < 1: + bottom = int(height * bottom) + if left < 1: + left = int(width * left) + + bounds = (int(left), int(top), int(width - right), int(height - bottom)) + image = image.crop(bounds) + image.load() + return image + + +output_dir = realpath(os.getcwd()) + '/output' +bounds = [float(i) for i in sys.argv[1].split(':')] + +for file_name in sys.argv[2:]: + base_name, ext = splitext(file_name) + try: + image = Image.open(file_name) + except IOError, e: + sys.stderr.write('\nerror:%s:%s\n' % (file_name, e.message)) + continue + + image = crop(image, *bounds) + image.save(output_dir + '/' + basename(file_name)) \ No newline at end of file diff --git a/scripts/dump_toolbar.sh b/scripts/dump_toolbar.sh new file mode 100755 index 00000000..aede1747 --- /dev/null +++ b/scripts/dump_toolbar.sh @@ -0,0 +1 @@ +./project/manage.py dumpdata --format=xml toolbar | xmllint --format - > apps/toolbar/fixtures/przyciski.xml diff --git a/scripts/imgconv.py b/scripts/imgconv.py new file mode 100755 index 00000000..ce514b32 --- /dev/null +++ b/scripts/imgconv.py @@ -0,0 +1,94 @@ +#!/usr/bin/env python +import sys +import os +import shutil +from os.path import splitext, dirname, basename, realpath +from PIL import Image, ImageFilter, ImageEnhance, ImageOps + + +def resize(image, max_width, max_height): + """Resize image so it's not wider than max_width and not higher than max_height.""" + width, height = image.size + ratio = max(1.0, float(width) / max_width, float(height) / max_height) + new_width, new_height = int(width / ratio), int(height / ratio) + return image.resize((new_width, new_height), Image.ANTIALIAS) + + +def crop(image, ratio, from_right=False): + """Crop image to ratio of current width.""" + width, height = image.size + new_width = width * ratio + if from_right: + bounds = (int(width - new_width), 0, int(width), int(height)) + else: + bounds = (0, 0, int(new_width), int(height)) + image = image.crop(bounds) + image.load() + return image + + +def ratio(image): + """Return width to height ratio of image.""" + width, height = image.size + return float(width) / height + + +def try_creating(directory): + try: + os.mkdir(directory) + except: + pass + + +output_dir = realpath(os.getcwd()) + '/output' +# big_output_dir = output_dir + '/big' +tmp_output_dir = output_dir + '/tmp' + +try_creating(output_dir) +# try_creating(big_output_dir) +try_creating(tmp_output_dir) + + +for file_name in sys.argv[1:]: + base_name, ext = splitext(file_name) + try: + image = Image.open(file_name) + except IOError, e: + sys.stderr.write('\nerror:%s:%s\n' % (file_name, e.message)) + continue + + # Check ratio + if ratio(image) > 1: + images = [crop(image, 0.6), crop(image, 0.6, from_right=True)] + else: + images = [image] + + for i, image in enumerate(images): + image_name = '%s.%d.png' % (basename(base_name), i) + + # Save files + small_image = resize(image, 640, 960) + small_image = small_image.convert('L') + small_image = ImageOps.autocontrast(small_image, cutoff=85) + # small_image = small_image.filter(ImageFilter.SHARPEN) + small_image.save(tmp_output_dir + '/' + image_name) + + os.system('pngnq -n 128 -s 1 -e .png -d "%s" -f "%s"' % ( + output_dir, + tmp_output_dir + '/' + image_name, + )) + os.remove(tmp_output_dir + '/' + image_name) + + # big_image = resize(image, 960, 1440) + # big_image = big_image.convert('L') + # big_image = big_image.filter(ImageFilter.SHARPEN) + # big_image.save(tmp_output_dir + '/' + image_name, optimize=True) + # os.system('pngnq -n 16 -s 1 -e .png -d "%s" -f "%s"' % ( + # big_output_dir, + # tmp_output_dir + '/' + image_name, + # )) + # os.remove(tmp_output_dir + '/' + image_name) + + sys.stderr.write('.') + +shutil.rmtree(tmp_output_dir)