Вышла новая версия FontLoader — 2.3!
Напомню: FontLoader — инструмент, позволяющий вам загружать любые swf-ролики версии 6 и выше, так или иначе содержащие embedded-шрифты для дальнейшего их использования в вашем приложении. Теоретически, возможна загрузка роликов версии от 3 до 5, но на деле шрифты не регистрируются. С предыдущей версии FontLoader сильно изменился:
- Полностью переписан код, исправлены ошибки в парсинге, уменьшен размер кода
- Нет больше событий FONTS_NOT_FOUND, REGISTER, регистрация всех шрифтов происходит единовременно, а не по одному, как было раньше
- Больше не поддерживаются шрифты статических полей
- Используются только стандартые события flash.events.*, а значит работа с классом стала проще и нагляднее
История:
v. 2.3 (20.01.11): Добавлена поддержка CFF-шрифтов (тег DefineFont4), а также embedded-swf, т. е. вложенные swf в теге DefineBinaryData (метатегом Embed, например), также будут проанализированы на наличие шрифтов. Это, в частности, позволяет использовать стандартный RSL-прелоадер-контейнер для textLayout.swc из Flash CS5 при подготовке библиотеки со шрифтами. В демоверсии приложены варианты библиотек с внедренным textLayout.swc и с загружаемым как RSL.
v. 2.2 (25.06.09): Добавлено событие VERIFY_ERROR, возникающее в случае, если загруженные данные имеют неверный формат;
v. 2.1 (15.06.09): Теперь класс совместим с AIR. Также добавлен новый метод loadBytes, аналогичный по действию одноименному методу класса Loader.
Посмотреть демо. Код класса можно получить там же.
Напомню, что класс распространяется по лицензии CC-BY-ND.
Респект. Полезнейший класс.
Pingback: Записки о Flash » Обновление FontLoader
Pingback: Записки о Flash » FontLoader
Не пожалел времени на регистрацию, что бы выразить благодарность )) Огромное спасибо за класс! Опупительно полезная весчь! )
Amanita, спасибо!
Спасибо огромнейшее! Полезнейший и удобнейший класс!
Pingback: Записки о Flash » ru.etcs.utils.FontManager
Pingback: 【AS3】FontLoader 2外部调用swf字体嵌入类 | Flash RIA
Pingback: Записки о Flash » FontLoader v. 2.1
Pingback: Записки о Flash » FontLoader v. 2.2
hello
Pingback: AS3 – Loading CSS and Fonts « jeffguthrie.com
Денис, в чем может быть проблема:
1. флешку внедряем при помощи Embed тега
2. при использовании function loadBytes флешка “висит” секунд 5 и потом все как надо, видимо идет парсинг данных.
вес контейнера шрифта порядка 40кб, ничего там нет кроме текстового поля
Проблема в том что таких контейнеров 3 штуки, и если каждый будет отвисать по 5 секунд – фигово
Мне кажется, FontLoader тут непричем.
Pingback: Kevin Bouhadana – Blog » Blog Archive » Bibliothèque externe de fontes
O4eni horoshiy class! spasibo!
Pingback: Runtime dynamic font loading in AS3 | Turtlebite's Blog
Pingback: Utilisation d'une bibliothèque externe de polices en As3 | FruitShaker
Старый FontLoader больше не работает корректно после апдейта Flash Player’а до версии 10.1.102.64 – там не диспатчится Event.COMPLETE после начала загрузки loader.loadBytes(swf) в методе generateFonts. Наверное, это результат “закрывания” каких-то дыр в безопасности (может сформированный ByteArray больше не нравится плееру, да и вообще с loadBytes были известны проблемы).
Соответственно, на демо-странице не работает тоже: http://etcs.ru/pre/FontLoader/
Обновил плеер, посмотрел демку старого FontLoader. Действительно не работает. Но, в целом, т. к. он очень древний, проще использовать FontLoader 2 и не заморачиваться. Во всяком случае, второй у меня работает, а у вас?
2 etc:
Демо-страница второго работает. В проекте пока не пробовал, но, думаю, будет ОК. А вообще Adobe подкинули проблем. Никаких ошибок не кидается, просто перестало загружаться. Печаль… +_+
Да уж, причем вроде как выгружается совсем. Печаль
Ну, впрочем, вероятно это из-за каких-то допущенных мной ошибок при разработке первой версии. Но смысла править её я не вижу.
2 etc:
Спасибо.
Переделал проект под 2.2 – полёт нормальный.
Saliut,
v4era, ispolizuia FontLoader 2.2, mi narvalisi na odnu problemu – v flashPlayer`ah 10.1.x – Event.COMPLETE v functii – generateFonts() ne zapuskaetzia
reshenie nashlosi, no nujno delati po novomu shrifty – 4erez emebed i zagrujati mojno 4erez obi4niy Loader.
Hotea ia bi predpo4el FontLoader, tak kak o4eni horoshaia utilitka.
Spasibo
А можно посмотреть swf-ку? Ну или неработающий пример собрать.
Pingback: Записки о Flash » FontLoader 2.3
Доброго дня, Денис.
Тут такая ситуация немного непонятная с загрузкой шрифтов с помощью Вашего класса. Основное приложение компилируется flex sdk с подключением графики из внешних swc, предварительно собранных в IDE (flash cs 5.5). Собственно и текстовые поля тоже создаются в IDE, в них устанавливается (не эмбедится) шрифт, который впоследствии планировался быть загруженным извне. После загрузки шрифт регистрируется, но на поля не применяется как embedFonts=true.
Трабла в том, что если в скопмилированном приложении присутствует шрифт (можно через FD посомтреть св-во в swf Fonts – OurFontName (0)), то шрифт при загрузке не работает. Но если его не будет в скомпилированном swf, то при загрузке он нормально работает и выставляется. Как быть? Дизайнер то этот шрифт передает в текстФилдах, неохото его менять на другой ручками, а потом в коде выставлять всем tf загруженный шрифт.
Полагаю, что необходимо полям выставить embedFonts = true, т. к. если бы он был выставлен, IDE потребовала бы заембедить шрифт.
Чего только не пробовал, в т.ч. и выставлять полям параметры.
Может быть я пример накатаю рабочий и нерабочий, вышлю Вам на мэйл или куда скажете, посмотрите как время будет?
Можно и на почту (в эбаут написана).
Правда, не обещаю, что быстро посмотрю и отвечу.
Отправил на почту. Мне не срочно)
Спасибо.
Посмотрел. Похоже, без применения шарных (точнее шарных библиотек) шрифтов ничего не выйдет =/
Понятно, спасибо.