Динамически загружать шрифты в Flex / AS3 - PullRequest
0 голосов
/ 03 августа 2009

Хотя существуют способы загрузки шрифтов в виде SWF-файлов, я больше всего обращаю внимание на способ загрузки самого файла шрифтов, скажем, пользователь загружает файл шрифтов, как я могу использовать этот файл шрифтов в самом приложении?

Спасибо, Фейсал Абид

1 Ответ

1 голос
/ 03 августа 2009

К сожалению, я совершенно уверен, что это невозможно, по крайней мере, нормальным способом. Вы не можете загрузить байтовый массив ttf-файла и передать его в Font.registerFont (), который необходимо вызвать для использования шрифта.

Однако, хотя я не обладаю всеми знаниями, чтобы сделать это, я знаю, что это определенно не невозможно.

Как вы сказали, шрифты могут быть загружены из SWF-файлов, а SWF-файлы могут динамически создаваться как byteArray и загружаться в него.

Я не знаю, будет ли это вообще для вас вариантом, и я не уверен, насколько это будет сложно на самом деле. Я хотел бы прочитать спецификацию формата файла SWF, доступную здесь: http://www.adobe.com/devnet/swf/ Затем изучите байт-код пустого SWF-файла, а затем байт-код SWF-файла с одним встроенным шрифтом и найдите, где находятся данные шрифта, это то, что должно быть заменено шрифтом, предоставленным пользователем. Интересно, если все содержимое файла остается нетронутым, когда встроено в SWF. В этом случае практически нужно просто вставить данные шрифта в нужное место шаблона swf, что не должно быть слишком сложным. Но, вероятно, это будет немного сложнее, и я подозреваю, что это также сжимается ... Может быть некоторая информация о программном создании SWF, если вы гуглите вокруг ..

Извините, я не могу дать вам более удобный ответ =)

...