You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
979 B

3 years ago
  1. /******************
  2. * 分享js
  3. * @since 1.0
  4. */
  5. $(function() {
  6. function svgToImg() {
  7. //获取svg内容
  8. //var svg = document.getElementById('jsmap-container-id').innerHTML;
  9. //var svg = $(".jsmap-container").html();
  10. let svghtml = document.querySelector('svg');
  11. let svg = new XMLSerializer().serializeToString(svghtml);
  12. var canvas = document.getElementById('canvas');
  13. var c = canvas.getContext('2d');
  14. //新建Image对象
  15. var img = new Image();
  16. img.src = `data:image/svg+xml;base64,${window.btoa(unescape(encodeURIComponent(svg)))}`;
  17. //图片初始化完成后调用
  18. img.onload = function() {
  19. //将canvas的宽高设置为图像的宽高
  20. canvas.width = img.width;
  21. canvas.height = img.height;
  22. //canvas画图片
  23. c.drawImage(img, 0, 0);
  24. console.log(img)
  25. //将图片添加到body中
  26. document.body.appendChild(img)
  27. //$('.svgImg').attr('src',img);
  28. }
  29. };
  30. //svgToImg();
  31. })
  32. //document.HTML.demo 事件