Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

SVG Preview (Scaled)

Preview of https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/reftests/svg/filters/feConvolveMatrix-1.svg
<filter id="f1" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix x="10%" y="10%" width="80%" height="80%" style="color-interpolation-filters:sRGB"
order="3" kernelMatrix="0 1 0 1 -4 1 0 1 0" in="SourceGraphic"/>
</filter>
<g filter="url(#f1)">
<rect x="0" y="0" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="49" y="0" width="2" height="100" fill="#00ff00"/>
</g>
<!-- can't figure out a good way to test kernelUnitLength
<filter id="f2" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix x="10%" y="10%" width="80%" height="80%" style="color-interpolation-filters:sRGB"
order="3" kernelUnitLength="0.1" kernelMatrix="0 1 0 1 -4 1 0 1 0" in="SourceGraphic"/>
</filter>
<g filter="url(#f2)">
<rect x="100" y="0" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="140" y="0" width="20" height="100" fill="#00ff00"/>
</g>
-->
<filter id="f3" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix x="10%" y="10%" width="80%" height="80%" style="color-interpolation-filters:sRGB"
order="3" kernelMatrix="0 1 0 1 -4 1 0 1 0" bias="-1" preserveAlpha="true" in="SourceGraphic"/>
</filter>
<g filter="url(#f3)">
<rect x="200" y="0" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="249" y="0" width="2" height="100" fill="#00ff00"/>
</g>
<filter id="f4" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix x="10%" y="10%" width="80%" height="80%" style="color-interpolation-filters:sRGB"
order="3" kernelMatrix="0 1 0 1 -4 1 0 1 0" divisor="100000" preserveAlpha="true" in="SourceGraphic"/>
</filter>
<g filter="url(#f4)">
<rect x="300" y="0" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="349" y="0" width="2" height="100" fill="#00ff00"/>
</g>
<filter id="f5" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix style="color-interpolation-filters:sRGB"
order="3" kernelMatrix="0 1 0 1 -4 1 0 1 0" edgeMode="wrap" in="SourceGraphic"/>
</filter>
<g filter="url(#f5)">
<rect x="0" y="100" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="0" y="100" width="1" height="100" fill="#00ff00"/>
</g>
<filter id="f6" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix style="color-interpolation-filters:sRGB"
order="3" kernelMatrix="0 1 0 1 -4 1 0 1 0" edgeMode="duplicate" in="SourceGraphic"/>
</filter>
<g filter="url(#f6)">
<rect x="100" y="100" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="100" y="100" width="1" height="100" fill="#ff0000"/>
</g>
<filter id="f7" filterUnits="objectBoundingBox" primitiveUnits="objectBoundingBox"
x="0" y="0" width="1" height="1">
<feConvolveMatrix style="color-interpolation-filters:sRGB"
order="3" kernelMatrix="0 1 0 1 -4 1 0 1 0" edgeMode="none" in="SourceGraphic"/>
</filter>
<g filter="url(#f7)">
<rect x="200" y="100" width="100" height="100" fill="#00ff00" opacity="0"/>
<rect x="200" y="100" width="1" height="100" fill="#0000ff"/>
</g>
</svg>