|
|
|
| не нравится мне эта затея, сильно увеличивает размер ролика (без шрифта 1.7Кб, со шрифтом -
от 28 до 48Кб в зависимости от кол-ва подключенных символов). роликов несколько, динамические
текстовые поля создаются в AS, тексты берутся из XML. есть меню и основная часть.
меню вообще все строится в AS, а в центральной части есть отведенные
для текста динамические поля, к которым я подключаю нужный шрифт Embed'ом и тексты им
отображаются даже на тех компах, где не установлен этот шрифт. а в меню - нет. т.е. если
смотреть меню на компе, где нет шрифта, то текст выводится Times New Roman. но в отчете
Flash пишет, что шрифт подключен и выводит символы шрифта, да и по размеру ролика видно,
что он стал намного тяжелее. что делать? вставляю в root пустое динамеческое поле, к которому
подключаю шрифт. в цикле построения меню прописываю t_fmt.font = "Myriad Pro"; и
t_fmt.embedFonts = true;. но все равно меню в этом шрифте видно только на том компе, где
он установлен. читала, что нехорошо подключать шрифты как объекты библиотеки, но делать
нечего, попробовала и так. создала новый объект в библиотеке как New Font, присвоила ему
имя шрифта, выбрала bold и размер. в отчете пишется, что шрифт подключен, но в меню он
по-прежнему не виден. или надо что-то еще сделать с этим объектом из библиотеки? кинуть
его на root? может, в коде создания текстового поля что-то изменить? | |
|
|
|
|
|
|
|
для: elenaki
(22.01.2008 в 11:34)
| | если версия флеша позволяет - http://etcs.ru/blog/as2/ru/etcs/utils/fontmanager/ | |
|
|
|
|
|
|
|
для: AlexSol
(22.01.2008 в 11:40)
| | На этом шаге вы можете набросать ещё полей с различными начертаниями шрифта, не заполняя Instance Name. После загрузки этой библиотеки их тоже можно будет использовать.
====================
в том-то и дело, что если динамическое текстовое поле УЖЕ есть на сцене, то к нему шрифт
подключается и виден везде. а если нет (как в меню) - то говорит, что подключается, но виден
не везде! | |
|
|
|
|
|
|
|
для: elenaki
(22.01.2008 в 11:49)
| | пример - http://ballista.ru/test/f.html
var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "WindsorElongated_DG";
my_fmt.size = 100
this.createTextField("my_txt", this.getNextHighestDepth(), 10, 10, 160, 120);
my_txt.wordWrap = true;
my_txt.embedFonts = true;
my_txt._x=my_txt._y =100
my_txt.text = "Hello world";
my_txt.setTextFormat(my_fmt);
my_txt._rotation = 45;
|
в библиотеке "new font.." а как создадите его, правой кнопкой -> Linkage и идентификатор прописать | |
|
|
|
|
|
|
|
для: AlexSol
(22.01.2008 в 12:00)
| | да. ваш пример работает. шрифт виден везде. у меня немного другая струтура, если меняю
строки местами, Flash начинает ругаться, что нет таких свойств и т.д. пока не могу сообразить,
что и где поменять...
// Создаём текстовое поле для отображения названия кнопки
b.createTextField("tf",2, 8, 10, 155, 24);
t_fmt = new TextFormat();
t_fmt.bold = true;
t_fmt.font = "Myr";
t_fmt.embedFonts = true;
t_fmt.size = 14;
t_fmt.color = 0x828282;
t_fmt.align = "right";
t_fmt.multiline = true;
t_fmt.attachMovie("back", "back", 1);
b.tf.textColor=0x828282;
b.tf.border = false;
b.tf.background = false;
with (b.tf) {
selectable = false;
// Вызываем из массива нужное название кнопки
text = menu_xml.firstChild.childNodes[i].attributes.titlos;
// Применяем к тексту нужные параметры
setTextFormat(t_fmt);
}
|
| |
|
|
|
|
|
|
|
для: elenaki
(22.01.2008 в 12:32)
| | сделала вот так. все сломалось - не выводит текст. даже, если не подключать шрифт. в
трейсе выводит, т.е. читает текст нормально. ошибок не выводит, в отчете шрифт включен.
var t_fmt:TextFormat = new TextFormat();
t_fmt.font = "Myr";
t_fmt.size = 14;
t_fmt.bold = true;
t_fmt.color = 0x828282;
t_fmt.align = "right";
// Создаём текстовое поле для отображения названия кнопки
b.createTextField("tf",2, 8, 10, 155, 24);
with (b.tf) {
wordWrap = true;
embedFonts = true;
selectable = false;
multiline = true;
attachMovie("back", "back", 0);
// Вызываем из массива нужное название кнопки
text = menu_xml.firstChild.childNodes[i].attributes.titlos;
trace(text)
// Применяем к тексту нужные параметры
setTextFormat(t_fmt);
}
|
| |
|
|
|
|
|
|
|
для: elenaki
(22.01.2008 в 13:07)
| | получилось. ошибка была из-за кодировки XML. ох уж мне эта utf-8! поубивала бы... :P | |
|
|
|
|
|
|
|
для: elenaki
(22.01.2008 в 13:25)
| | аааааааааааааааа! засада! если подключать шрифт через библиотеку, он HE подключает
греческий! хотя в отчете размер шрифта в байтах при подключении через библиотеку больше,
чем при подключении к полю с выбором наборов... что за чертовщина? ой, как не хочется с
внешними библиотеками связываться... | |
|
|
|
|
|
|
|
для: elenaki
(22.01.2008 в 12:32)
| | t_fmt = new TextFormat();
t_fmt.attachMovie("back", "back", 1);
это явно из другой оперы.
в приложение мой пример. | |
|
|
|
|
|
|
|
для: AlexSol
(22.01.2008 в 13:13)
| | это из моей оперы... просто я запуталась, к какому объекту какие свойства прикручивать... | |
|
|
|