Hallo zusammen....
ich glaube mein Titel sagt schon alles aus 😃
Also ich habe auf der Clientseite einen <input type="file"....> bla bla bla
Sobald der Benutzer ein Bild ausgewählt hat, wird das Bild als Binärer-String zum Server geschickt...
Wie erstelle ich jetzt aus diesen String eine Bitmap als JPG z.B....
Hallo zhonja,
pack die Bytefolge in einen MemoryStream und wende darauf Image.FromStream an.
herbivore
Hi...
wie soll ich den aus meinem Binären-String ein MemoryStream machen???
Ich habe ein String der den Inhalt einer Image beinhaltet... Ich glaube du verwächselt die Bytes mit Inhalt.... Mein Inhalt ist ein String...
Wenn du ein Image mit Editor öffnest, dann siehst du was da alles drine steht und genau die Daten habe ich als ein String also...
MemoryStream mms = new MemoryStream();
weiter???
So bekomme ich mein Image:
readAsBinaryString()
Da steht also so ein Mist drine:
ÿØÿà JFIF H H ÿáùExif MM * b j( 1 r2 ‡i ¤ Ð H H Adobe Photoshop CS Windows 2007:01:19 19:34:45 ÿÿ
&( . Ã H H ÿØÿà JFIF H H ÿí Adobe_CM ÿî Adobe d€ ÿÛ „
ÿÀ j " ÿÝ
ÿÄ?
3 !1AQa"q2‘¡±B#$RÁb34r‚ÑC%’S áñcs5¢²ƒ&D“TdE£t6ÒUâeò³„ÃÓuãóF'”¤…´•ÄÔäô¥µÅÕåõVfv†–¦¶ÆÖæö7GWgw‡—§·Ç
...und wo ist der Unterschied zwischen einem String der nur lesbare Zeichen und einem String der Binärdaten (so wie deiner) enthält?
Hi zhonja,
so wie es aussieht, handelt es sich um eine Photoshop-Datei. Solche Formate werden vom Framework nicht unterstützt. Ansonsten gibt es genügend Beispiele in der Doku, wie man Bytefolgen in Streams bzw. Image-Objekte umwandeln kann. Deshalb möchte ich dich bitten, in Zukunft bitte [Hinweis] Wie poste ich richtig? (Punkt 1) zu beachten!
Christian
Weeks of programming can save you hours of planning
Es ist wohl schon eine JPEG-Datei (zu erkennen am JFIF), aber richtig ist, dass das Umwandeln unter Punkt 1 fällt. Vermutlich wird ein Binärstring ein String sein, in dem die einzelnen Zeichen einen Code zwischen 0 und 255 entsprechend des zugehörigen Byte-Werts haben. Es sollte also reichen, (in einer Schleife) jedes Zeichen in ein byte zu casten. Möglicherweise tut es auch Encoding.Unicode.GetBytes.