Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Rufen Sie das Bild in der MySQL-Datenbank mit vb ab

Der Fehler liegt beim Abrufen Ihres Bildes. Sie müssen das Bild zuerst in ein Byte-Array konvertieren, bevor Sie es im Bildfeld anzeigen..

 Public Function ResizeImageWithAspect(ByVal picImage As Image, ByVal newWidth As Integer) As Bitmap
    Dim original As Image = picImage
    If Not original Is Nothing Then
        //Find the aspect ratio between the height and width.
        Dim aspect As Single = CSng(original.Height) / CSng(original.Width)

        //Calculate the new height using the aspect ratio
        // and the desired new width.
        Dim newHeight As Integer = CInt((newWidth * aspect))

        //Create a bitmap of the correct size.
        Dim temp As New Bitmap(newWidth, newHeight, original.PixelFormat)

        //Get a Graphics object from the bitmap.
        Dim newImage As Graphics = Graphics.FromImage(temp)

        //Draw the image with the new width/height
        newImage.DrawImage(original, 0, 0, newWidth, newHeight)

        //Dispose of our objects.
        Return temp
        original.Dispose()
        temp.Dispose()
        newImage.Dispose()
    Else
        Return Nothing
    End If

End Function

Public Function ByteToImage(ByVal blob() As Byte) As Bitmap
    Dim mStream As New System.IO.MemoryStream
    Dim pData() As Byte = DirectCast(blob, Byte())
    mStream.Write(pData, 0, Convert.ToInt32(pData.Length))
    Dim bm As Bitmap = New Bitmap(mStream, False)
    mStream.Dispose()
    Return bm
End Function

Public Function FileImageToByte(ByVal filePath As String) As Byte()
    Dim fs As FileStream = New FileStream(filePath, FileMode.Open, FileAccess.Read)
    Dim br As BinaryReader = New BinaryReader(fs)
    Dim bm() As Byte = br.ReadBytes(fs.Length)
    br.Close()
    fs.Close()
    Dim photo() As Byte = bm
    Return photo
End Function

For Weitere Informationen finden Sie unter diesem Link