html转图片/html2canvas的使用/星座测试/类似于损友圈的活动
https://try.fishqc.com/Activity/constellation ---成品
电脑上录的gif
有借鉴的链接,很多,下面这个还不错~先别看,尊重下我先~~~~
https://juejin.im/post/5a17c5e26fb9a04527254689
需求:
点击那个长按保存的按钮,将上方的测试报告保存到手机相册~
第一步:
如何将html转成图片?
a.先随便下载一个到一个文件夹里面 http://html2canvas.hertzen.com/
npm install --save html2canvas
然后在把这个html2canvas.min.js放到你的项目里面
b.开始转化
<div class="button7" style="padding: 0 3%;"> <div id="saveThePic"><div><a href="javascript:;"><img src="/img/star/resultSave.png" alt="" id="other" style="width:100%" id="getWidth"></a></div><div id="test"><div><a href="javascript:;"><img src="/img/star/resultSave.png" alt="" style="width:100%"></a></div><div class="button10"><a href="javascript:;"><span class="authorTitle" style="color: #10302c;">{{@getUserName}}的脱单幸运物</span></a></div><div class="button15"><a href="javascript:;"><span class="authorTitle15">{{@getProductName}}</span></a></div><div class="button13"><a href="javascript:;"><img ms-attr="{src:@getProductImg}" alt="" class="indexTitle indexTitleGetPic" ></a></div><div class="button11"><a href="javascript:;"><span class="feelingExplain" >{{@getUserName}}{{@getContentInsert}}</span></a></div><div class="button12"><a href="javascript:;"><span class="feelingExplain" >{{@getStarInsert}}</span> </a></div><div class="button14"><a href="" href="javascript:;"><img src="/img/star/code.png" alt="" class="indexTitle indexTitleGetCode" ></a></div> </div></div> </div>
var getheight=$('#getWidth').height()//这里我是将那张需要保存的所有元素里面的背景图.
window.onload=function(getheight){ //这里的转化我是进入页面加载所有的完了就开始转,其实应该做一个load更好~takeScreenshot("saveThePic","filename.png",'other','test',getheight)//saveThePic是保存的图,这里要写一个下载的图片后缀哦/other是这个saveThePic下面的图/test是这个需要转成图片的代码子元素
}
function takeScreenshot(creatId,filename,otherId,testid,getheight) {html2canvas(document.getElementById(creatId)).then(function(canvas) { var imgUri = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream"); // 获取生成的图片的url var saveLink = document.createElement( 'a'); var other=document.getElementById(otherId) $('#'+testid).hide() $('#'+otherId).show() // $('#'+creatId).css("height", getheight+'px') other.src=imgUri; saveLink.click(); })
}
解释一下html吧.这里需要注意的就是resultSave.png是一张背景图,然后背景图上面定位了一下文字图片,二维码等等,这个二维码也是我用软件直接转成的图片导进来的.
我是等cavans的图片转化成功之后,将所有要转化的图片隐藏(对应id为test),再之前我会先获取resultSave.png的高度,把他的高度赋给saveThePic的高度.转化后的img一定要写高度
还有就是在pc端确实可以进行图片下载,但是在手机端不会点击一个按钮自动保存的,我看了一篇文章说,把那张转化要的图浮在button上,然后透明度opacity设为0,但是还是在手机上会有点问题,所以我还觉得用户自己保存图片比较好~
试了很久,觉得现在的实现其实还可以,你也可以把这个效果图给你们产品看,早日改需求吧~~~
如果硬是要实现,可以 考虑,先直接渲染,然后定位到按钮那里长按保存试试,因为刚开始我是试的点击再长按 ~~~加油~
七夕快乐,注意保护身体健康哦,乖~
转载于:https://www.cnblogs.com/antyhouse/p/9473641.html
html转图片/html2canvas的使用/星座测试/类似于损友圈的活动相关推荐
- Java实验作业13(星座测试系统)
把这学期的Java作业整理了一下,有十几次实验作业吧,连续更新. 文章目录 1.根据输入的数字求两数之和 1)使用输入类(Scanner)要求用户输入2个整数 2)求这两个整数的和并打印输出如图 2. ...
- Python自学笔记10:实操案例七(根据星座测试性格特点、模拟12306火车订票下单)
Python自学笔记10:实操案例七(根据星座测试性格特点.模拟12306火车订票下单) 网课传送门:https://www.bilibili.com/video/BV1Sw411Z779?p=157 ...
- python--根据星座测试性格特点-列表/模拟12306火车订票下单 --字典
根据星座测试性格特点---列表转成--集合 #创建星座列表 constellation=['白羊座','金牛座','双子座','巨蟹座','狮子座','处女座','天秤座','天蝎座','射手座',' ...
- JavaScript星座测试:输入你的月份和日期,输出你是哪个星座的人
星座测试:输入你的月份和日期,输出你是哪个星座的人 <script type="text/javascript">var month=prompt("请输入月 ...
- 微信小程序,线上打不开图片或文件,但是测试环境可以
最近发现一个问题,就是小程序展示一个网络图片,在本地测试什么问题没有,但是到了线上就显示不出来. 打开console,可以发现红色报错如"downloadFile:fail url not ...
- 课程设计题目:图片服务器项目的全面测试
源包地址:(32条消息) 软件测试课程设计或者大作业-图形服务器-软考文档类资源-CSDN文库 目录 注意:很多图都上传不上去,懒得上传了,自己打开源包里面啥都有 一.课程设计内容 1 二.课程设计 ...
- “性格测试”刷爆朋友圈 小心隐私泄露
@公安部打四黑除四害截图提醒,警惕"性格测试". 前两天,只要打开微信,你很可能发现自己的朋友圈被刷屏了.一夜之间好像大家都在玩儿性格测试,在一张黑色的图片中,五颜六色的文字显示这 ...
- 将html保存为图片,html2canvas 将html代码转为图片并保存下来
html2canvas 将html代码转为图片并保存下来 发布时间:2018-05-22 10:15, 浏览次数:421 , 标签: html canvas 只是测试了下,在 谷歌和360上都可以,但 ...
- Lodop导出图片和打印机无关,测试是否有关
Lodop导出的图片,既可以在预览界面另存为,也可以用语句导出. 语句导出,可查看本博客的相关博文:Lodop导出图片,导出单页内容的图片 预览的时候,由于选择的打印机不同,而真实的打印机可能有不同的 ...
最新文章
- tensorflow1
- python tkinter 循环显示文本_Python简易音乐播放器
- BeetleX自定义http/websocket压测用例视频
- async,await执行流看不懂?看完这篇以后再也不会了
- 为QT添加qss样式文件
- 团队作业4——第一次项目冲刺(Alpha版本)4.25
- 国内最火的 HTML、CSS、JavaScript 开源项目 Top 榜,你知多少?
- Tensorflow-slim 学习笔记(一)概述
- python用turtle调整文字位置_Python内置模块turtle绘图详解
- \r,\n,\r\n的问题分析
- telnet php,使用php实现telnet功能
- 常见反爬虫手段及应对策略
- 杭电、POJ、ZOJ ACM刷题顺序和题目分类详解
- 结构设计——常用机械设计软件对比
- 唐门暗器之私有云排名
- 对其他小组作评的评价
- 一个很好用的vue表单工具,快速进行表单开发
- 《算法竞赛中的初等数论》(一)正文 0x00整除、0x10 整除相关(ACM / OI / MO)(十五万字符数论书)
- readlink 获取进程的绝对路径
- LVGL-gui_user.h
热门文章
- 核桃编程学员对话诺贝尔奖得主 用童心预见未来 探讨人工智能发展
- 2019 数学建模国赛 C 题思路
- RecyclerView之使用ItemTouchHelper实现交互动画
- 手游开发神器 cocos2d-x editor 教程聚合和代码下载(持续更新中)
- java微信小程序授权微信登录获取手机号
- 获取当前时间的东八区时间
- day21|216.组合总和III、17.电话号码的字母组合
- 专业范儿的图表,打造专业范儿的技术人PPT
- Spring:applicationContext.xml的头文件信息
- 京东换新 Logo :脸蛋胖了,脖子粗了