1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <title>19-Canvas绘制文字</title>
6 <style>
7 *{
8 margin: 0;
9 padding: 0;
10 }
11 canvas{
12 display: block;
13 margin: 0 auto;
14 background: red;
15 }
16 </style>
17 </head>
18 <body>
19 <canvas width="800" height="400"></canvas>
20 <script>
21 // 1.拿到canvas
22 let oCanvas = document.querySelector("canvas");
23 // 2.从canvas中拿到绘图工具
24 let oCtx = oCanvas.getContext("2d");
25 // 3.绘制参考线
26 let canvasWidth = oCtx.canvas.width;
27 let canvasHeight = oCtx.canvas.height;
28 oCtx.moveTo(0, canvasHeight/2);
29 oCtx.lineTo(canvasWidth, canvasHeight/2);
30 oCtx.stroke();
31 oCtx.moveTo(canvasWidth/2, 0);
32 oCtx.lineTo(canvasWidth/2, canvasHeight);
33 oCtx.stroke();
34 // 4.绘制文字
35 let str = "小白兔真可爱两只耳朵竖起来";
36 // 通过font属性可以设置文字的大小和样式
37 oCtx.font = "50px 微软雅黑";
38 // 通过textBaseline属性可以设置文字垂直方向的对齐方式
39 // 注意点: 在对齐的时候是以绘制文字的y作为参考点进行对齐的
40 oCtx.textBaseline = "middle";
41 // 通过textAlign属性可以设置文字水平方向的对齐方式
42 // 注意点: 在对齐的时候是以绘制文字的x作为参考点进行对齐的
43 oCtx.textAlign = "center";
44 /*
45 注意点:
46 在绘制文字的时候, 是以文字的左下角作为参考点进行绘制
47 * */
48 //不填充文字
49 // oCtx.strokeText(str, canvasWidth/2, canvasHeight/2);
50 //填充文字
51 // oCtx.fillText(str, canvasWidth/2, canvasHeight/2);
52 </script>
53 </body>
54 </html>

19-canvas绘制文字的更多相关文章

  1. 微信小程序-canvas绘制文字实现自动换行

    在使用微信小程序canvas绘制文字时,时常会遇到这样的问题:因为canvasContext.fillText参数为 我们只能设置文本的最大宽度,这就产生一定的了问题.如果我们绘制的文本长度不确定或者 ...

  2. 【朝花夕拾】Android自定义View篇之(三)Canvas绘制文字

    前言 转载请声明,转自[https://www.cnblogs.com/andy-songwei/p/10968358.html],谢谢! 前面的文章中在介绍Canvas的时候,提到过后续单独讲Can ...

  3. 微信小程序生成海报分享:canvas绘制文字溢出如何换行

    主要思路: 1.先分割为字符串数组,然后一个字一个字绘图,利用ctx.measureText(string) 方法,获取绘制后的宽度,判断宽度在多少内就另起一行,再将各行拼成一个字符串 2.计算另起的 ...

  4. canvas绘制文字

    绘制字体时可以使用fillText方法或者strokeText方法. fillText方法用填充的方式来绘制字符串 context.fillText (text, x,y,[maxwidth]); s ...

  5. Canvas入门(3):图像处理和绘制文字

    来源:http://www.ido321.com/997.html 一.图像处理(非特别说明,所有结果均来自最新版Google) 在HTML 5中,不仅可以使用Canvas API绘制图形,也可以用于 ...

  6. 测试canvas绘制旋转文字的性能

    canvas 绘制各种动画效果时,我们经常会使用画布旋转,使绘制上去的元素有旋转的效果. 最近在项目中碰到了很严重的性能问题,经常排查发现是因为绘制批量文字时使用了画布旋转,且每行文字的旋转角度是不一 ...

  7. canvas绘制简单图形

    canvas绘图篇: canvas绘制矩形: <!DOCTYPE html> <html> <head lang="en"> <meta ...

  8. h5学习-canvas绘制矩形、圆形、文字、动画

    绘制矩形<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...

  9. Android 使用Canvas在图片上绘制文字

    一个小应用,在图片上绘制文字,以下是绘制文字的方法,并且能够实现自动换行,字体自动适配屏幕大小 private void drawNewBitmap(ImageView imageView, Stri ...

  10. 【canvas学习笔记四】绘制文字

    本节我们来学习如何绘制文字. 绘制文字有两个主要的方法: fillText(text, x, y [, maxWidth]) 在x, y位置填充文字text,有一个可选参数maxWidth设置最大绘制 ...

随机推荐

  1. tortoisegit 配置ssh登录

    习惯使用小乌龟. 服务器:gitblit 客户端:TortoiseGit 2.13.0.1 (C:\Program Files\TortoiseGit\bin) git version 2.36.1. ...

  2. 阿里云 腾讯云上搭建Samba服务

    对于这个主题,鄙人走了很久的坑,最后很抱歉的告诉你. 运营商把Samba服务的端口全部封掉了,所以你根本就没办法访问! 那怎么办,我Windows空间不够,又不想浪费云上的资源. 那就用FTP代替它吧 ...

  3. Ubuntu20.04中 ORBSLAM3的安装和测试

    ORBSLAM3 安装以及测试教程(Ubuntu20.04) 1.前期准备工作 1.1安装相关依赖 sudo apt install git cmake gcc g++ mlocate 1.2下载OR ...

  4. Linux 更新网络时间

    下载包 yum install -y ntpdate 同步网络时间 ntpdate 0.asia.pool.ntp.org 若上面的时间服务器不可用,也可以改用如下服务器进行同步: time.nist ...

  5. Mac 版本10.15.4 安装 telnel工具

    下载脚本 mac新版本安装telnel发生的变化,进入下面的链接,右键另存为,保存到桌面 https://raw.githubusercontent.com/Homebrew/install/mast ...

  6. Java 中的泛型 集合(List,Set) Map

    泛型 集合(List,Set) Map 泛型 泛型的本质是参数化类型,即允许在编译时对集合进行类型检查,从而避免安全问题,提高代码的复用性 泛型的具体定义与作用 定义:泛型是一种在编译阶段进行类型检查 ...

  7. Solo开发者社区-重新思考云原生应用的开发模式

    当前云原生应用的开发模式在 FaaS 环境下存在挑战,本文提出一种开发模式构想:"单体式编程,编译时拆分,分布式执行",旨在简化云应用开发,提升开发效率和应用性能.思路是通过编译器 ...

  8. redis雪崩

    每个key(即数据)如果设置了失效时间的话,如果大量key同时过期的时候,或者说因为某种原因redis中的数据突然大批量丢失,这些key又大量地去请求这些key时,因为redis里面没有这些数据,就会 ...

  9. Sonar 扫描之SonarScanner介绍

    Sonar扫描之SonarScanner介绍 SonarScanner用于在构建系统没有指定scanner时使用. 项目配置 在你的项目根目录中创建一个名为 sonar-project.propert ...

  10. Windows/Linux 安装NVM及npm配置

    nvm安装及npm配置 nvm nvm下载 Windows: Releases · coreybutler/nvm-windows (github.com) Windows直接下载相应版本的nvm-s ...