2013-10-12 129 views
0

问题2:我正在玩相机。如何将2项目保存为相机胶卷中的1张图像?

var bitmapData:BitmapData = new BitmapData(); 
bitmapData.draw(firstitem); 

if (CameraRoll.supportsAddBitmapData) 
{ 
    var cameraroll:CameraRoll = new CameraRoll(); 
    cameraroll.addBitmapData(bitmapData); 
} 


<s:Image id="firstitem"/> 

想象我有另一个

<s:Image id="seconditem"/> 

如何一起存储2为1倍的图像?

我试图

的BitmapData.draw(与firstItem,seconditem)

的BitmapData.draw(与firstItem),(seconditem);

但出现错误。

回答

0

什么,你可以尝试做的是, 创建将包含2幅图像的位图数据,

var bitmapData:BitmapData = new BitmapData(); 

然后用copypixel,

bitmapData.copyPixels(bmd1, rect, new Point(0, 0)); 
bitmapData.copyPixels(bmd2, rect, new Point(bmd1.width, 0)); 

当然,函数的参数是:

  • bmd:BitmapData复制一个
  • RECT:矩形的矩形从BMD采取(应该是(X,Y,宽度,高度)的原图像的)
  • (X,Y):点:这是对位图数据
目标点

干杯!


你的例子

  • 图像1:500×500
  • 图像2:250×

    image_1.copyPixels(IMAGE_2,新的Rectangle(0,0,250,250),新的点(125125) );

,这意味着我们将要复制IMAGE_2内部IMAGE_1,(0,0,250,250)指从与所述宽度和高度250250,和(125,125)当前位置IMAGE_2(0,0)是位置在哪里添加里面IMAGE_1 IMAGE_2

+0

哈利勒嗨, 感谢您的回复, 我还是不太明白如何运用copyPixels 例如我与firstItem是图像大小500×500,seconditem是在第一项的中间另一个图像尺寸250×, 我试图在这里实现的是存储这两个东西作为1图像 – LydiaPiglet

+0

@LydiaPiglet你的意思是,你想添加第二项内第一时间,sry,但没有得到你问这里的问题 –

+0

嗨哈利勒,再次感谢您的回复。是的,我的意思,例如像我有一个小广场和1个大广场,停在某个位置的小广场大广场之内,我问的是如何使用的位图数据都为1图像存储在相机胶卷 。绘制,如何绘制2个项目,然后从那里拍摄 。addBitmapData(位图数据); --------- 对于您给出的示例, image_1.copyPixels(image_2,(0,0,250,250),(125,125)); 之后,我如何与bitmapData关联,并从那里我可以使用cameraroll.addBitmapData(bitmapData);? 再次感谢你这么多 – LydiaPiglet

相关问题