AIR Mobile: загрузка пользовательских шрифтов в iOS во время выполнения - PullRequest
0 голосов
/ 06 июля 2011

Наше приложение загружает и отображает внешний пользовательский контент, который включает в себя пользовательские, фирменные шрифты Для Интернета, рабочего стола и Android мы просто используем внешние SWF-файлы со встроенными шрифтами. Имеет технический смысл, почему этот метод не будет работать для iOS, но я не смог найти никаких альтернатив. Это просто невозможно? Надеюсь, что это не так, поскольку это означает, что наше приложение невозможно для iOS с использованием мобильных технологий AIR.

Эрик

Редактировать для деталей:

Позвольте мне подробнее рассказать об этом процессе. На сервер загружен PDF. Затем мы анализируем и извлекаем содержимое из PDF, включая шрифты для каждой страницы. Эти шрифты часто полностью индивидуальны и предпочтительны для владельца контента, поскольку в них хранятся символы для математических и других нестандартных символов. Когда мы извлекаем эти шрифты, мы назначаем шрифт уникальному идентификатору, внедряем его и компилируем в SWF. Когда этот контент запрашивается у клиента, у нас есть список шрифтов для него. Мы загружаем все SWF-файлы, содержащие эти шрифты, а затем загружаем и регистрируем шрифты. Вот пример SWF, который мы сносим. Это полная информация о скомпилированном SWF-файле.

package {
    import flash.display.Sprite;
    import flash.text.Font;
    import flash.system.Security;

    public class F9471cf2d10924f87820ae61a30dd4b8f extends Sprite
    {

      [Embed(source='TempF9471cf2d10924f87820ae61a30dd4b8f.swf',symbol='F9471cf2d10924f87820ae61a30dd4b8f')]
      public static var F9471cf2d10924f87820ae61a30dd4b8f:Class;



      public function F9471cf2d10924f87820ae61a30dd4b8f()
      {
          Security.allowDomain("*");
          Security.allowInsecureDomain("*");

          Font.registerFont(F9471cf2d10924f87820ae61a30dd4b8f);
      }
    }
}

У нас нет коллекции этих шрифтов для хранения в каких-либо библиотеках. Это все динамически генерируемый контент, поэтому мы должны иметь возможность загружать и регистрировать шрифты по требованию, без предварительного знания шрифта.

1 Ответ

1 голос
/ 06 июля 2011

Если я правильно понимаю, вы хотите обрабатывать пользовательские шрифты во время выполнения.Проверьте это: https://github.com/zynga/FontLabel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...