互联网技术 · 2024年2月8日 0

解决canvas绘图位置偏移问题

这篇文章主要介绍了canvas 绘图时位置偏离的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

使用 canvas 绘图时,指定的 div 大小一定不要超过该 div 所能获得的最大范围,否则绘制的点会跟实际位置发生偏离。

例如

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />

<title>Untitled 1</title>

<style type=”text/css”>

.style1 {

  font-size: x-small;

}

</style>

</head>

 

<body >

    <div style=”margin:2%”>

            <div id=”test” style=”width:800px;height:800px;background-color:#cbdad0d9″>

                    <canvas id=”container” onmousemove=”mousemove(event)” onmousedown=”mousedown()” onmouseup=”mouseup()”></canvas>

            </div>

    </div>

   

    <script type=”text/javascript”>

        var paint = false;

        var start = false;

        var canvas = document.getElementById(“container”);

        canvas.width = 800;

        canvas.height = 800;

        var offsetY = canvas.offsetTop;

        var offsetX = canvas.offsetLeft;

        var y;

        var x;

        var context = canvas.getContext(“2d”);

   

        function mousemove(e) {

     &nbsp