Verändern Bild Aufrechterhaltung von Seitenverhältnis UND die Herstellung hoch-und Querformat-Bilder genau die gleiche Größe?

Momentan benutze ich:

    os.chdir(album.path)
    images = glob.glob('*.*')

    # thumbs size
    size = 80,80

    for image in images:
        #create thumb
        file, ext = os.path.splitext(image)
        im = Image.open(os.path.join(album.path,image))
        im.thumbnail(size, Image.ANTIALIAS)
        thumb_path = os.path.join(album.path, 'thumbs', file + ".thumb" + ".jpeg")
        im.save(thumb_path)

Obwohl dies funktioniert, habe ich am Ende mit verschiedenen Größen der Bilder (einige sind portrait-und einige sind Landschaft), aber ich will alle Bilder haben eine exakte Größe. Vielleicht eine sinnvolle beschneiden?

UPDATE:

Ich bin nicht dagegen, zuschneiden einen kleinen Teil des Bildes. Als ich sagte, vernünftig beschneiden meine ich so etwas wie diese algorythm:

if image is portrait:
    make width 80px
    crop the height (will be more than 80px)
else if image is landscape:
    make height 80px
    crop the width to 80px (will be more than 80px)
Lesen Sie die Bedienungsanleitungen. Die thumnail Methode ist bedeutete um die Erhaltung der Aspekt des Bildes. Offensichtlich kann man nicht beides haben, da nicht alle Bilder das gleiche Seitenverhältnis. Erwägen Sie die Verwendung resize wenn Sie wollen, zu skalieren, ohne die Erhaltung der ratio.
Er könnte Ihnen die gleiche Größe, wenn er wollte, zu tun eine Passform, die pad würde sich die zusätzliche Fläche mit einer Konstanten Farbe. Erlauben würde, dass ein 4x3 oder 16x9 oder jeden Aspekt Bild zu passen, innerhalb einer gegebenen dimension 80x80
Leider gibt es keine standard-Weg, um zu definieren, "sinnvoll", für das Kupieren. Es klingt wie Sie wollen, immer stellen Sie ein Quadrat aus dem Bild, das heißt, Sie laufen Gefahr, schneiden die Teile, die Sie wirklich wollte, zu halten.
Ich bin damit einverstanden. Wenn Ihre Quell-Bildes geschieht mit einem sehr non-Quadrat-Aspekt Sie Gefahr, viel zu verlieren, das Bild. Ich denke, eine Passform Polsterung wird am besten. Siehe meine Antwort.
Danke für die Antworten Jungs, aber ich bevorzuge, um schneiden Sie die Bilder und verlieren einen Teil von Ihnen anstelle der Zugabe Polsterung. Siehe mein update oben.

InformationsquelleAutor thyagx | 2012-02-01

Schreibe einen Kommentar