Skip to content

Instantly share code, notes, and snippets.

@macndesign
Created December 26, 2012 19:46
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save macndesign/4382574 to your computer and use it in GitHub Desktop.
Save macndesign/4382574 to your computer and use it in GitHub Desktop.
Redimensionamento proporcional de imagem, com base na altura, feito com um simples cálculo de proporção.
# coding: utf-8
u"""
Redimensionamento proporcional de imagem, com base na altura, feito com um simples cálculo de proporção.
Ex:
+------+ 10 15 (altura desejada para a nova imagem)
| | -- x --
| 10x5 | 5 x (largura proporcional a nova altura)
| |
+------+ (10 x x) = (5 x 15)
10x = 75
x = (75/10)
x = 7.5
"""
import sys
try:
from PIL import Image
except ImportError:
import Image
try:
imagem = Image.open(str(sys.argv[1]))
largura_imagem = imagem.size[0]
altura_imagem = imagem.size[1]
altura_desejada = int(sys.argv[2])
largura_proporcional = (largura_imagem * altura_desejada) / float(altura_imagem)
imagem = imagem.resize((int(largura_proporcional), altura_desejada), Image.ANTIALIAS)
imagem.save('imagem-{}x{}.png'.format(imagem.size[0], imagem.size[1]))
except IndexError:
print('Insira o nome da imagem e 1 inteiro com a altura desejada.')
print('Exemplo: C:\>python proporcional_img.py imagem.png 300')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment