首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

创建canvas设置canvas尺寸绘制图形Canvas

= window.innerWidth; canvas.height = window.innerHeight; 绘制图形 一、矩形(Rect) 1、实心矩形(fillRect) 绘制实心矩形最简单的是用..., 90); 效果: image.png 二、文字(Text) 1、实心文字(fillText) 绘制文字也是canvas的基本功能,实心文字可以使用 fillText(text, x, y [,...js: // 设置绘制颜色 ctx.fillStyle = 'purple'; // 设置字体 ctx.font = '30px Arial'; // 绘制实心颜色 ctx.fillText('Hello...配合 requestAnimationFrame 可以很方便的实现一些动画效果,比如实现一个从左往右移动的动画: js: /** * 定义 */ const circle = { x: 30...requestAnimationFrame(update); } 效果: image.png Codepen预览 或者我们可以实现用键盘控制的移动: js: /** * 定义 */ const

4.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

Android自定义View-记录一个简单却又常见的效果实现

按照当前进度计算出扫过的弧度来画一个圆弧 以第二步的圆弧结束位置为坐标,画两个大小不同的实心,达到设计效果 分别画三行文字 第三步中,在确定圆弧终点位置的时候用到了三角函数,这里简单画了一个图,很好理解...三角函数计算圆弧终点位置坐标 以顶点为起点,半径为r,圆弧扫过的角度为α。 代码 简单列下主要代码,完整代码地址放在了文字末尾。...outerCirclePaint,//画进度圆弧 endCirclePaint,//画终点实心大圆 endCirclePaint2...,//画终点实心小圆 titlePaint,//画第一行文字 numPaint,//画第二行文字 unitPaint;//画第三行文字...3.在onDraw方法中实现绘制操作 @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas)

69220

Android绘制圆形百分比加载圈效果

自定义这样的圆形加载圈还是比较简单的,主要是用到Canvans的绘制文本,绘制和绘制圆弧的api: /** * 绘制 * @param cx 圆心x坐标 * @param cy 圆心y...1/2,即刚好位于矩形区域的中心点. 3.绘制圆弧,注意这里的圆弧指的是进度圈,看上面的示例图是有2种样式,分别是实心的加载圈和空心加载圈,这个其实就是paint的样式决定,如果是实心,paint设置为...canvas) { drawBackground(canvas); drawCircleRing(canvas); drawProgressText(canvas); } /** * 绘制背景色 *...progress) { this.progress = progress; invalidate(); } /** * 设置进度圆环的样式 * * @param isRing true是空心的圆环,false表示实心的圆环...CircleProgressView) findViewById(R.id.progressView); mCircleProgressView.setCircleRingStyle(false);//实心

1.5K20

HTML5-Canvas之矩阵和多边形的绘制(2)

上篇文章我们了解了canvas的定义、获取和基础的绘图操作,其中的绘图功能我们讲解了线段绘制、上色、描边等方面知识点。 今天我们来讲讲矩形(Rectangle)和多边形的绘制。...而 fillRect 表示绘制一个实心矩形,strokeRect 表示绘制一个描边矩形,我们来一个简单的例子: 效果如下 ---- 你也可以使用 Rect( x, y, width, height...在canvas上,给实心对象上色可以用 fillStyle 来定义,给描边对象上色我们可以用 strokeStyle来定义,它们的赋值均为 color|gradient|pattern ,在上章我们已经细说过...那么我们来给上方绘制了的实心矩形填充一个放射状渐变(黄-蓝-红),将描边矩形的描边设为绿色。...但canvas在这里加入的“半径”参数还是有一定作用的,可以创造出比PS中径向渐变稍微复杂一些的效果。

1.3K20

Android自定义控件实现带数值和动画的圆形进度条

下部分是三个小的圆弧进度条,弧的末端绘制一个小的实心 首先选好坐标和半径,然后先绘制三个圆环作为弧形进度条的背景 之后从12点钟开始绘制进度弧,知道了圆环的圆心和半径,也知道了弧对应于12点钟和圆环圆心的偏移角度...通过三角函数可以计算出进度弧终点坐标,以进度弧终点坐标为圆心绘制一个小的实心即可 动画效果通过Handler的postDelayed方法触发重绘即可实现 在项目中的效果如图所示: ?..., paint);//画DRAW背景 canvas.drawCircle(circleXs[2], circleY, small_radius, paint);//画LOSE背景 /*更改画笔颜色,...small_radius, circleY + small_radius), 270, theta_values[2], false, paint);//画LOSE圆形进度条 /*绘制圆弧结束处的小圆点,实心...*/ paint.setStyle(Paint.Style.FILL); /*已知半径、圆心位置、便宜角度,根据三角函数很方便计算出小实心圆圆心坐标*/ canvas.drawCircle(circleXs

1.2K30

Android 自定义View 画圆(奥运五环)

setTypeface 设置字体,Typeface包含了字体的类型,粗细,还有倾斜、颜色等 setUnderlineText 设置下划线 setStyle 设置画笔样式 ,常用的有Paint.Style.FILL(实心...void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint = new Paint();//创建画笔对象...,这个时候你运行一下,就会看到一个黑色的空心 然后再修改一下代码,画一个实心 再运行一下 **canvas.drawCircle(150,150,100,paint);**表示圆心在横坐标和纵坐标都为...150的位置,以半径为100画一个,可以把这一行代码复制四次,然后改变半径的大小,为了看到效果,还是画空心 然后运行一下,就可以看到 是不是觉得有点意思了。...我们试着画两个挨着,如果是横向挨着就要使一个的圆心横坐标位置等于另一个的圆心横坐标加上直径的和,刚才我们看到一个横坐标是150,半径是100,那么结果很明显第二个的圆心的位置就是350,这次我们不改变半径大小

1.3K41

自定义View实战(二)QQ健康水滴形加载

实现思路: 1.首先我们仔细看看这效果图的灰色背景, 你就会说,什么水滴形,不就是个和三角形吗! 对嘛,你看,这不就简单了吗,绘制一个实心和三角形。...设置画笔颜色和样式 mPaint.setColor(0xFFDEE0DD); mPaint.setStyle(Paint.Style.FILL); //绘制...canvas.drawCircle(pointerX, pointerY, mRaduis, mPaint); //绘制顶部三角形 mPath.moveTo...; mPath.lineTo(mTriangleX3, mTriangleY3); //lineto起点 mPath.close(); canvas.drawPath...2.然后就是中间那些蓝色的东西,仔细看看,是不是感觉像一个越来越大的实心弧形,最后那里就是一个小三角形。 画弧,就是上一个汽车仪表盘里面的速度区域的扇形一样,只是去掉了到圆心的一部分。

26640
领券