Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Сглаживание текста для анимации (http://www.flasher.ru/forum/showthread.php?t=207948)

Ёлочка 20.05.2014 16:05

Сглаживание текста для анимации
 
Есть текстовое поле, которое анимируется. Однако, анимация происходит рывками, как если бы это была картинка без allow smoothing. Как назначить текстовому полю что-то подобное allow smoothing для картинок?

Код AS3:

var tf:TextField = new TextField();
tf.text = "123";
 
var tfr:TextFormat = new TextFormat();
tfr.size = 8;
 
tf.setTextFormat( tfr );
this.addChild( tf );
 
this.addEventListener( Event.ENTER_FRAME, update );
 
function update( e:Event ):void
{
        tf.x = tf.y += 0.07;
}


in4core 20.05.2014 16:20

tf.antialias помоему

СлаваRa 20.05.2014 16:25

а по-моему TextField#antiAliasType

Ёлочка 20.05.2014 16:35

Уже пробовала, не помогает.
Код AS3:

var tf:TextField = new TextField();
 
var tfr:TextFormat = new TextFormat();
tfr.size = 8;
tf.setTextFormat( tfr );
tf.text = "123";
tf.antiAliasType = AntiAliasType.ADVANCED;
this.addChild( tf );
 
this.addEventListener( Event.ENTER_FRAME, update );
 
function update( e:Event ):void
{
        tf.x = tf.y += 0.07;
}

Пока только вот так получается добиться того, что хочется.

Код AS3:

var tf:TextField = new TextField();
 
var tfr:TextFormat = new TextFormat();
tfr.size = 8;
tf.setTextFormat( tfr );
tf.text = "123";
tf.antiAliasType = AntiAliasType.ADVANCED;
 
var bmd:BitmapData = new BitmapData( tf.width, tf.height, true, 0 );
bmd.draw( tf );
var bm:Bitmap = new Bitmap( bmd, PixelSnapping.AUTO, true );
bm.scaleX = bm.scaleY = 1.01;
 
this.addChild( bm );
 
this.addEventListener( Event.ENTER_FRAME, update );
 
function update( e:Event ):void
{
        bm.x = bm.y += 0.07;
}

Кто-нибудь объяснит, причем тут scale больше единицы? О_о Если scale не трогать, то даже картинка дергается. о_О

KiL33 20.05.2014 17:48

Для того чтобы текст не дергался при анимации антиалиастайп должен иметь константу нормал.

ZackMercury 20.05.2014 18:04

А что, если в спрайт поместить и двигать, всё равно будет дёргаться?

Ёлочка 23.05.2014 14:35

Цитата:

Сообщение от KiL33 (Сообщение 1166203)
Для того чтобы текст не дергался при анимации антиалиастайп должен иметь константу нормал.

Пробовала все возможные варианты AntiAliasType. Не помогает.
Цитата:

Сообщение от SuriTheAngel (Сообщение 1166204)
А что, если в спрайт поместить и двигать, всё равно будет дёргаться?

Тоже нет.

dark256 23.05.2014 14:50

Имхо вы путаете сглаженность фонта и плавность АНИМАЦИИ..... FrameRate у вас какой?

"+= 0.07" текст вообще не очень любит нецелочисленные координаты. Возможны искажения размытости и прочая перхоть.

Кстати - какой фонт используется и заэмбеддены ли в него символы?


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

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