当Chrome尺寸调整到高于65535px的高度时,谷歌Chrome会切断jpeg

时间:2013-03-26 23:14:39

标签: css google-chrome jpeg

我有一个图像,由一个放在彼此顶部的视频中的187帧组成。每帧宽320像素,高180像素,图像宽320像素,高33660像素。链接到图片:http://reference.23.rekab.dk/7340/2758266/3f1faedac540f10a4bfe20ea579da3e7/video_frames/download/izotope-stutter-edit-frames.jpg

我希望使用此图像一次显示一个帧,并将每个帧缩放到两倍宽度和高度。为了实现这一点,我将图像置于div内,使用overflow: hidden;测量640px 360px,并将图像绝对定位为简单地给它一个负top值,具体取决于我想要的帧要显示(因此要显示第一帧,top值为0,要显示第五帧,top值设置为-360 *(5 - 1)= --1440像素。小提琴显示这个想法:http://jsfiddle.net/kkabell/dJGp3/1/

此工作正常,直到我到达第183帧,图像的top值为-65520px:调整后的图像似乎被Chrome浏览器的65535像素切断,因此不会让我显示完整帧 - 而其余的框架根本没有:http://jsfiddle.net/kkabell/tm6ZM/3/

我知道jpeg图像的最大高度为65535像素(参见http://en.wikipedia.org/wiki/Jpeg),但Firefox和Safari都可以将图像缩放到比这更高的高度。

  • Chrome中的这种预期行为是否有任何解决方法?
  • 是否有记录此“限制”的地方?
  • 我应该在其他浏览器中看到什么行为?

在我的测试中,我一直在OS X 10.8.2上使用Google Chrome 25.0.1364.172

1 个答案:

答案 0 :(得分:0)

我认为您最好的选择是将图像保留为原始尺寸(不加倍),将其剪切为原始分辨率,然后将结果缩放2倍。可能也会给你带来更好的表现。

我想该属性的内部实现会很短,但我没有任何关于它的文档。