SVG实例--svg编辑器---(打开,保存,新建,拖动)
2007-12-08 09:30
302 查看
该例实现了,画线,圆,矩形,以及选择图形,并把图形至于顶层,还有拖动图形等功能。对于使用Javascript语言分析SVG文件有很大的帮助。感谢不知名的提供者。
<?xml version="1.0" encoding="iso-8859-1"?>
<svg id="svg" viewBox="0 0 1006 616">
<script type="text/javascript">
<![CDATA[
//编辑 删除
//----------------draw circle---------------------
var xCenter;
var yCenter;
var rCircle;
var circleFlag=0;
var codeCircle;
var sd=document.getElementById("SD");
function drawCircle(){
var newCircle=document.createElement("circle");
xCenter=evt.getClientX();
yCenter=evt.getClientY();
newCircle.setAttribute("cx",xCenter);
newCircle.setAttribute("cy",yCenter);
newCircle.setAttribute("r",0);
newCircle.setAttribute("stroke","red");
newCircle.setAttribute("stroke-width","1");
newCircle.setAttribute("fill","blue");
var plat=document.getElementById("plat");
plat.appendChild(newCircle);
circleFlag=1
}
function modifyCircle(){
if(circleFlag==1){
var plat=document.getElementById("plat");
var theCircle=plat.lastChild;
var screenX =evt.getClientX();
var screenY =evt.getClientY();
x=screenX-xCenter;
y=screenY-yCenter;
rCircle= parseInt(Math.sqrt(x*x+y*y));
theCircle.setAttribute("r",rCircle);
}
}
function endCircle(){
//codeCircle="<circle cx=""+xCenter+"" cy=""+yCenter+"" r=""+rCircle+"" stroke="red" stroke-width="1"
fill="blue" />";
//codeAll=codeAll+codeCircle;
circleFlag=0;
var plat=document.getElementById("plat");
theCircle=plat.lastChild;
plat.appendChild(theCircle);
sd.firstChild.setData(codeCircle);
}
//-----------------draw rect----------------------
var xRectStart;
var yRectStart;
var rectFlag=0;
var codeRect;
var widthRect;
var heightRect;
var sd=document.getElementById("SD");
function drawRect(){
var newRect=document.createElement("rect");
xRectStart=evt.getClientX();
yRectStart=evt.getClientY();
newRect.setAttribute("x",xRectStart);
newRect.setAttribute("y",yRectStart);
newRect.setAttribute("width",0);
newRect.setAttribute("height",0);
newRect.setAttribute("stroke","red");
newRect.setAttribute("stroke-width","1");
newRect.setAttribute("fill","blue");
var plat=document.getElementById("plat");
plat.appendChild(newRect);
rectFlag=1
}
function modifyRect(){
if(rectFlag==1){
var plat=document.getElementById("plat");
var theCircle=plat.lastChild;
var screenX =evt.getClientX();
var screenY =evt.getClientY();
widthRect=screenX-xRectStart;
heightRect=screenY-yRectStart;
theCircle.setAttribute("width",widthRect);
theCircle.setAttribute("height",heightRect);
}
}
function endRect(){
//codeRect="<rect x=""+xRectStart+"" y=""+yRectStart+"" width=""+widthRect+"" height=""+heightRect+""
stroke="red" stroke-width="1" fill="blue" />";
//codeAll=codeAll+codeRect;
rectFlag=0;
var plat=document.getElementById("plat");
theRect=plat.lastChild;
plat.appendChild(theRect);
sd.firstChild.setData(codeRect);
}
//---------------------draw with Image---------
var xImageScreen;
var yImageScreen;
var plat;
var switchScr="12.jpg";
var imageFlag;
var codeImage;
var sd=document.getElementById("SD");
function startImage(){
plat=document.getElementById("plat");
var newImg=document.createElement("image");
xImageScreen=evt.getClientX();
yImageScreen=evt.getClientY();
newImg.setAttribute("x",xImageScreen);
newImg.setAttribute("y",yImageScreen);
newImg.setAttribute("width","60");
newImg.setAttribute("height","60");
newImg.setAttributeNS("http://www.w3.org/2000/xlink/namespace/","xlink:href",switchScr);
plat.appendChild(newImg);
imageFlag=true;
}
function modifyImage(){
if(imageFlag==true){
theImg=plat.lastChild;
xImageScreen=evt.getClientX();
yImageScreen=evt.getClientY();
theImg.setAttribute("x",xImageScreen);
theImg.setAttribute("y",yImageScreen);
}
}
function endImage(){
//codeImage="<image x=""+xImageScreen+"" y=""+yImageScreen+"" width="60" height="60"
xlink:href=""+switchScr+""/>";
//codeAll=codeAll+codeImage;
theImg=plat.lastChild;
plat.appendChild(theImg);
imageFlag=false;
sd.firstChild.setData(codeImage);
}
//---------------------drawLine()----------------------
var xLineEnd=0;
var yLineEnd=60;
var xLineStart;
var yLineStart;
var lineFlag=false;
var codeLine;
var sd=document.getElementById("SD");
function drawLine(){
var newLine=document.createElement("line");
xLineStart=evt.getClientX();
yLineStart=evt.getClientY();
newLine.setAttribute("x1",xLineStart);
newLine.setAttribute("y1",yLineStart);
newLine.setAttribute("x2",xLineEnd);
newLine.setAttribute("y2",yLineEnd);
newLine.setAttribute("stroke","red");
newLine.setAttribute("stroke-width","2");
var plat=document.getElementById("plat");
plat.appendChild(newLine);
lineFlag=true;
}
function modifyLine(){
if(lineFlag==true){
var plat=document.getElementById("plat");
var theLine=plat.lastChild;
xLineEnd =evt.getClientX();
yLineEnd =evt.getClientY();
theLine.setAttribute("x2",xLineEnd);
theLine.setAttribute("y2",yLineEnd);
}
}
function endLine(){
// codeLine="<line x1=""+xLineStart+"" y1=""+yLineStart+"" x2=""+xLineEnd+"" y2=""+yLineEnd+""
stroke="red" stroke-width="2" />";
// codeAll=codeAll+codeLine;
lineFlag=false;
var plat=document.getElementById("plat");
theLine=plat.lastChild;
plat.appendChild(theLine);
xLineEnd=0;
yLineEnd=60;
sd.firstChild.setData(codeLine);
}
//------------------drag images-------------------
var targetMaxtrix;
var dragTarget;
var dragStartX;
var dragStartY;
var dragFlag=false;
//var backRect=document.getElementById("backRect");
var dragID;
//var hasTransform;
function startDrag(){
dragTarget=evt.target;
dragID=dragTarget.getAttribute("id");
if(dragID!="backRect"){
//dragID=dragTarget.getAttribute("id");
dragStartX=evt.getClientX();
dragStartY=evt.getClientY();
targetMaxtrix=dragTarget.getCTM();
dragFlag=true;
}
}
function modifyDrag(){
if(dragFlag){
dragModifyX=evt.getClientX();
dragModifyY=evt.getClientY();
distanceX=dragModifyX-dragStartX;
distanceY=dragModifyY-dragStartY;
newTranX=targetMaxtrix.e+distanceX;
newTranY=targetMaxtrix.f+distanceY;
dragTarget.setAttributeNS(null, 'transform', 'translate(' + newTranX + ',' + newTranY + ')');
}
}
function endDrag(){
if(dragFlag){dragTarget.parentNode.appendChild(dragTarget);}
dragFlag=false;
}
//---------------------common function---
function getActiveId(){
var id=0;
for(i=0;i<toolStatus.length;i++){
if(toolStatus[i]==1){
id=i;
break;
}
}
return id;
}
function newFile(){
alert("0");
var p=document.getElementById("plat");
var l=p.childNodes.length;
while(l!=1){
p.removeChild(p.lastChild);
l=p.childNodes.length;
}
codeAll="<?xml version="1.0" encoding="utf-8"?> <svg width="100%" height="100%"
xmlns:xlink="http://www.w3.org/1999/xlink">";
}
//-#############################--operate files-----############################
function saveFile(){
var codeContent="";
//codeAll=codeAll+codeEnd
//-----------saveObject--------------
p=evt.target.ownerDocument.getElementById("plat");
nodeList=p.childNodes;
//------------------learn new knowledge printNode(node)----------------------
for(i=0;i<nodeList.length;i++){
codeContent=codeContent+printNode(nodeList.item(i))+" ";
}
alert(codeContent);
codeAll=codeAll+codeContent;
codeAll=codeAll+codeEnd;
//---------save file --------
var fso, f1;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.CreateTextFile(fileName, true);
f1.WriteLine(codeAll);
f1.Close();
alert("the location of the file : "+fileName);
//--------------------
//codeAll=codeAll.substring(0,codeAll.length-6);
codeAll="<?xml version="1.0" encoding="utf-8"?> <svg width="100%" height="100%"
xmlns:xlink="http://www.w3.org/1999/xlink">";
}
//---------------open file---------------------
function openFile(){
xmlDoc = getURL(fileName,fn)
}
function fn(xmlDoc)
{
alert("the location of the opened file: "+fileName);
var x = parseXML(xmlDoc.content,document)
openFilePlat=document.getElementById("plat");
var nodeList=x.getChildNodes();
var nodeListInner=nodeList.item(0).getChildNodes();
removeAllChild();//clear all the Elements in <g>
for(i=0;i<nodeListInner.length;i++){
if(nodeListInner.item(i).nodeType==1){
openFilePlat.appendChild(nodeListInner.item(i));
}
}
}
function removeAllChild(){
var platRemoveAll=document.getElementById("plat");
var removeAllLength=platRemoveAll.childNodes.length;
while(removeAllLength!=0){
platRemoveAll.removeChild(platRemoveAll.lastChild);
removeAllLength=platRemoveAll.childNodes.length;
}
}
//--#############################common vars########################
//-----------file vars-----------------------
var codeAll="<?xml version="1.0" encoding="utf-8"?> <svg width="100%" height="100%"
xmlns:xlink="http://www.w3.org/1999/xlink">";
var codeEnd="</svg>";
var fileName="./svgFile/test.svg";
//-------------------mainDraw-----------------
function startDraw(){
id=getActiveId();
switch(id){
case 0 :{startDrag();break;}
case 1 :{ drawRect();break;}
case 2 :{ drawCircle();break;}
case 3 :{ drawLine();break;}
case 4 :{ startImage();break;}
}
}
function modifyDraw(){
id=getActiveId();
switch(id){
case 0 :{modifyDrag();break;}
case 1 :{ modifyRect();break;}
case 2 :{ modifyCircle();break;}
case 3 :{ modifyLine();break;}
case 4 :{ modifyImage();break;}
}
}
function endDraw(){
id=getActiveId();
switch(id){
case 0 :{endDrag();break;}
case 1 :{ endRect();break;}
case 2 :{ endCircle();break;}
case 3 :{ endLine();break;}
case 4 :{ endImage();break;}
}
}
//---------------------------------------
//-------------------------changStatus And hiddenTool----------
var toolStatus=new Array(1,0,0,0,0);
var toolName=new Array('move','rect','circle','line','switch');
function changeStatus(name){
var id=0;
for(i=0;i<toolName.length;i++){
if(name==toolName[i]){
id=i;
break;
}
}
for(i=0;i<toolStatus.length;i++){
if(id==i){
toolStatus[i]=1;
}else{
toolStatus[i]=0;
}
}
showHidden1(id);
}
function showHidden1(id){
if(toolStatus[id]==1){
theMove=document.getElementById(id);
theMove.setAttribute("display", "inline");
setTimeout('showHidden2('+id+')',500);
}else{
theMove=document.getElementById(id);
theMove.setAttribute("display", "inline");
}
}
function showHidden2(id){
if(toolStatus[id]==1){
theMove=document.getElementById(id);
theMove.setAttribute("display", "none");
setTimeout('showHidden1('+id+')',500);
}else{
theMove=document.getElementById(id);
theMove.setAttribute("display", "inline");
}
}
]]>
</script>
<g id="plat" onmousedown="startDraw()" onmousemove="modifyDraw()" onmouseup="endDraw()">
<rect id="backRect" x="0" y="60" width="720" height="450" fill="white"
stroke="gray" stroke-width="1"/>
</g>
<g id="saveFlie" onclick="saveFile()">
<rect x="498" y="527" width="45" height="25" stroke="black" stroke-width="1" fill="white"/>
<text x="500" y="545" style="stroke:#83C75D;font-size:20">Save</text>
</g>
<g id="newFie" onclick="newFile()">
<rect x="578" y="527" width="45" height="25" stroke="black" stroke-width="1" fill="white"/>
<text x="584" y="545" style="stroke:#83C75D;font-size:20"> New</text>
</g>
<g id="openFie" onclick="openFile()">
<rect x="658" y="527" width="45" height="25" stroke="black" stroke-width="1" fill="none"/>
<text x="662" y="545" style="stroke:#83C75D;font-size:20"> Open</text>
</g>
<text id="SD" fill="#FFFFFF" stroke="black" x="1" y="40">show code</text>
<polyline id="0" points="40,546 50,563 42,557 38,566 40,546"
stroke="#426EB4" fill="blue" onclick="changeStatus('move')"/>
<rect id="1" x="70" y="544.5" width="25" height="20" stroke="#426EB4"
fill="blue" onclick="changeStatus('rect')"/>
<circle id="2" cx="130" cy="555.5" r="12" stroke="#426EB4"
fill="blue" onclick="changeStatus('circle')"/>
<polyline id="3" points="183,559 190,543 194,546 187,562 182.5,565.5 183,559 187,562"
stroke="#555555" fill="blue" onclick="changeStatus('line')"/>
<image id="4" x="220" y="535" width="40" height="40"
xlink:href="12.jpg" onclick="changeStatus('switch')"/>
</svg>
<?xml version="1.0" encoding="iso-8859-1"?>
<svg id="svg" viewBox="0 0 1006 616">
<script type="text/javascript">
<![CDATA[
//编辑 删除
//----------------draw circle---------------------
var xCenter;
var yCenter;
var rCircle;
var circleFlag=0;
var codeCircle;
var sd=document.getElementById("SD");
function drawCircle(){
var newCircle=document.createElement("circle");
xCenter=evt.getClientX();
yCenter=evt.getClientY();
newCircle.setAttribute("cx",xCenter);
newCircle.setAttribute("cy",yCenter);
newCircle.setAttribute("r",0);
newCircle.setAttribute("stroke","red");
newCircle.setAttribute("stroke-width","1");
newCircle.setAttribute("fill","blue");
var plat=document.getElementById("plat");
plat.appendChild(newCircle);
circleFlag=1
}
function modifyCircle(){
if(circleFlag==1){
var plat=document.getElementById("plat");
var theCircle=plat.lastChild;
var screenX =evt.getClientX();
var screenY =evt.getClientY();
x=screenX-xCenter;
y=screenY-yCenter;
rCircle= parseInt(Math.sqrt(x*x+y*y));
theCircle.setAttribute("r",rCircle);
}
}
function endCircle(){
//codeCircle="<circle cx=""+xCenter+"" cy=""+yCenter+"" r=""+rCircle+"" stroke="red" stroke-width="1"
fill="blue" />";
//codeAll=codeAll+codeCircle;
circleFlag=0;
var plat=document.getElementById("plat");
theCircle=plat.lastChild;
plat.appendChild(theCircle);
sd.firstChild.setData(codeCircle);
}
//-----------------draw rect----------------------
var xRectStart;
var yRectStart;
var rectFlag=0;
var codeRect;
var widthRect;
var heightRect;
var sd=document.getElementById("SD");
function drawRect(){
var newRect=document.createElement("rect");
xRectStart=evt.getClientX();
yRectStart=evt.getClientY();
newRect.setAttribute("x",xRectStart);
newRect.setAttribute("y",yRectStart);
newRect.setAttribute("width",0);
newRect.setAttribute("height",0);
newRect.setAttribute("stroke","red");
newRect.setAttribute("stroke-width","1");
newRect.setAttribute("fill","blue");
var plat=document.getElementById("plat");
plat.appendChild(newRect);
rectFlag=1
}
function modifyRect(){
if(rectFlag==1){
var plat=document.getElementById("plat");
var theCircle=plat.lastChild;
var screenX =evt.getClientX();
var screenY =evt.getClientY();
widthRect=screenX-xRectStart;
heightRect=screenY-yRectStart;
theCircle.setAttribute("width",widthRect);
theCircle.setAttribute("height",heightRect);
}
}
function endRect(){
//codeRect="<rect x=""+xRectStart+"" y=""+yRectStart+"" width=""+widthRect+"" height=""+heightRect+""
stroke="red" stroke-width="1" fill="blue" />";
//codeAll=codeAll+codeRect;
rectFlag=0;
var plat=document.getElementById("plat");
theRect=plat.lastChild;
plat.appendChild(theRect);
sd.firstChild.setData(codeRect);
}
//---------------------draw with Image---------
var xImageScreen;
var yImageScreen;
var plat;
var switchScr="12.jpg";
var imageFlag;
var codeImage;
var sd=document.getElementById("SD");
function startImage(){
plat=document.getElementById("plat");
var newImg=document.createElement("image");
xImageScreen=evt.getClientX();
yImageScreen=evt.getClientY();
newImg.setAttribute("x",xImageScreen);
newImg.setAttribute("y",yImageScreen);
newImg.setAttribute("width","60");
newImg.setAttribute("height","60");
newImg.setAttributeNS("http://www.w3.org/2000/xlink/namespace/","xlink:href",switchScr);
plat.appendChild(newImg);
imageFlag=true;
}
function modifyImage(){
if(imageFlag==true){
theImg=plat.lastChild;
xImageScreen=evt.getClientX();
yImageScreen=evt.getClientY();
theImg.setAttribute("x",xImageScreen);
theImg.setAttribute("y",yImageScreen);
}
}
function endImage(){
//codeImage="<image x=""+xImageScreen+"" y=""+yImageScreen+"" width="60" height="60"
xlink:href=""+switchScr+""/>";
//codeAll=codeAll+codeImage;
theImg=plat.lastChild;
plat.appendChild(theImg);
imageFlag=false;
sd.firstChild.setData(codeImage);
}
//---------------------drawLine()----------------------
var xLineEnd=0;
var yLineEnd=60;
var xLineStart;
var yLineStart;
var lineFlag=false;
var codeLine;
var sd=document.getElementById("SD");
function drawLine(){
var newLine=document.createElement("line");
xLineStart=evt.getClientX();
yLineStart=evt.getClientY();
newLine.setAttribute("x1",xLineStart);
newLine.setAttribute("y1",yLineStart);
newLine.setAttribute("x2",xLineEnd);
newLine.setAttribute("y2",yLineEnd);
newLine.setAttribute("stroke","red");
newLine.setAttribute("stroke-width","2");
var plat=document.getElementById("plat");
plat.appendChild(newLine);
lineFlag=true;
}
function modifyLine(){
if(lineFlag==true){
var plat=document.getElementById("plat");
var theLine=plat.lastChild;
xLineEnd =evt.getClientX();
yLineEnd =evt.getClientY();
theLine.setAttribute("x2",xLineEnd);
theLine.setAttribute("y2",yLineEnd);
}
}
function endLine(){
// codeLine="<line x1=""+xLineStart+"" y1=""+yLineStart+"" x2=""+xLineEnd+"" y2=""+yLineEnd+""
stroke="red" stroke-width="2" />";
// codeAll=codeAll+codeLine;
lineFlag=false;
var plat=document.getElementById("plat");
theLine=plat.lastChild;
plat.appendChild(theLine);
xLineEnd=0;
yLineEnd=60;
sd.firstChild.setData(codeLine);
}
//------------------drag images-------------------
var targetMaxtrix;
var dragTarget;
var dragStartX;
var dragStartY;
var dragFlag=false;
//var backRect=document.getElementById("backRect");
var dragID;
//var hasTransform;
function startDrag(){
dragTarget=evt.target;
dragID=dragTarget.getAttribute("id");
if(dragID!="backRect"){
//dragID=dragTarget.getAttribute("id");
dragStartX=evt.getClientX();
dragStartY=evt.getClientY();
targetMaxtrix=dragTarget.getCTM();
dragFlag=true;
}
}
function modifyDrag(){
if(dragFlag){
dragModifyX=evt.getClientX();
dragModifyY=evt.getClientY();
distanceX=dragModifyX-dragStartX;
distanceY=dragModifyY-dragStartY;
newTranX=targetMaxtrix.e+distanceX;
newTranY=targetMaxtrix.f+distanceY;
dragTarget.setAttributeNS(null, 'transform', 'translate(' + newTranX + ',' + newTranY + ')');
}
}
function endDrag(){
if(dragFlag){dragTarget.parentNode.appendChild(dragTarget);}
dragFlag=false;
}
//---------------------common function---
function getActiveId(){
var id=0;
for(i=0;i<toolStatus.length;i++){
if(toolStatus[i]==1){
id=i;
break;
}
}
return id;
}
function newFile(){
alert("0");
var p=document.getElementById("plat");
var l=p.childNodes.length;
while(l!=1){
p.removeChild(p.lastChild);
l=p.childNodes.length;
}
codeAll="<?xml version="1.0" encoding="utf-8"?> <svg width="100%" height="100%"
xmlns:xlink="http://www.w3.org/1999/xlink">";
}
//-#############################--operate files-----############################
function saveFile(){
var codeContent="";
//codeAll=codeAll+codeEnd
//-----------saveObject--------------
p=evt.target.ownerDocument.getElementById("plat");
nodeList=p.childNodes;
//------------------learn new knowledge printNode(node)----------------------
for(i=0;i<nodeList.length;i++){
codeContent=codeContent+printNode(nodeList.item(i))+" ";
}
alert(codeContent);
codeAll=codeAll+codeContent;
codeAll=codeAll+codeEnd;
//---------save file --------
var fso, f1;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.CreateTextFile(fileName, true);
f1.WriteLine(codeAll);
f1.Close();
alert("the location of the file : "+fileName);
//--------------------
//codeAll=codeAll.substring(0,codeAll.length-6);
codeAll="<?xml version="1.0" encoding="utf-8"?> <svg width="100%" height="100%"
xmlns:xlink="http://www.w3.org/1999/xlink">";
}
//---------------open file---------------------
function openFile(){
xmlDoc = getURL(fileName,fn)
}
function fn(xmlDoc)
{
alert("the location of the opened file: "+fileName);
var x = parseXML(xmlDoc.content,document)
openFilePlat=document.getElementById("plat");
var nodeList=x.getChildNodes();
var nodeListInner=nodeList.item(0).getChildNodes();
removeAllChild();//clear all the Elements in <g>
for(i=0;i<nodeListInner.length;i++){
if(nodeListInner.item(i).nodeType==1){
openFilePlat.appendChild(nodeListInner.item(i));
}
}
}
function removeAllChild(){
var platRemoveAll=document.getElementById("plat");
var removeAllLength=platRemoveAll.childNodes.length;
while(removeAllLength!=0){
platRemoveAll.removeChild(platRemoveAll.lastChild);
removeAllLength=platRemoveAll.childNodes.length;
}
}
//--#############################common vars########################
//-----------file vars-----------------------
var codeAll="<?xml version="1.0" encoding="utf-8"?> <svg width="100%" height="100%"
xmlns:xlink="http://www.w3.org/1999/xlink">";
var codeEnd="</svg>";
var fileName="./svgFile/test.svg";
//-------------------mainDraw-----------------
function startDraw(){
id=getActiveId();
switch(id){
case 0 :{startDrag();break;}
case 1 :{ drawRect();break;}
case 2 :{ drawCircle();break;}
case 3 :{ drawLine();break;}
case 4 :{ startImage();break;}
}
}
function modifyDraw(){
id=getActiveId();
switch(id){
case 0 :{modifyDrag();break;}
case 1 :{ modifyRect();break;}
case 2 :{ modifyCircle();break;}
case 3 :{ modifyLine();break;}
case 4 :{ modifyImage();break;}
}
}
function endDraw(){
id=getActiveId();
switch(id){
case 0 :{endDrag();break;}
case 1 :{ endRect();break;}
case 2 :{ endCircle();break;}
case 3 :{ endLine();break;}
case 4 :{ endImage();break;}
}
}
//---------------------------------------
//-------------------------changStatus And hiddenTool----------
var toolStatus=new Array(1,0,0,0,0);
var toolName=new Array('move','rect','circle','line','switch');
function changeStatus(name){
var id=0;
for(i=0;i<toolName.length;i++){
if(name==toolName[i]){
id=i;
break;
}
}
for(i=0;i<toolStatus.length;i++){
if(id==i){
toolStatus[i]=1;
}else{
toolStatus[i]=0;
}
}
showHidden1(id);
}
function showHidden1(id){
if(toolStatus[id]==1){
theMove=document.getElementById(id);
theMove.setAttribute("display", "inline");
setTimeout('showHidden2('+id+')',500);
}else{
theMove=document.getElementById(id);
theMove.setAttribute("display", "inline");
}
}
function showHidden2(id){
if(toolStatus[id]==1){
theMove=document.getElementById(id);
theMove.setAttribute("display", "none");
setTimeout('showHidden1('+id+')',500);
}else{
theMove=document.getElementById(id);
theMove.setAttribute("display", "inline");
}
}
]]>
</script>
<g id="plat" onmousedown="startDraw()" onmousemove="modifyDraw()" onmouseup="endDraw()">
<rect id="backRect" x="0" y="60" width="720" height="450" fill="white"
stroke="gray" stroke-width="1"/>
</g>
<g id="saveFlie" onclick="saveFile()">
<rect x="498" y="527" width="45" height="25" stroke="black" stroke-width="1" fill="white"/>
<text x="500" y="545" style="stroke:#83C75D;font-size:20">Save</text>
</g>
<g id="newFie" onclick="newFile()">
<rect x="578" y="527" width="45" height="25" stroke="black" stroke-width="1" fill="white"/>
<text x="584" y="545" style="stroke:#83C75D;font-size:20"> New</text>
</g>
<g id="openFie" onclick="openFile()">
<rect x="658" y="527" width="45" height="25" stroke="black" stroke-width="1" fill="none"/>
<text x="662" y="545" style="stroke:#83C75D;font-size:20"> Open</text>
</g>
<text id="SD" fill="#FFFFFF" stroke="black" x="1" y="40">show code</text>
<polyline id="0" points="40,546 50,563 42,557 38,566 40,546"
stroke="#426EB4" fill="blue" onclick="changeStatus('move')"/>
<rect id="1" x="70" y="544.5" width="25" height="20" stroke="#426EB4"
fill="blue" onclick="changeStatus('rect')"/>
<circle id="2" cx="130" cy="555.5" r="12" stroke="#426EB4"
fill="blue" onclick="changeStatus('circle')"/>
<polyline id="3" points="183,559 190,543 194,546 187,562 182.5,565.5 183,559 187,562"
stroke="#555555" fill="blue" onclick="changeStatus('line')"/>
<image id="4" x="220" y="535" width="40" height="40"
xlink:href="12.jpg" onclick="changeStatus('switch')"/>
</svg>
相关文章推荐
- AE地图文档的操作,新建打开保存另存为地图文档的实例
- C#中操作Excel(2)—— 新建、打开、保存和关闭Excel文档
- jquery实现可拖动DIV自定义保存到数据的实例
- 记事本(新建,打开,保存,关闭,复制,粘贴,剪切,全选,日期)
- c#开发一个“记事本”程序,要求能够实现文件的新建、打开、编辑、保存功能
- 在Eclipse RCP中获得当前所有打开的editor编辑器实例列表
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第四步---编辑器(3)--坐标保存&加载文件操作
- VC 2010 + MFC:自定义文档视图框架,去除新建、保存、打开等菜单功能,让文档程序个性化
- jquery实现可拖动DIV自定义保存到数据的实例
- Qt 文件的新建、打开、保存、另存为 (改进版本)
- ORACLE新建实例打开已有的数据库--数据库与实例的区分测试
- 【QT】QT从零入门教程(五):图像文件操作 [新建打开保存]
- PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解
- 【C#源代码】记事本的新建、打开、保存等功能
- Qt:QCamera打开系统摄像头,截图保存实例
- JFrame实现无边框,实现拖动,实现关闭按钮,打开实现保存文件到本地,实现头像放大功能,实现图片浏览器
- Qt -- MainWindow实现文本新建/打开/保存/另存
- java实现记事本基本功能:新建、打开、保存、另存为、退出、替换、全部替换、复制、剪切、粘贴、全选、获取当前时间日期、修改字体、颜色、自动换行等
- Winform and WPF 第二遍双击快捷方式或应用程序打开原来的应用程序而不新建一个实例[进程通信 1]
- PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解