【问题标题】:How to adjust contrast, darken/lighten vector graphics using dojox.gfx如何使用 dojox.gfx 调整对比度、变暗/变亮矢量图形
【发布时间】:2025-12-23 20:40:07
【问题描述】:

我正在使用 dojox.gfx 创建和操作矢量图形。我需要调整对比度并对它们应用模糊、变暗/变亮效果吗?

我需要支持的浏览器是 IE 8+。所以,我必须在 SVG(IE 9) 和 VML(IE 8) 上实现这些东西

有没有办法做到这一点?通过 dojo 或任何其他库。

【问题讨论】:

    标签: javascript dojo svg vector-graphics vml


    【解决方案1】:

    这是用于 svg 的:

    <svg xmlns="http://www.w3.org/2000/svg" width="200" height="200">
    <filter id="brightness">
        <feComponentTransfer>
            <feFuncR type="linear" slope="4"/>
        <feFuncG type="linear" slope="4"/>
        <feFuncB type="linear" slope="4"/>
     </feComponentTransfer>
    </filter>
    <image filter="url(#brightness)" x="0" y="0" width="200" height="100" xlink:href="pic.png" />       
    </svg>
    

    对于 VML 我不确定。

    可能是blacklevel属性,取值在-0.5(纯黑)和0.5(纯白)之间

    <v:image style='width:200px;height:100px' src="images/temporary/pic2.png" blacklevel="-0.2"/>
    

    这是 vml blacklevel 属性的链接

    http://msdn.microsoft.com/en-us/library/bb229563%28v=vs.85%29.aspx

    【讨论】: