<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
body{
background: white;
}
.ToolBar{
float: left;
font-family: "微软雅黑";
font-size: 14px;
font-variant: small-caps;
text-align: center;
background: #F2F7EE;
padding: 10px 15px 3px 10px;
margin-bottom: 1px;
margin-right: 1px;
border: 1px solid #7B899B;
}
.ToolBar button{
padding: 6px;
margin: 7px 2px;
font-variant: normal;
font-size: 12px;
}
canvas{
border: 1px solid #7B899B;
}
img{
padding: 2px;
border: 2px solid #F2F7EE;
}
img:hover{/*当鼠标悬停在图片上*/
border: 2px groove #E4F0FE;
background: white;
}
img.Selected{
border: 2px groove #E4F0FE;
}
#saveCopyContainer{
display: none;
}
#saveCopyContainer img{
width: 250px;
height: 150px;
}
.CanvasContainer{
}
</style>
<script type="text/javascript">
var canvas;
var context;
var isDrawing=false;
window.onload=function(){
canvas = document.getElementById("drawingCanvas");
context = canvas.getContext("2d");
canvas.onmousedown = startDrawing;
canvas.onmouseup = stopDrawing;
canvas.onmouseout = stopDrawing;
canvas.onmousemove = draw;
}
function startDrawing(e)
{
isDrawing = true;
context.beginPath();
context.moveTo(e.pageX-canvas.offsetLeft,e.pageY-canvas.offsetTop);
}
function stopDrawing()
{
isDrawing=false;
}
function draw(e)
{
if(isDrawing)
{
var x = e.pageX-canvas.offsetLeft;
var y = e.pageY-canvas.offsetTop;
context.lineTo(x,y);
context.stroke();
}
}
function changeColor(color,imgEle)
{
context.strokeStyle = color;
imgEle.className = "Selected";
}
function changethickness(thickness,imgEle)
{
context.lineWidth = thickness;
imgEle.className = "Selected";
}
function clearCanvas(){
context.clearRect(0,0,canvas.width,canvas.height)
}
function saveCanvas(){
var imageCopy = document.getElementById("saveImageCopy");
imageCopy.src = canvas.toDataURL();
var imageContainer = document.getElementById("saveCopyContainer");
imageContainer.style.display = "block";
}
</script>
</head>
<body>
<div class="Toolbar">
<img id="redPen" src="img/pen_red.gif" alt="Red Pen"
onclick="changeColor('rgb(212,21,29)',this)"/>
<img id="greenPen" src="img/pen_green.gif" alt="Green Pen"
onclick="changeColor('rgb(131,190,61)',this)"/>
<img id="bluePen" src="img/pen_blue.gif" alt="Blue Pen"
onclick="changeColor('rgb(0,86,166)',this)"/>
</div>
<div class="Toolbar">
<img src="img/pen_thin.gif" alt="Thin Pen"
onclick="changethickness(1,this)"/>
<img src="img/pen_medium.gif" alt="Medium Pen"
onclick="changethickness(5,this)"/>
<img src="img/pen_thick.gif" alt="Thick Pen"
onclick="changethickness(10,this)"/>
</div>
<div>
<canvas id="drawingCanvas" width="500" height="500"></canvas>
</div>
<div>
<button onclick="saveCanvas()">Save</button>
<button onclick="clearCanvas()">Clean</button>
<div id="saveCopyContainer">
<img id="saveImageCopy"/><br/>
</div>
</div>
</body>
</html>
素材: