通过文件大小计算图像的尺寸

Posted

技术标签:

【中文标题】通过文件大小计算图像的尺寸【英文标题】:Calculate the dimensions of an image by its filesize 【发布时间】:2011-10-12 15:37:11 【问题描述】:

使用 javascript 是否有任何方法可以仅通过知道图像的文件大小来计算图像的尺寸?

我假设不同的格式 (JPEG/PNG) 需要不同的计算,但我只想使用 JPEG 或 PNG。

【问题讨论】:

【参考方案1】:

不,没有办法可靠地做到这一点。压缩图像的大小很大程度上取决于图像的实际性质。一个 1600x1200 的白色矩形压缩到几乎没有,而马戏团的彩色照片会大得多。

现在,图像格式可能包含易于阅读的标题(或预告片或其他),可直接告诉您图像尺寸。 (我怀疑实际上所有图像格式都有这样的元数据,因为这似乎是一种实际的必要性,但我不是专家,所以我会对冲:-)

【讨论】:

即使文件大小是宽*高的函数,您也不知道您的图像是 100 x 100 还是 5000 x 2...【参考方案2】:

不是真的。因为您可以拥有 x 尺寸的高质量 Jpg,但具有相同尺寸的低质量 Jpg。文件大小会发生巨大变化。

【讨论】:

【参考方案3】:

根据文件类型以及您将要处理的图像的性质,您可以根据平均位/像素值计算出近似的图像大小。

但是,近似值的好坏取决于图像的变化程度。 JPEG图像可以以不同的压缩率保存,因此文件大小可能会有很大差异。

【讨论】:

以上是关于通过文件大小计算图像的尺寸的主要内容,如果未能解决你的问题,请参考以下文章

如何调整html中的图像大小以适应屏幕尺寸?

JS - File Reader API 获取图像文件大小和尺寸

Photoshop

计算后图像大小参数计算

在PHP中调整图像大小

如何在本机反应中减小图像文件大小?