将调整大小的图像显示为 return 值而不是页面内容
Display resized image as a return value and not as page content
在 Page_Load
上,我希望页面显示图像的方式与您 "Open image in a new tab" 时的显示方式相同。换句话说,我希望页面显示为内容类型 Image/jpeg
而不是在 img
HTML 标记中呈现图像。
我在 Page_Load
:
上使用以下代码成功地以这种方式显示了图像
Page.Response.ContentType="image/jpeg"
Page.Response.WriteFile("Path_to_the_Image")
但是,我的案例需要在调整大小后显示图像。我创建了一个调整图像大小的函数,returns 调整后的图像为 Drawing.Bitmap
ResizeImage(bmSource As Drawing.Bitmap, TargetWidth As Int32, TargetHeight As Int32)
如何使用该函数的返回值并以显示第一张图片的方式显示它?
Page.Response.WriteFile()
需要 String
作为输入。有没有一种方法可以直接在页面中显示 Image
或 System.Bitmap
类型的图像,而不必将其保存在临时文件夹中,然后使用其路径(作为 String
)并将其传递给 Page.Response.WriteFile
?
Page.Response.ContentType="image/jpeg"
Using resizedImage As Bitmap = ResizeImage(source, 100, 100)
source.Dispose()
resizedImage.Save(Page.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg)
End Using
Page.Response.Flush()
应该可以,也许我的语法有问题。我不经常在 vb.net 中编码所以。
编辑 代码因为@Joel Coehoorn 注释
在 Page_Load
上,我希望页面显示图像的方式与您 "Open image in a new tab" 时的显示方式相同。换句话说,我希望页面显示为内容类型 Image/jpeg
而不是在 img
HTML 标记中呈现图像。
我在 Page_Load
:
Page.Response.ContentType="image/jpeg"
Page.Response.WriteFile("Path_to_the_Image")
但是,我的案例需要在调整大小后显示图像。我创建了一个调整图像大小的函数,returns 调整后的图像为 Drawing.Bitmap
ResizeImage(bmSource As Drawing.Bitmap, TargetWidth As Int32, TargetHeight As Int32)
如何使用该函数的返回值并以显示第一张图片的方式显示它?
Page.Response.WriteFile()
需要 String
作为输入。有没有一种方法可以直接在页面中显示 Image
或 System.Bitmap
类型的图像,而不必将其保存在临时文件夹中,然后使用其路径(作为 String
)并将其传递给 Page.Response.WriteFile
?
Page.Response.ContentType="image/jpeg"
Using resizedImage As Bitmap = ResizeImage(source, 100, 100)
source.Dispose()
resizedImage.Save(Page.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg)
End Using
Page.Response.Flush()
应该可以,也许我的语法有问题。我不经常在 vb.net 中编码所以。
编辑 代码因为@Joel Coehoorn 注释