一、绘制文本

1)说明:

2) 示例(一行文字):

<style>
        #box{
            border: 2px green solid;
        }
</style>
<canvas id="box" width="400px" height="200px">画布</canvas>
<script>
    var box=document.querySelector("#box")
    var ctx=box.getContext("2d")
      //fillText():在画布上绘制“被填充的”文本
      //三个参数: 绘制的内容; 起点x坐标; 起点y坐标;
    ctx.fillText("这个文字是我绘制出来的",100,100,50)   //50代表最大宽度 超过会挤压文字

      //strokeText():在画布上绘制镂空文本(无填充) 样式与css的一样
    ctx.font="30px ziti"  //字体变粗 font: italic bold 字体大小 字体库(必须要)
    ctx.strokeText("这个镂空文字是我绘制出来的",100,100,)
</script>

 

  效果图:

Canvas绘图2-LMLPHP

Canvas绘图2-LMLPHP

 Canvas绘图2-LMLPHP

二、清除绘制

1)说明:

 2)示例(两种清屏方式):

<canvas id="box" width="1000px" height="600px">画布</canvas>
<script>
        var box = document.querySelector("#box")
        var ctx = box.getContext("2d")
        ctx.fillStyle = "blue"
        ctx.fillRect(100, 100, 400, 500)
        //官方清屏
        ctx.clearRect(100, 100, 100, 100)
        //另一种清屏:把box的宽高重新设置一边
        //box.width=1000px  回档 重绘
</script>

三、绘制图片

1)说明:

2)示例(图片写入标签再绘制):

<style>
        #box {
            border: 2px green solid;
        }

        img {
            width: 300px;
            height: 400px;
        }
</style>
<canvas id="box" width="800px" height="600px">画布</canvas>
<img src="../DOM/img/rose1.jpg" id="img1"><br>
<script>
        var box = document.querySelector("#box")
        var ctx = box.getContext("2d")
        img1.onload = function () {
            //当img把src的资源加载完毕了这个函数才会运行
            ctx.drawImage(img1, 100, 100, 300, 400)
        }
        //img1.onload 比 window.onload 先运行:先加载图片再加载window
</script>
<script>
        window.onload = function () {
            //当浏览器的window加载完毕了这个函数才会运行
            var box = document.querySelector("#box")
            var ctx = box.getContext("2d")
            ctx.drawImage(img1, 500, 0, 300, 400)
        }
</script>

  效果图:

Canvas绘图2-LMLPHP

3)示例(直接创建一个图片 不必写入标签):

<style>
        #box {
            border: 2px green solid;
        }

        img {
            width: 300px;
            height: 400px;
        }
</style>
<canvas id="box" width="800px" height="600px">画布</canvas>
<script>
        var box = document.querySelector("#box")
        var ctx = box.getContext("2d")
        var img1=new Image()
        img1.src='../DOM/img/rose1.jpg'
        img1.onload = function () {
            ctx.drawImage(img1, 0, 0 ,200 ,300)
        }
        var img2=new Image()
        img2.src='../DOM/img/rose2.jpg'
        img2.onload = function () {
         ctx.drawImage(img2, 300, 200 ,300, 400)
        }
</script>

  效果图:

Canvas绘图2-LMLPHP

07-25 18:06