js使用html2canvas 生成图片然后下载
首先去官网把这个JS下载下来
<!DOCTYPE html> <html lang="en"> <head> <title> </title> <meta name="renderer" content="webkit"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="format-detection" content="telephone=no"> <link rel="stylesheet" href="{:__STYLE__}css/x-admin.css" media="all"> </head> <style type="text/css"> .contanie{ /*background: pink;*/ font-size: 16px; width: 100%; } .contanie .fonter_code{ position: fixed; bottom: 0; right: 0; background: red; display: block; background: #fff; width: 100%; } .fonter_code button{ float: right; } .code_title{ min-height: 90px; background: #ff9f0f5e; font-size: 40px; width: 100%; text-align: center; font-weight: 700; font-family: monospace; } .code_title_footer{ min-height: 90px; background: #fff; font-size: 20px; width: 100%; text-align: center; display: inline-block; } .code_conter_qr{ min-height: 400px; background: #fff; text-align: center; /*padding: 0 30px; */ margin: 0 50px; border-bottom: 1px solid #ffd9229c; } .code_conter_qr img { width: 250px; height: 250px; display: block; margin: 0 auto; border: 1px solid #ffd9229c ; border-radius: 6px; } .code_span_title{ font-weight: bold ; font-size: 65px; display: block; padding: 20px 0; } .code_title_footer .code_qr_code span{ font-size: 16px; font-weight: bold; } .code_qr_code img{ width: 40px; display: inline-block; padding: 0 5px; } .code_qr_code{ line-height: 90px; } </style> <body> <div class="contanie"> <div class="contet_code" id="upload_code"> <div class="code_title"> <span style="line-height: 90px;"> {$data['bname']} 收钱码 </span> </div> <div class="code_conter_qr"> <div class="code_span_title"> <span>在此扫码付款</span> </div> <img src="{:__UPLOAD__}{$data['img']}"> </div> <div class="code_title_footer "> <div class="code_qr_code"> <span>支持付款方式:</span> <img src="{:__UPLOAD__}imgs/zfb.png"> <img src="{:__UPLOAD__}imgs/wx.png"> </div> </div> </div> <div class="fonter_code"> <button type="button" class="layui-btn layui-btn-normal" onclick="onsubmint()"> 下载</button> </div> </div> <script src="{:__STYLE__}lib/layui/layui.js" charset="utf-8"></script> <script src="{:__STYLE__}js/x-layui.js" charset="utf-8"></script> <script src="{:__STYLE__}js/jquery.min.js" charset="utf-8"></script> <script src="{:__STYLE__}js/html2canvas.js" charset="utf-8"></script> <script type="text/javascript"> function onsubmint(){ html2canvas(document.querySelector("#upload_code")).then(canvas => { var pageData = canvas.toDataURL('image/jpeg', 1.0); saveFile(pageData.replace("image/jpeg", "image/octet-stream"),new Date().getTime()+".jpeg"); }); var saveFile = function (data, filename) { console.log(data); var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a'); save_link.href = data; save_link.download = filename; var event = document.createEvent('MouseEvents'); event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); save_link.dispatchEvent(event); }; } </script> </body> </html>
效果图


浙公网安备 33010602011771号