我有多个相互叠加的 IMG(位置:绝对;上:0;左:0;),我需要将所有这些层保存为一个实体图像。我怎样才能做到这一点?客户端的后端是 Coldfusion。
多谢你们!
我有多个相互叠加的 IMG(位置:绝对;上:0;左:0;),我需要将所有这些层保存为一个实体图像。我怎样才能做到这一点?客户端的后端是 Coldfusion。
多谢你们!
假设您有多个透明的 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">
(未经测试编写,但看起来不错)
如果要使用 JavaScript,则需要使用画布。
如果要在后端进行,则需要使用一些图像库,例如imagecfc