目前我有这个:
printscreen.Save(myOutputLocation + myImageName + myImageExtension, ImageFormat.Png);
但是,我想用一个字符串指定ImageFormat类属性,但无法使其工作:
string myString = textBox1.Text;
printscreen.Save(myOutputLocation + myImageName + myImageExtension, ImageFormat.myString);
最佳答案
我将使用反射编写一个方法ParseImageFormat,并将其用作
printscreen.Save(myOutputLocation + myImageName + myImageExtension,
ParseImageFormat(myString));
其中myString应该是MemoryBmp,Bmp,Emf,Wmf,Gif,Jpeg,Png,Tiff,Exif,Icon之一
public static ImageFormat ParseImageFormat(string str)
{
return (ImageFormat)typeof(ImageFormat)
.GetProperty(str, BindingFlags.Public | BindingFlags.Static | BindingFlags.IgnoreCase)
.GetValue(null);
}