2013-10-12 2 views
0

Qs 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: BitmapДатальная копия
  • прямоугольник: Прямоугольник прямоугольник взять из БМД (должно быть (х, у, ширина, высота) исходных изображений)
  • (х, у): Точка: который является пунктом назначения на BitmapData

Приветствия!


ваш пример

  • изображение 1: 500x500
  • изображение 2: 250x250

    image_1.copyPixels (IMAGE_2, новый прямоугольник (0,0,250,250), новая точка (125125));

, и это означает, что мы будем копировать IMAGE_2 внутри IMAGE_1 (0,0,250,250) означает positon (0,0) от IMAGE_2 с шириной и высотой 250,250 и 125,125() является положение, в котором добавить IMAGE_2 внутри iMAGE_1

+0

Привет Khalil, Спасибо за ваш ответ, я до сих пор не совсем понимаю, как применять copyPixels Например мой firstitem является размером 500x500 изображений, seconditem еще один размер 250x250 в середине первого пункта, то, что я пытаюсь достичь здесь, - это хранить как вещь, так и 1 изображение. – LydiaPiglet

+0

@ LydiaPiglet, то есть вы хотите добавить второе место внутри сначала em, sry но не получил то, что вы здесь задали –

+0

привет hhalil, спасибо за ваш ответ снова. да, это то, что я имел в виду, например, я получил небольшую площадь и 1 большой квадрат, расположил маленький квадрат где-то на большом квадрате, и я спросил, как хранить как 1 изображение в кадре камеры с использованием bitmapData. ничья, как нарисовать 2 пункта и оттуда cameraroll.addBitmapData (BitmapData); --------- Для примера, который вы указали, image_1.copyPixels (image_2, (0,0,250,250), (125,125)); , после чего как я отношусь к bitmapData, и оттуда я могу использовать cameraroll.addBitmapData (bitmapData) ;? еще раз спасибо большое – LydiaPiglet

Смежные вопросы