Есть ли метод сглаживания для Python PIL?

Для линий и эллипсов в PIL изображения грубые.

Я нашел сглаживание только в размере и миниатюре.

Есть ли способ сделать сглаживание при рисовании линии или эллипса?

 mmgp16 янв. 2013 г., 04:02
Вы могли бы сделать фильтрацию нижних частот :) Возможно, вы захотите перейти кaggdraw (или жеcairoили ...) для "любитель» Рисунок.

Ответы на вопрос(2)

Aggdraw (http://effbot.org/zone/aggdraw-index.htm) может быть что-тозаинтересованы в.

Модуль aggdraw реализует базовый интерфейс рисования 2D WCK поверх библиотеки AGG. Эта библиотека обеспечивает высококачественное рисование с использованием сглаживания и альфа-компоновки, а также полностью совместимо с рендерером WCK.

Модуль aggdraw можно использовать с PIL или библиотекой WCK (под Tkinter или в Windows). Он также может быть использован в качестве автономной библиотеки.

 DrMickeyLauer29 мар. 2016 г., 16:19
Есть ли порт для OS X?
Решение Вопроса

Единственный способ сделать это с помощью суперсэмплинга. Рендеринг вашего изображения будет кратен размеру, который вам необходим, затемresize это с .filter=Image.ANTIALIAS

 Hugo14 нояб. 2015 г., 09:36
Работает хорошо, хотя с последней Подушки далиTypeError: resize() got an unexpected keyword argument 'filterтак использовал на местеim.thumbnail((original_width, original_height))который также по умолчаниюresample=ANTIALIAS для лучшего качества.
 martineau29 апр. 2019 г., 21:14
@Hugo: ВImage.resize() Метод текущей стабильной версии подушки вилкиPIL, ключевое слово аргумент называетсяresample, Это могло быть изменено вверсия 2.7.0, Также обратите внимание, чтоImage.LANCZOS это то же самое как -Image.ANTIALIASкоторый неупомянуто в методедокументация
 whi16 янв. 2013 г., 11:06
да, я использую * 2, затем измените размер на / 2. оно работает.

Ваш ответ на вопрос