0

구글 앱 엔진 채널 api를 통해 캔버스에서 동일한 이미지를 표시 할 다른 클라이언트로 이미지를 보내려고합니다. 메시지를 받고 있지만 이미지를 표시하지 않습니다. 다른 쪽 끝에서 데이터를 렌더링이진 데이터에서 html5 캔버스로 이미지 표시

var image = context.getImageData(0, 0, imageCanvas.width, imageCanvas.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]; 
} 

sendMessage({image: buffer}); 

: 송신 측에

var bytes = new Uint8Array(buffer.size); 
var image = context.createImageData(imageCanvas.width, imageCanvas.height); 
for (var i=0; i<image.length; i++) { 
    image.data[i] = bytes[i]; 
} 
context.drawImage(image, 0, 0); 

콘솔 마지막 줄에 유형 오류가 말을 유지합니다. putImageData

createImageData를()와

답변

5

스왑의 drawImage는 imageData의 객체를 반환합니다. for (var i=0; i<image.length; i++) {
당신이 image.data.length없는 이미지 길이 당신의 응답을

+0

감사합니다 :

http://tinker.io/e3ec8

당신은 여기 실수 있습니다. 더 이상 유형 오류가 발생하지 않습니다. 그러나 여전히 이미지는 캔버스에 그려지지 않습니다. –

+0

고마워요.하지만 그곳에는 여전히 실수가있을 것입니다. –

+0

@AlecHewitt 여러분이 새로운 질문을 쓸 수 있다면 우리는 그 문제를 개별적으로 해결할 수 있습니다. (힌트 : 아무것도 없습니다. 여기에있는 코드와 관련이 있습니다.) 참조 : http://tinker.io/e3ec8/1 – rlemon