Как применить сглаживание к слою с прозрачным фоном?


12

У меня есть один слой с несколькими черными пикселями посередине и прозрачным фоном.

Если я добавлю непрозрачный белый фон под ним, объединю оба, а затем нажму «Antialias» в меню «Фильтры», он при необходимости правильно генерирует серые пиксели. Однако я намерен использовать это изображение поверх динамического фона, поэтому я не могу использовать сглаживание для определенного цвета, но если я не добавлю непрозрачный фоновый слой и просто использую фильтр Antialias, ничего не произойдет. Я ожидал, что будут сгенерированы полупрозрачные пиксели, чтобы они стали сглаженными на разных фонах.

Есть ли способ добиться этого или я пытаюсь сделать что-то не так?


1
Не могли бы вы предоставить скриншоты того, что вы пытаетесь сделать?
JohnB

Ответы:


5

Я все еще не проверял это, но я думаю, что нашел решение. При устранении неполадок, связанных с другой проблемой, я узнал опцию «Color to Alpha», которая кажется именно то, что нужно здесь. Я думаю, что я могу получить сглаживание, как обычно, для одного определенного цвета, а затем использовать Color to Alpha, чтобы превратить этот цвет в различные степени прозрачности. Это будет хорошо работать на простых слоях с очень небольшим количеством цветов, и это, вероятно, будет проблематично в более загруженных узорах, но это соответствует, по крайней мере, моим собственным потребностям.


Хорошее мышление, Смиг. почему я не подумал об этом? В любом случае, спасибо за мою очень старую проблему. Может быть, кто-то должен попросить разработчиков Gimp исправить это (или улучшить фильтр)?
e-мотив

1

Я обошел это с помощью блока, выделив нужный элемент для сглаживания с 5-пиксельной рамкой. Затем я заполняю прозрачную область цветом, который отличается от элемента, который я изменяю, но устанавливаю непрозрачность заливки равной 1. Оставляем текущее поле выбора и применяем фильтр сглаживания. Затем используйте инструмент «Нечеткий выбор» (с пороговым значением 0) и выберите область заполнения, которая должна выбирать все, вплоть до новой части сглаживания. Затем удалите свой выбор.

Для меня у меня были однотонные фоны. Поэтому я бы выбрал цвет фона, затем изменил насыщенность или значение на 1 в селекторе цвета, а затем залил прозрачную область этим цветом. Это вынуждает антиалиасы использовать прозрачный цвет почти того же значения, когда он выполняет вычисления, так что вы как бы сглаживаете с полной прозрачностью (почти).

Я заметил, что это хорошо работает с черным или белым (непрозрачность 1) в качестве цвета заливки, но он немного настраивает сглаживание, чтобы оно было светлее или темнее, чем цвет моего элемента. Ничего страшного, но эффект будет чище, если вы используете цвет заливки ближе к цвету границы вашего элемента.

Точно так же, если вы используете красный цвет заливки вокруг не красного цвета (синий / зеленый / и т. Д.), Антиалиас будет использовать красный цвет, когда он применяет сглаживание. Что обычно нежелательно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.