将base64 svg数据解码为svg文件

17 人关注

我有一个包含svg图片的文件,它是base64编码的(data-uri)。该文件的开头是

data:image/svg+xml;base64,PHN....

如何在Linux下将其解码为.svg文件?

linux
svg
base64
decode
data-uri
ni_hao
ni_hao
发布于 2014-02-26
7 个回答
Iazel
Iazel
发布于 2022-12-16
已采纳
0 人赞同

你可以复制/粘贴字符串(包括 data:image 等)到现代浏览器的URL栏;它会为你解密,然后你可以简单地将页面保存为svg。

竖起大拇指的是复制/粘贴在浏览器的网址栏。
Paul LeBeau
Paul LeBeau
发布于 2022-12-16
0 人赞同

你可以使用一个在线base64解码器,比如说 http://www.base64decode.org/

Nikita Kurtin
Nikita Kurtin
发布于 2022-12-16
0 人赞同

为了解决OP的问题。

如何在Linux下将其解码为.svg文件?

由于linux默认有python,我建议使用python脚本。

下面是一个工作实例。

import base64 
#change "YOURFILE" with the name of your original file
with open("YOURFILE", "rb") as f: encoded = f.read()
encoded = encoded.replace("data:image/svg+xml;base64,", "")
decoded = base64.b64decode(encoded)
#change "NEWFILE" with the name that you want to give your new svg 
with open("NEWFILE.svg", "wb") as f: f.write(decoded)

如果你是python新手,只需将上述代码复制粘贴到一个以.py为扩展名的文件中,例如aaabbb.py,然后像这样执行。

python aaabbb.py
    
Erik Dahlström
Erik Dahlström
发布于 2022-12-16
0 人赞同

你可以使用例如 base64 --decode < "your base64 data here" 。而且你可能需要在传入之前剥去 data:image/svg+xml;base64, 部分。

Dharmesh Patel
Dharmesh Patel
发布于 2022-12-16
0 人赞同
Denys Sokolov
Denys Sokolov
发布于 2022-12-16
0 人赞同

我使用SVG在线解码器,快速而简单 https://base64.online/decoders/decode-base64-to-svg

hgiahuyy
hgiahuyy
发布于 2022-12-16
0 人赞同

I resolved problem: