canvas font-size 属性

在H5中,canvas是其一个重要的亮点和特性。

其中canvas的font-size属性和css的完全不同,w3c中定义如下

font-size / line-height 规定字号和行高,以像素计。

是以像素来渲染字体的,所有当font-size小于某个值时(一般是14)就会出现,textt的字符串不会变小(因为已经无法减少像素的数目,来呈现字体了。)


例子如下:当字体大小为25时:

<!DOCTYPE html>
<html>
	<body>

		<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
			Your browser does not support the HTML5 canvas tag.
		</canvas>

		<script>
		console.log(this);
			var c=document.getElementById("myCanvas");
			var ctx=c.getContext("2d");

			ctx.font="25px Arial";
			ctx.textBaseline="top";
			ctx.fillStyle = "red";
			ctx.fillText("Hello World",0,0);
			
		</script>

	</body>
</html>
效果如下:


当字体大小为14时:

<!DOCTYPE html>
<html>
	<body>

		<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
			Your browser does not support the HTML5 canvas tag.
		</canvas>

		<script>
		console.log(this);
			var c=document.getElementById("myCanvas");
			var ctx=c.getContext("2d");

			ctx.font="14px Arial";
			ctx.textBaseline="top";
			ctx.fillStyle = "red";
			ctx.fillText("Hello World",0,0);
			
		</script>

	</body>
</html>
效果如下:


当字体大小为5时:

<!DOCTYPE html>
<html>
	<body>

		<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
			Your browser does not support the HTML5 canvas tag.
		</canvas>

		<script>
		console.log(this);
			var c=document.getElementById("myCanvas");
			var ctx=c.getContext("2d");

			ctx.font="5px Arial";
			ctx.textBaseline="top";
			ctx.fillStyle = "red";
			ctx.fillText("Hello World",0,0);
			
		</script>

	</body>
</html>
效果如下:


说明当将设置为font-size《=13左右时,canvas中的字符已经不再发生变化了。

回答: 在CSS中,可以使用font-family属性来定义文本的字体系列。例如,可以使用以下代码将字体系列设置为"微软雅黑": p { font-family: "微软雅黑"; } 可以使用逗号分隔多个字体系列,以便在某些情况下无法加载指定字体时,可以使用备用字体。例如: div { font-family: Arial, "Microsoft Yahei", "微软雅黑"; } 关于line-height的设置,可以使用具体的数值或者预定义的关键字来定义行高。例如,可以使用以下代码将行高设置为1.5倍字体大小: p { line-height: 1.5; } 也可以使用预定义的关键字,如"normal"表示正常行高,"inherit"表示继承父元素的行高等。 希望以上回答能够解决您的问题。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [CSS字体属性(font-family、font-size、font-weight、font-style)](https://blog.csdn.net/weixin_42579348/article/details/109185395)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【文本】HTML5 Canvas设置字型属性(font-style、font-variant、font-weight、font-size、line-height、font...](https://blog.csdn.net/HuoYiHengYuan/article/details/101677114)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值