问题描述
Stringfilepath=openFileDialog.FileName;BitmapImagebitmap=newBitmapImage();bitmap.BeginInit();bitmap.UriSource=newUri(filepath);bitmap.DecodePixelHeight=252;bitmap.DecodePixelWidth=204;bitmap.EndInit();Console.WriteLine("111111");PngBitmapEncoderpngE=newPngBitmapEncoder();Console.WriteLine("111111");pngE.Frames.Add(BitmapFrame.Create(bitmap));using(Streamstream=File.Create(System.Environment.CurrentDirectory+"test.png")){pngE.Save(stream);}
经过调试发现是2个输出语句之间的那条语句报的异常,本人主要是想获取对话框的图片路径,保存图片到bin目录下异常内容为:“System.NotSupportedException”类型的第一次机会异常在PresentationCore.dll中发生我的程序里有PresentationCore.dll,不是是什么原因?求解,万分感谢
解决方案
解决方案二:
PortableNetworkGraphics(PNG)formatbitmapssupportframelevelmetadata.Theydonotsupportpreview,globalthumbnails,framelevelthumbnails,globalmetadata,ormultipleframes.Encodingdoesnotworkinpartialtrust.SeeWPFPartialTrustSecurityforinformationonpartialtrust.
解决方案三:
什么意思?是png这种格式会报这种异常,那怎么改呢?改成jpg可以吗?还是不用管它这个异常?
解决方案四:
https://msdn.microsoft.com/en-us/library/aa970910.aspx你看看这个,用jpg应该还会有问题
解决方案五:
如果只是文件复制可以用下面方法File.Copy(openFileDialog.FileName,System.Environment.CurrentDirectory+"test.png");