我要检查选定输入图像文件的当前质量(分辨率/ DPI / PPI)。
我的控制是图片上传的jQuery插件。
我怎样才能得到所选文件的质量?
(我需要选择的图像文件的分辨率不是屏幕分辨率)
我要检查选定输入图像文件的当前质量(分辨率/ DPI / PPI)。
我的控制是图片上传的jQuery插件。
我怎样才能得到所选文件的质量?
(我需要选择的图像文件的分辨率不是屏幕分辨率)
答案是在C#中不使用Javascript,也没有办法在JS做到这一点,这是不是在原来的问题的要求。
这是你认为什么是“高品质”图像(不错阅读BTW)一个很大的依赖性。 但无论如何,质量因素并不是直接存储为JPEG文件,所以你不能直接从文件中读取。
这些因素大部分涉及复杂的成像算法。 不过不要失望,你可以阅读使用的一些属性PropertyItems
对Image类财产,并提出一些计算得到基于大小和DPI或PPI图像质量的一个想法。 这是一个简单的例子:
Bitmap bmp = new Bitmap("winter.jpg");
Console.WriteLine("Image resolution: " + bmp.HorizontalResolution + " DPI");
Console.WriteLine("Image resolution: " + bmp.VerticalResolution + " DPI");
Console.WriteLine("Image Width: " + bmp.Width);
Console.WriteLine("Image Height: " + bmp.Height);
这将有助于太: 我怎样才能得到一个图像的分辨率? (JPEG,GIF,PNG,JPG)
“但我想在上传前检查所选文件的图像质量”
如果您想检查上传之前的图像质量(如你在评论中说的),这是一个很大的加的问题。 唯一的内置方法来获取你是通过创建一个新的实例(和解码整个图像)之后的数字 - 这将是非常低效的。 可是......哎! 这里是一个起点: 我如何可靠地获得在.NET中的图像尺寸,而不加载图像?