0

私は、アジア、ヘブライ語、アラビア語、およびすべてのヨーロッパ言語を含む27以上の言語で実行する必要がある多言語フレックスアプリケーションに取り組んでいます。

埋め込みフォント(Myriad Pro)を使用しており、cssにはその埋め込みフォントを利用するスタイルがたくさんあります。Arial Unicodeから取得したすべての非西洋Unicode文字を含むMyriadの修正バージョンでテストしましたが、正常に機能しますが、swfの重みは許容できません。

cssにこの2行があります。

@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とは異なるアジアのフォントをダウンロードする必要がある場合、どうすればフラッシュと言うことができるかということです。私の「デフォルトフォント」はこのアジアのフォントになりました。また、言語名を表示する必要がある場合、リストのスタイルを変更せずにアジアの名前を表示するにはどうすればよいですか...

簡単ではない。

4

2 に答える 2

1

ローカライズされたプロパティ ファイルfontWeight=boldのプロパティを含めることができます。fontWeight=normal次に、setStyle()を使用してアプリケーションを変更できます。前のリンクの例:

StyleManager.getStyleDeclaration("Button").
            setStyle("color","Blue");

次のようになります。

        StyleManager.getStyleDeclaration("DefaultFont").
                    setStyle("fontWeight",
resourceManager.getString('locale_properties', 'fontWeight'));

これは正確な例ではありませんが、正しい方向に向けられることを願っています。

もう 1 つのアプローチは、新しいスタイル シート を動的にロードすることです。どのように CSS ファイルを Flex アプリケーションに動的にロードしますか?

于 2008-12-31T07:04:02.440 に答える
0

フォントと言語ファイルを .swf に埋め込むのではなく、サーバーからダウンロードするべきではありませんか?

.swf の起動時にフォント ファイルをダウンロードし、ユーザーが新しい言語を選択したときに言語ファイルをダウンロードします。

于 2008-12-22T16:19:47.033 に答える