gpt4 book ai didi

c# - 从 ImageFormat.MemoryBMP 确定文件类型

转载 作者:太空狗 更新时间:2023-10-29 23:02:19 24 4
gpt4 key购买 nike

调整图像大小后,我的调整大小函数返回新绘制的图像。我遇到了一个问题,我需要确定返回的 Image 的文件扩展名应该是什么。我之前使用的是 Image.RawFormat 属性,但每次从此函数返回图像时,它都有 ImageFormat.MemoryBMP,而不是 ImageFormat.JpegImageFormat.Gif 例如。

所以基本上我的问题是,如何确定新调整大小的 Image 应该是什么文件类型?

public static Image ResizeImage(Image imageToResize, int width, int height)
{
// Create a new empty image
Image resizedImage = new Bitmap(width, height);

// Create a new graphic from image
Graphics graphic = Graphics.FromImage(resizedImage);

// Set graphics modes
graphic.SmoothingMode = SmoothingMode.HighQuality;
graphic.InterpolationMode = InterpolationMode.HighQualityBicubic;
graphic.PixelOffsetMode = PixelOffsetMode.HighQuality;

// Copy each property from old iamge to new image
foreach (var prop in imageToResize.PropertyItems)
{
resizedImage.SetPropertyItem(prop);
}

// Draw the new Image at the resized size
graphic.DrawImage(imageToResize, new Rectangle(0, 0, width, height));

// Return the new image
return resizedImage;
}

最佳答案

调整后的图像不是任何基于文件的格式,它是图像中像素的未压缩内存表示。

要将此图像保存回磁盘,需要以您必须指定的选定格式对数据进行编码。查看 Save 方法,它采用 ImageFormat 作为第二个参数,将 Jpeg 或最适合您的应用程序的任何格式。

关于c# - 从 ImageFormat.MemoryBMP 确定文件类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7549616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com