所以,我正在Windows Forms中创建一个项目,我必须在其中更改图像格式。我发现了不同的解决方案,例如:
convert tiff to jpg format
c# convert image formats to jpg。
这些解决方案正在发挥作用,但它们都有一个相似之处:
image.Save(path,ImageFormat.Jpeg)
在此代码中,我将图像保存在一个目录中。我想要做的是用Savefiledialog
保存这个格式化的图像。但在这种情况下,当我打电话给Savefiledialog
时,我需要写'"图像"名称和格式。如果我不写这种格式,它会创建一个没有扩展名的简单文件。我想以指定的格式自动保存文件。那怎么办?
答案 0 :(得分:0)
我会写一些简单的东西:
// might make sense to make this a property under the relevant class
Dictionary<string, ImageFormat> mapOfExtensions =
new Dictionary<string, ImageFormat>
{
{".jpg", ImageFormat.Jpeg},
{".jpeg", ImageFormat.Jpeg},
{".png", ImageFormat.Png}
};
var ext = Path.GetExtension(path);
// safety check - make sure the file extension is what we expect...
if (!mapOfExtensions.Contains(ext))
{
// probably would make sense to throw an error, log a message, etc.
return;
}
image.Save(path,mapOfExtensions[ext]);