返回顶部
首页 > 资讯 > 精选 >canvas在圆弧周围绘制文本的方法有哪些
  • 684
分享到

canvas在圆弧周围绘制文本的方法有哪些

2023-06-09 21:06:24 684人浏览 独家记忆
摘要

小编给大家分享一下canvas在圆弧周围绘制文本的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!效果如下图第一种是直接用弧度的var canv

小编给大家分享一下canvas在圆弧周围绘制文本的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

效果如下图

canvas在圆弧周围绘制文本的方法有哪些

第一种是直接用弧度的

var canvas=document.getElementById("canvas")    var context=canvas.getContext("2d")    var TEXT_FILL_STYLE="rgba(100,130,240,0.5)"    var TEXT_STROKE_STYLE="rgba(200,0,0,0.7)"    var TEXT_SIZE=64;    circle={        x:canvas.width/2,        y:canvas.height/2,        radius:200    }    function drawCircularText(string,startAngle,endAngle){      var radius=circle.radius //圆的半径      var angleDecrement=(startAngle-endAngle)/(string.length-1)//每个字母占的弧度      var angle=parseFloat(startAngle) //转一下数字      var index=0;      var character;      context.save()      context.fillStyle=TEXT_FILL_STYLE;      context.strokeStyle=TEXT_STROKE_STYLE;      context.font=TEXT_SIZE+"px Lucida Sans"      while(index<string.length){        character=string.charAt(index)        context.save()        context.beginPath()        context.translate(circle.x+Math.cos(angle)*radius,circle.y-Math.sin(angle)*radius)        context.rotate(Math.PI/2-angle)   //Math.PI/2为旋转90度  Math.PI/180*X为旋转多少度        context.fillText(character,0,0)        context.strokeText(character,0,0)        angle-=angleDecrement        index++        context.restore()      }      context.restore()    }    context.textAlign="center"    context.textBaseLine="middle"   drawCircularText("clockwise around the circle",Math.PI*2,Math.PI/8)  //第三个参数表示文字首位是否相接 差了多少弧度

第二种是用角度带入的 请注意drawCircularText的第二个参数和第三个参数的不同

var canvas=document.getElementById("canvas")    var context=canvas.getContext("2d")    var TEXT_FILL_STYLE="rgba(100,130,240,0.5)"    var TEXT_STROKE_STYLE="rgba(200,0,0,0.7)"    var TEXT_SIZE=64;    circle={        x:canvas.width/2,        y:canvas.height/2,        radius:200    }    function drawCircularText(string,startAngle,endAngle){      var radius=circle.radius //圆的半径      var angleDecrement=(startAngle-endAngle)/(string.length-1)//每个字母占的弧度      var angle=startAngle //            var index=0;      var character;      context.save()      context.fillStyle=TEXT_FILL_STYLE;      context.strokeStyle=TEXT_STROKE_STYLE;      context.font=TEXT_SIZE+"px Lucida Sans"      while(index<string.length){        character=string.charAt(index)        context.save()        context.beginPath()        context.translate(circle.x+Math.cos((Math.PI/180)*angle)*radius,circle.y-Math.sin((Math.PI/180)*angle)*radius)        context.rotate((Math.PI/2)-(Math.PI/180)*angle)   //Math.PI/2为旋转90度  Math.PI/180*X为旋转多少度        context.fillText(character,0,0)        context.strokeText(character,0,0)        angle-=angleDecrement        index++        context.restore()      }      context.restore()    }    context.textAlign="center"    context.textBaseLine="middle"   drawCircularText("clockwise around the circle",360,10)  //第三个参数表示文字首位是否相接 差了多少弧度

以上是“canvas在圆弧周围绘制文本的方法有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: canvas在圆弧周围绘制文本的方法有哪些

本文链接: https://lsjlt.com/news/257895.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • canvas在圆弧周围绘制文本的方法有哪些
    小编给大家分享一下canvas在圆弧周围绘制文本的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!效果如下图第一种是直接用弧度的var canv...
    99+
    2023-06-09
  • HTML5 Canvas中有哪些绘制椭圆的方法
    本篇内容介绍了“HTML5 Canvas中有哪些绘制椭圆的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成...
    99+
    2024-04-02
  • HTML5 Canvas中绘制椭圆的方法有哪些
    本篇内容介绍了“HTML5 Canvas中绘制椭圆的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成...
    99+
    2024-04-02
  • OpenCV轮廓周围绘制矩形框和圆形框的方法
    轮廓周围绘制介绍 没什么概念,就是给得出来的轮廓绘制周围图形,例如下图给左侧得出的轮廓去绘图得到右侧图像: 相关API 减少多边形轮廓点数:approxPolyDP 函数作用:基于...
    99+
    2024-04-02
  • OpenCV 轮廓周围绘制矩形框和圆形框的方法是什么
    OpenCV 轮廓周围绘制矩形框和圆形框的方法是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。轮廓周围绘制介绍没什么概念,就是给得出来的轮廓绘制周...
    99+
    2023-06-29
  • HTML5 Canvas绘图的基本使用方法有哪些
    这篇文章给大家分享的是有关HTML5 Canvas绘图的基本使用方法有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   Canvas 是H5的一部分,允许脚本语言动态渲染...
    99+
    2024-04-02
  • HTML5中Canvas绘制时指定颜色与透明度的方法有哪些
    小编给大家分享一下HTML5中Canvas绘制时指定颜色与透明度的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 指...
    99+
    2024-04-02
  • Matplotlib绘制条形图的方法有哪些
    这篇文章主要介绍了Matplotlib绘制条形图的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Matplotlib绘制条形图的方法有哪些文章都会有所收获,下面我们一起来看看吧。import ...
    99+
    2023-06-29
  • CSS绘制三角形的方法有哪些
    本篇内容主要讲解“CSS绘制三角形的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS绘制三角形的方法有哪些”吧!使用 border 绘制三角形使用 border 实现三角形应该是大...
    99+
    2023-07-05
  • Android开发如何使用自定义View将圆角矩形绘制在Canvas上的方法
    这篇文章主要介绍了Android开发如何使用自定义View将圆角矩形绘制在Canvas上的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Android开发使用自定义Vie...
    99+
    2023-05-30
    android view canvas
  • python的文本处理方法有哪些
    今天小编给大家分享一下python的文本处理方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、字符串常量1.1、定...
    99+
    2023-06-04
  • java读取文本文件的方法有哪些
    Java读取文本文件的方法有以下几种:1. 使用FileReader和BufferedReader类:使用FileReader类读取...
    99+
    2023-09-20
    Java
  • python保存文本文件的方法有哪些
    Python保存文本文件的方法有以下几种:1. 使用open()函数和write()方法将内容写入文件:```pythonfile ...
    99+
    2023-09-13
    python
  • java将文本压缩的方法有哪些
    Java中可以使用以下几种方法来压缩文本: 使用GZIP压缩:使用Java内置的GZIPOutputStream类来实现文本的压...
    99+
    2023-10-23
    java
  • python运行脚本文件的方法有哪些
    本篇内容介绍了“python运行脚本文件的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!python脚本执行的3种方法:(找到自己...
    99+
    2023-07-02
  • jquery添加文本内容的方法有哪些
    jQuery添加文本内容的方法有以下几种:1. .text()方法:设置或返回所选元素的文本内容。例如:`$("p").text("新的文本内容");`2. .html()方法:设置或返回所选元素的HTML内容。例如:`$("p").h...
    99+
    2023-08-09
    jQuery
  • spark读取本地文件的方法有哪些
    在Spark中,可以使用以下几种方式来读取本地文件: 使用sc.textFile()方法读取文本文件: from pyspark...
    99+
    2024-04-02
  • python读取文本内容的方法有哪些
    在Python中,读取文本内容的方法有以下几种: 使用open()函数打开文件并读取内容: with open('fi...
    99+
    2024-04-02
  • SQL SERVER导出TXT文本文件的方法有哪些
    本篇内容主要讲解“SQL SERVER导出TXT文本文件的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQL SERVER导出TXT文本文件的方法有...
    99+
    2024-04-02
  • 在windows中删除文件的方法有哪些
    在Windows中删除文件的方法有以下几种:1. 使用资源管理器:打开资源管理器,找到要删除的文件,右键单击文件,选择“删除”或按下...
    99+
    2023-09-11
    windows
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作