Wie kann eine WriteableBitmap von Silverlight auf das Dateisystem gespeichert werden, ich bin unsicher, was mit dem FileStream zu tun, um diese Arbeit zu machen, kann es in Bitmap, PNG, Jpeg-Format usw. sein, solange eine kommerzielle Bibliothek nicht erforderlich ist.
Ist es möglich, dies zu tun?
Hier ist mein Aufruf von SaveDialog, unten:
Dim SaveDialog As New SaveFileDialog
If SaveDialog.ShowDialog Then
Try
Using FileStream As Stream = SaveDialog.OpenFile
' Save Image File Code Here
End Using
Catch ex As Exception
End Try
End If
Modifier
Erwähnung von WritableBitmap hinzugefügt, da dies ist, was meine XAML zu schreiben, ich brauche nur Es gibt eine WriteableBitmap.Pixels-Eigenschaft, bei der es sich um ein 1-dimensionales Array von Integer-Pixeln handelt. Kann dies in einen Dateistrom übertragen werden, und wenn ja, wie?
Hier ist ein Beispielcode, der den Pixel Stream in eine Datei schreibt, obwohl dies funktioniert, werden die Daten nicht "bitmapifiziert" und die resultierende Ausgabe ist unbrauchbar, aber es schreibt meinen Bildstrom, ich muss nur Ich muss nur wissen, wie ich es so markieren kann, dass es eine Bitmap-Datei (oder etwas anderes) ist. Ich habe die JPEG- und PNG-Beispiele gefunden, aber keiner von ihnen erklärt gut, wie sie funktionieren, muss ich vielleicht die PNGEncoding-Methode verwenden, da dies die einzige ist, die in meine Codebasis integriert wird. Aber gibt es eine einfache BMP-Dateiversion da draußen?
Dim Image As Imaging.WriteableBitmap = _Style.Image
Dim Area As Integer = Image.PixelWidth * Image.PixelHeight
For Raster As Integer = 0 To Area - 1
Dim Pixel As Integer = Image.Pixels(Raster)
Dim Bytes() = BitConverter.GetBytes(Pixel And &HFF)
FileStream.Write(Bytes, 0, 4)
Next