【问题标题】:Is it possible to recolor an image using JavaScript? [duplicate]是否可以使用 JavaScript 重新着色图像? [复制]
【发布时间】:2011-04-16 00:35:23
【问题描述】:

我想知道是否有人知道使用 JavaScript 重新着色图像的方法。我想,只要我能读/写颜色值,任何类型的对图像像素的访问都可以。它应该在 Firefox 中工作;如果它在 IE 中不起作用,没什么大不了的,但如果它起作用了,那将是一个好处。

感谢您的帮助!

【问题讨论】:

    标签: javascript css image-processing colors


    【解决方案1】:

    您可以使用画布更改图像。

    网上有几十个examples把图片转灰度。应该没有任何理由不能将颜色更改为不同的颜色。

    【讨论】:

    • 谢谢,我会调查此事。
    【解决方案2】:

    除了alex的回答(例如:使用<canvas>,还没有被广泛支持-cough IE cough),你可以使用JS来改变一个图像给另一个,并给出它只是相同的图像,重新着色的错觉。如果您的服务器端语言支持图像处理(例如:PHP 可以使用 GD 进行操作),则其他图像可以随时可用或由服务器动态创建。

    【讨论】:

    • 有没有办法利用data URI 方案来做这样的事情?
    • 但是,我想以data URI 格式操作图像会占用大量处理器
    • @Simple 是的,非常。我正在尝试找到一个帖子,其中有人问过这样的问题,我告诉 OP 解释了为什么它不能完成。
    • @SimpleCoder:几乎所有支持数据URI的浏览器也支持画布。因此,您不妨为此使用<canvas>
    【解决方案3】:

    动态修改显示图像的常用方法是使用所需的每种颜色复制图像,然后使用 javascript 或 CSS 将它们换掉。

    【讨论】:

      【解决方案4】:

      你也可以做这样的事情http://jsfiddle.net/xewbP/ 虽然不确定你是否可以像这样去饱和颜色

      【讨论】:

        猜你喜欢
        • 2013-05-15
        • 2015-07-02
        • 2011-08-14
        • 2014-04-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-22
        • 1970-01-01
        • 2015-05-28
        相关资源
        最近更新 更多