国产精品亚洲lv粉色-狼人青草久久网伊人-一区二区精品视频在线观看-国产靠逼视频-日本天天射-懂色av懂色av粉嫩av分享吧-国产特级黄色片-亚洲九九九九-操操操.com-国产激情高中生呻吟视频-最近中文字幕日本-国内精品久久久久久99-成年人在线观看视频-免费在线观看视频a-久久午夜国产-天天谢天天干-一区在线播放

情人節(jié)表白紅心跳動亂入canvas繪制圖和文字插件

  • 1386
  • 0
  • 0
情人節(jié)表白紅心跳動亂入canvas繪制圖和文字插件- 素材8
代碼實(shí)現(xiàn)說明

1.創(chuàng)建畫布與圖片

  1. // 創(chuàng)建畫布
  2. var ctx = canvas.getContext('2d');
  3. // 創(chuàng)建圖片對象
  4. var heartImage = new Image();
復(fù)制代碼

2.創(chuàng)建愛心對象

type參數(shù)為0就顯示隨機(jī)文字,否則只顯示愛心不顯示文字

  1. function Heart(type){
  2.     this.type = type;
  3.     // 初始化生成范圍
  4.     this.x = Math.random() * wW;
  5.     this.y = Math.random() * wH;

  6.     this.opacity = Math.random() * .5 + .5;

  7.     // 偏移量
  8.     this.vel = {
  9.         x: (Math.random() - .5) * 5,
  10.         y: (Math.random() - .5) * 5
  11.     }

  12.     this.initialW = wW * .5;
  13.     this.initialH = wH * .5;
  14.     // 縮放比例
  15.     this.targetScale = Math.random() * .15 + .02; // 最小0.02
  16.     this.scale = Math.random() * this.targetScale;

  17.     // 文字位置
  18.     this.fx = Math.random() * wW;
  19.     this.fy = Math.random() * wH;
  20.     this.fs = Math.random() * 10;
  21.     this.text = getText();

  22.     this.fvel = {
  23.         x: (Math.random() - .5) * 5,
  24.         y: (Math.random() - .5) * 5,
  25.         f: (Math.random() - .5) * 2
  26.     }
  27. }
復(fù)制代碼

3.通過愛心繪制方法在畫布上繪制愛心圖片的位置

  1. Heart.prototype.draw = function(){
  2.     ctx.save();
  3.     ctx.globalAlpha = this.opacity;
  4.     ctx.drawImage(heartImage, this.x, this.y, this.width, this.height);
  5.     ctx.scale(this.scale + 1, this.scale + 1);
  6.         if(!this.type){
  7.             // 設(shè)置文字屬性
  8.         ctx.fillStyle = getColor();
  9.             ctx.font = 'italic ' + this.fs + 'px sans-serif';
  10.             // 填充字符串
  11.             ctx.fillText(this.text, this.fx, this.fy);
  12.         }
  13.     ctx.restore();
  14. }
復(fù)制代碼
  1. // 愛心變動
  2. Heart.prototype.update = function()
復(fù)制代碼

4.使用定時器實(shí)時繪制愛心

  1. function render(){
  2.     ctx.clearRect(0, 0, wW, wH);
  3.     for(var i = 0; i < hearts.length; i++){
  4.         hearts[i].draw();
  5.         hearts[i].update();
  6.     }
  7.     requestAnimationFrame(render);
  8. }
復(fù)制代碼





情人節(jié)表白紅心跳動亂入canvas繪制圖和文字插件
  • 鑫森展示 剛剛下載了一個素材
  • 61761 剛剛下載了一個素材
  • 星辰青春時光O 剛剛下載了一個素材
  • NaiHe 剛剛下載了一個素材
  • 豐豐富富 剛剛下載了一個素材
  • 月亮是我啃彎的o 剛剛下載了一個素材
  • 領(lǐng)帆網(wǎng)絡(luò)李巖15357913151 剛剛下載了一個素材
  • 李迎波 剛剛下載了一個素材
  • qqvWK7 剛剛下載了一個素材
  • 沒找好下家還不知道叫啥 剛剛下載了一個素材
  • 晨暉 剛剛下載了一個素材
  • 紫冰之蕭 剛剛下載了一個素材
  • 保持清醒! 剛剛下載了一個素材
  • 光明使者 剛剛下載了一個素材
  • 04388 剛剛下載了一個素材
分享者:
分享者頭像
小編
熱門素材推薦
HTML素材網(wǎng),HTML5模板,網(wǎng)頁特效 微信公眾賬號二維碼 淘寶店鋪地址二維碼
Copyright©2025  素材8  Powered by 智伙伴科技
   魯ICP備14029286號-5 魯公網(wǎng)安備37060202001967號
返回頂部返回頂部
發(fā)布主題
环江| 黔西县| 托克逊县| 大渡口区| 清水河县| 颍上县| 晋江市| 丹东市| 北京市| 横山县| 萍乡市| 毕节市| 津市市| 阜平县| 三台县| 汉寿县| 伊川县| 白城市| 仙游县| 玛纳斯县| 祥云县| 肇东市| 恩施市| 印江| 民乐县| 东城区| 平和县| 平定县| 宁陵县| 闻喜县| 安溪县| 柏乡县| 吴旗县| 苍溪县| 墨江| 淮北市| 绍兴县| 天柱县| 咸宁市| 搜索| 峨山|