Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.01.2008, 19:43
ALiEN_ вне форума Посмотреть профиль Отправить личное сообщение для ALiEN_ Посетить домашнюю страницу ALiEN_ Найти все сообщения от ALiEN_
  № 1  
Ответить с цитированием
ALiEN_
UFO
 
Аватар для ALiEN_

Регистрация: Jul 2007
Сообщений: 173
По умолчанию TextField to BitmapData with Antialiasing

Вопрос может и детский, но с реализацией я туплю.

Хочется сделать текст прозарчным и поворачивать его, без embed fonts.

Вариант отрисовать текст в BitmapData с прозрачностью работает, но хочется что бы края букв не были рваными. Т.е. хочется применить к отрисованному тексту эффект сглаживания.

Может кто-то уже реализовывал? Может это делается проще?


Пока оставил самый простой вариант - применяю фильтр Glow с особыми параметрами, гребенка заметно пропадает.
Код:
var blurX:Number = 2;
var blurY:Number = 2;
		
var color:Number = 0x000000;
var alp:Number = 1;
var strength:Number = 2;
var inner:Boolean = true;
var knockout:Boolean = false;
var quality:Number = BitmapFilterQuality.HIGH;
		
var filter:BitmapFilter = new GlowFilter(color, alp, blurX, blurY, strength, quality, inner, knockout);


Последний раз редактировалось ALiEN_; 24.01.2008 в 21:08.
Старый 24.01.2008, 20:01
fljot вне форума Посмотреть профиль Отправить личное сообщение для fljot Найти все сообщения от fljot
  № 2  
Ответить с цитированием
fljot

блогер
Регистрация: Jul 2007
Сообщений: 940
Записей в блоге: 3
сглаживание - какой-то из параметров функции draw.. 5ый чтоли, посмотрите

Старый 24.01.2008, 20:12
ALiEN_ вне форума Посмотреть профиль Отправить личное сообщение для ALiEN_ Посетить домашнюю страницу ALiEN_ Найти все сообщения от ALiEN_
  № 3  
Ответить с цитированием
ALiEN_
UFO
 
Аватар для ALiEN_

Регистрация: Jul 2007
Сообщений: 173
Имеется ввиду параметр smoothing?

"A Boolean value that determines whether a BitmapData object is smoothed
when scaled or rotated, due to a scaling or rotation in the matrix parameter."

Фигня в том, что отрисовка шрифта все равно происходит без сглаживания (антиалиасинга) ...


Последний раз редактировалось ALiEN_; 24.01.2008 в 20:15.
Старый 24.01.2008, 20:32
fljot вне форума Посмотреть профиль Отправить личное сообщение для fljot Найти все сообщения от fljot
  № 4  
Ответить с цитированием
fljot

блогер
Регистрация: Jul 2007
Сообщений: 940
Записей в блоге: 3
пардон, анлиалисинг только с эмбедами работает

Старый 24.01.2008, 20:38
ALiEN_ вне форума Посмотреть профиль Отправить личное сообщение для ALiEN_ Посетить домашнюю страницу ALiEN_ Найти все сообщения от ALiEN_
  № 5  
Ответить с цитированием
ALiEN_
UFO
 
Аватар для ALiEN_

Регистрация: Jul 2007
Сообщений: 173
Может написать свой простенький антиалиасинг? Есть ещё у кого-нибудь идеи?

Старый 29.01.2008, 15:03
LinuxVideo вне форума Посмотреть профиль Найти все сообщения от LinuxVideo
  № 6  
Ответить с цитированием
LinuxVideo
Banned
[+4 11.12.07]
[+4 18.03.08]

Регистрация: Oct 2007
Сообщений: 269
Если попиксельно рисовать долго. Поэтому тупо завел битмапку со шрифтом, откуда побуквенно копирую - решил кучу проблем.

Старый 31.01.2008, 20:17
ALiEN_ вне форума Посмотреть профиль Отправить личное сообщение для ALiEN_ Посетить домашнюю страницу ALiEN_ Найти все сообщения от ALiEN_
  № 7  
Ответить с цитированием
ALiEN_
UFO
 
Аватар для ALiEN_

Регистрация: Jul 2007
Сообщений: 173
А пардон, откуда ты в битмап копируешь шрифт?
Или у тебя он отрисован заранее для всех языков и ты его подтягиваешь с сервера?

Еще раз повторюсь, проблема в антиалиасинге при отрисовке текста в BitmapData.


Последний раз редактировалось ALiEN_; 31.01.2008 в 20:19.
Старый 31.01.2008, 21:39
2morrowMan вне форума Посмотреть профиль Отправить личное сообщение для 2morrowMan Найти все сообщения от 2morrowMan
  № 8  
Ответить с цитированием
2morrowMan
 
Аватар для 2morrowMan

Регистрация: Aug 2007
Сообщений: 467
Можеш попробывать так:
выводиш сначала текст в tmpBd с размером в Х раз большым нужного, потом этот tmpBd перерисовываеш на новом finalBd только в Х раз меньшым размером со сглаживанием, потом tmpBd.dispose() и т.д.
Х - подбирай: 2, 3, 4...

Надеюсь идея понятна, можеш поексперементировать...

Старый 02.02.2008, 00:28
LinuxVideo вне форума Посмотреть профиль Найти все сообщения от LinuxVideo
  № 9  
Ответить с цитированием
LinuxVideo
Banned
[+4 11.12.07]
[+4 18.03.08]

Регистрация: Oct 2007
Сообщений: 269
> Или у тебя он отрисован заранее для всех языков и ты его подтягиваешь с сервера?

Отрисован заранее, только для русского. Тупо зашит в флешку. А больше и не нужно. Да и не знаю, как еще...


> выводиш сначала текст в tmpBd с размером в Х раз большым нужного, потом этот tmpBd перерисовываеш на новом finalBd только в Х раз меньшым размером со сглаживанием

Испробовано. Х - это где-то от 4, причем результат не самый идеальный, поскольку граница с альфой остается рваной, поэтому приходится рисовать на белом фоне, а потом смешивать. А больше 4 - это легко вылезти на отведенные 2880px

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:27.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 23:27.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.