当前位置:  开发笔记 > 编程语言 > 正文

使用SVG过滤器替换一种颜色

如何解决《使用SVG过滤器替换一种颜色》经验,为你挑选了1个好方法。

是否可以拍摄IMG图片并将一种确切的颜色替换为另一种颜色,比如说#fff为#000,保持所有其他颜色不变?SVG滤镜的颜色矩阵可能有帮助吗?



1> Michael Mull..:

这对于Canvas来说是微不足道的.它也可以用SVG,但它是复杂的.以下方法适用于传统的完全不透明图像.首先,使用长ComponentTransfer将每个通道中的每个非匹配颜色值转换为零,并将每个匹配颜色值转换为1(256个成员tableValues数组中唯一"1"的索引应与您的r,g和b替换匹配值).然后,使用颜色矩阵将除了生成的白色像素之外的所有内容的零点清零.您将结果用作具有目标颜色的feFlood的遮罩,并将结果合并到原始图形的顶部.例如 - 以下代码用红色替换特定颜色 - rgb(87,78,29).


  
    
      
      
        
        
        
      

      

      
      
      
    
  
  
    
    
    
    
    
    
    
    
    
  
推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有