SVG 转 PNG 转换器

svg → png

把 SVG 图形转换成 PNG 图片。您的浏览器在当前标签页中完成栅格化,空白处保持透明,不会上传任何内容。

队列不会上传任何文件
将 SVG 文件拖放到此处
或点击从您的设备中选择
正在转换文件…

关于这款 SVG 转 PNG 转换器

转换器把每个 SVG 栅格化到 canvas 上。它读取文件中声明的宽度和高度,缺少时改用 viewBox,并把图形放大到最长边至少 1024 像素。如果读不到可用的尺寸,就按 1024 × 1024 绘制。

PNG 由浏览器写出,属于无损格式,并且保留透明度。矢量文件本身在任何尺寸下都很清晰,所以这个页面的用处是为不接受 SVG 的地方生成一份位图副本。

使用方法

01

添加 SVG 文件

将文件拖放到上方的区域,或点击该区域从您的设备中选择。可以一次添加多个文件。

02

开始转换

点击“转换为 PNG”。文件会逐个转换,每一行都会显示当前状态。

03

查看大小

转换完成的行会显示 SVG 的大小,箭头后面是 PNG 的大小。

04

下载

点击某一行的“下载”保存单个文件,或点击“全部下载(ZIP)”保存所有已完成的文件。

功能

  • 文件由您的浏览器转换,不会上传到服务器。
  • 尺寸取自文件本身的宽高或 viewBox,而不是浏览器默认使用的那个很小的尺寸。
  • 把图形放大到最长边至少 1024 像素。
  • 写出无损 PNG,空白处保持透明。
  • 按队列逐个处理文件,每个完成的行都带有“下载”按钮。

技术规格

规格 说明
工具 SVG 转 PNG 转换器
输入 SVG 文件(.svg),单个文件最大 100 MB
输出 PNG(.png),无损,保留透明度
像素尺寸 取自文件的宽高或 viewBox,并放大到最长边至少 1024 像素
未声明尺寸时 1024 × 1024
字体 文字使用浏览器中已有的字体绘制
依赖库 JSZip 3.10,从 cdnjs CDN 加载,仅用于“全部下载(ZIP)”
文件去向 哪儿也不去,始终留在当前标签页的内存中
使用须知

此转换器不支持的功能

它把自成一体的图形按一个自动算出的尺寸栅格化。有些任务需要使用其他工具。

没有尺寸输入框

像素尺寸来自文件,并放大到最长边 1024 像素。想自己设定尺寸,请先转换,再使用图片尺寸调整。

不会从网络获取任何内容

SVG 从外部引用的东西,例如外部图片或网络字体,在转换过程中不会加载。图形必须自成一体。

字体用的是您自己的

文字使用浏览器中已有的字体绘制。您的设备缺少某种字体时会被替换,字形位置也会随之改变。在矢量编辑器里把文字转成路径就不会有这个问题。

foreignObject 可能无法转换

通过 foreignObject 元素嵌入 HTML 的 SVG 可能根本无法完成转换。

不会添加背景

图形的空白处依旧透明。如果需要白色背景,请改用SVG 转 JPG。

相关图片工具

常见问题

不会。浏览器在同一个标签页里读取每个 SVG 并绘制出 PNG。唯一会下载的是 JSZip,来自 cdnjs CDN,而且只在您使用“全部下载(ZIP)”时才下载。

这取决于文件本身。转换器读取 SVG 中声明的宽度和高度,缺少时改用 viewBox,并把图形放大到最长边至少 1024 像素。如果 SVG 里没有可用的尺寸,就会得到一张 1024 × 1024 的 PNG。

会。PNG 带有 Alpha 通道,图形的空白处依旧透明。如果想要白色背景,SVG 转 JPG会把同一幅图画在白底上。

文字使用浏览器中已有的字体绘制。SVG 里指定的网络字体在转换过程中不会被获取,因此会换成别的字体。在矢量编辑器里把文字转成路径,栅格化的结果就和绘制时完全一致。

通常是浏览器无法把它读取为图片:文件已损坏、并不是真正的 SVG,或者通过 foreignObject 元素嵌入了 HTML,这种情况可能无法转换。超过 100 MB 的文件根本不会被加入列表。

文件始终留在您的设备上

浏览器在同一个标签页里读取每个 SVG 并完成栅格化。文件不会上传,也没有任何请求把它们送往别处。