Phonegap - Comment générer le fichier image de chaîne base64?
Suis en train d'écrire un phonegap app pour Android et à un moment, j'ai enregistrer un fichier crypté en base64 PNG chaîne de caractères dans un fichier. Cependant, j'ai observé que la chaîne est simplement déversés dans un fichier et ne peut pas être considéré comme une image lors de l'ouverture.
J'aimerais être en mesure d'enregistrer une image générée à partir de la chaîne base64.C'est ce que j'ai:
Le Javascript (Formaté pour 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);
}
J'ai essayé de modifier le code pour enregistrer seulement les données de l'image, mais il ne fonctionne pas non plus. (Voir ci-dessous)
function gotFileWriter(writer) {
var justTheData = dataURL.replace(/^data:image\/(png|jpg);base64,/, "");//Removes everything up to ...'base64,'
writer.write(justTheData); //also does not show
}
Le code HTML qui déclenche tout:
<p onclick="window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail)">Save a Dot</p>
S'il vous plaît aider. Merci.
Ce pourrait être la réponse à cette question: stackoferflow question 11321347
OriginalL'auteur mukama | 2012-07-04
Vous devez vous connecter pour publier un commentaire.
Vous suffit de définir le src de l'image à la base de données 64 pour afficher l'image.
Vous pourriez avoir besoin d'écrire un plugin... j'ai écrit un plugin pour iOS, qui enregistre une toile de l'image de la Bibliothèque de Photos, vous devrez peut-être faire quelque chose de similaire. Peut-être commencer par avoir un coup d'oeil à la façon dont les images sont enregistrées dans le Cordova Appareil photo Android API?
Eh bien, vous a demandé "je voudrais être en mesure d'afficher une image générée à partir de la chaîne base64." c'est ce que j'ai répondu. Vous êtes l'écriture du base64 les données dans un fichier. Si vous chargez les données dans une chaîne et l'ensemble de la src comme je l'ai mentionné, il ne sera visible. Si vous voulez convertir que base64 chaîne de caractères dans un fichier binaire fichier png, vous aurez besoin d'écrire un plugin pour le faire.
Résolu. J'ai créé un plugin comme vous l'avez suggéré. Merci. Check it out
pouvez-vous fournir le plugin?
OriginalL'auteur Simon MacDonald
ici, nul besoin de remplacer la chaîne base64, il suffit de convertir la chaîne en suivant:
en javascript:
en jquery:
OriginalL'auteur kathir