golang svg转png
可以使用第三方库rasterx,以下是一个简单示例:
package main
import (
"os"
"github.com/llgcode/draw2d/draw2dimg"
"github.com/llgcode/draw2d/draw2dsvg"
"github.com/llgcode/rasterx"
"github.com/llgcode/rxsvg"
)
func main() {
// 从SVG文件中解析出图像
img, err := rxsvg.LoadSvgFile("example.svg")
if err != nil {
panic(err)
}
// 创建一个画布,大小与图像相同
canvas := rasterx.NewDenseRaster(img.Bounds().Dx(), img.Bounds().Dy())
g := rasterx.NewGraphics(canvas)
// 绘制SVG图像
svg := draw2dsvg.NewGraphicContext(g)
img.Draw(svg)
// 保存为PNG文件
f, err := os.Create("example.png")
if err != nil {
panic(err)
}
defer f.Close()
draw2dimg.SaveToPngFile(f, canvas)
}
原文地址: https://www.cveoy.top/t/topic/ZNt 著作权归作者所有。请勿转载和采集!