![]() |
Внедрение Шрифта. Runtime Loading.
Лебенсборн чыхыртма, православные.
Вот еще один базовый нуб-вопрос. Читаю Мука. Пробую реализовать пример из главы Loading Fonts at Runtime. Подход, насколько я понял, там следующий: 1. Создать вспомогательный файл с именем Fonts.fla, докУмент класс которого выглядит, например, так: Код AS3:
Код AS3:
Потом войти в Linkage Properties и поставить галочку Export for Action Script. В результате появится неприятное предупреждение "A definition for this class could not be found in the classpath... ", но мы его тупо за-ОК-йиваем. Ну вот и всё, походу дела. Запускаю RuntimeFont и получаю вот такую ошибку: Код:
TypeError: Error #2007: Parameter font must be non-null.Где прокол? В чем ошибка? P.S. Если запустить отдельно Fonts.fla - то выдается та же ошибка, вероятно трабл в этом файле. Однако там я ничего не менял (кроме более наглядного расположения кода), он взят прямо из книги. Примечание: На всякий случай сообщу, что у меня Adobe Flash CS3 Professional (version 9.0). Впрочем, примеры из книги должны быть универсальны для всех версий, наверное. |
1. тем посвященных ембеду шрифтом на форуме навалом, воспользуйтесь поиском.
2. Цитата:
3. Ошибка у вас валится потому что в загружаемой флешке переменные verdana и verdanaBold приходят null. Почему это интересный вопрос, в первую очередь я бы проверил пути к шрифтам. |
Painkiller,
1. Я поиск юзал немного, но навскидку нужное не нашел. Посмотрю еще конешно... 2. У Мука такой алгоритм. Правда повествование сумбурное какое-то (почему-то именно в этой главе), иногда и не понять, что он советует для Flash IDE а что для Flex, например. Может я чего не разобрал. 3. С путями всё ОК, Windows XP SP3, c:\windows\fonts\verdana.ttf - такой путь и такой файл существуют. Может дело не с путями а с fontFamily? Странный параметер. Вот если например у меня вообще есть левый шрифт, типа Chiller, то как определить его fontFamily, не понятно. |
|
Вложений: 1
Korchy, Спасибо, изучаю...
Но если навскидку оценить, то это весьма неслабо, с точки зрения уровня нуба, конешно. Кто бы мог подумать что нужно столько сторонних извратов, типа super() для EventDispatcher... Хочу пока спросить по поводу другого вашего поста с именем "Встраивание шрифта в Adobe Flash CS". Получилось вот так: 1. Создал такой объект в библиотеке: Вложение 29781 2. Написал такой код в докУмент классе проекта: Код AS3:
Но есть два момента: 1. Размер шрифта какой-то очень маленький... Я специально менял значение 30 на 200 (и в строке кода, и в имени объекта), но как ни странно размер остается точно таким же. Глюк? Или что-то не так... 2. Пробовал вместо BitmapText шрифта создать обычный, галку не ставить. Указал шрифт CyrilicHover и имя вписал: CyrilicHover_name, (размер = 100). В коде прописал его сначала так: Код AS3:
Тогда вписал Код AS3:
Опять что-то странное... Вдруг сейчас на самом деле подхватился системный шрифт, кто его знает, ведь имена то совпадают. |
2 Fogflasher
А у используемых вами шрифтов есть вообще поддержка такого большого размера? Я с большими размерами не экспериментировал, мне хватало 10-12, максимум 14 размеров. |
Korchy,
Я не знаю, а как определить эту поддержку? Я думал что у ttf шрифтов размер какбэ любой может быть. Попробовал немного другой подход: Код AS3:
|
|
Вложений: 2
|
Wolsh, спасибо прочитал.
Пробовал ваш пример (что на второй странице) реализовать в IDE, но не получилось. Видимо Korchy прав, и тэги эмбэдд вообще не воспринимаются Флэшем ИДЭ. Пример от Dimarik слишком абстрактен, нехватает пэкиджей и конструкторов. То что вы в архиве приаттачили очевидно сделано не во флэш... Я подозреваю что вы работаете на Flex или еще чем-то таком, что мне незнкомо. Добавлено через 5 минут Korchy, благодарю за пример. Всё работает. Хотя, в принципе я так всё и делал. Просто я принципиально не указывал строку TFormat.size = 30; Мне казалось, что формат имени Chiller_30pt_st вместе с указанием 30 в форме ввода должно автоматически давать шрифт этого размера. А выходит что нихрена: все три 30-ки должны работать в связке. |
| Часовой пояс GMT +4, время: 20:51. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.