ユーザーが選択した前景色と背景色 (赤、緑、青、シアン、マゼンタ、黄、黒、白に限定) を使用して、その場でグレースケール画像を色付けしようとしています。私が望む効果は次のとおりです。
元のグレースケール http://crawdad.cornell.edu/test/1.png 赤の前景 http://crawdad.cornell.edu/test/2.png 赤の前景、黄色の背景 http://crawdad.cornell.edu/test /3.png
これらは左から右に、元のグレースケール画像、ユーザーが背景色として赤を選択した画像、および赤の背景/黄色の前景の同じ画像を示しています。
ユーザーが色を選択するたびにキャンバスに画像を再描画するのは現実的ではありません (画像は 800x800px になり、アニメーション用に 30 フレームを作成する必要があります)。
私は WebKit、Firefox、および Internet Explorer の最新バージョンのみをターゲットにしているため、html5、css3、および svg 効果は問題ありません。画像はそのままの html<img>
タグにすることも<image>
、タグ内に含めることもできます<svg>
(実際には後者が望ましいです)。
理想的な解決策には、svg フィルターが含まれる場合があります (私は経験がありませんが、これを実行できますか?)。別の可能性は、私のグレースケール画像を、その上に無地の色があり、その下に無地の色があるアルファチャンネルとして扱うかもしれません(その場でどのように行うかわかりません)。
Adobe Director の経験がある人にとって、私が望む効果は、Director の color および bgColor プロパティと同じです。(プロジェクトを Director から html5/javascript に変換しています。)