Flash縦書き元年

最近、カメラマンの友達に「Flashが遂に縦書き出来るようになったんだよ!!すげーよ。革命とはこのことに違いない!」と大興奮で話したら、「え?何それ。Flashってそんなことも出来ないの。サッブー」と言われてしまった(誇張アリ)。

まあ世間の反応としてはこれが平均値だろう。確かにランタイム上でサウンドの生成やバイナリレベルの処理に加え動体検知なんて事が出来るようになったこのご時世に「縦書き」が実装されるって言うのは何となくアンビバレントな感じがしないでもない。一般的に「縦書き」なんて「出来て当たり前 」だからだ。この話を聴いた彼はひょっとすると、「今まで何の開発してたんだ?」と思ったのかもしれない。

だけど、もう一度考えてみよう。このテキストエンジンの名前は「EastAsianJustifier」、つまり東アジア向けってことなんだ。僕たちが「アタリマエ」と思っている「縦書き」を使う文化圏は必ずしも多数派ではない。むしろ少数派なのだ。Adobeにしてみれば「何でアジアの一部だけの為にこんな実装しなきゃなんねえんだよ」と思ってるかもしれない。


というわけでAstroのflash.text.engine.EastAsianJustifierで縦書きを作ってみた。


http://memo.kappa-lab.com/swf/eastAsianJustifierExample.swf
(要 FlashPlayer10)


公式リファレンスのソースに少し手を加えただけですが、リファレンスを見る限りだと、かなり力業で縦書きにしている様子です。まず、テキストを保持するコンテナ(TextBox)を用意してそこにテキストを格納、そこから一行づつ文章を生成(TextLine)してaddChildeする。行間はTextLineのx座標でコントロール。

う~ん。なんか力業すぎるんじゃないの?
行間がx座標って!

それと、現時点でテキストの選択が出来ないみたい。TextFieldのselectableに相等するプロパティが見つからない。でもって、カギ括弧あたりの字詰めが怪しい。というか崩れている。

当然beta版なのでこれから色々と改良されていくと思いますが、とりあえずFlashの縦書き元年を祝って、乾杯。


追記:

念のためですが、Flashで静的テキストはずっと昔から「縦書き可能」でした。ココで言及してるのは動的テキストでの縦書きのことです。あしからず

Trackback

http://memo.kappa-lab.com/mt-tb.cgi/224

Leave your comment :

(いままで、ここでコメントしたことがないときは、コメントを表示する前に承認が必要になることがあります。そのときはしばらくお待ちください。)




RSS + Contuct

  • rss
  • email

Credit

Copyright (C) 2007 kappa-lab.com.
All Rights Reserved.