问题标签 [jpeg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
87895 浏览

php - PHP 中高效的 JPEG 图像大小调整

在 PHP 中调整大图像大小的最有效方法是什么?

我目前正在使用GD函数 imagecopyresampled 来获取高分辨率图像,并将它们干净地调整为 Web 查看的大小(大约 700 像素宽 x 700 像素高)。

这对小型(小于 2 MB)照片非常有效,整个调整大小操作在服务器上花费的时间不到一秒。但是,该网站最终将为可能上传最大 10 MB 的图像(或最大 5000x4000 像素的图像)的摄影师提供服务。

对大图像执行这种调整大小操作往往会大大增加内存使用量(更大的图像可能会使脚本的内存使用量超过 80 MB)。有什么方法可以使这个调整大小操作更有效?我应该使用其他图像库,例如ImageMagick吗?

现在,调整大小的代码看起来像这样

0 投票
6 回答
6476 浏览

internet-explorer - IE6 - 无法加载正常的 JPG

尝试在 Internet Explorer 6.0 中加载这个普通的 .jpg 文件。我收到一条错误消息,说图片无法加载。在任何其他浏览器中尝试它,它工作正常。怎么了?.jpg 文件只是位于 Web 服务器上的普通图片。我什至可以创建一个简单的网页:

并像IE6一样使用右键+保存目标将其保存到我的桌面,它是一个有效的JPG文件。但是,它不会在浏览器中加载!

为什么?!

我什至尝试检查标头响应和 MIME 类型,它看起来不错:

该网站需要能够使用IE6,为什么它不会加载一个简单的.jpg文件?

0 投票
2 回答
1634 浏览

asp-classic - 如何在 Windows CE 上使用 ASP 压缩 JPEG 图像

ASP 页面获取数据用于绘制图形,然后我需要将创建的图像保存为 JPEG 以显示在浏览器上,并以 PDF 和其他格式使用。压缩图像的最佳方法是什么?我目前正在将 JPEG 压缩库移植到 ASP,但我认为在运行 Windows CE 6.0 的 ARM 设备上它会太慢。

因此,在 Windows CE 网络服务器中运行的 ASP 页面获取数据,将其呈现为位图图像,然后需要将其传递给访问该 ASP 页面的浏览器。相同的图像也用于 PDF 和另一种可以包含 JPEG 流的专有格式。

编辑:我正在寻找的方法是创建一个表示位图的数组,然后在 Windows CE 的 IIS 中使用 ASP 将其压缩为 JPEG,该 IIS 的 ASP 实现非常有限。

0 投票
4 回答
3619 浏览

jpeg - 附加到 JPG 的随机数据会使其无法使用吗?

因此,为了简化我的生活,我希望能够在我的程序正在处理的一些 jpg 图像的末尾附加 1 到 7 个附加字符*。这些是虚拟填充(填充物等 - 可能都是 0x00),只是为了使文件大小成为 8 字节的倍数以进行块加密。

用一些程序尝试了这一点后,似乎它们对附加字符很好,这些字符出现在指定图像结尾的 FF D9之后- 所以看起来文件格式定义得很好,以至于“损坏”我我在最后添加应该没关系。

如果需要,我总是可以稍后处理文件,但我的偏好是尽可能做最简单的事情 - 让它们保留(我正在解密其他文件类型,他们不会介意,所以有一个特殊情况很烦人)。

我认为,多年前关于隐写术hullaballo 的讨论,有人在这里有一些意见......

(8字节块的加密处理,我不想保存预加密的文件大小,所以在输入数据后附加0x00,解码后留在那里)

0 投票
5 回答
3314 浏览

image - JPEG 大小为 8px 或 16px 的倍数是否有质量、文件大小或其他好处?

JPEG 压缩编码过程将给定的图像分割成 8x8 像素的块,在未来的有损和无损压缩中使用这些块。[来源]

还提到,如果图像是多个 1MCU 块(定义为最小编码单元,“通常在两个方向上 16 个像素”),则可以对 JPEG 进行无损更改。[来源]

我正在处理产品图片,并且想知道在我的最终图片尺寸中使用 16 的倍数(例如,使用尺寸为 480 像素 x 360 像素的图片)与非16(例如 484x362)。在此示例中,我对最终图像的进一步更改、编辑或重新压缩不感兴趣。

为了更接近一个我知道必须有很大普遍性的特定答案:给定一个 64k 的 480x360 图像,并在 Photoshop [示例]中以最高质量保存:

  • 我可以预期 484x362 的图像会有任何质量损失吗
  • 我可以期望增加多少文件大小(对于这个例子,额外的空间是白色像素)
  • 比 8px 网格更大还有其他缺点吗?

我知道使用该特定示例是任意的,但它仍然会有所帮助(对于我和可能任何其他考虑图像大小的人)了解我在打破非 8px 网格时要处理的妥协程度。

这里的关键问题是我曾经争论过的问题是 8 像素可分割图像是否比不能被 8 像素整除的图像质量更高。

0 投票
7 回答
10048 浏览

php - 在 PHP 或 Unix 命令行中确定图像分辨率和文件类型的最快方法?

我目前正在使用 ImageMagick 来确定上传到网站的图像的大小。通过在命令行上调用 ImageMagick 的“识别”,大约需要 0.42 秒来确定 1MB JPEG 的尺寸以及它是 JPEG 的事实。我觉得这有点慢。

使用 Imagick PHP 库甚至更慢,因为它尝试在对图像进行任何处理之前将整个 1MB 加载到内存中(在这种情况下,只需确定其大小和类型)。

是否有任何解决方案可以加快确定任意图像文件具有哪种文件类型和哪些尺寸的过程?我可以忍受它只支持JPEG和PNG。对我来说重要的是文件类型是通过查看文件的标题而不是简单的扩展名来确定的。

编辑:解决方案可以是由 PHP 调用的命令行工具 UNIX,就像我现在使用 ImageMagick 的方式一样

0 投票
4 回答
2561 浏览

c++ - 如何将 EXIF 标签放入 JPG 中,在 C++ 中使用原始 jpeg 缓冲区?

我有点问题。

我从相机得到一个 RAW char* 缓冲区,我需要添加这个标签才能将它保存到磁盘。将文件写入磁盘并再次读取它不是一种选择,因为这种情况会发生数千次。

我从相机收到的缓冲区数据不包含任何 EXIF 信息,除了宽度、高度和每英寸像素数。

有任何想法吗?(C++)

0 投票
4 回答
22602 浏览

internet-explorer-7 - 为什么 IE7 指定一个 mime 类型的 image/pjpeg 而不仅仅是 image/jpeg?

通过 IE7 中的表单上传文件 (jpeg) 时,我看到的是 mime 类型的“image/pjpeg”而不是“image/jpeg”(正如我在 Firefox 或类似中看到的那样)。解决这个问题很容易,但我只是想知道为什么 IE7 在这种情况下表现不同?

0 投票
4 回答
29907 浏览

.net - 使用 C# 和 .NET 环境获取 jpeg 图像的分辨率?

我们的客户将上传要打印在他们文档上的图像,我们被要求想出一种方法来获取图像的分辨率,以便在图像分辨率太低并且在成品

如果涉及到它,如果有人知道如何获得这些尺寸,我们也可以使用尺寸,但分辨率将是首选

谢谢

0 投票
4 回答
2022 浏览

php - 在 PHP 中创建 PNG(它与 gif 和 jpg 不同吗?)

我有一个图像上传表单,它应该采用图像类型(PNG、JPEG、GIF),调整它的大小,然后将其保存到路径中。

出于某种原因,我无法让 PNG 文件类型工作,它适用于 JPEG/GIF 并且文件被复制,所以看起来这与我创建 PNG 的方式有关。

在 PHP 中创建 PNG 是否需要不同的参数或选项?一些创建图像的示例代码:

相同的命令适用于 JPG 和 GIF。