您可能会尝试做的一件事是创建一个简单的“图像服务”,它可以从嵌入的资源中以适当的格式提供图像。
您不必自己创建 Web 服务,只需创建一个 aspx 页面并在后面的代码中将 Response.ContentType 更改为“image/png”或您喜欢的任何格式。这也需要页面本身的 URL 中的 get 参数,但可以轻松过滤。因此,图像服务的 Page_Load 方法可能如下所示:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim FinalBitmap As Bitmap
Dim strRenderSource As String
Dim msStream As New MemoryStream()
strRenderSource = Request.Params("ImageName").ToString()
' Write your code here that gets the image from the app resources.
FinalBitmap = New Bitmap(Me.Resources(strRenderSource))
FinalBitmap.Save(msStream, ImageFormat.Png)
Response.Clear()
Response.ContentType = "image/png"
msStream.WriteTo(Response.OutputStream)
If Not IsNothing(FinalBitmap) Then FinalBitmap.Dispose()
End Sub
然后回到你的 ASPX 页面,你有......
<asp:Image ImageUrl="http://localhost/GetImage.aspx?ImageName=Image1" />
哦,别忘了在页面中导入 System.Drawing 和 System.Drawing.Imaging。