我正在用 C++ 编写缩略图查看器。
我首先利用EXIF信息检索了一张图片的缩略图,但是EXIF中的缩略图很糟糕,有黑边。所以我想获取 jpeg 的嵌入式缩略图,我该怎么做?
另一个问题: jpeg 的嵌入缩略图是否等于 EXIF 缩略图?
最佳答案
如果 EXIF 缩略图不好,您可以从 JPEG 本身生成自己的缩略图,而无需完全解码 JPEG。
寻找 EPEG 的源代码。它是 SourceForge 上 Enlightenment 项目的一部分,并且是一年前旧 EFL 的一部分。您仍然可以从一些旧的 SVN 提交或可能四处 float 的源代码压缩包中挖掘它。
基本上,EPEG 所做的是从图像中收集 DCT 系数,并对它们执行重新缩放操作。 DCT 系数通常用作 8x8 像素 block 的基本系数。您可以将其视为一个 像素。结果,您有一个(无需计算)缩略图,正好是原始图像大小的 1/8。将任何图像数据重新缩放到所需尺寸。
关于c++ - 如何从 jpeg 图像中读取嵌入缩略图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1325634/