我的应用程序中有Bitmap对象。为什么Save()方法将文件保存为PNG格式而不是BMP

Bitmap currentImmage;
...
currentImmage.Save("image.bmp");

最佳答案

从文档中

Save(String)


  如果图像的文件格式不存在编码器,则便携式
  使用网络图形(PNG)编码器。当您使用保存方法
  将图形图像另存为Windows图元文件格式(WMF)或增强型
  图元文件格式(EMF)文件,结果文件另存为可移植文件
  网络图形(PNG)文件。发生此现象的原因在于GDI +
  .NET Framework的组件没有可以使用的编码器
  用于将文件另存为.wmf或.emf文件。


改用

Save(String, ImageFormat)


  将该图像以指定格式保存到指定文件。


ImageFormat Class


  指定图像的文件格式。




currentImmage.Save("image.bmp",ImageFormat.Bmp);

关于c# - 为什么将位图保存为PNG,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53099512/

10-13 05:43