![]() |
|
||||||||||
|
|||||
|
[+3 09.12.07]
Регистрация: Oct 2006
Сообщений: 114
|
Здравствуйте, уважаемые форумчане!
Использую Flash 9. У меня следующая проблема: хочу создать класс, позволяющий динамически создавать разные textField, обладающие набором одинаковых свойств. Не хочу использовать movieClip и вообще как-то привязываться к дизайн-тайм. Хочу чтобы все создавалось в коде... Я пока в самом начале пути, но у меня никак не получается внедрить шрифт... В AS файле внедрить шрифт не возможно, поэтому пытаюсь как его впихнуть в fla-файл. Но у меня не получается! Пожалуйста, объясните в чем дело... Не ужеле придется по старинке - MovieClip + TextField... Я в этом деле новичок, поэтому не пинайте меня слишком сильно, если на самом деле все окажется очень просто ![]() файл загрузить на форум не удалось, поэтому даю внешнюю ссылку http://www.vvk80.narod.ru/Files/draft.zip Заранее спасибо за помощь... Последний раз редактировалось vvk80; 18.05.2007 в 14:28. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Ну да, по старинке, лежит текстовое поле где-нибудь, с внедренным набором символов…
|
|
|||||
|
[+3 09.12.07]
Регистрация: Oct 2006
Сообщений: 114
|
Цитата:
Далее надо создавать экземпляры этого мувика столько раз, сколько тебе нужно текстовое поле и обращаться к текстовому полю следующим образом: movieClipInstance.textFieldInMovieClip.text = "Мой текст, который надо отобразить"... или надо как-то по-другому... Но это же неудобно... Сам Adobe рекомендует не использовать MovieClip, если не нужна таймлайн... Специально для этого созданы такие классы как Sprite, Shape и т.д., которые, насколько я знаю, не имеют таймлайн. Используя их можно было бы оптимизировать скорость работы swf (по словам Adobe)... Хочется все классами описать, чтобы реюзать контент, как в C#... Неужто нет другого способа... (для Flash 9)? Заранее спасибо за помощь! |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Зачем мувиклип?
Кинуть на сцену где-нибудь за пределами текстовое поле с необходимыми внедренными шрифтами и все. А в коде уже new TextField(), embedFonts = true и понеслась… |
|
|||||
|
[+3 09.12.07]
Регистрация: Oct 2006
Сообщений: 114
|
Цитата:
Я так и не понял, а объект TextFormat надо создавать? Что указывать в property font? Символ фонта в библиотеке должен лежать? |
|
|||||
|
[+3 09.12.07]
Регистрация: Oct 2006
Сообщений: 114
|
Цитата:
myText - это созданный textField за пределами видимости на сцене, шрифт внедрен в него... я забираю его текстформат и пытаюсь присвоить его новому текстфилду - и кукиш не работает... var newFormat:TextFormat = new TextFormat();
newFormat = myText.getTextFormat();
trace(newFormat.font);
function createBodyText(xCoord:Number, yCoord:Number):void
{
var myLabel:TextField = new TextField();
myLabel.type = TextFieldType.DYNAMIC;
myLabel.multiline = true;
myLabel.selectable = false;
myLabel.embedFonts = true;
myLabel.antiAliasType = AntiAliasType.ADVANCED;
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.x = xCoord;
myLabel.y = yCoord;
myLabel.setTextFormat(newFormat);
myLabel.htmlText = "<br>asfawfa";
rootContainer.addChild(myLabel);
}
createBodyText(20,30);
Последний раз редактировалось etc; 18.05.2007 в 18:26. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
На сцене, за её пределами необходимо разместить текстовое динамическое поле, с выбранным шрифтом. Нажав на кнопку Embed, необходимо выбрать нужные диапазоны символов для включения. В библиотеке ничего быть не должно.
|
|
|||||
|
[+3 09.12.07]
Регистрация: Oct 2006
Сообщений: 114
|
Цитата:
вместо метода setTextFormat можно использовать свойство defaultTextFormat... вроде заработало, но пока еще полностью не протестировал... http://www.adobe.com/cfusion/webforu...&keyword1=font Блин, но какая черт побери между ними разница???? |
|
|||||
|
[+3 09.12.07]
Регистрация: Oct 2006
Сообщений: 114
|
классная рекомендация по теме:
все работает, можно легко использовать внедеренные шрифты http://blog.illianced.com/2007/09/11...he-fly-in-as3/ |
![]() |
![]() |
Часовой пояс GMT +4, время: 05:13. |
|
|
« Предыдущая тема | Следующая тема » |
|
|