Función para calcular el nuevo tamaño máximo de una imagen, objeto, caja, etc.
Puedes calcular el tamaño máximo del objeto con la siguiente función, ésta te devolverá el nuevo tamaño que necesitará para cumplir con el ancho y alto máximos que establezcas.
def calculaSize(ancho, alto, maxAncho, maxAlto):
ratio = alto/float(ancho)
if ancho > maxAncho:
ancho = maxAncho
alto = int(alto*ratio)
if alto > maxAlto:
ancho = int(ancho/ratio)
alto = maxAlto
return (ancho, alto)