当前位置:  开发笔记 > 编程语言 > 正文

如何获取"System.Drawing.Image"的文件大小

如何解决《如何获取"System.Drawing.Image"的文件大小》经验,为你挑选了1个好方法。



1> Ilya Ryzhenk..:

如果直接从文件获取图像,则可以使用以下代码以字节为单位获取原始文件的大小.

 var fileLength = new FileInfo(filePath).Length; 

如果从其他来源获取图像,例如获取一个位图并将其与其他图像合成,例如添加水印,则必须在运行时计算大小.您不能只使用原始文件大小,因为压缩可能会导致修改后输出数据的大小不同.在这种情况下,您可以使用MemoryStream将图像保存到:

long jpegByteSize;
using (var ms = new MemoryStream(estimatedLength)) // estimatedLength can be original fileLength
{
    image.Save(ms, ImageFormat.Jpeg); // save image to stream in Jpeg format
    jpegByteSize = ms.Length;
 }

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有