Bildcodierung in Node JS
Mo 15. Apr 2019
Translated by: gpt-4o-2024-08-06
| Original version
Dieser Artikel ist in Arbeit!
Während ich an einem Nebenprojekt programmierte, musste ich mich mit Bildern in einer Node-Anwendung auseinandersetzen. Meine Anwendung verwendet Express, Amazon Rekognition sowie Pouchdb.
Ich hatte es mit verschiedenen Quellen und Zielen zu tun:
- Ein Benutzer lädt ein Bild hoch
- Ich lese ein Bild von einer Datei, sei es im JPEG- oder PNG-Format
- Ich sende ein Bild an AWS
- Ich speichere ein Bild in meiner pouchDB
Beim Durchstöbern der verschiedenen Quellen stieß ich auf verschiedene Formate, wie Bilder in Node gehandhabt werden können:
- Als Buffer, der Binärdaten enthält
- Als String, der Base64-codierte Daten enthält, beginnend mit etwas wie
data:image/jpeg;base64,(oder mitpng) - Als String, der base64-codierte Daten ohne den speziellen Anfang enthält
Dies sind die verschiedenen Operationen, die ich durchführe, und was sie als Ausgabe liefern:
- Eine Datei von der Festplatte mit fs lesen: gibt einen Buffer mit Binärdaten zurück
Dies sind die Quellen und Ziele, in/von denen Bilddaten in meinem Beispiel übertragen werden:
Lesen
Nützliche Sachen, die ich zu den Themen gefunden habe:
- Wie konvertiere ich ein Bild in eine base64-codierte Daten-URL in sails.js oder generell in serverseitigem JavaScript? StackOverflow
- NodeJS base64 Bildcodierung/Decodierung funktioniert nicht ganz, StackOverflow
- Inkjet, JPEG-Bilddecodierung, Codierung & EXIF-Lesebibliothek für Browser und node.js, Github