html 小猪佩奇代码,HTML5之canvas画小猪佩奇~

博主分享了如何使用HTML5 Canvas和JavaScript来绘制动态小猪佩奇的详细过程,挑战了用CSS和SVG的方式,通过三次贝塞尔曲线精确描绘佩奇的轮廓。文章介绍了寻找控制点绘制平滑曲线的技巧,并实现了帧动画效果,赋予小猪佩奇动态生命力。同时,博主也表达了对儿童动画被过度调侃可能带来的负面影响的关注。
摘要由CSDN通过智能技术生成

看到有知乎网友用python和css画了一个小猪佩奇,我不一样,我用JavaScript画社会人。

小猪佩奇身上纹,掌声送给社会人!

38875201809252115398954.png

小猪佩奇原本是一部儿童动画片,但是在网友的各种调侃下,现在已经成为了社会人的标志,并且引发了众人的效仿。虽然在成年人看来是一种有趣时髦的调侃方式,但是对于还没有树立正确三观的小朋友们来说,的确会带来不良的影响。所以。。前段时间听说了抖音封杀小猪佩奇。

程序调试:我是用了html5新特性canvas,然后配合js画的。

从百度图片库随便找了张样图。。诺

由图片得知:小猪佩奇的主要由曲线构成,圆,椭圆,抛物线构成。我看到了有大佬用css的border-radius做,我小猪佩奇偏不!

e272e201809252119169818.png

有人说了,网上各种svg调试工具,可以在线画。。

那么简单,我小猪佩奇会答应吗??于是我准备用动画效果实现,一帧一帧的画。

技术实现:是观察上面我社会人的图可知,最适合画这个图的是贝塞尔曲线,因为佩奇轮廓曲线变化多端,于是就用了三次贝塞尔曲线,

context1.bezierCurveTo(control1x,control1y,control2x,control2y,endx,endy);通过两个控制点能更加精确的画出来。

11517201809252119268857.png

如这个头部,由一个半圆,加两条贝塞尔曲线构成,以此类推,每个部位都由若干条贝塞尔曲线构成。每条曲线找好两个控制点比较不容易,我也是用了一个晚上才画出比较平滑的曲线。其实这也是类似于ps的绘制路径。

但是,这个只能画静态图像,我小猪佩奇说好的动态图像呢!我就重写了bezierCurveTo()方法,通过每个像素控制绘画的进度,再用requestAnimationFrame()函数回调绘制方法。

最后再填充颜色:

// 皮肤颜色rgb(237,187,214);

// 描边颜色rgb(235,157,199);

// 身体颜色rgb(223,57,81);

// 身体描边rgb(159,28,76);

// 脸腮颜色rgb(249,147,213);

//鼻子颜色rgb(171,110,168)

最后,在放上整体的效果:

github源码:

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值