FontLoader — 2.3!

Вышла новая версия 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.

33 Responses to FontLoader — 2.3!

  1. Респект. Полезнейший класс.

  2. Pingback: Записки о Flash » Обновление FontLoader

  3. Pingback: Записки о Flash » FontLoader

  4. Не пожалел времени на регистрацию, что бы выразить благодарность )) Огромное спасибо за класс! Опупительно полезная весчь! )

  5. Amanita, спасибо! :)

  6. Спасибо огромнейшее! Полезнейший и удобнейший класс! :)

  7. Pingback: Записки о Flash » ru.etcs.utils.FontManager

  8. Pingback: 【AS3】FontLoader 2外部调用swf字体嵌入类 | Flash RIA

  9. Pingback: Записки о Flash » FontLoader v. 2.1

  10. Pingback: Записки о Flash » FontLoader v. 2.2

  11. hello

  12. Pingback: AS3 – Loading CSS and Fonts « jeffguthrie.com

  13. Денис, в чем может быть проблема:
    1. флешку внедряем при помощи Embed тега
    2. при использовании function loadBytes флешка “висит” секунд 5 и потом все как надо, видимо идет парсинг данных.

    вес контейнера шрифта порядка 40кб, ничего там нет кроме текстового поля
    Проблема в том что таких контейнеров 3 штуки, и если каждый будет отвисать по 5 секунд – фигово

  14. Мне кажется, FontLoader тут непричем.

  15. Pingback: Kevin Bouhadana – Blog » Blog Archive » Bibliothèque externe de fontes

  16. O4eni horoshiy class! spasibo! :)

  17. Pingback: Runtime dynamic font loading in AS3 | Turtlebite's Blog

  18. Pingback: Utilisation d'une bibliothèque externe de polices en As3 | FruitShaker

  19. Хемуль

    Старый FontLoader больше не работает корректно после апдейта Flash Player’а до версии 10.1.102.64 – там не диспатчится Event.COMPLETE после начала загрузки loader.loadBytes(swf) в методе generateFonts. Наверное, это результат “закрывания” каких-то дыр в безопасности (может сформированный ByteArray больше не нравится плееру, да и вообще с loadBytes были известны проблемы).
    Соответственно, на демо-странице не работает тоже: http://etcs.ru/pre/FontLoader/

  20. Обновил плеер, посмотрел демку старого FontLoader. Действительно не работает. Но, в целом, т. к. он очень древний, проще использовать FontLoader 2 и не заморачиваться. Во всяком случае, второй у меня работает, а у вас?

  21. Хемуль

    2 etc:
    Демо-страница второго работает. В проекте пока не пробовал, но, думаю, будет ОК. А вообще Adobe подкинули проблем. Никаких ошибок не кидается, просто перестало загружаться. Печаль… +_+

  22. Да уж, причем вроде как выгружается совсем. Печаль :)
    Ну, впрочем, вероятно это из-за каких-то допущенных мной ошибок при разработке первой версии. Но смысла править её я не вижу.

  23. Хемуль

    2 etc:
    Переделал проект под 2.2 – полёт нормальный. :) Спасибо.

  24. 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 :)

  25. А можно посмотреть swf-ку? Ну или неработающий пример собрать.

  26. Pingback: Записки о Flash » FontLoader 2.3

  27. Доброго дня, Денис.
    Тут такая ситуация немного непонятная с загрузкой шрифтов с помощью Вашего класса. Основное приложение компилируется flex sdk с подключением графики из внешних swc, предварительно собранных в IDE (flash cs 5.5). Собственно и текстовые поля тоже создаются в IDE, в них устанавливается (не эмбедится) шрифт, который впоследствии планировался быть загруженным извне. После загрузки шрифт регистрируется, но на поля не применяется как embedFonts=true.
    Трабла в том, что если в скопмилированном приложении присутствует шрифт (можно через FD посомтреть св-во в swf Fonts – OurFontName (0)), то шрифт при загрузке не работает. Но если его не будет в скомпилированном swf, то при загрузке он нормально работает и выставляется. Как быть? Дизайнер то этот шрифт передает в текстФилдах, неохото его менять на другой ручками, а потом в коде выставлять всем tf загруженный шрифт.

  28. Полагаю, что необходимо полям выставить embedFonts = true, т. к. если бы он был выставлен, IDE потребовала бы заембедить шрифт.

  29. Чего только не пробовал, в т.ч. и выставлять полям параметры.
    Может быть я пример накатаю рабочий и нерабочий, вышлю Вам на мэйл или куда скажете, посмотрите как время будет?

  30. Можно и на почту (в эбаут написана).
    Правда, не обещаю, что быстро посмотрю и отвечу.

  31. Отправил на почту. Мне не срочно)
    Спасибо.

  32. Посмотрел. Похоже, без применения шарных (точнее шарных библиотек) шрифтов ничего не выйдет =/

  33. Понятно, спасибо.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>