5

我正在尝试做与这个问题相同的事情,但更基本:我有一个只有白色和透明颜色的 PNG 图像。我需要在给定的 RGB 十六进制值中为白色部分着色,而不触及透明部分。

我想用一个 jQuery 插件来做到这一点。有没有可以做到这一点?

它必须在所有主流浏览器(IE、FF、GC、Safari)的最新版本中工作,并且还可以为低版本支持提供奖励积分。


示例用法

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述


我已经发现/想到的事情:

  • Pixastic,但没有跨浏览器支持
  • CamanJS,但这不适用于 jQuery
  • 这里一样与另一个 div 重叠,但这会损害透明部分
  • 使白色部分透明,反之亦然,然后使用背景颜色 - 但图像是由用户上传的,这不会使其更加用户友好
4

1 回答 1

3

改用 SVG 怎么样?自 IE 9 起,所有主流浏览器都支持 SVG 。作为一种基于文本的格式,它体积小、重量轻且易于操作。

一种快速而简单的方法是使用SVG-edit(在线)或Inkscape(下载)来创建您的绘图,然后简单地将生成的<svg>元素拖放到您的 HTML 页面上。这是一个展示它如何工作的小提琴:http: //jsfiddle.net/t6fAb/


更好的是,使用SVG.js完全在 JavaScript 中创建绘图。这是一个展示它如何工作的小提琴:http: //jsfiddle.net/WEL4J/

于 2013-07-06T16:09:16.120 回答