Я разрабатываю расширение для Chrome.
Я открываю файл изображения на холсте, применяю к нему некоторые изменения, затем пытаюсь сохранить его в API файловой системы HTML5.
Сначала я получаю dataURL с холста:
var dataURL = canvas.toDataURL('image/png;base64');
Затем только данные:
var image64 = dataURL.replace(/data:image\/png;base64,/, '');
Затем я создаю BLOB-объект.
var bb = new BlobBuilder();
bb.append(image64);
var blob = bb.getBlob('image/png');
Затем я запрашиваю файловую систему с помощью следующей функции onInitFs ();
function onInitFs(fs) {
fs.root.getFile('image.png', {create: true}, function(fileEntry) {
// Create a FileWriter object for our FileEntry (log.txt).
fileEntry.createWriter(function(fileWriter) {
//WRITING THE BLOB TO FILE
fileWriter.write(blob);
}, errorHandler);
}, errorHandler);
}
window.requestFileSystem(window.PERSISTENT, 51024, onInitFs, errorHandler);
Это приводит к записи поврежденного файла в файловую систему.
Я не знаючто еще я могу сделать, чтобы сделать эту работу.
Может ли кто-нибудь, пожалуйста, направить меня в правильном направлении.
Ниже приведены некоторые источники функций, которые я использую для выполнения этой задачи.
*1024*
http://dev.w3.org/html5/canvas-api/canvas-2d-api.html#todataurl-method http://www.html5rocks.com/en/tutorials/file/filesystem/#toc-file-creatingempty
Спасибо!