unicodeRange作成

by demouth
♥8 | Line 29 | Modified 2009-09-21 13:51:27 | MIT License
play

ActionScript3 source code

/**
 * Copyright demouth ( http://wonderfl.net/user/demouth )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/eKUN
 */

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
	<mx:Script>
		<![CDATA[
			/**
			 * フォント埋め込みの際に使用するunicodeRangeを作成する
			 * 参考:
			 * http://d.hatena.ne.jp/nitoyon/20080723/as3_embed_font
			 */
			public function clickHandler():void
			{
				this.out.text = this.conv(this.ti.text);
			}
			public function conv(value:String):String
			{
				//0埋めする
				var zeroUme:Function = function (str:String):String{
					var l:int = 4-str.length;
					for (var i:int = 0; i < l; i++) str = "0" + str;
					return str;
				}
				var str:String = "";//unicodeRangeを格納
				for (var i:int = 0; i < value.length; i++) {
					str += "U+" + zeroUme(Number(value.charCodeAt(i)).toString(16));
					if (i != value.length-1) str += ",";//カンマつける
				}
				str = "unicodeRange='" + str + "'";
				return str;
			}
		
		]]>
	</mx:Script>
	<mx:TextInput id="ti" width="100%" />
	<mx:Button label="↓変換↓" click="this.clickHandler()" keyDown="this.clickHandler()" />
	<mx:TextArea text="" id="out" width="100%" height="100%" />
</mx:Application>

Forked