如何将System.Drawing.Bitmap
图像转换为其他类型的图像?我尝试了失败的CType,因为我不知道.png或.jpg的类型。我无法在谷歌的任何地方找到它。
在保持图像质量尽可能高的同时,最有效的方法是什么?
答案 0 :(得分:8)
system.Drawing.Bitmap类可以处理打开和保存任何类型的bitmap图像,包括JPG,PNG,GIF,BMP等。
要将已打开的文件另存为其他格式,可以使用save方法
MyImage.Save("ImageName.jpg",System.Drawing.Imaging.ImageFormat.Jpeg)
Bitmp的类名更具体地指的是将图片存储为一系列彩色像素而不是BMP的实际格式的一般概念,这是存储构成图像的像素的表示的一种可能方式
答案 1 :(得分:2)
查看Drawing.Bitmap.Save()方法。我建议保存为PNG - 它是无损的并且实现了合理的压缩。请参阅Imaging.ImageFormat枚举 - 这是您指定所需图像类型的方式。
答案 2 :(得分:0)
这是如何在不保存到VB.NET中的文件的情况下转换图像类型的方法 您也许也可以将其移植到C#中,但我尚未对其进行测试。
Public Function ConvertImageType(Image As Bitmap, Format As
Drawing.Imaging.ImageFormat) As Byte()
'Declare a new memory stream to write to
Dim SaveStream As New IO.MemoryStream
'Save the bitmap/image to the memory stream in the desired format
Image.Save(SaveStream, Format)
'Extract the file bytes from the memory stream
Dim ConvertedImageBytes() As Byte = SaveStream.ToArray
'Return bytes to caller
Return ConvertedImageBytes
End Function
此方法可以将位图/图像类型转换为以下格式:Jpeg,Png,Bmp,Ico,Gif,Emf,Exif,Tiff和Wmf。