我有从服务器动态加载的内联 svg。我希望使用内联 css 对 svg 进行操作或修改。我已经搜索了将修改后的 svg 转换为 png 或 base64 图像。经过长时间的搜索,我决定坚持使用 Canvg。
现在的问题是它渲染了内联样式属性,如背景和边框半径。
这是我的svg。
<svg height="550" width="550" viewBox="0 0 512 512" id="svg">
<path d="m309 139c0-111-32-139-53-139-21 0-53 28-53 139l-173 122c-2 1-4 4-4 7l0 46c0 6 5 10 11 9l166-37c6 49 16 93 23 139l-63 49c-2 1-4 4-4 6l0 23c0 7 6 11 12 8l85-38 85 38c6 3 12-1 12-8l0-23c0-2-2-5-4-6l-63-49c7-46 17-90 23-139l166 37c6 1 11-3 11-9l0-46c0-3-2-6-4-7z m-53-88c-11 0-21 3-30 7 3-13 15-22 30-22 15 0 27 9 30 22-9-4-19-7-30-7z"></path>
</svg>
看起来像这样:
请记住,路径是从服务器动态加载的。所以不能修改。
现在我想像这样操纵它。
<svg style="background: grey none repeat scroll 0% 0%; fill: white; padding: 70px; border-radius: 98px;" height="550" width="550" viewBox="0 0 512 512" id="svg">
<path d="m309 139c0-111-32-139-53-139-21 0-53 28-53 139l-173 122c-2 1-4 4-4 7l0 46c0 6 5 10 11 9l166-37c6 49 16 93 23 139l-63 49c-2 1-4 4-4 6l0 23c0 7 6 11 12 8l85-38 85 38c6 3 12-1 12-8l0-23c0-2-2-5-4-6l-63-49c7-46 17-90 23-139l166 37c6 1 11-3 11-9l0-46c0-3-2-6-4-7z m-53-88c-11 0-21 3-30 7 3-13 15-22 30-22 15 0 27 9 30 22-9-4-19-7-30-7z"></path> </svg>
看起来像这样:
但是在使用canvg脚本渲染之后。它呈现为原始文件。它只包括填充颜色。没有其他的。
有没有其他方法可以做到这一点。使用画布或 svg 元素。
请帮忙!!!提前致谢