【问题标题】:How to bring "System.Drawing.Image" to DIB如何将“System.Drawing.Image”带到 DIB
【发布时间】:2020-08-05 18:49:47
【问题描述】:

我创建了一个可使用的 COM 类库。

类库获取相机的图像。它是图像/位图类型。

我在VB6中使用类库,我需要在VB6中显示这个图像。

如何将此 System.Drawing.Image 转换为 VB6 可以显示的内容?

我可以使用 DIB(使用 CreateDIBSection 等)吗?

如果是,如何将 System.Drawing.Image 转换为 DIB?

谢谢!

【问题讨论】:

    标签: vb.net vb6 dib


    【解决方案1】:

    这是我过去所做的。首先,有几个先决条件:

    • 您从 COM 类库中获得一个 Byte()
    • 您设置了对 Microsoft Windows 图像采集库的引用

    有了这些,代码就很简单了。 Camera 是一个 COM 类库,其中 Retrieve 方法返回一个加载到 Image 控件中的 Byte():

    Option Explicit
    
    Private Sub cmdLoad_Click()
       Dim cam As Camera.Image
       Set cam = New Camera.Image
       Image1.Picture = LoadPictureFromByteArray(cam.Retrieve())
    End Sub
    
    Private Function LoadPictureFromByteArray(Image() As Byte) As StdPicture
       Dim vec As WIA.Vector
       Set vec = New WIA.Vector
       vec.BinaryData = Image
       Set LoadPictureFromByteArray = vec.ImageFile.FileData.Picture
    End Function
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-14
      • 1970-01-01
      • 2023-04-02
      • 2022-11-18
      • 2022-01-24
      • 2012-08-23
      相关资源
      最近更新 更多