SVG 预览
在零权限沙箱里预览 SVG 代码,脚本不会执行;显示尺寸、viewBox、元素数与体积,可切换背景、缩放与下载。
粘贴 SVG 代码后在这里预览
预览在零权限的 sandbox 框架里渲染:脚本、表单、同源访问全部被禁, SVG 只被当作图片看待。这也是本站处理用户 HTML/SVG 的统一方式 —— 不做"过滤关键词"式的净化, 那种做法永远有漏网的写法。
本工具在你的浏览器内运行,输入的内容与文件不会上传到任何服务器。
常见问题
- 预览会执行我粘贴的 SVG 里的脚本吗?
- 不会。SVG 是能携带脚本的格式:<script> 标签、onload 之类的内联事件、甚至 <foreignObject> 里的任意 HTML 都可以让代码跑起来。很多预览工具直接把代码塞进 innerHTML,等于让这段代码在页面里执行 —— 如果 SVG 来自陌生渠道,它可以读取你的登录态、向外部发请求。本工具改为把代码放进 sandbox 属性为空的 iframe:脚本、表单、同源访问、弹窗全部禁用,SVG 只被当作图片渲染。
- 为什么要提供背景切换?
- 因为 SVG 本身可以是完全透明的,而「透明」在不同背景上看起来完全不同。白色填充的图标放在白底上等于隐形,深色描边的线条放在深色背景上同样看不见 —— 只给一种背景的话,用户很容易误以为代码有问题。棋盘格背景是图像工具里的通用做法,它用来表示「这里是透明的」。
- 如果 SVG 里引用了外部图片,预览会去请求吗?
- 会。例如 <image href="https://…/a.png"> 或引用了外部字体、外部样式时,浏览器在渲染预览的过程中会真的发起请求,对方服务器因此能看到访问者的 IP 与 User-Agent。本工具会在检测到外部引用时明确提示,并在提示里列出前两个地址。这一点 sandbox 也挡不住(它限制的是脚本与同源,不是网络请求)—— 敏感场景下请先用文本编辑器把这些引用删掉再预览。