Подтвердить что ты не робот

Как создать тени, внутреннее свечение и внешнее свечение в Java Swing?

Я создаю некоторые изображения, используя интерфейс Graphics2D, и иногда я хотел бы нарисовать текст на изображении и применить к нему эффекты, подобные тем, которые есть в Adobe Photoshop.

Прямо сейчас, чтобы сгенерировать "тень" в тексте, я рисую текст дважды, один раз в исходном цвете и один раз в черном с небольшим (1px) x & y смещением. К сожалению, это слишком упрощенно, так как мне нужно больше контролировать тень (непрозрачность, размер, распространение).

Что касается Inner Glows и Outer Glows, я не уверен, с чего начать; маска/градиентная краска/альфа-смешивание?

Существует ли библиотека Java для создания этих типов эффектов? Если не так, как вы собираетесь создавать эти эффекты?

4b9b3361

Ответ 1

Я бы очень рекомендовал книгу Filthy Rich Клиенты. В главе 16 рассказывается о тени. Вы также можете быть заинтересованы в этом сообщении . В главе 17 говорится о сияющем эффекте. На веб-сайте есть пример кода для обоих. Остальная часть книги также стоит прочитать. Я не мог положить книгу, когда прочитал ее. Есть много других забавных эффектов, объясненных и продемонстрированных в книге.

сайт jhlabs также является хорошим сайтом, как уже упоминалось.

Edit:

Для библиотеки я бы посмотрел на Painters в SwingX library. Вот несколько руководств:

Ответ 2

Этот сайт содержит много информации о фильтрах и эффектах, я думаю, что исходный код приложения также доступен.