如何将图像添加到电灯开关银色 PDF 文档?

How do I add an image to a lightswitch silverPDF Document?

在我的 Lightswitch 桌面应用程序(Silverlight 客户端)中,我使用 silverPDF 创建发票。一切正常,直到我尝试添加图像(公司徽标)。

我的图像是通过lightswitch图像屏幕控件以图像类型(字节数组)保存到数据库中的图像。据我所知,我需要将字节数组加载到内存流中,然后加载到 silverPDF 的 XImage 中。代码片段如下:

                Dim memStream As New MemoryStream(100)
                memStream.Write(CompDetProp.CompanyLogo, 0, CompDetProp.CompanyLogo.Length)
                Dim myimage As XImage = XImage.FromStream(memStream)
                Dim x As Double = (250 - myimage.PixelWidth * 72 / myimage.HorizontalResolution) / 2
                gfx.DrawImage(myimage, x, 10)

这可以编译,但是当 运行 "The byte array is not a recognized imageformat."

时出现异常

我也试过以下方法:

                Dim memStream As MemoryStream = New MemoryStream(CompDetProp.CompanyLogo, 0, CompDetProp.CompanyLogo.Length)
                Dim myimage As XImage = XImage.FromStream(memStream)
                Dim x As Double = (250 - myimage.PixelWidth * 72 / myimage.HorizontalResolution) / 2
                gfx.DrawImage(myimage, x, 10)

据我所知,第二个代码块在使用前关闭了内存流。

如何将图像以正确的格式放入 silverPDF XImage 关闭前读取的流中?

PDFsharp Expert 的评论后,我发现我使用的图像是一个 .png 文件。我将图像重新保存为 .jpg 并且代码有效。我现在在我的发票上有一张图片(尽管需要考虑尺寸限制以确保正确合身)。谢谢 PDFsharp 专家。