0
의 데이터로 보관합니다. 나는 캔버스에서 데이터를 얻을 수 및 보관에 파일을 저장 관리 할 수 있지만 파일은 솔기 이미지 파일이 아닙니다. 화상 데이터가 arrayBuffer 변환되어야 설명서에 따르면 이미지 저장은 내 보관함에 이미지 (PNG)로 캔버스에 데이터를 기록하기 위해 노력하고있어 캔버스
. 내가 Stackoverflow에서 발견 된 함수를 사용하고 있지만 뭔가 작동하지 않는 것 같습니다. 누군가 내가 뭘 잘못하고 있는지 알아?function _str2ab(str) {
var buf = new ArrayBuffer(str.length*2); // 2 bytes for each char
var bufView = new Uint16Array(buf);
for (var i=0, strLen=str.length; i<strLen; i++) {
bufView[i] = str.charCodeAt(i);
}
return buf;
}
function _savePicture() {
//Get data from canvas
var imageSringData = canvas.toDataURL('image/png');
//Convert it to an arraybuffer
var imageData = _str2ab(imageSringData);
client.writeFile('/Public/the_image.png', imageData, function(error, stat) {
if (error) {
console.log('Error: ' + error);
} else {
console.log('File written successfully!');
}
});
다음은 일부 보관 용 계정입니다.
원래 코드와이 코드 모두에서 변환 한 버전이 아닌'imageSringData'를 항상'writeFile'에 전달하는 것처럼 보입니다. 난 당신이 대신'imageData'을 통과하면 원래의 코드가 작동 할 수 있다고 생각하지만, 나는 여기에 "고정"코드 중 하나가 작동을 기대하지 않을 것이다. – smarx
네 맞아! 고마워. – arpo