每年国庆节都会发现自己的好友头像加特效了,其实这种网站代码很简单,就是一个html单页替换下头像框就可以了。

<html lang="en">
<head>
<head>
  <meta charset='UTF-8'>
  <meta name='viewport' content='width=device-width,maximum-scale=1.0,minimum-scale=1.0'>
  <meta http-equiv='X-UA-Compatible' content='ie=edge'>
  <title>国庆头像在线制作</title>
  <link rel="shortcut icon" href="https://suyinwl.cn/tx/1.ico" type="image/x-icon"/>
  <style>
    a:link{color:#fff;text-decoration: none;}
    a:visited{color:#fff;}
    #export{display:none;margin:0 auto;width:250px;height:250px;margin-top:50px;margin-bottom:50px}
    .operation-btns .o-btn1{background-size:11.6rem 4.325rem}
    .operation-btns .o-btn2{background-size:11.6rem 3.75rem}
    center{color: #fff;}
  </style>
  <link rel="stylesheet" type="text/css" href="img/strap.min.css">
</head>
<body>
  <div class="wrapper">
    <img src="index.html" alt="" class="img-load" style="width: 9.5rem; position: fixed; top: 0px; left: -9999px;">
    <div class="operation-header">
      <div class="h-title">

</div>
    </div>
    <div class="operation-box">
      <a class="prev" onClick='changeHat()'></a>
      <div class="operation-img">
        <div class="cropper-content" id="content">
          <canvas class="" id='cvs'></canvas>
        </div>
      </div>
      <a class="next" onClick='changeHat()'></a>
    </div>
    <img id='export' alt='国庆专属头像' src='index.html' />
    <div class="operation-btns">
      <a class="o-btn1">
        <input class="o-btn1" id='upload' type='file' οnchange='viewer()' style='opacity: 0;'>
      </a>
      <a class="o-btn2" onClick='exportFunc()' style="display: none;">
      </a>
    </div>

<div class="operation-done">
      <img src="img/act-done-happy.png" alt="" class="act-done-happy">
    </div>
    <center>
      <a href="https://www.suyinwl.cn" target="_blank">国庆头像在线制作</a> 
     
    </center>
  </div>
  <div style='display: none'>
    <img id='img' src='index.html' alt='' />
    <img class='hide' id='hat0' src='img/hat7.png' />
    <img class='hide' id='hat1' src='img/hat0.png' />
    <img class='hide' id='hat2' src='img/hat2.png' />
    <img class='hide' id='hat3' src='img/hat3.png' />
    <img class='hide' id='hat4' src='img/hat1.png' />
    <img class='hide' id='hat5' src='img/hat4.png' />
    <img class='hide' id='hat6' src='img/hat5.png' />
    <img class='hide' id='hat7' src='img/hat6.png' />
  </div>
<script src="img/fabric.min.js"></script>
<script>
  var cvs = document.getElementById("cvs");
  var ctx = cvs.getContext("2d");
  var exportImage = document.getElementById("export");
  var img = document.getElementById("img");
  var hat = "hat0";
  var canvasFabric;
  var hatInstance;
  //var screenWidth = window.screen.width < 500 ? window.screen.width : 300;
  var screenWidth = document.getElementById("content").scrollHeight;
  function viewer() {
    var file = document.getElementById("upload").files[0];
    console.log(file);
    var reader = new FileReader;
    if (file) {
      reader.readAsDataURL(file);
      reader.onload = function(e) {
        img.src = reader.result;
        img.onload = function() {
          img2Cvs(img)
        }
      }
    } else {
      img.src = ""
    }
  }
  function img2Cvs(img) {
    cvs.width = img.width;
    cvs.height = img.height;
    cvs.style.display = "block";
    canvasFabric = new fabric.Canvas("cvs", {
      width: screenWidth,
      height: screenWidth,
      backgroundImage: new fabric.Image(img, {
        scaleX: screenWidth / img.width,
        scaleY: screenWidth / img.height
      })
    });
    changeHat();

document.getElementsByClassName("o-btn1")[0].style.display = "none";
    document.getElementsByClassName("o-btn2")[0].style.display = "block";
    //document.getElementById("tip").style.opacity = 1
  }
  function changeHat() {
    document.getElementById(hat).style.display = "none";
    var hats = document.getElementsByClassName("hide");
    hat = "hat" + (+hat.replace("hat", "") + 1) % hats.length;
    var hatImage = document.getElementById(hat);
    hatImage.style.display = "block";
    if (hatInstance) {
      canvasFabric.remove(hatInstance)
    }
    console.log(hatImage.width);
    console.log(100 / hatImage.width);
    hatInstance = new fabric.Image(hatImage, {
      top: 0,
      left: 0,
      scaleX: screenWidth / hatImage.width,
      scaleY: screenWidth / hatImage.height,
      cornerColor: "#0b3a42",
      cornerStrokeColor: "#fff",
      cornerStyle: "circle",
      transparentCorners: false,
      rotatingPointOffset: 30
    });
    hatInstance.setControlVisible("bl", false);
    hatInstance.setControlVisible("tr", false);
    hatInstance.setControlVisible("tl", false);
    hatInstance.setControlVisible("mr", false);
    hatInstance.setControlVisible("mt", false);
    canvasFabric.add(hatInstance)
  }
  function exportFunc() {
    document.getElementsByClassName("operation-box")[0].style.display = "none";
    document.getElementsByClassName("operation-btns")[0].style.display = "none";

/*document.getElementById("exportBtn").style.display = "none";
    document.getElementById("tip").innerHTML = "长按图片保存或分享";
    document.getElementById("change").style.display = "none";*/
    cvs.style.display = "none";
    exportImage.style.display = "block";
    exportImage.src = canvasFabric.toDataURL({
      width: screenWidth,
      height: screenWidth
    });
    alert('长按图片保存或分享');
  }
</script>
</body>
</html>

国庆头像html代码相关推荐

  1. 祖国生日快乐,个性化国庆头像合成

    在线直达地址: https://www.iloveimg.com/zh-cn/photo-editor 每逢节日,都会有一堆小工具刷屏,为用户头像加装饰,这些小工具,大多需要微信授权登录,收集用户信息 ...

  2. 国庆头像小程序源码,带独立版后台同时可添加小程序跳转+流量主,所有改动均可后台添加+带搭建教程

    微信小程序实现国旗头像,国庆个性化头像 国庆头像小程序源码,带独立版后台同时可添加小程序跳转+流量主,所有改动均可后台添加+带搭建教程 快去挑选一个自己喜欢的国庆头像吧,只需简单两步即可制作自己专属国 ...

  3. 8种bootstrap团队会员头像样式代码

    下载地址 8种bootstrap团队会员头像样式代码,基于bootstrap框架实现的会员头像图文描述,团队组成人员列表介绍,带css3鼠标悬停动画效果. dd:

  4. 微信小程序个性头像、国庆头像、新年头像、圣诞头像等合成

    微信小程序个性头像.国庆头像.新年头像.圣诞头像等合成 先看一下,整体效果,搜索微信小程序<我i头像> 微信小程序生成国庆头像工具,祝大家国庆快乐#国庆 1 操作与对应技术点 1 用 ca ...

  5. 2022国庆头像小程序最新可用源码

    正文: 实测搭建成功,功能没问题,明天国庆节了,可以提前布局了. 云开发国庆头像生成器,完整版,附带流量主接口,开发工具打开即可,需要添加合法域名,教程我都放文档里了,小白都能搭建,类目选择信息查询. ...

  6. 2022国庆头像制作iAPP安卓源码+附APP成品

    正文: 测试机型:安卓11系统,还在为没有办法制作国庆头像而担心吗,有这个这个头像制作器,就不用担心了,有源码,如果不需要源码直接用成品即可. 程序: wwgefu.lanzoub.com/iJNAU ...

  7. 【多功能小程序】古风姓氏圣诞国庆头像生成小程序源码

    多功能生成头像小程序 姓氏头像 圣诞头像 国庆头像 形状头像 公式头像 下载地址:

  8. php上传头像的代码,php头像上传预览实例代码

    说道上传图片,大家并不陌生,不过,在以后开发的项目中,可能并不会让你使用提交刷新页面式的上传图片,比如上传头像,按照常理,肯定是在相册选择照片之后,确认上传,而肯定不会通过form表单,点击submi ...

  9. 【Java】渐变头像生成-代码实现

    获取必不可少的工具类代码 imagetool: 图片转字符图片工具类,支持 Gif 动画.图片合并.图片加水印等图片处理其他工具类方法.详情请看https://gitee.com/xshuai/ima ...

最新文章

  1. jsPlumb之流程图项目总结及实例
  2. SAP ABAP里数据库表的Storage Parameters从哪里来的
  3. 【pmcaff专栏】项目管理失败?如何避免?
  4. boost::spirit::classic相关的测试程序
  5. @noi.ac - 488@ cleaner
  6. java 缘起_GraalVM 助力 Java 进入函数即服务时代
  7. iOS:图片上传时两种图片压缩方式的比较
  8. JavaScript-switch语句
  9. ubuntu 16.04安装网易云音乐
  10. (转)B-树、B+树、B*树
  11. 淘票票经典Python爬虫案例
  12. 三种最常用的日志分析软件
  13. 智慧交通篇 2 —— 公交刷卡(非接触IC卡)系统全透析
  14. php手册中的tokenizer详细总结,基本看它就够了
  15. DRM框架梳理-- dumb-buffer的分配和绑定到crtc
  16. 如何放慢selenium的运行速度
  17. PL0功能扩充(浮点数,数组,数组加减乘除等)
  18. MVP模式网络请求购物车
  19. 更专业的过等保服务,华为云等保合规解决方案值得选择!
  20. iOS开发 ☞ emoji表情大全

热门文章

  1. 五千来字小作文,是的,我们是有个HTTP。
  2. 多准则决策问题评估方法 | 层次分析法(含代码)
  3. python读取文件详解_python 文件读取方法详解
  4. 人大金仓命令行客户端工具KSQL系列1
  5. RLC元件上电压,电流关系
  6. 图片RGB转换为HSV
  7. Bootstrap CSS Layout (1) - Breakpoint
  8. 售电公司盈利模式,浅谈电力(运维)云平台运用
  9. apmserv mysql5.1启动失败_apmserv启动失败的原因以及解决方法
  10. java的自省机制_JAVA内省(自省)机制 ( Introspector , BeanInfo, PropertyDescriptor )