当前位置: 首页 > news >正文

网站开发建设费用百度搜索排名购买

网站开发建设费用,百度搜索排名购买,甘肃住房建设厅的网站首页,加强机关网站内容建设开始: 最终结果: 1. html2canvas方法生成的图片地址已Base64编码形式放在img标签src中可直接展示生成的图片(注意页面标签获取位置,还有个setTimeout页面渲染需要时间) setTimeout(function () {var result {};v…

开始:                                                  最终结果:          

 

                                       

1. html2canvas方法生成的图片地址已Base64编码形式放在img标签src中可直接展示生成的图片(注意页面标签获取位置,还有个setTimeout页面渲染需要时间)

setTimeout(function () {var result = {};var htmlContent = document.getElementById("cockpit-drag");html2canvas(htmlContent,{background:`${htmlContent.style.backgroundImage}`,useCORS: true,// height:'100%',// scale: 2, // 处理模糊问题// dpi: 300, // 处理模糊问题}).then(function (canvas) {var imgData = canvas.toDataURL('image/png');var img = document.createElement("img");img.src = imgData;console.log(img);document.body.appendChild(img);
},3000)

2. 直接发给后端存储也可以  但是不严谨而且 Base64编码很长,有一个文件那么长  (正常已二进制file流的形式传输),所以我们要把Base64编码变成二进制流的形式,也是查了很多资料,踩了很多坑,做了很多尝试,最终成功和大家分享一下

   2-1. 需要先把生成的Base64编码转成blob(查了很多,网上这个方法都很统一,所以不会出大问题,以至于这个blob是什么不太懂 , 能用就行呀)

下边是var一个:blob方法 ↓↓↓↓↓↓↓↓↓↓↓↓

  var dataURLtoBlob =   function (dataurl){var arr = dataurl.split(','),mime = arr[0].match(/:(.*?);/)[1],bstr = atob(arr[1]),n = bstr.length,u8arr = new Uint8Array(n);while (n--) {u8arr[n] = bstr.charCodeAt(n);}return new Blob([u8arr], { type: mime })}

在这个位置调用   ↓↓↓↓↓↓↓↓↓↓↓↓

        2-2. 再把生成的blob转成二进制流(查了很多,网上这个方法都很杂,所以当时很蒙,只能不断尝试,各种踩坑,最终功夫不负有心人)

把blob转成二进制流的方法(这个东西打印有自己的方法,log打印不出来,想提升的同学再去多查查吧,今天不在这里说了

const formData = new FormData()formData.append('file',blob) 

直接写在这个位置就能用  ↓↓↓↓↓↓↓↓↓↓↓↓

OK,现在二进制流已生成 ,万事俱备(直接把formData作为参数传进接口里就可以用了)

接下来老规矩上完整代码  复制粘贴可用的(我用的是angular项目所以比较老,自己改一下红色方框位置,放接口就好)

图例:

代码:可复制

setTimeout(function () {var result = {};var htmlContent = document.getElementById("cockpit-drag");html2canvas(htmlContent,{background:`${htmlContent.style.backgroundImage}`,useCORS: true,// height:'100%',// scale: 2, // 处理模糊问题// dpi: 300, // 处理模糊问题}).then(function (canvas) {var imgData = canvas.toDataURL('image/png');var blob = dataURLtoBlob(imgData);const formData = new FormData()formData.append('file',blob) var xmlhttp = new XMLHttpRequest();xmlhttp.open("POST", url_+"dashboard/uploadImage", false);xmlhttp.send(formData);$scope.$apply(function () {$scope.persistFinish = true;});//   var img = document.createElement("img");//   img.src = imgData;// console.log(img);//   document.body.appendChild(img);});}, 3000)

大功告成,在大前端的路上又有点进步

 

http://www.yidumall.com/news/80581.html

相关文章:

  • 瓯海网站建设广州网站seo推广
  • 做网站和APP需要注册公司吗全渠道营销成功案例
  • 帮网站做推广赚钱排名优化是怎么做的
  • 男女做那事是什 网站营销渠道
  • 南京做网站工作室今天的新闻 联播最新消息
  • 用WordPress做网站入门课营销渠道策划方案
  • 访客浏览网站 网站怎么跟踪怎么联系百度客服人工服务
  • web开发基础期末自测题答案湖南企业seo优化报价
  • 网站开发投入产出分析刚刚突发1惊天大事
  • 做网站前端用什么语言青岛seo网络优化公司
  • 上海免费网站建站模板哪里可以接广告
  • 顺德建网站百度搜索引擎的原理
  • 做网站的行情拉新app推广平台排名
  • 做网站能挣多少钱网站网络推广公司
  • 想自己搭建网站得怎么做软文范例300字
  • 海东营销网站建设最新百度关键词排名
  • 名贵中药材初加工平台百度seo霸屏软件
  • 信息公司网站建设方案 游戏安阳企业网站优化外包
  • 大连网站建设求职简历合肥网站关键词排名
  • 论坛类网站如何备案湖南长沙疫情最新消息
  • 怎么做可以把网站图片保存下来吗站内优化怎么做
  • 网站后台怎么做友情链接seo推广优化
  • 无锡网站建设技术广州网站优化服务商
  • 淄博网站建设优化seo适合小学生的新闻事件
  • 黔江网站建设网络营销的四个特点
  • 营销型网站建设成为企业发展新趋势广西疫情最新消息
  • 做网站要注册第35类商标吗百度seo点击排名优化
  • 栅格系统做的网站seo网站快速排名软件
  • 天涯武汉论坛seo优化招聘
  • 无锡在线制作网站百度广告联盟下载