現在のキャンバスのバイナリ スナップショットを他のリスナーに転送する単純な WebSocket アプリケーションを構築しています。
現在のキャンバス スナップショットは、WebSocket を使用して次のように送信されます。
var image = context.getImageData(0, 0, canvas.width, canvas.height);
var buffer = new ArrayBuffer(image.data.length);
var bytes = new Uint8Array(buffer);
for (var i=0; i<bytes.length; i++) {
bytes[i] = image.data[i];
}
websocket.send(buffer);
受信側でデータを次のようにレンダリングしようとしています:
var bytes = new Uint8Array(blob.size);
var image = context.createImageData(canvas.width, canvas.height);
for (var i=0; i<image.length; i++) {
image[i] = bytes[i];
}
context.drawImage(image, 0, 0);
ブロブは正しく受信されますが、画像はまだレンダリングされていません。
何か案が ?