gpt4 book ai didi

HTML 和 元素的显示

转载 作者:技术小花猫 更新时间:2023-10-29 12:54:07 25 4
gpt4 key购买 nike

我想了解网络是否允许查看 progressive JPEG。

假设我们有一个服务器,其中(参见 progressive jpegs):

$ identify /var/www/test.jpg
/var/www/test.jpg JPEG 2048x1080 2048x1080+0+0 8-bit DirectClass 129KB 0.020u 0:00.019
$ identify -verbose /var/www/test.jpg | grep Inter
Interlace: JPEG

现在如果我们放置以下 HTML 文档:

$ cat /var/www/test.html
<!DOCTYPE html>
<html>
<head><title>jpg test</title></head>
<body>
<p><img src="test.jpg" width="256" height="128"></p>
</body>
</html>

我正在尝试了解(根据 img element )是否需要用户代理来下载整个 2048x1080 图像,而渲染区域仅256x128

或者相反,User Agent 允许考虑渲染区域:256x128,因此推断它只能处理 的一部分>渐进式 JPEG。知道拥有全分辨率没有意义,因为它不会向图像添加任何细节(从技术上讲,即使在低分辨率下,质量层也会产生影响,这只是为了简化)。

通常,我想知道在谷歌地图等应用程序中,用户代理是否可以中止(暂停?)检索当前显示的图像,因为用户决定放大一些仅基于解压缩 progressive JPEG 的部分结果(整个 JPEG 尚未在用户端)。


更新:事实证明,web 在这里尝试使用 HTML 中的 loading 属性的不同方法:

<img src="example.jpg" loading="lazy" alt="example" />

最佳答案

在网站中使用渐进式 JPEG 的想法与节省带宽关系不大,更多的是为了更早地向最终用户展示某些内容。无论如何,浏览器仍会下载完整图像,但渐进式 JPEG 允许用户更早地看到发生的事情。

W3 page在 JPEG 上是这样说的:

Progressive JPEG is a means of reordering the information so that, after only a small part has been downloaded, a hazy view of the entire image is presented rather than a crisp view of just a small part.

因为包含 IMG 标签通常意味着您希望浏览器下载该 Assets ,所以它不会仅仅因为确定它已下载“足够”而中途中止它。浏览器也不知道您稍后打算对图像做什么 - 也许您稍后会缩放它,或者它可能需要稍后以不同的尺寸显示它。部分下载一次意味着浏览器可能需要稍后再次下载。

还有 Wikipedia article在 JPEG 上指出:

However, progressive JPEGs are not as widely supported,[citation needed] and even some software which does support them (such as versions of Internet Explorer before Windows 7)[12] only displays the image after it has been completely downloaded.

因此,即使某些浏览器在下载“足够”后确实中止了这些连接,也没有足够的浏览器支持我考虑甚至首先考虑使用它们。

关于HTML 和 <img/> 元素的显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15678475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com