在createJS中使用sourceRect裁剪位图并不起作用

时间:2015-08-28 16:05:32

标签: easeljs createjs

所以我想裁剪一个图像,尺寸为400px,它位于flash专业的库中,名称为img1。

puzzlePieceBmp = new createjs.Bitmap(new lib.img1())
puzzlePieceBmp.sourceRect = new createjs.Rectangle( 0, 0, 100, 100 );
stage.addChild(puzzlePieceBmp.image)

无论我为sourceRect选择什么,图像总是整体显示。难道我做错了什么?当我在控制台中查找时,sourceRect具有我定义的尺寸。我确认舞台已更新。

1 个答案:

答案 0 :(得分:1)

除非您更改了设置,否则导出的" lib"对象都是显示对象符号。图像可以通过" img"对象

所以,你的代码正在做的是创建一个新的" img1"位图实例,试图使其成为第二个Bitmap实例的源图像,向第二个Bitmap添加一个源rect,然后添加原始" img1"位图(没有sourceRect)到舞台上(通过访问bmp.image)。

要解决此问题,只需删除第二个Bitmap: puzzlePieceBmp = new lib.img1(); // this creates a Bitmap, not an Image puzzlePieceBmp.sourceRect = new createjs.Rectangle( 0, 0, 100, 100 ); stage.addChild(puzzlePieceBmp);