最近在做一个网页,avatar系统, 就象是qq秀, 用户点击选择脸,眉毛, 等等,然后组合成一个虚拟形象,现在我实现了在网页上显示这些,但问题是现在仅仅是一张图片覆盖在另一张图片上,当用户在图片上点击另存为的时候存的是最外层的图片,求问怎么把这些图片合成起来,合成起来能保存在服务器端也可以(不显示给用户也可以),谢谢,怎么通过代码来实现啊?
解决方案 »
- javascript怎么给Label赋值啊?
- [Javascript]我的checkbox的checked属性为什么总是undifined?
- 如何分别左右shift ctrl等键
- 如何将SOURCE/FILE\IMAGE\BG\GIF替换成SOURCE/FILE/IMAGE/BG/GIF?
- 如何实现用图片(按钮)控制音乐开关
- 300分求解决IE崩溃的问题
- 如何实现“鼠标在某网页上移动时,该网页自动返回其前一页"?
- 在线求助,解决后就给分!
- 请 yeefly(Web开发版) 进来接分,感谢之~~~(闲人免进)
- 对列表框中增加、删除、修改数据?
- 请问怎么用js给图片换图片地址
- doctype声明中的网址,是不是每次打开网页,都要被访问呀?比如" http://www.w3.org/TR/html4/strict.dtd "
onload的时候重置一下.
1.显示位置(包括x,y,z) x和y用于定位, z用于确定图片的显示层次
2.包含的显示部分(如头发, 眼镜, 衣服, 鞋子等等) 比如一个套装..图片里面包含了帽,衣,裤,鞋, 那么加载这个图片前就要把原先身上的帽,衣,裤,鞋图片卸载掉
3.图片的ID和其他的一些属性合成的时候只能在服务器进行合成, 根据形象里保存的所有图片信息调用图片根据层次顺序画到图板上再输出来.
showlayers=equip.split('>'); //以“>”为分隔符,分配各层图片名到一个数组 showlayers[]
str="";
for(i=0;i<showlayers.length;i++){
if(showlayers[i]!='0'&&showlayers[i]!=''){ //如果图片名为0或空值则该层不显示。
str+="<img src='equipment/"+(i+1)+"/"+showlayers[i]+".gif' style='padding:0;position:absolute;top:0;left:0;width:140;height:226;z-index:"+(i+1)+";'>";
}
}
//最后在最上一层覆盖一幅完全透明的图片,这样用户在上面右链>另存为也只能保存这幅图了:
str+="<img src='equipment/blank.gif' style='padding:0;position:absolute;top:0;left:0;width:140;height:226;z-index:100;'>";
if(equipform.userequip) equipform.userequip.value=myequip=equip; //把配置码赋值到隐藏域中
bodyshow.innerHTML=str; //显示各层图片。
}
//页面加载后先显示最初的虚拟形象:
document.body.onload=new Function("shoiwit(myequip)"); function dressit(layer,img){ //这个函数用于更换配置,参数为 层数,图片名
showlayers=myequip.split('>');
newequip="";
for(i=0;i<showlayers.length;i++){
if(i+1==layer){
if(img==showlayers[i]) newequip+="df"; //如果该层已是这幅图片,则恢复为原始图片
else newequip+=img; //否则换为这幅图
}
else newequip+=showlayers[i]; //其他层图片不变
if(i+1!=showlayers.length) newequip+=">";
}
shoiwit(newequip); //显示最新配置
}这是我的代码,希望指点一下,怎么才能让图片融为一体,谢谢