actionscript3.0の最近のブログ記事

ダイナミックテキスト(スクリプトで生成した)のテキスト入力が一部のブラウザで日本語入力ができなかったり、
文字入力が全くできない現象に遭遇。

まずMac OSのSafariの場合Flash PLayerがdebuggerだと起こるみたいなので
通常のFlashPlayerに変更したら解決。

あと、Windows XP ,7のChromeの場合は
swfを埋め込むさいの設定でwmodeをtransparentもしくは未設定だと起こるらしく、
wmodeをwindowに設定で解決。

方法:
http://cocoasaurus.com/blog/2009/10/as3textfiled.html

それでもなおらない場合はChrome独自のFLashPlayerが原因と考えられるので、
Chromeの設定から独自のFlashPlayerを無効のすると解決するかも。

方法:
http://getnews.jp/archives/97367

| | トラックバック(0)

Flashで埋め込み日本語フォントを使うと書き出しやロードに時間がかかるので、
外部にフォントシンボルだけのswfファイルを用意してそれを読み込むのを簡単に
できるようにクラスにしてみました。

サンプル

| | トラックバック(0)

今回仕事でやったときにちょっとつまずいたのでメモ。

XMLを読み込み、文字列をhtmlTextにて表示した際に、XML内に改行(\n,\r)があると思いのほか
改行の幅が大きく見た目がちょっとおかしい状況がありました。
で、下記のように修正したらいけました。

str = str.replace( /\n/g, "</p>" );
str = str.replace( /\r/g, "<p>" );
str = str.replace(/<br \/>/g, "");
tf.htmlText = "<p>" + str + "</p>";

replace()で改行があった場合に<p>タグと取り替えて、<br />とかなにか他に余計なものがある場合は取り除く。
こうすればstyleSheetとかで文字幅も設定できる。
本当はもっと良いやり方があるのかと思いますが、とりあえずこれでいけた。

ただ、後で下記のようにして検証してみたら改行の幅は特に問題なかったです。

var str = "<p>あいうえお<br />かきくけこ<br />さしすせそ<br />たちつてと<br />なにぬねの</p>"
var tf:TextField = new TextField();
tf.multiline = true;
tf.width = 200;
tf.htmlText = str;
tf.x = 10;
tf.y = 10;
addChild(tf);
| | トラックバック(0)

仕事でやったのでメモ。

private function comma(num):String {
	return num.toString().replace( /([0-9]+?)(?=(?:[0-9]{3})+$)/g , '$1,' );
}
| | トラックバック(1)
今更感がすごいありますが、あいまいだったので記事にします。
| | トラックバック(0)

忘れてたのでメモ

| | トラックバック(0)

すぐ忘れるのでメモ。

| | トラックバック(0)
前回の続きで今回は描いた絵を画像ファイルに変換してサーバーにアップして見ます。
| | トラックバック(0)
すぐ忘れるのでメモ。

WinXp IE6でStageのサイズが参照できない。
サイトアクセス時はちゃんと反映されるのですが、F5等でリロードした時に不具合の現象がおきる。
とりあえず、数字で設定すれば問題なく動く。

対処としては読み込みの段階でStageのサイズが取得できるまで処理を待つってことみたい。
詳しくは下記で説明されてます。

崖っぷちWEBデザイナーブログ | stage幅取得のタイミングをテストしてみた
http://www.y-tti.com/blog/2009/02/stage.php

| | トラックバック(0)

仕事でやることになったのでサンプルを作ってみました。

| | トラックバック(0)

このアーカイブについて

このページには、過去に書かれたブログ記事のうちactionscript3.0カテゴリに属しているものが含まれています。

前のカテゴリはactionscript2 + xmlです。

次のカテゴリはiPhoneです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。