Как заставить пользовательский компонент Flash работать с любым шрифтом? - PullRequest
0 голосов
/ 21 июня 2011

Итак, у нас есть компонент, который мы написали сами, который связан с отображением текста и переводом между языками, чтением переводов из файла. В идеале мы хотели бы, чтобы этот компонент был совместим с любым шрифтом, который мы можем встроить в основную библиотеку .swf. Какой лучший способ сделать это?

В настоящее время мы идем по пути, чтобы у нашего компонента был атрибут для имени шрифта, скажем, «Font1». Мы перетаскиваем компонент в нужный файл .FLA, а затем добавляем новый шрифт в библиотеку с именем «Font1» и устанавливаем для него нужную гарнитуру. Это оказывается противоречивым и проблематичным, что означает, что это не совсем идеальный способ сделать это.

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

Любые идеи или решения для этого очень ценятся. Компонент написан на AS3, и мы используем Flash CS4.

1 Ответ

0 голосов
/ 21 июня 2011

Посмотрите на загрузку шрифтов во время выполнения или встраивание шрифтов во время выполнения. Есть много способов справиться с этим в зависимости от вашей среды разработки. В связи с этим FlashBuilder может предложить вам большую гибкость, чем Flash CS4.

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

При вызове шрифта в вашем компоненте вы фактически вызываете функцию, которая загружает соответствующий SWF-файл, добавляя шрифт в ваш домен приложения, тем самым делая его доступным для вашего компонента.

Вот статья, которая может помочь в разъяснении процесса
http://nochump.com/blog/archives/20

но поиск в Google, такой как загрузка или внедрение шрифтов во время выполнения, должен выявить намного больше ресурсов.

Надеюсь, это поможет!

...