Как передать массив пикселей Canvas в код C ++ и сохранить его в формате JPEG? - PullRequest
2 голосов
/ 17 мая 2011

У меня есть мой массив пикселей объекта массива пикселей html5. Я хочу преобразовать его в целочисленный массив и передать его методу C или C ++, чтобы преобразовать этот массив в биты и сохранить его как изображение JPEG

var intPixArray = new Array(canavsPixelArray.length);
var k = 0;
for(var i = 0; i <img.height; i++){

    for(var j = 0; j <img.width; j++){

       intPixArray[k] = canvaspixel[k];
       intPixArray[k+1] = canvaspixel[k+1];
       intPixArray[k+2] = canvaspixel[k+2];
       intPixArray[k+3] = canvaspixel[k+3];
       k+=4;
    }
}

Этот массив пикселей int я хочу преобразовать в биты в javascript или на стороне C / C ++, чтобы записать его в файл.

Как это возможно?

Я работаю над гибридным приложением webOS.

1 Ответ

0 голосов
/ 09 июня 2011

Адриан прав, вы можете просто использовать javascript, чтобы превратить его в jpeg:

Захватывать HTML-холст как gif / jpg / png / pdf?

var canvas = document.getElementById("mycanvas");
var context = canvas.getContext("2d");
var img     = canvas.toDataURL("image/jpeg");

Затем вы можете записать его в DOM

document.write('<img src="'+img+'"/>');

Или Base64 кодировать его и передать его на C ++, если вы действительно хотите.

...