Skip to content

lyokato/as3emojitext

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

as3emojitext

= LICENSE

MIT-License

= AUTHOR

Lyo Kato, lyo.kato _at_ gmail.com

= USAGE

1. EmojiTextAreaを生成するビルダを準備します。

import org.coderepos.text.EmojiTextAreaBuilder;
import org.coderepos.text.events.EmojiTextAreaBuildEvent;

var textAreaWidth:uint  = 200;
var textAreaHeight:uint = 200;

// 最終的に生成したいテキストエリアの幅、高さを指定します。

var builder:EmojiTextAreaBuilder = new EmojiTextAreaBuilder(textAreaWidth, textAreaHeight);

// 絵文字に置き換える文字列のフォーマットを生成します。
// 生成されたフォーマットのID値がかえります。

// 引数に渡すのはフォーマットのprefix, suffixです。
// suffixは一文字である必要があります。
var format1ID:uint = builder.genPatternFormat('[m:', ']');
var format2ID:uint = builder.genPatternFormat('[a:', ']');

// 利用したい絵文字を登録します。

// 下の例では、入力されたテキストに'[m:46]'が含まれていれば
// その箇所を、http://img.mixi.jp/img/emoji/46.gifの画像に置き換えることになります。
// 同様に'[a:10]'をhttp://img.mixi.jp/img/emoji/50.gifの画像に置き換えます。

builder.registerByURI(format1ID, '46', 'http://img.mixi.jp/img/emoji/46.gif');
builder.registerByURI(format2ID, '10', 'http://img.mixi.jp/img/emoji/50.gif');

// イベントリスナを設定します。

// 絵文字のための画像をロードし、EmojiTextAreaをビルド完了したときに呼ばれます。
builder.addEventListener(EmojiTextAreaBuildEvent.BUILT, builtHandler);

// 指定したURLから画像をロードするときに該当するエラーイベントが発生したときのため
builder.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
builder.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);


// ビルドを開始します。
builder.buildAsync();


2. ビルド完了後の設定

// ビルド完了用に指定しておいたハンドラで、
// EmojiTextAreaのオブジェクトを取得する。

import org.coderepos.text.EmojiTextArea;

private var _emojiTextArea:EmojiTextArea;

private function builtHandler(e:EmojiTextAreaBuildEvent):void
{
    // イベントオブジェクトのtextAreaメソッドで
    // EmojiTextAreaのオブジェクトが取得できます。
    _emojiTextArea:EmojiTextArea = e.textArea;
}


// EmojiTextAreaはflash.display.Spriteのサブクラスです。
// 適当なコンテナの子として加えておいてください。

myContainer.addChild(_emojiTextArea);

3. フォーマットの設定

EmojiTextAreaは、ElementFormatの各プロパティへのプロキシとなる
getter/setterメソッドが登録されています。
詳しくはflash.text.engine.ElementFormatのドキュメントを参照してください。

_emojiTextArea.fontSize   = 20;
var desc:FontDescription = new FontDescription();
desc.fontName = "Kozuka Mincho Pro R";
_emojiTextArea.fontDescription = desc;
_emojiTextArea.locale = "ja";

4. その他の設定

_emojiTextArea.lineHeight = 20;

5. テキストの入力

// textセッタで文字列を入力します。
// 入力する文字列中に、指定されたパターンを発見すると絵文字画像に変換して表示します。

_emojiTextArea.text = "こんにちは[m:46]"

About

TextArea which includes some Emoji characters

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages