Форум 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=213924)

Фенёк 28.02.2017 15:54

Анимация отдельных глифов текста
 
Хочу сделать анимированные вставки в тексте, как например было сделано в диалогах Shovel Knight (волны/встряски)

Посмотрел в документацию: ни в TextField ни в TextBlock доступа к графике отдельных глифов обнаружить так и не смог.

Смог откопать вот такую штуковину https://greensock.com/splittextfield но как-то меня совсем не приводит в восторг, что ребята просто клепают пачку текстфилдов, сдается мне на пользу быстродействию такой шаг не пойдет.

Из собственных соображений - рисовать глифы в BitmapData и орудовать потом массивом битмапов.

В общем мой вопрос: есть ли возможность каким-нибудь образом передвигать отдельные глифы "из коробки"?

caseyryan 28.02.2017 19:37

Из коробки ничего подобного нет. С битмапдатой самый разумный вариант

Фенёк 28.02.2017 19:38

Грустно как. Ну ладно, придется проявить фантазию

ZackMercury 28.02.2017 20:00

Вроде ж можно фильтром реализовать подобное...
http://silin.astraport.ru/#AS3/filters/ripple
Или речь именно о передвижении отдельных глифов?

Фенёк 01.03.2017 16:10

Прям отдельные глифы двигать

anda30 02.03.2017 15:55

Всем привет
Решил повторить пример как в ссылке.
1. Создал новый документ AS3.
2. перенес рисунок в библиотеку
3. Подключил файл "Main".
4. Перенес рисунок на рабочее поле.
5. Сохранил файл там же где "Main.as",
6. Запустил и выскочили 2 ошибки.
В чем я ошибся ?
С уважением
Александр

dark256 03.03.2017 12:52

Цитата:

Сообщение от anda30 (Сообщение 1199459)
6. Запустил и выскочили 2 ошибки.
В чем я ошибся ?

Очевидно, в том, что вы полагете, что здесь сидят телепаты.

anda30 03.03.2017 13:01

Исправляюсь
Я решил повторить пример как в ссылке: http://silin.astraport.ru/#AS3/filters/ripple
С уважением

zackscript 03.03.2017 16:15

Цитата:

Исправляюсь
Я решил повторить пример как в ссылке: http://silin.astraport.ru/#AS3/filters/ripple
С уважением
Какие именно ошибки генерятся ?

anda30 06.03.2017 11:27

Спасибо.
Main_imgClass.as, строка 10. 1017: Определение базового класса BitmapAsset не найдено.

...\src\Main.as, строка 1 5000: В класс "Main" должен входить подкласс "flash.display.MovieClip", так как он связывается с символом такого же типа в библиотеке.

Пытаюсь разобраться самостоятельно. Тяжело.

ZackMercury 06.03.2017 18:25

http://silin.astraport.ru/#About

Жень Шень 07.03.2017 21:23

Вложений: 2
Цитата:

Сообщение от Фенёк (Сообщение 1199413)
Хочу сделать анимированные вставки...
Посмотрел в документацию: ни в TextField ни в TextBlock доступа к графике отдельных глифов обнаружить так и не смог.
...
В общем мой вопрос: есть ли возможность каким-нибудь образом передвигать отдельные глифы "из коробки"?

Тысячу лет не постился. Но вспомнил, что когда-то мучил меня вопрос посимвольной разбивки текста. Уже не помню, чья идея... Восстановил старый исходник. Код на третьем экшене, но в то время ещё писал отладочный куски кода в кадрах.
Или это не то, что требовалось в вопросе?

dark256 12.03.2017 14:49

Нактунлся тут на такое вот:
Код AS3:

[native(cls="ElementFormatClass",instance="ElementFormatObject",methods="auto")]
[Version("10")]
public final class flash.text.engine.ElementFormat extends Object
{
  native public function ElementFormat(fontDescription:flash.text.engine.FontDescription = null,fontSize:Number = 12.0,color:uint = 0,alpha:Number = 1.0,textRotation:String = "auto",dominantBaseline:String = "roman",alignmentBaseline:String = "useDominantBaseline",baselineShift:Number = 0.0,kerning:String = "on",trackingRight:Number = 0.0,trackingLeft:Number = 0.0,locale:String = "en",breakOpportunity:String = "auto",digitCase:String = "default",digitWidth:String = "default",ligatureLevel:String = "common",typographicCase:String = "default"):*;
  native public function get alignmentBaseline():String;
  native public function set alignmentBaseline(alignmentBaseline:String):void;
  native public function get alpha():Number;
 
  native public function set alpha(value:Number):void;
  native public function get baselineShift():Number;
  native public function set baselineShift(value:Number):void;
  native public function get breakOpportunity():String;
  native public function set breakOpportunity(opportunityType:String):void;
 
  native public function get color():uint;
  native public function set color(value:uint):void;
  native public function get dominantBaseline():String;
  native public function set dominantBaseline(dominantBaseline:String):void;
  native public function get fontDescription():flash.text.engine.FontDescription;
 
  native public function set fontDescription(value:flash.text.engine.FontDescription):void;
  native public function get digitCase():String;
  native public function set digitCase(digitCaseType:String):void;
  native public function get digitWidth():String;
  native public function set digitWidth(digitWidthType:String):void;
 
  native public function get ligatureLevel():String;
  native public function set ligatureLevel(ligatureLevelType:String):void;
  native public function get fontSize():Number;
  native public function set fontSize(value:Number):void;
  native public function get kerning():String;
 
  native public function set kerning(value:String):void;
  native public function get locale():String;
  native public function set locale(value:String):void;
  native public function get textRotation():String;
  native public function set textRotation(value:String):void;
 
  native public function get trackingRight():Number;
  native public function set trackingRight(value:Number):void;
  native public function get trackingLeft():Number;
  native public function set trackingLeft(value:Number):void;
  native public function get typographicCase():String;
 
  native public function set typographicCase(typographicCaseType:String):void;
  native public function get locked():Boolean;
  native public function set locked(value:Boolean):void;
  native public function getFontMetrics():flash.text.engine.FontMetrics;
  native public function clone():ElementFormat;
}


baselineShift - вроде бы похоже на то что надо...

KiL33 13.03.2017 20:38

Такую штуку когда то делал, могу поделиться, если надо. Уже не актуальна, за не надобностью.
https://www.youtube.com/watch?v=IAwk3yd1AnY

dark256 13.03.2017 22:33

ВАУ!!!!!!
Конечно делись!!!

KiL33 14.03.2017 22:08

Пожалуйста
https://drive.google.com/open?id=0B7...Ed0cjhBbDgyYms
Но там, мягко говоря не самые лучшие решения)


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

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