![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 4
|
привет!
столкнулся с проблемой, поиск не дал решения. итак, имеется код: ф
stop();
import flash.geom.Rectangle;
var windowHeight:Number = 190;
var scrollerWidth:Number = 270;
var window:Rectangle = new Rectangle(0,0, scrollerWidth, windowHeight);
var intervalId:Number;
mc.cacheAsBitmap = true;
mc.scrollRect = window;
// text field creation
var txtFormat:TextFormat = new TextFormat ();
txtFormat.font = "miriam";
txtFormat.size = 12;
mc.createTextField ("about", 1, 0, 0, scrollerWidth, 0);
mc.about.autoSize = true;
mc.about.wordWrap = true;
mc.about.html = true;
mc.about.selectable = false;
mc.about.embedFonts = true;
mc.about.setTextFormat(txtFormat);
//---------------------------------------------
//data load
var aboutdata:LoadVars = new LoadVars();
aboutdata.onData = function (src)
{
if (src != undefined)
{
mc.about.htmlText= src;
}
else
{
mc.about.text = "Unable to load external data.";
}
}
aboutdata.load ("about.txt");
и т.д.
при запуске ролика текст не отображается, размеры текстового поля не изменяются. в общем, текст упрямо не хочет отображаться.При отмене embedFonts текст отображается, но шрифт не Мириам, а дефалтовый и размер не тот, в общем TextFormat игнорируется. помогите пожалуста. |
|
|||||
|
сомневаюсь что поиск не даст ответа на запрос embedFonts или встраивание фонта. поищи неоднократно тема поднималась.
__________________
Feсi quod potui, faciant meliora potentes |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Надо юзать setNewTextFormat
|
|
|||||
|
Регистрация: Jan 2006
Адрес: Kremlin wall
Сообщений: 95
|
Здравствуйте дорогой товарищь.
Ваша проблема понятна: шрифты во флэше - дело тонкое. Попробуйте сделать следующим образом, создайте на рабочем поле, но спрячте от юзера текстовое поле типа динамик текст, и вставтье ручками в это поле весь набор необходимых символов шрифта, который вам понадобиться, затем выберите тип сглаживания встроенного шрифта из выпадающего списка рядом с кнопкой Embed. Во флэш 8 выбрать можно один из трех вариантов, кроме use device font, что понятно, иначе кнопка Embed не будет доступна. В завершении жмем на эту кнопку Embed и там выбираем Auto fill, то есть будем встраивать в фильм символы которые ввели в текстовое поле, так мы наглядно будем видеть какие символы встроены в фильм, и потом не будем гадать, почему у нас пропал какой-либо знак. Кроме того если вы выберете Bitmap тип сглаживания, то буде встроен шрифт только того размера, который указан в свойствах поля, и изменить размер динамически не удасться. Итак, в настройках публикации ставим галочку generate size report, и тестируем фильм. В отчете мы сможем прочитать какие символы встроены в фильм, и точное название шрифта. Для того чтобы теперь этот шрифт применить нам понадобиться простой код:mc.createTextField ("about", 1, 0, 0, scrollerWidth, 0);
mc.about.embedFonts = true;
mc.about.setNewTextFormat(emed_txt.getNewTextFormat());
![]() Больше информации о динамически встраиваемых шрифтах можно прочитать здесь Удачи вам дорогой товарищь!
__________________
Жить стало лучше, жить стало веселей! |
|
|||||
|
мда прогнал я с постом, не доглядел что есть в библиотеке уже фонт
![]() пора отходить от клавиатуры (
__________________
Feсi quod potui, faciant meliora potentes |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 4
|
хм
большое спасибо всем сочуствующим, а так же товарищам. час поздний, завтра попробую предложенные методы. ![]() ------------------------------------------------------- .... попробовал на скроорую руку просто заменить команду на setNewTextFormat - дудки, все равног текст не отображается. хотелось бы найти решение без использования самодельной копилки символов в динамическом текст поле, ведь в документации описано как все должно работать, и даже приведенный скрипт с поворотом текста на 45 градусов работает, однако, как только текст не вводиться напрямую из скрипта, а загружается извне, ничего не работает. Это баг программы, или моих мозгов? Последний раз редактировалось пипка; 16.06.2006 в 05:23. |
|
|||||
|
у меня была такая же фигня, но я не смог ее победить.
точно так же - присваивал прямое значение в скрипте - все работало, а из xml-ки (точнее, из массива, выдернутого из xml, который стопудов был заполнен и трейсился) ничего не показывалось. забил на это и сделал массив прямо во флеше ![]() |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 4
|
значит так
в итоге использование setNewTextFormat помогло - шрифты отображаются корректно, однако.... Все это заработало только после того, как я создал, по совету нашего дорогого товарища динамическое текстовое поле вне главного окна, в этом поле сделал ручной embed и поставил галочку auto fill. после публикации документа все равно ничего не появилось, тогда я стер созданное ранее динамическое поле, и решил еще раз попробовать setNewTextFormat. Я заново импортировал и сделал linkage требуемому шрифту, проверил код, запустил и - о чудо, работает! В общем, такое ощущение что флэш игнорировал команды задействовать embed из скрипта, как только я пошел другим путем - он вдруг проснулся и стал нормально работать. спасибо всем. ![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Флеш по-разному себя не ведет, просто что-то не так делалось
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 4
|
мда, ты прав - сделал новый мувик, все работает и так.
решение - setNewTextFormat |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:18. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|