Safari отображает неправильные цвета при использовании фильтра размытия

Я пытаюсь применить фильтр размытия к элементу svg, но кажется, что Safari не может правильно отображать цвета. Вот пример моей проблемы:

<svg height="110" width="110">
    <defs>
          <filter id="f1" x="0" y="0">
               <feGaussianBlur stdDeviation="15" />
          </filter>
    </defs>
        <rect width="90" height="90"  stroke-width="3" fill="#ff4300" filter="url(#f1)" />
</svg>

http://jsfiddle.net/6gZ8t/1/

Сафари:

Это Safari

Хром:

Это Chrome

Цвет правильный в каждом браузере expet Safari, где он намного ярче ... Кто-нибудь знает, как это исправить?


person Dafen    schedule 24.03.2014    source источник


Ответы (1)


Интерполяция цветов Safari по умолчанию (linearRGB), кажется, не работает в последних обновлениях. Если вы переключитесь на sRGB во всех фильтрах, вы получите более правильные результаты (хотя все они будут с гамма-коррекцией).

<filter id="f1" x="0" y="0" color-interpolation-filters="sRGB">
person Michael Mullany    schedule 24.03.2014
comment
Круто, это исправлено! Вы спасли мой день! знак равно - person Dafen; 24.03.2014
comment
Вы также можете применить его только к фильтру Гаусса: <filter ...><feGaussianBlur stdDeviation="15" color-interpolation-filters="sRGB"/></filter>. Однако будем надеяться, что команда WebKit скоро это исправит. - person David Bonnet; 31.08.2014