1

itemrenderer を使用するスパーク リスト コンポーネントがあります。アバター(画像)と人物名の一覧です。ラテン語やその他の言語は正しく表示されますが、タイ語では正方形のボックスしか表示されません。助けてください!

私が使用するコードは次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
  <s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx"
    xmlns:bd="com.bdement.imagecache.*"
    autoDrawBackground="false" width="270" height="45">
    <fx:Script>
      <![CDATA[
      override public function set data(object:Object):void {
        userName.text = "อีฟ จันทโรทัย";
      }
      ]]>
    </fx:Script>
    <s:HGroup click="onFriendClickReceived(event)" verticalAlign="middle"
      color.normal="#000000" horizontalAlign="left" width="270" height="45">
      <s:Spacer width="10"/>
      <bd:CachedImage id="userImage" cacheId="F32x32" width="32" height="32"
      left="8" verticalCenter="0"/>
      <s:Label id="userName" width="188" maxDisplayedLines="1" fontLookup="auto"
      fontFamily="Arial Unicode MS, Arial" verticalCenter="0" />
    </s:HGroup>
  </s:ItemRenderer>
4

1 に答える 1

2

言語の fontFamily を定義する必要があります。タイ語をサポートするフォントを取得し、次のように埋め込みます。

[Embed(source="font.ttf", mimeType="application/x-font", embedAsCFF="true", fontFamily="ThaiFontFamily")]
private var ThaiFont:Class;

次に、creationComplete ハンドラーに次のようなフォントを埋め込みます。

Font.registerFont(ThaiFont);

この後、CSS で fontFamily を自由に使用したり、MXML でラベルに直接使用したりできます。このような:

<s:Label id="userName" width="188" maxDisplayedLines="1" fontLookup="auto" fontFamily="ThaiFontFamily" verticalCenter="0" />
于 2012-07-12T12:40:05.970 に答える