2016-08-01 5 views
0

Сейчас я пытаюсь изменить размер нескольких файлов .jpg и мой сценарий выглядит следующим образом:Изменение размера изображений с помощью Pillow Python

from PIL import Image 

def main(): #{ 

    filename = "amonstercallsmoviestill.jpg" 

    image = Image.open(filename) 
    size = width, height = image.size 

    image.thumbnail((1600,900)) 

    image.show() 

    del image 
#} 

if (__name__ == "__main__"): #{ 

    main() 
#} 

Я пытаюсь изменить размер amonstercallsmoviestill.jpg к (1600,900), но он, похоже, не работает.

Я пробовал с (300,300), и они работают, но всякий раз, когда вы пытаетесь создать миниатюру (1600,900), похоже, что она не работает.

Спасибо!

+0

Можете ли вы уточнить, что «не работает», вы получаете сообщение об ошибке? это неправильный размер? что происходит ... –

+0

Ошибка не появляется. Сценарии запуска и image.show() также работают. Изображение просто не изменяется. – TheOlDirtyBastard

+0

С какого размера изображение начинается? Я подозреваю, что «thumbnail» не может использоваться для увеличения изображения. В документации говорится: «Изменяет изображение, чтобы оно содержало собственную миниатюру, не превышающую заданный размер», что означает, что результирующее изображение может быть намного меньше, чем размер, который вы ему даете. Вы пытались использовать 'resize' вместо этого? – Kevin

ответ

3

thumbnail только уменьшает размер изображения. Чтобы сделать его больше, используйте вместо этого resize.

image = image.resize((1600, 900), PIL.Image.LANCZOS) 
+0

Спасибо за ответ Марк! LANCZOS - это, в основном, антисериалы? Я получаю следующее сообщение об ошибке: «NameError: глобальное имя« PIL »не определено». – TheOlDirtyBastard

+0

@ TheOlDirtyBastard все зависит от того, как вы импортировали 'PIL', я шел прямо со страницы документации. Вместо этого попробуйте 'Image.LANCZOS'. Мне было очень отвратительно, что я увидел в оригинальном PIL-коде для ANTIALIAS, я надеюсь, что когда они разветвят его, они представили «LANCZOS» в качестве исправления. –

+0

Да, вы были верны. Эта часть кода работала, но она по-прежнему не меняла размер моего изображения. :/ – TheOlDirtyBastard

 Смежные вопросы

  • Нет связанных вопросов^_^