Escribo una aplicación de phonegap para Android y en un momento, guardo una cadena PNG base64 como un archivo. Sin embargo, he observado que la cadena simplemente se vierte en un archivo y no se puede ver como una imagen cuando se abre.Phonegap - ¿Cómo generar un archivo de imagen desde la cadena base64?
Me gustaría ser capaz de guardar una imagen generada a partir de los string.This base64 es lo que tengo:
El Javascript (Formateada para Phonegap):
/*** Saving The Pic ***/
var dataURL = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="; //A simple red dot
function gotFS(fileSystem) {
fileSystem.root.getFile("dot.png", {create: true, exclusive: false}, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileEntry.createWriter(gotFileWriter, fail);
}
function gotFileWriter(writer) {
writer.write(dataURL); //does not open as image
}
function fail(error) {
console.log(error.code);
}
Probé editar el código para guardar solo los datos de la imagen, pero tampoco funcionó. (Ver más abajo)
function gotFileWriter(writer) {
var justTheData = dataURL.replace(/^data:image\/(png|jpg);base64,/, "");//Removes everything up to ...'base64,'
writer.write(justTheData); //also does not show
}
El HTML que desencadena Everthing:
<p onclick="window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail)">Save a Dot</p>
favor, ayuda. Gracias.
Este podría ser la respuesta para esta questio n: [pregunta 11321347 de stackoferflow] (http://stackoverflow.com/questions/8110294/nodejs-base64-image-encoding-decoding-not-quite-working) – fider