Resim ölçekleme, internet için küçük resimler oluşturma
Açıklama: En-boy oranını koruyarak verilen değere göre resmi tekrar boyutlandırır.
Girdiler: img
-> Image
sınıfına ait bir resim, resizeDim
-> Boyutlandırmada hangi eksenin esas alınacağı (en için 'width'
, boy için 'height'
), newValue
-> İstenilen eksenin yeni değeri
Çıktı: img
-> Boyutlandırılmış yeni resim
Örnek (Boyu 120 piksel olan küçük resim (thumbnail) oluşturma):
import Image import os imageName = 'my_photo.png' img = Image.open(imageName) img = resizeImage(img, 'height', 120) img.save(os.path.splitext(imageName)[0]+'_thumb'+saveExt) os.remove(imageName) # eskisini kaldir
English description: Resizing an image in Python, e.g creating thumbnail images
Kaynak kod
def resizeImage(img, resizeDim = 'width', newValue = 100): """ En-boy oranini koruyarak verilen degere gore resmi tekrar boyutlandirir. Girdiler: img -> Image sinifina ait bir resim resizeDim -> Boyutlandirmada hangi eksenin esas alinacagi (en icin 'width', boy icin 'height') newValue -> Istenilen eksenin yeni degeri Cikti: img -> Boyutlandirilmis yeni resim Ornek (Boyu 120 piksel olan kucuk resim (thumbnail) olusturma): import Image import os imageName = 'my_photo.png' img = Image.open(imageName) img = resizeImage(img, 'height', 120) img.save(os.path.splitext(imageName)[0] + '_thumb' + saveExt) os.remove(imageName) # eskisini kaldir """ if resizeDim == 'width': newSize = (newValue,img.size[1]*newValue/img.size[0]) img = img.resize(newSize,Image.ANTIALIAS) return img else: newSize = (img.size[0]*newValue/img.size[1],newValue) img = img.resize(newSize,Image.ANTIALIAS) return img