Bild übertragen



  • Hallo,
    ich habe in meinem ASP.NET Programm ein png erstellt, dass ich in einem byte-Array habe.
    Normalerweise habe ich es per Stream anschließend in ein Bitmap gespeichert und per save abgespeichert.

    Da es nun Probleme mit den Rechten gibt soll das Programm das Bild an die anfragende Seite einfach zurück geben und diese übernimmt dann das speichern.

    Da keine Antwort von der ASP.NET-Seite erwartet wird und nichts gerendert wird dachte ich mir, ich schreibe es einfach in den Response rein

    (die .aspx-Seite besteht also nur aus

    <%@ Page Language="C#" CodeBehind... %>
    <% = eineVariable %>
    

    )

    Ist nicht schön aber es geht hier nur darum, dass es schnell zum Laufen kommt. Das Programm wird bald eh ersetzt.

    Aber nun habe ich paar Probleme.
    Wenn ich auf der Seite der Bildgenerierung
    System.Text.Encoding.UTF.GetString(dasByteArrayDesBildes);
    mache und auf der Seite, die das Bild anfordert ein
    System.Text.Encoding.UTF8.GetBytes(inhaltDerZurueckgegebenenSeite);
    auf den Inhalt der Seite, bekomme ich ein anderes Byte Array wie das, was ich am Anfang hatte (selbst wenn GetString GetByte in einem Programm direkt hinereinander kommen, verfälscht es das Array).

    Wie kann ich am umständlichsten, ohne viel zu ändern, das Byte-Array aus der serverseitigen ASP.NET Seite, welches das Bild erstellt, zur anfragenden ASP.NET-Seite schicken, damit dieser daraus das Bild abspeichern kann?

    Danke für eure Hilfe.


  • Administrator

    Wieso schickst du das PNG nicht als PNG zurück? Ich habe keine Ahnung von ASP.Net, aber irgendwo wirst du wohl die Antwort im Code erstellen können. Dort setzt du den Content-Type der Antwort auf image/png und als Inhalt setzt du das Bytearray.

    Grüssli



  • danke für den Tipp.
    Unter folgender URL habe ich sowas gefunden:
    http://www.west-wind.com/weblog/posts/2006/Oct/19/Common-Problems-with-rendering-Bitmaps-into-ASPNET-OutputStream

    Lese es dann ganz normal als Stream aus und speicher dies als Bild weg.


Anmelden zum Antworten