У меня проблема с применением фильтров к изображению SVG. Я хотел бы применить фильтр затопления только к изображению, но когда я устанавливаю этот фильтр, он покрывает область, большую, чем изображение, что, по-видимому, увеличивает размер изображения. Есть ли способ это исправить? Запустите фрагмент ниже, чтобы увидеть проблему.
Одно замечание: высота изображения неизвестна
image {
outline: 3px solid red;
outline-offset: -3px;
}
image.flood {
filter: url(#floodFilter);
}
<svg width="500" height="200" viewBox="0 0 500 200">
<defs>
<filter id="floodFilter" filterUnits="objectBoundingBox">
<feFlood flood-color="lightblue" flood-opacity="1"></feFlood>
<feBlend in="SourceGraphic" in2="floodFill" mode="multiply"></feBlend>
</filter>
</defs>
<image x="0" y="30" width="200" href="https://www.fillmurray.com/g/200/140"> </image>
<image class="flood" x="230" y="30" width="200" href="https://www.fillmurray.com/g/200/140"></image>
</svg>