In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

TLF縦書き時のbug

TLFを
 1.縦書き
 2.複数のコンテナを配置
 3.コンテナのサイズが異なる、
 4.インデックスが小さいコンテナを左に移動する
と操作した場合コンテナの親のwidthが正しく得られない。

追記
EnterFrameされると正しい値が帰る
Get Adobe Flash player
by kappaLab 28 May 2010

    Tags

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

/*
TLFを
 1.縦書き
 2.複数のコンテナを配置
 3.コンテナのサイズが異なる、
 4.インデックスが小さいコンテナを左に移動する
と操作した場合コンテナの親のwidthが正しく得られない。

追記
EnterFrameされると正しい値が帰る

*/

package {
    public class FlashTest extends Sprite {  public function FlashTest() {

    //親
	var ctn:Sprite = addChild(new Sprite()) as Sprite;
	//コンテナ0
	var sp:Sprite = ctn.addChild(new Sprite()) as Sprite;
	//コンテナ1
	var sp1:Sprite = ctn.addChild(new Sprite()) as Sprite;
	sp.x = 100
		
	var ctr:ContainerController  = new ContainerController(sp,50,50);
	var ctr1:ContainerController = new ContainerController(sp1,40,40);
		
	
	var tfw:TextFlow = TextConverter.importToFlow("abcdefgf123456789asdfas;lkasjdfsdf wef"
	,TextConverter.PLAIN_TEXT_FORMAT);
	tfw.blockProgression = "rl";
		
	tfw.flowComposer.addController(ctr);
	tfw.flowComposer.addController(ctr1);
	tfw.flowComposer.updateAllControllers();
		
	trace(ctn.width,ctn.height)
		
	//親の背景を描くが10pxのズレが生じる。
	ctn.graphics.beginFill(0x00FFFF,.5);
	ctn.graphics.drawRect(0,0,ctn.width,ctn.height);
		
	ctn.x = ctn.y = 100
		
	addEventListener(MouseEvent.ROLL_OVER,function():void{trace(ctn.width)});
	addEventListener(Event.ENTER_FRAME,function():void{trace(ctn.width)});
		



         
}   }
import flash.display.Sprite;
import flashx.textLayout.elements.TextFlow;
import flashx.textLayout.conversion.TextConverter;
import flashx.textLayout.container.ContainerController;
import flash.events.MouseEvent;
import flash.events.Event;

}