canvas实例应用100+ 专栏提供canvas基础知识高级动画相关应用扩展信息
canvas作为html的一部分,是图像图标地图可视化一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重要的帮助。

canvas
setLineDash 方法
lineDashOffset 属性来制定虚线样式。 setLineDash 方法接受一个数组,来指定线段间隙的交替;lineDashOffset属性设置起始偏移量

注意: getLineDash() 返回一个包当前虚线样式长度为非负偶数数组

示例效果图

在这里插入图片描述

示例源代码(共64行)

/*
* @Author: 大剑师兰特(xiaozhuanlan),还是大剑师兰特(CSDN)
* @此源代码版权归大剑师兰特所有,可供学习或商业项目中借鉴,未经授权,不得重复地发表到博客论坛问答git公共空间网站中。
* @Email: 2909222303@qq.com
* @weixin: gis-dajianshi
* @First published in CSDN
* @First published time: 2023-12-02
*/
<template>
	<div class="container">
		<div class="top">
			<h3&gt;canvas绘制虚线</h3>
			<div>大剑师兰特, 还是大剑师兰特,gis-dajianshi</div>
		</div>
		<div class="dajianshi ">
			<canvas id="dajianshi" width="800" height="400" ></canvas>
		</div>

	</div>
</template>
<script>
	export default {
		data() {
			return {}
		},
		mounted() {
			this.getdata()
		},
		methods: {
			getdata() {
				var canvas = document.getElementById('dajianshi');
				if (!canvas.getContext) return;
				var ctx = canvas.getContext("2d");
				ctx.setLineDash([20, 5]);  // [实线长度, 间隙长度]
				ctx.lineDashOffset = -0;
				ctx.strokeRect(150, 50, 500, 300);
			},
		}
	}
</script>

<style scoped>
	.container {
		width: 1000px;
		height: 600px;
		margin: 50px auto;
		border: 1px solid green;
		position: relative;
	}

	.top {
		margin: 0 auto 0px;
		padding: 10px 0;
		background: darkkhaki;
		color: #fff;
	}

	.dajianshi {
		margin: 50px auto 0;
		width: 800px;
		height: 400px;
		background:#f6f6f6;
	}
</style>


canvas基本属性

属性 属性 属性
canvas fillStyle filter
font globalAlpha globalCompositeOperation
height lineCap lineDashOffset
lineJoin lineWidth miterLimit
shadowBlur shadowColor shadowOffsetX
shadowOffsetY strokeStyle textAlign
textBaseline width

canvas基础方法

方法 方法 方法
arc() arcTo() addColorStop()
beginPath() bezierCurveTo() clearRect()
clip() close() closePath()
createImageData() createLinearGradient() createPattern()
createRadialGradient() drawFocusIfNeeded() drawImage()
ellipse() fill() fillRect()
fillText() getImageData() getLineDash()
isPointInPath() isPointInStroke() lineTo()
measureText() moveTo() putImageData()
quadraticCurveTo() rect() restore()
rotate() save() scale()
setLineDash() setTransform() stroke()
strokeRect() strokeText() transform()
translate()

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注