圣诞临近,小包送给大家一个雪人,一群麋鹿,一堆糖果,一句祝福,圣诞快乐!

简介: 圣诞临近,小包送给大家一个雪人,一群麋鹿,一堆糖果,一句祝福,圣诞快乐!

前言


圣诞快要来临了,几天前小包设想了一个巨好的创意(自我感觉自我感觉🎈),但昨天中午突然灵光一动,有了新点子,圣诞前估计是不能预期交付了,那就元旦见吧~~~。


于是小包就改变了主意,大创意做不了,就来点小零头。本来想画个圣诞树,但顶不住圣诞树界实在太卷了,已经有诸多大佬绘制出各种奇思妙想的圣诞树,非常的好看,非常的炫酷。例如:


image.png


所以小包准备另辟蹊径,脱离树卷界,来实现一些圣诞的周边,比如雪人,麋鹿,以及给大家送上精心准备的糖果和小包的祝福语。本文核心是祝福,祝福大家开开心心、快快乐乐,高举不卷大旗,我辈义不容辞!


雪人


雪人主要由三部分组成: 树、雪人、雪花。


树是由简单三角形和矩形实现的,实现起来比较简单。


雪人也是由简单的图形构成的,但具体实现还是有几分趣味和可爱的,比如雪人的嘴唇其实就是字母 C 配合 -90deg 的旋转实现,雪人的小手配合 :before/:after 伪类实现。


雪花的实现没有借助 JS ,使用 animationinfinite 属性实现。


静态效果图


image.png

麋鹿


小包本来想模仿画一下麋鹿,但发现属实没有这本事啊,不止画不出来,连麋鹿都联想不出来💔。


麋鹿象征着吉祥,圣诞周边麋鹿可是必需品啊。因此小包找到一些巨佬绘制的麋鹿,送给大佬们,希望圣诞节那天,七彩麋鹿会拉着圣诞老人满足你所有的愿望。


麋鹿与圣诞老人


示例说明:三只麋鹿拉着圣诞老人在雪花中奔跑

示例来源: Merry Christmas


Gif 动态效果图


image.png

可爱麋鹿


示例说明:一只可可爱爱的小麋鹿

示例来源: the red-nosed reindeer


静态效果图


image.png

呆呆麋鹿


示例说明:一只呆呆萌萌的小麋鹿

示例来源: CSS Rudolph


静态效果图


image.png

炫酷麋鹿


示例说明:基于SVG实现的炫酷麋鹿

示例来源: crazyLowPolyDeer


Gif 动态效果图


image.png

糖果


糖果是小包在文字粒子的基础上实现的,图片选取了一张小包特别喜欢的,糖果比较多的图片,通过粒子组装完成。


实现思路


图片例子与文字粒子实现大同小异,核心在于副画布由绘制文字修改为绘制图片,主要难点在于处理图片,一方面图片存在跨域问题,需要设置 image.crossOrigin = "Anonymous" 属性;另一方面,图片加载是个异步过程,因此使用 Promise 进行异步处理。


接下来的流程与文字粒子相同: 提取像素,根据像素绘制粒子,设计粒子的运动函数,生成最后的动画即可。


// 初始化副画布,并绘制图片
function initCanvas(ctx, { width, height }) {
    var image = new Image();
    image.src = "candy.jfif";
    image.crossOrigin = "Anonymous";
    return new Promise((res) => {
        image.onload = function () {
            ctx.drawImage(image, 0, 0, width, height);
            //将图片按像素写入画布
            res();
        };
    });
}
复制代码


动图加载过程中,大家可以猜猜小包给大家准备了几块糖啊?


Gif 动态效果图


image.png

祝福语


接下来送上小包亲手写的祝福,虽说字写得一般啊,但情谊十足啊。


image.png

拉个票:明天就是年度优秀创作者的评选了,有喜欢小包的别忘了给小包投一票啊


源码仓库


源码地址: 圣诞周边


如果感觉有帮助的话,别忘了给小包点个 ⭐ 。




相关文章
|
10月前
|
C语言
【每日一道智力题】之高楼扔只因蛋
【每日一道智力题】之高楼扔只因蛋
130 0
|
存储
妈,旧电脑连加法都算错了,我要换新的
妈,旧电脑连加法都算错了,我要换新的
L2-029 特立独行的幸福 (25 分)
L2-029 特立独行的幸福 (25 分)
178 0
|
算法 索引
双指针算法详解——朋友跨年陪女友我陪算法
正片开始👀 双指针👏 首先咱得知道何为双指针,听起来很上流,其实有手就行。
双指针算法详解——朋友跨年陪女友我陪算法
|
开发者 人工智能 云栖大会
除了吃月饼,中秋节还能干啥?
明天 八月十五,团圆夜,花好月圆之际,除了吃月饼,还能干啥?阿里妹带来双重好礼,陪你过中秋~
7384 0
|
程序员
一辈子交186万五险一金!退休你能拿回多少?算完惊呆……
不知道大家有没有算过,从毕业工作一直到退休,每个月缴纳的五险一金和个税,加起来一共有多少钱? 小编帮你算了一下,貌似可以整套房了…… 那你退休几年后能回本呢? 按2017年上海职工平均工资(6504元)来计算每月缴纳的五险一金和个税如下 im...
1158 0