![]() |
Сглаживание/размытие краев битмапа.
Отрисовываю кусок изображения в битмапдату. Получается вот это вот http://test.typing.by/sample.png т.е. края изображения пиксельные. Подскажите, каким образом их можно размыть или отрисовать таким образом, чтобы оно со сглаженными краями получилось?
|
а как отрисовываешь? картинку под маску и потом этот бутерброд в прозрачную битмапдату? или как-то хитрее/проще?
|
smothing = true битмапе (в конструкторе последний параметр)
и если отрисовка через draw то последний параметр smothing тоже true поставить. |
smothing не помог.
Цитата:
Как всё это безобразие теперь сгладить? |
а, так получается картинка изначально с "лесенкой" (аллиасингом) ?
вообщем, небольшой тестовый код, на котором проблема или исходную картинку не помешало бы, чтобы вместе думать над проблемой. ---- если исходник картинки с "лесницой", тогда сглаживание программно сделать наверно нельзя. Как очень крайняя мера, можно блюр-фильтр повесить, аля _imgBD.applyFilter(_imgBD, _imgBD.rect, new Point(), new BlurFilter(3,2,1)); только вот, это как-то не красиво и собственно проблему решить это не поможет, так, самую малость замылит.) |
Код AS3:
Код AS3:
Такой вариант придумал: Код AS3:
|
только что просто положил в спрайт картинку с маской по форме паззла и отрисовал этот спрайт в новую битмапдату. красиво, края гладкие. и ощущение такое, что нормально это =)
|
Нарисуй в одну битмапку маску чернобелую, и скопируй в альфаканал картинки.
|
udaaff, по-моему как-то все очень усложненно... или я чего-то не так понял, но судя по всему, надо попробовать без threshold обойтись, по-другому пазлы вырезать, ну типа, как выше заметили, по маске например.
|
Rzer предложил элегантный и быстрый вариант. смотри BitmapData#copyChannel().
|
| Часовой пояс GMT +4, время: 23:53. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.