Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
BitmapImage到WPF中的字节[]_Wpf_Vb.net_Byte_Buffer_Bitmapimage - Fatal编程技术网

BitmapImage到WPF中的字节[]

BitmapImage到WPF中的字节[],wpf,vb.net,byte,buffer,bitmapimage,Wpf,Vb.net,Byte,Buffer,Bitmapimage,该功能需要较长的处理速度。 我想要一个更快的过程。我该怎么办 (不是WindowsPhone.Used WPF VB.net)要转换为字节[],可以使用MemoryStream: Private Function BufferFromImage(imageSource As BitmapImage) As Byte() If Not IsNothing(imageSource) Then Dim encoder As New BmpBitmapEncoder

该功能需要较长的处理速度。 我想要一个更快的过程。我该怎么办


(不是WindowsPhone.Used WPF VB.net)

要转换为字节[],可以使用MemoryStream:

Private Function BufferFromImage(imageSource As BitmapImage) As Byte()
    If Not IsNothing(imageSource) Then
        Dim encoder As New BmpBitmapEncoder
        encoder.Frames.Add(BitmapFrame.Create(imageSource))

        Using ms As New MemoryStream
            encoder.Save(ms)
            Return ms.GetBuffer
        End Using
    End If

    Return Nothing
End Function

您是想只获取原始像素数据,还是像现在这样必须是编码缓冲区?
byte[] data;
JpegBitmapEncoder encoder = new JpegBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(bitmapImage));
using(MemoryStream ms = new MemoryStream())
 {
  encoder.Save(ms);
  data = ms.ToArray();
 }