2016-05-11 15 views
0

Ich habe ein Bild, das ich skalieren möchte - kann aber Neuskalierung tolerieren. Die Vorschläge, die ich alle gefunden haben, halten die aspect ratio -Wie ändert man die Größe bei der Neuskalierung?

import os, sys 
import Image 

size = 128, 128 

for infile in sys.argv[1:]: 
    outfile = os.path.splitext(infile)[0] + ".thumbnail" 
    if infile != outfile: 
     try: 
      im = Image.open(infile) 
      im.thumbnail(size, Image.ANTIALIAS) 
      im.save(outfile, "JPEG") 
     except IOError: 
      print "cannot create thumbnail for '%s'" % infile 

ich Thumbnail versucht haben und die Größe - aber sie sind Aspekt zu halten. Wie kann ich die Größe ändern/neu skalieren, ohne Aspekt beizubehalten?

Antwort

0
  • .thumbnail behält das Seitenverhältnis bei und ändert das Bild inplace.
  • .resize behält das Seitenverhältnis nicht bei und gibt ein neues Bild zurück.

im = Image.open(infile) 
im = im.resize(size, Image.ANTIALIAS) 
+0

Seltsam - mein Resize Code ist nicht dies zu tun - es wurde eine skalierte Bild Rückkehr – farrellmr

Verwandte Themen