IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Download Image en Base64: comment forcer le nom du fichier?


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par défaut Download Image en Base64: comment forcer le nom du fichier?
    Bonjour à tous.
    Je cherche à downloader une image affichée sur ma page. Cette image est au format base64.
    Je parviens à le faire via la commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    window.location.href = 'data:application/octet-stream;base64,' + $Picture;
    $Picture = le code base64 de l'image

    par contre j'aimerais modifier le nom du fichier, qui dans l'état actuel est inébranlablement "Unknown.jpg"
    en le remplaçant par le contenu d'une variable $NomFich.

    Quelqu'un aurait-il amabilité de me mettre sur la voie?
    D'avance merci

  2. #2
    Membre chevronné
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Bonsoir,

    window.open() crée une nouvelle fenêtre secondaire de navigation, dans laquelle on peut écrire ce qu'on veut. C'est peut-être une solution?

    Sinon, le PHP permet de modifier un fichier en y plaçant le contenu de son choix. Il faut commencer par créer ce fichier avant d'utiliser l'instruction window.location.href=...

  3. #3
    Membre éclairé Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par défaut
    en me basant sur le post : https://gist.github.com/madhums/e749dca107e26d72b64d
    après installation du fs.js trouvé: https://gist.github.com/nasser/5a430...bf03fbf054263a
    j'essaie d'adapter le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var $Photo = "data:image/jpg;base64, " + $Picture;
    var fs = require('fs');
    var img = $Photo;
    // strip off the data: url prefix to get just the base64-encoded bytes
    var data = img.replace(/^data:image\/\w+;base64,/, "");
    var buf = new Buffer(data, 'base64');
    fs.writeFile($NomFich, buf);
    J'obtient l'erreur: Can't find variable: Buffer
    Il semblerait que Buffer() soit déprécié et remplacé par Buffer.from(), mais dans les deux cas cela ne fonctionne pas.
    Une idée?
    D'avance merci

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    Salut,

    Tu utilises Node.js ?

  5. #5
    Membre éclairé Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par défaut
    Salut,
    Non, je devrais?

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    Ben le code que tu as posté utilises Node.js...

    Citation Envoyé par Goltar Voir le message
    J'obtient l'erreur: Can't find variable: Buffer
    Tu n'as que cette erreur ? Tu n'as pas eu d’erreur concernant la fonction require() par exemple ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment associer un nom de fichier à un objet Image ?
    Par andrianiaina dans le forum Développement Mobile en Java
    Réponses: 0
    Dernier message: 16/06/2011, 15h25
  2. Comment récupérer le nom du fichier sans l'extension ?
    Par altahir007 dans le forum Langage
    Réponses: 16
    Dernier message: 13/11/2009, 13h20
  3. Comment forcer le nom de l'identifiant d'un controle?
    Par Immobilis dans le forum ASP.NET
    Réponses: 3
    Dernier message: 02/10/2009, 11h42
  4. ShellListView : comment récupérer les noms des fichiers?
    Par Lolo1988 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 11/12/2005, 23h19
  5. Comment récupérer le nom du fichier sans le chemin ?
    Par st0nky dans le forum Débuter
    Réponses: 3
    Dernier message: 08/12/2005, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo