html的svg标签怎么保存为图片
时间: 2023-12-03 09:43:19 浏览: 218
可以使用 JavaScript 和 Canvas 将 SVG 转换为 PNG 或 JPEG 格式的图片,具体步骤如下:
1. 将 SVG 代码插入到 HTML 页面中,例如:
```html
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">
<rect x="10" y="10" width="80" height="80" fill="red"/>
</svg>
```
2. 在 JavaScript 中使用 `canvg` 库将 SVG 转换为 Canvas。可以使用以下代码:
```javascript
var svg = document.querySelector('svg');
var canvas = document.createElement('canvas');
canvas.width = svg.clientWidth;
canvas.height = svg.clientHeight;
canvg(canvas, svg.outerHTML, {
ignoreMouse: true,
ignoreAnimation: true,
ignoreDimensions: true
});
```
3. 将 Canvas 转换为图片数据。可以使用以下代码:
```javascript
var imageData = canvas.toDataURL('image/png');
```
4. 可以通过将 `imageData` 赋值给一个 `<img>` 元素的 `src` 属性来显示转换后的图片,或者将 `imageData` 发送到服务器以保存为文件。
```javascript
var img = document.createElement('img');
img.src = imageData;
document.body.appendChild(img);
```
注意:如果 SVG 中包含外部文件(例如 `<image>`),则需要在转换之前将它们加载到页面中,否则转换后的图片将无法显示。
阅读全文