Сохраните изображение в локальную папку с помощью Smart Mobile Studio
Я пытаюсь выяснить, как сохранить изображение / холст в локальную папку в Smart Mobile Studio. Это должен быть способ для создания события сохранения в папку правой кнопкой мыши:
var canvas = document.getElementById('myCanvas');
var context = canvas.getContext('2d');
// draw .................
// save canvas image as data url (png format by default)
var dataURL = canvas.toDataURL();
// set canvasImg image src to dataURL so it can be saved as an image
document.getElementById('canvasImg').src = dataURL;
Я ожидаю, что sms-способ будет примерно таким:
W3Cont:=TW3GraphicContext.Create(Null);
W3Cont.Allocate(300,300);
W3Canv:=TW3Canvas.Create(W3Cont);
asm
var dataURL = @W3Canv.toDataURL();
document.getElementById('canvasImg').src = dataURL;
end;
Но смс toDataUrl неизвестно!? ...
1 ответ
Решение
Когда я смотрю в W3Graphics.pas, я вижу, что TCanvas имеет функцию ToDataURL. Таким образом, вы можете использовать эту функцию без раздела asm, как
var dataURL := W3Canv.ToDataURL('');
(примечание: JavaScript в разделе asm чувствителен к регистру!)
Вы также можете взглянуть на W3Image.pas и его функцию TW3Image.toDataUrl.