Flex 4 の残念フォント対策だよ
多言語アプリにも対応できてるはず。たぶん。
Mac でしか確認してないけど大丈夫。たぶん。
♥8 |
Line 28 |
Modified 2011-02-11 01:06:32 |
MIT License
archived:2017-03-07 15:49:37
ActionScript3 source code
/**
* Copyright nariyu ( http://wonderfl.net/user/nariyu )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/k7sS
*/
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
fontSize="40"
preinitialize="preinitializeHandler(event)">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
protected function preinitializeHandler(event:FlexEvent):void
{
// 多言語対応アプリの Flex4 残念フォント回避方法
//
// Step 1
// 面倒だけど bold にしたい全てのコンポーネントに
// styleName="bold" をつけておく
//
// Step 2
// 日本語 且つ Mac の場合にフォントを替える
//
var isJa:Boolean = Capabilities.language == "ja";
var isMac:Boolean = Capabilities.os.substr(0, 3) == "Mac";
// 全体の設定
setStyle("fontFamily", !isJa ? "_sans" : "_ゴシック");
if (isJa && isMac)
{
// styleName="bold" なコンポーネントを bold にする
var style:CSSStyleDeclaration = new CSSStyleDeclaration;
style.setStyle("fontFamily", "ヒラギノ角ゴ Pro W6");
styleManager.setStyleDeclaration(".bold", style, false);
}
// Step 3
// Enjoy!
}
]]>
</fx:Script>
<s:VGroup>
<s:Label text="あいうえお"/>
<s:Label text="あいうえお" fontWeight="bold" styleName="bold"/>
</s:VGroup>
</s:Application>