如何将多个IMAG保存在一个图像上?

时间:2012-11-08 00:47:50

标签: javascript html html5 coldfusion

我有多个IMG分层叠在一起(位置:绝对;顶部:0;左:0;),我需要将所有这些图层保存为一个实体图像。我怎样才能做到这一点?客户的后端是Coldfusion。

谢谢,伙计们!

2 个答案:

答案 0 :(得分:4)

假设您有多个透明的PNG / GIF(我在美国地图上使用着色状态完成此操作),这很容易。主要使用imageCopy()和imagePaste()以及图像对象。

<!--- below assumes 600x400 images --->
<cfquery name="election">
    select state from electionResults where winner='Obama'
</cfquery>

<cfimage source='#expandPath('/imgs/us.png')#" name="usMap">

<cfloop query="election">
    <cfimage source="#expandPath('/imgs/#state#-blue.png')#" name="state">
    <cfset img = imageCopy(state, 1,1,600,400)>
    <cfset imagePaste(usMap,img,1,1)>

</cfloop>

<cfimage action="write" source="#usMap#" destination="#expandPath('/imgs/us-obama.png')#"
    overwrite="yes">

<img src="/imgs/us-obama.png">

(未经测试而写,但看起来正确)

答案 1 :(得分:2)

如果要使用JavaScript,则需要使用画布。

如果要在后端执行此操作,则需要使用某些图像库,例如imagecfc