Форум сайта python.su
Есть исходная картинка:
Есть код (кусок код который отвечает за ресайз в приложении django photologue, обкоцаный так, чтоб смысл остался).
import Image
im = Image.open("sega.png")
cur_width, cur_height = im.size
new_width, new_height = (200, 200)
if not new_width == 0 and not new_height == 0:
ratio = min(float(new_width)/cur_width,
float(new_height)/cur_height)
else:
if new_width == 0:
ratio = float(new_height)/cur_height
else:
ratio = float(new_width)/cur_width
new_dimensions = (int(round(cur_width*ratio)),
int(round(cur_height*ratio)))
new_im = im.resize(new_dimensions, Image.ANTIALIAS)
new_im.save('rez.png')
Отредактировано (Ноя. 12, 2009 14:22:42)
Офлайн
Сам неоднократно замечал глюки PIL с альфаканалом :( Может его отдельно зарезайзить? Разделить методом split а потом соединить?
Офлайн
igor.kaist Пробовал ресайзить альфаканал отдельно от остальных - результат тот-же. :(
Пытался еще поиграть с контрастностью, ярокостью альфаканала, чтоб он немного сместил свою прозрачность в нужную сторону - тоже без видимого успеха.
Офлайн
та же картина и при редактировании изображений в фотошопе.
думаю стоит дополнительно обрабатывать изображение после ресайза.
Офлайн
Просто логотипы, товарные знаки, иконки и проч нужно ресайзить без антиалиаса.
Это - правило дизайна. Или векторная графика - или “примитив со ступеньками”. Посередине ничего нет.
Офлайн
Dimka665Очень странно. Попробовал GIMP, Фотошоп, ImageMagick - все нормально (чистенько и красиво).
та же картина и при редактировании изображений в фотошопе.
Отредактировано (Ноя. 12, 2009 17:07:48)
Офлайн
Уже много раз убеждался в бедности PIL'a, мое мнение: однозначно лучше использовать PythonMagick + PythonMagickWand.
Плюсы:
1. Работает несравненно быстрее.
2. Имеет не сравнительно больше различный функций.
Минусы:
1. Плохой порт на винду (хотя думаю, это не для всех минусы). Использовал в вебе для наложения эффектов на картинки, сервак - фря, а моя -то машинка локальная - на винде бегала, пришлось повозится, чтоб поставить MagickWand на винду изрядно =)
2. Очень сишный подход к разработке =) (так как просто обертка), хотя многих это и не пугает.
Отредактировано (Ноя. 12, 2009 17:43:20)
Офлайн
Я бы рад склонится к ImageMagick, если-бы не завязанное на PIL приложение - django photologue, которое уже используется.
Офлайн
а может это происходит только с PNG
Офлайн
sypper-pitя думаю, ты прав, потому что альфа-канал есть только у png )
а может это происходит только с PNG
Офлайн