用canvas画布画一个圆形的进度条,里面的数字是模糊的怎么解决?谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用canvas画布画一个圆形的进度条,里面的数字是模糊的怎么解决?谢谢相关的知识,希望对你有一定的参考价值。

int main()//主函数,用来接受命令

char cmd;
do

printf("\\n\\t\\t****************************\\n");
printf("\\t\\t** 1 EDIT **\\n");
printf("\\t\\t** 2 HELP **\\n");
printf("\\t\\t** 3 ABOUT **\\n");
printf("\\t\\t** 4 EXIT **\\n");
printf("\\t\\t****************************\\n");
printf("\\n\\n请选择1,2,3,4:");
cmd=getche();
switch(cmd)

case \'4\' : system("cls"); byebye(); break;
case \'2\' : system("cls"); HELP(); cmd=0; break;
case \'3\' : system("cls"); ABOUT(); cmd=0; break;
case \'1\' : EDIT(); cmd=0; break;
default : printf("\\n\\n\\n!!!输入错误!!!\\n");

while(cmd!=\'4\');
return 0;
参考技术A

这种吗?

http://blog.csdn.net/tangdou5682/article/details/52778766

这个博客有源代码

H5 canvas圆形的时钟

   今天用H5中的canvas标签做一个时钟,H5中有很多好用的新增标签,真的很不错。

   1.canvas标签介绍

           <canvas> 标签定义图形,比如图表和其他图像,你必须使用脚本来绘制图形。在画布上(Canvas)画一个红色矩形,渐变矩形,彩色矩形,和一些彩色的文字。

                

          HTML5 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成.不过不是所有的浏览器都支持这个标签的,支持的有谷歌4.0,ie9.0,火狐2.0等


 

   2.时钟的绘制第一步

        在html中添加以下代码,一个宽高都是100的画布。

<canvas id="myCanvas" width="100" height="100"></canvas>

 


 

 3.用js开始绘制钟表

<script type="text/javascript">
     var myCanvas = document.getElementById(\'myCanvas\');
     var c = myCanvas.getContext(\'2d\');
     function clock(){
         c.clearRect(0,0,100,100);
         var data = new Date();
         var sec =data.getSeconds();
         var min =data.getMinutes();
         var hour=data.getHours();

         c.save();
         c.translate(50,50);
         c.rotate(-Math.PI/2);
         //分钟刻度线
         for(var i=0;i<60;i++){    //画12个刻度线
             c.beginPath();
             c.strokeStyle = "#f00";
             c.lineWidth = 1 ;
             c.moveTo(45,0);
             c.lineTo(40,0);
             c.stroke();
             c.rotate(Math.PI/30); //每个6deg画一个时钟刻度线
             c.closePath();
         }
         //时钟刻度线
         for(var i=0;i<12;i++){    //画12个刻度线
             c.beginPath();
             c.strokeStyle = "#000";
             c.lineWidth = 2 ;
             c.moveTo(45,0);
             c.lineTo(40,0);
             c.stroke();
             c.rotate(Math.PI/6); //每个30deg画一个时钟刻度线
             c.closePath();
         }
         //外表盘
         c.beginPath();
         c.strokeStyle = "pink";
         c.arc(0,0,55,0,Math.PI*2);
         c.lineWidth = 16 ;
         c.stroke();
         c.closePath();

         //画时针
         hour = hour>12?hour-12:hour;
//                console.log(hour);
         c.beginPath();
         c.save();
         c.rotate(Math.PI/6*hour+Math.PI/6*min/60+Math.PI/6*sec/3600);
         c.strokeStyle = "yellowgreen";
         c.lineWidth = 4 ;
         c.moveTo(-25,0);
         c.lineTo(40,0);
         c.stroke();
         c.restore();
         c.closePath();


         //画分针
//                console.log(min);
         c.beginPath();
         c.save();
         c.rotate(Math.PI/30*min+Math.PI/30*sec/60);
         c.strokeStyle = "springgreen";
         c.lineWidth = 3 ;
         c.moveTo(-15,0);
         c.lineTo(40,0);
         c.stroke();
         c.restore();
         c.closePath();


         //画秒针
         c.beginPath();
         c.save();
         c.rotate(Math.PI/30*sec);
         c.strokeStyle = "red";
         c.lineWidth = 2 ;
         c.moveTo(-20,0);
         c.lineTo(40,0);
         c.stroke();
         c.restore();
         c.closePath();

         c.restore();
     }
     clock();
     setInterval(clock,100);
 </script>

   


 

   4.得到下图的效果

         

         时钟已经画完了,关于形状和颜色可以自己再修改的。这个标签的很多使用方法我就不一一的说了,下面这个地址,大家可以查看的                     http://www.runoob.com/html/html5-canvas.html

 

       

以上是关于用canvas画布画一个圆形的进度条,里面的数字是模糊的怎么解决?谢谢的主要内容,如果未能解决你的问题,请参考以下文章

新手用canvas画布画啥比较好

canvas动态画圆弧及requestAnimationFrame

canvas动态画圆弧及requestAnimationFrame

canvas用这个属性来画组合图形

Android 自定义漂亮的圆形进度条

iOS 环形下载进度条