Thomas Bandt

Über mich | Kontakt | Archiv

PNG-Thumbnails mit GDI+ erstellen

So schnell kann's gehen, und ich hänge schon wieder über dem Programmierzeug :-).

Beim Erstellen von Thumbnails nach Chris' Artikel bin ich bei PNG's mit folgender Fehlermeldung gescheitert:

"A generic error occurred in GDI+."

Klingt erstmal super aufschlussreich, war dann aber doch halb so schlimm. Der Grund wird hier erklärt:

"You can''t use the Bitmap Save() method with a "non-seekable" stream. Some image formats require that the stream can seek. Instead of streaming to the Response.OutputStream Save to a memory Stream, then copy from the memory Stream to the output Stream."

Und tatsächlich:

MemoryStream ms = new MemoryStream();
image.Save(ms, format);
ms.WriteTo(context.Response.OutputStream);

an Stelle von

image.Save(context.Response.OutputStream, format);

funktioniert bestens.

Kommentare

  1. Mathias Raacke schrieb am Sonntag, 30. September 2007 03:37:00 Uhr:

    Hi Thomas,

    genau das gleiche Problem hatte ich auch gerade. Ich bin sogar auf die Lösung mit dem MemoryStream gekommen, nur wieso das funktionierte wusste ich nicht bis ich auf die Erklärung in Deinem Blog gestossen bin :)


« Zurück  |  Weiter »