* bilder mit korrektem seitenverhaeltnis aendern
This commit is contained in:
parent
d7d7b6addd
commit
80dcd225cb
1 changed files with 17 additions and 2 deletions
19
gallery.py
19
gallery.py
|
@ -89,6 +89,19 @@ def resize_images (args):
|
||||||
% (filename, w,h, x,y) )
|
% (filename, w,h, x,y) )
|
||||||
im2.save(filename)
|
im2.save(filename)
|
||||||
|
|
||||||
|
def resize_images_aspectratio (args):
|
||||||
|
x = int(args[0])
|
||||||
|
args = args[1:] ; args.sort()
|
||||||
|
for filename in args:
|
||||||
|
im = Image.open(filename)
|
||||||
|
w,h = im.size
|
||||||
|
y = x*h/w
|
||||||
|
im2 = im.resize((x,y))
|
||||||
|
print >>sys.stderr, ('%s: was %i,%i; resizing to %i,%i'
|
||||||
|
% (filename, w,h, x,y) )
|
||||||
|
im2.save(filename)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def main ():
|
def main ():
|
||||||
opts, args = getopt.getopt(sys.argv[1:],
|
opts, args = getopt.getopt(sys.argv[1:],
|
||||||
|
@ -96,6 +109,7 @@ def main ():
|
||||||
['help',
|
['help',
|
||||||
'html',
|
'html',
|
||||||
'resize',
|
'resize',
|
||||||
|
'resize-ratio',
|
||||||
'size',
|
'size',
|
||||||
'thumbnail',
|
'thumbnail',
|
||||||
'rotate'])
|
'rotate'])
|
||||||
|
@ -111,8 +125,7 @@ def main ():
|
||||||
# Ensure that exactly one option is supplied
|
# Ensure that exactly one option is supplied
|
||||||
if len(opts) == 0:
|
if len(opts) == 0:
|
||||||
print >> sys.stderr, ("%s: must specify one of --size, --help"
|
print >> sys.stderr, ("%s: must specify one of --size, --help"
|
||||||
"\n --html, --resize, --thumbnail --rotate" %
|
"\n --html, --resize, --resize-ratio, --thumbnail --rotate" % sys.argv[0] )
|
||||||
sys.argv[0] )
|
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
elif len(opts) > 1:
|
elif len(opts) > 1:
|
||||||
print >> sys.stderr, ("%s: cannot specify multiple options" %
|
print >> sys.stderr, ("%s: cannot specify multiple options" %
|
||||||
|
@ -125,6 +138,8 @@ def main ():
|
||||||
output_html(args)
|
output_html(args)
|
||||||
elif opt == '--resize':
|
elif opt == '--resize':
|
||||||
resize_images(args)
|
resize_images(args)
|
||||||
|
elif opt == '--resize-ratio':
|
||||||
|
resize_images_aspectratio(args)
|
||||||
elif opt == '--rotate':
|
elif opt == '--rotate':
|
||||||
rotate_images(args)
|
rotate_images(args)
|
||||||
elif opt == '--size':
|
elif opt == '--size':
|
||||||
|
|
Loading…
Reference in a new issue