【问题标题】:Weird CSS hack for sharpening images (Chrome 59 and 60 only)用于锐化图像的奇怪 CSS hack(仅限 Chrome 59 和 60)
【发布时间】:2018-02-02 23:41:12
【问题描述】:

我在 Chrome v60.0 中遇到了奇怪的行为,当时我将缩小的图像放在自身顶部并将 CSS image-rendering 参数设置为 pixelated

#container {
  position: relative;
  width: 160px
}

.image {
  width: 100%
}

.overlay {
  width: 100%;
  position: absolute;
  left: 0px;
  top: 0px;
  image-rendering: pixelated
}
<div id="container">
  <img class="image" src="http://www.publicdomaintreasurehunter.com/wp-content/uploads/2011/01/muscle.jpg">

  <img class="overlay" src="http://www.publicdomaintreasurehunter.com/wp-content/uploads/2011/01/muscle.jpg">
</div>

图像不是像预期的那样出现像素化,而是平滑(并且比原始图像更清晰)。通常当应用pixelated 时,图像看起来很粗糙(见下文)。

您可以通过删除容器中的第一个图像并比较结果来测试这一点。或者删除第二个以查看默认渲染。

但是,有一个警告。虽然它可能对照片很有用,但在使用艺术品时,某些边缘会出现锯齿状。一种解决方法是介于两者之间,并在叠加的图像上应用 0.4 左右的不透明度,至少提供一些清晰度。

对这种行为有什么解释吗?它不适用于 IE 或我尝试过的任何其他浏览器。

更新:我在以下 32 位和 64 位版本的 Chrome 中对此进行了测试,结果如下:

60.0.3112.113(64 位)- 工作

60.0.3112.101(64 位)- 工作

59.0.3071.86(64 位)- 工作

58.0.3029.96(64 位)- 不需要使用 hack,因为 image-rendering: pixelated 已经显示没有像素化的锐化图像

58.0.3029.96(32 位)- 不必使用 hack,因为 image-rendering: pixelated 已经显示没有像素化的锐化图像

57.0.2987.133(64 位)- 不必使用 hack,因为 image-rendering: pixelated 已经显示没有像素化的锐化图像

56.0.2924.87(64 位)- 不工作

55.0.2883.75(64 位)- 不工作

53.0.2785.116(32 位)- 不起作用

48.0.2564.109(64 位)- 不工作

【问题讨论】:

  • 在 Windows 10 + Chrome 60.0.3112.113 上测试,我无法分辨像素化与覆盖 jsfiddle.net/7CURQ/314 之间的任何区别
  • @Valentin 它看起来像示例中给出的非常像素化的图像吗?您是否尝试从代码中删除第一张图像(具有“图像”类的图像)?它适用于 Windows 10 和 7,但我的 Chrome 版本稍旧,60.0.3112.101。
  • 无论如何都无法重现该问题,可能是浏览器错误或您的设置问题...
  • @Valentin 我已经在两个不同的系统上尝试过,它们具有相同版本的 Chrome。也许它将在下一次更新中“修复”。为了我自己的利益,当您运行示例代码时,您看到的是第一张图片还是第二张图片?
  • 覆盖和像素化对我来说看起来都一样,请参阅this image...

标签: css image google-chrome css-hack image-rendering


【解决方案1】:

这不是 CSS 独有的。由于像素使边缘更加明显,噪点/颗粒确实会产生锐度或细节增强的错觉。许多锐化技术最终会增加噪点的数量,这通常是一种不受欢迎的副作用,尽管非常小心和非常微妙地对图像应用噪点可以产生这种错觉,而不会显着降低图像质量。

另请参阅:Why is there the illusion of detail in photographic noise?

【讨论】:

  • 没那么简单。这是一个浏览器怪癖,问题是为什么会这样。它不能归因于噪声/颗粒,因为没有任何噪声的图像(例如艺术品)会产生相同的效果。
猜你喜欢
  • 2012-03-07
  • 2012-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-09
相关资源
最近更新 更多