linux 解码base64 svg数据到svg文件

vshtjzan  于 2022-12-18  发布在  Linux
关注(0)|答案(7)|浏览(242)

我有一个包含svg图像的文件,它是base64编码的(data-uri)。
数据:图片/svg+xml; 64进制,PHN....
如何在linux中将其解码为.svg文件?

5anewei6

5anewei61#

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

ubbxdtey

ubbxdtey2#

您可以使用在线base64解码器,如http://www.base64decode.org/

zte4gxcn

zte4gxcn3#

要回答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
pwuypxnk

pwuypxnk4#

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

7fyelxc5

7fyelxc57#

我解决了问题:
base64=“数据:图像/SVG+XML;碱基64,PHN 2 ZyBpZD 0 iTGF-β 5 ZXJfMM等。
url=base64.替换(“数据:图像/SVG+XML; base64、"、”);
变量svg = decodeURI组件(转义(窗口.atob(url)));

相关问题