Я работаю над многоязычным гибким приложением, которое должно работать на 27+ языках, включая азиатский, иврит и арабский, а также на всех европейских языках.
Мы работаем со встроенным шрифтом (Myriad Pro) и имеем множество стилей в CSS, которые используют этот встроенный шрифт. Мы протестировали модифицированную версию Myriad, включая все символы unicode, отличные от западных, взятые из Arial Unicode, и она работает нормально, но вес swf неприемлем.
У нас есть две строки в нашем CSS ..
@font-face
{
src: url("MyriadPro-Semibold.otf");
fontFamily: "Default Font";
fontWeight: bold;
advancedAntiAliasing: true;
}
@font-face
{
src: url("MyriadPro-Regular.otf");
fontFamily: "Default Font";
advancedAntiAliasing: true;
}
а остальные стили при необходимости используют «Шрифт по умолчанию».
Какое решение лучше всего для реализации многоязычных приложений со шрифтами загрузки во время выполнения при сохранении текущей таблицы стилей?
Да, языки загружаются с сервера, когда пользователь меняет язык, но не шрифт.
Меня беспокоит, что если мне нужно загрузить азиатский шрифт, отличный от Myriad, как сказать «прошить», привет, мой «Шрифт по умолчанию» теперь это азиатский шрифт. И если мне нужно отображать имена языков, как я могу отображать азиатские имена, не меняя стиль списка ...
Это не легко.





Вместо того, чтобы иметь шрифт и языковые файлы, встроенные в .swf, разве вы не должны загружать их с сервера?
Загрузите файлы шрифтов при запуске .swf и загрузите языковой файл, когда пользователь выбирает новый язык.
Вы можете включить свойство для fontWeight=bold или fontWeight=normal в свои локализованные файлы свойств. Затем вы можете использовать setStyle () для изменения приложений. Пример из предыдущей ссылки:
StyleManager.getStyleDeclaration("Button").
setStyle("color","Blue");
который может быть:
StyleManager.getStyleDeclaration("DefaultFont").
setStyle("fontWeight",
resourceManager.getString('locale_properties', 'fontWeight'));
Это не совсем правильный пример, но я надеюсь, что он укажет вам правильное направление.
Другой подход - динамическая загрузка новой таблицы стилей: Как динамически загружать файл CSS в приложение Flex?