【发布时间】:2017-10-02 23:44:03
【问题描述】:
我尝试在基于图层的结构中制作布料设计器应用程序,就像在 Photoshop 应用程序中一样。 我正在使用带有 alpha 通道的图像,并在其下方放置具有不同背景颜色的 div。因此,我希望改变图像的颜色。 但是我不知道如何使用相同的颜色将该图像放在另一层上。 当我尝试重复相同的技巧时,它会填充我想要透明的额外空间。换句话说,我只需要画一部分 一个图像,让另一部分透明。
我尝试使用画布填充图像的 rgb(255,0,255) 部分,但画布太慢了。
<div class="preview_under">
<div style="background: transparent url(images/main_template.png);" class="preview_middle">
<div class="preview_over">
<!-- override layers -->
<div class="layer" style="background: url(images/blue.jpg);" data-name="modern" data-section="pocket">
<img src="images/pocket_modern.jpg">
</div>
<!-- /override layers -->
</div>
</div>
<!-- color of the template -->
<div class="fill" style="background: url(images/blue.jpg);"></div>
</div>
问题的图形表示:
更新:
谢谢大家!
我使用画布解决了我的问题。
我尝试了globalCompositeOperation 属性,它运行良好。
演示是here。
【问题讨论】:
-
理论看得我眼花缭乱,你能分享一些代码吗?或您在这里尝试做的一些示例?
标签: javascript html image css