Encodage d'image dans Node JS

Translated by: gpt-4o-2024-08-06 | Original version

Cet article est en cours de rédaction !

En programmant un projet annexe, j'ai dû gérer des images dans une application node. Mon application utilise Express, Amazon Rekognition ainsi que Pouchdb.

Je gérais différentes sources et cibles :

  • Un utilisateur télécharge une image
  • Je lis une image à partir d'un fichier, qu'il soit au format JPEG ou PNG
  • J'envoie une image à AWS
  • Je stocke une image dans mon pouchDB

En parcourant les différentes sources, j'ai rencontré divers formats sur la manière dont les images peuvent être traitées dans node :

  • Comme un buffer contenant des données binaires
  • Comme une chaîne contenant des données encodées en Base64, commençant par quelque chose comme data:image/jpeg;base64, (ou avec png)
  • Comme une chaîne contenant des données encodées en base64 sans le début spécial

Voici les différentes opérations que je fais et ce qu'elles fournissent en sortie :

- Lecture d'un fichier depuis le disque avec fs : retourne un Buffer avec des données binaires

Voici les sources et cibles à partir desquelles et vers lesquelles les données d'image sont transférées dans mon exemple : Sources et cibles d'image

Lecture

Informations utiles que j'ai trouvées sur les sujets :