>  기사  >  웹 프론트엔드  >  HTML5 Canvas를 사용하여 삼각형, 직사각형 등의 다각형을 그리는 방법

HTML5 Canvas를 사용하여 삼각형, 직사각형 등의 다각형을 그리는 방법

不言
不言원래의
2018-06-11 17:11:314138검색

이 기사에서는 HTML5 Canvas를 사용하여 삼각형, 직사각형 등의 다각형을 그리는 방법을 주로 소개합니다. 기사 시작 부분에 제공된 몇 가지 속성과 아래의 삼각형 및 직사각형의 예를 통해 동일한 방법을 사용하여 다른 도형을 그릴 수도 있습니다. 다각형이 필요한 친구는 다음을 참고하시면 됩니다

HTML5 Canvas를 사용하여 다각형을 그리는 데 필요한 CanvasRenderingContext2D 객체의 주요 속성과 메서드("()"가 있는 것은 메서드임)는 다음과 같습니다.

속성 또는 방법 기본 설명
StrokeStyle 브러시 그리기 경로의 색상, 그라데이션 및 모드를 설정하는 데 사용됩니다. 이 속성의 값은 CSS 색상 값을 나타내는 문자열일 수 있습니다. 그리기 요구 사항이 더 복잡한 경우 이 속성의 값은 CanvasGradient对象或者CanvasPattern 개체
globalAlpha 가 되어 그려진 내용의 투명도를 정의할 수도 있습니다. 값은 0.0(완전 투명)에서 1.0(완전 불투명) 사이입니다. . 기본값은 1.0입니다.
lineWidth 은 그려진 선의 너비를 정의합니다. 기본값은 1.0이며 이 속성은 0.0보다 커야 합니다. 더 넓은 선은 경로 중앙에 위치하며 각 측면의 선 너비는 절반입니다.
lineCap 선의 양쪽 끝 부분에 선 캡을 그리는 방법을 지정합니다. 법적 값은 맞대기, 원형, 정사각형입니다. 기본값은 "엉덩이"입니다.
beginPath() 새 그리기 경로를 시작합니다. 새 경로를 그리기 전에 매번 이 메서드를 호출하는 것을 잊지 마세요.
moveTo(int x, int y) 새 그리기 경로의 시작점 좌표 정의
lineTo(int x, int y) 그리기 경로의 중간점 좌표 정의
스트로크 (int x, int y) 그리기 경로의 좌표점을 따라 순차적으로 직선을 그립니다
closePath() 현재 그리기 경로가 열려 있으면 그리기 경로를 닫습니다.


삼각형 그리기에 해당하는 표시 효과

<!DOCTYPE html>   
<html>   
<head>   
<meta charset="UTF-8">   
<title>HTML5 Canvas绘制三角形入门示例</title>   
</head>   
<body>   
  
<!-- 添加canvas标签,并加上红色边框以便于在页面上查看 -->   
<canvas id="myCanvas" width="400px" height="300px" style="border: 1px solid red;">   
您的浏览器不支持canvas标签。   
</canvas>   
  
  
<script type="text/javascript">   
//获取Canvas对象(画布)   
var canvas = document.getElementById("myCanvas");   
//简单地检测当前浏览器是否支持Canvas对象,以免在一些不支持html5的浏览器中提示语法错误   
if(canvas.getContext){     
    //获取对应的CanvasRenderingContext2D对象(画笔)   
    var ctx = canvas.getContext("2d");     
       
    //开始一个新的绘制路径   
    ctx.beginPath();   
    //设置线条颜色为蓝色   
    ctx.strokeStyle = "blue";   
    //设置路径起点坐标   
    ctx.moveTo(20, 50);   
    //绘制直线线段到坐标点(60, 50)   
    ctx.lineTo(20, 100);   
    //绘制直线线段到坐标点(60, 90)   
    ctx.lineTo(70, 100);       
    //先关闭绘制路径。注意,此时将会使用直线连接当前端点和起始端点。   
    ctx.closePath();   
    //最后,按照绘制路径画出直线   
    ctx.stroke();   
}   
</script>   
</body>   
</html>

는 다음과 같습니다.

2016314112438272.png (421×318)

직사각형 그리기
캔버스 그리기 직사각형을 별도로 언급하는 이유는 캔버스 브러시 도구 때문입니다. - CanvasRenderingContext2D 객체 직사각형 그리기를 위한 전용 메서드를 제공합니다.

<!DOCTYPE html>  
<html>  
<head>  
<meta charset="UTF-8">  
<title>HTML5 Canvas绘制矩形入门示例</title>  
</head>  
<body>  
  
<!-- 添加canvas标签,并加上红色边框以便于在页面上查看 -->  
<canvas id="myCanvas" width="400px" height="300px" style="border: 1px solid red;">  
您的浏览器不支持canvas标签。   
</canvas>  
  
<script type="text/javascript">  
//获取Canvas对象(画布)   
var canvas = document.getElementById("myCanvas");   
//简单地检测当前浏览器是否支持Canvas对象,以免在一些不支持html5的浏览器中提示语法错误   
if(canvas.getContext){     
    //获取对应的CanvasRenderingContext2D对象(画笔)   
    var ctx = canvas.getContext("2d");     
       
    //开始一个新的绘制路径   
    ctx.beginPath();   
    //设置线条颜色为蓝色   
    ctx.strokeStyle = "blue";   
    //以canvas中的坐标点(10,10)作为绘制起始点,绘制一个宽度为80px、高度为50px的矩形   
    ctx.rect(10, 10, 80, 50);   
    //按照指定的路径绘制直线   
    ctx.stroke();   
    //关闭绘制路径   
    ctx.closePath();   
}   
</script>  
</body>  
</html>

에 해당하는 직사각형 효과는 다음과 같이 표시됩니다.
2016314112508746.png (422×310)

위 내용은 모두의 학습에 도움이 되기를 바랍니다. !

관련 권장 사항:

HTML5 및 CSS3 영적 애니메이션의 전환 효과를 실현하세요

위 내용은 HTML5 Canvas를 사용하여 삼각형, 직사각형 등의 다각형을 그리는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.