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

svg图片代码data:image/svg+xml转png图片方法

把代码保存为html格式的文件中,用浏览器访问,即可右键保存
从AI软件或其它网站得到svg图片代码后,把他复制到下面源码上
注意:src=""图片地址中,一些参数的含义
d=‘这里是图片代码数据’
viewBox是图片显示区域,宽,高等
fill='%23000000’这里表示颜色 ,后面6位0表示黑色,只修改后6位即可
fill-opacity为1表示图片不透明.小数为透明.其它参数 不用修改

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>svg转png</title>
</head>
<body>
<img id="test" src="data:image/svg+xml;
utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' 
viewBox='0 0 555 344' width='555' 
height='344'%3E%3Cpath 
fill='%23000000' 
fill-opacity='1' 
d='M33.7 33.8v-7.5c0-8.2-3.8-11.7-8.1-11.7-6.7 0-8.9 3.5-8.9'
%3E%3C/path%3E%3C/svg%3E"><p style="border:1px solid #ccc;color:red">
右键点击,图片另存为,png格式的
<img id="png"src=""href="" />
</p><script type="text/javascript">var test = document.getElementById('test');var svghtml = test.getAttribute('src');
var png = document.getElementById('png');var img = new Image();img.setAttribute('src', svghtml);img.onload = function () {var canvas = document.createElement('canvas');canvas.width = test.offsetWidth;canvas.height = test.offsetHeight;var context = canvas.getContext('2d');context.drawImage(img, 0, 0);var canvasData = canvas.toDataURL('image/png');var a = document.createElement('img');var img2 = document.createElement('img');img2.setAttribute('src', canvasData);
png.setAttribute('src', canvasData);//  img2.onload = function() {//  var a = document.createElement('a');// a.href = url;//   a.download = 'svg.png';//  a.href = img2.getAttribute('src');// a.click();//  }}
</script>
</body>
</html>
http://www.lryc.cn/news/168635.html

相关文章:

  • 解决问题:Replace `‘vue‘;⏎` with `“vue“;`
  • ThinkPHP 5.0通过composer升级到5.1,超级简单
  • 计算机竞赛 多目标跟踪算法 实时检测 - opencv 深度学习 机器视觉
  • 一文了解大模型工作原理——以ChatGPT为例
  • CPP-Templates-2nd--第十九章 萃取的实现 19.7---
  • python 采用selenium+cookies 获取登录后的网页
  • 【测试开发】答疑篇 · 什么是软件测试
  • 深入解析顺序表:揭开数据结构的奥秘,掌握顺序表的精髓
  • 数据风险量化评估方案
  • EasyAVFilter代码示例之将视频点播文件转码成HLS(m3u8+ts)视频点播格式
  • day-50 代码随想录算法训练营(19)动态规划 part 11
  • 自定义权限指令与防止连点指令
  • UE5、CesiumForUnreal实现瓦片坐标信息图层效果
  • PostgreSQL执行计划
  • 【2023 睿思芯科 笔试题】~ 题目及参考答案
  • Java手写AVL树
  • 运维自动化:提高效率的秘诀
  • C++设计模式_05_Observer 观察者模式
  • github网站打不开,hosts文件配置
  • 总结PCB设计的经验
  • HCIE-HCS规划设计搭建
  • c语言输出杨辉三角
  • 性能测试-持续测试及性能测试建设(22)
  • 嵌入式C 语言中的三块技术难点
  • 【斗破年番】紫研新形象,萧炎终成翻海印,救援月媚,三宗决战
  • 差分方程模型:国民总收入(GDP)的乘数-加速数模型
  • 【C语言】指针和数组笔试题解析(1)
  • Vue中组件的三种注册方式
  • docker 和k8s 入门
  • 基于Yolov8的交通标志牌(TT100K)识别检测系统