在 Julia 中将 SVG 从文件渲染到 Cairo canvas
Render SVG from file to Cairo canvas in Julia
有没有办法从文件加载 SVG,然后将其渲染到 Cairo canvas?理想情况下是这样的:
image = read_from_svg("my.svg")
set_source_surface(cr, image, 0, 0)
paint(cr)
有 Rsvg.jl package that wraps the rsvg 图书馆。该软件包可以使用 Pkg.add("Rsvg")
安装。您可能必须对本地 Cairo 和 Rsvg 库的安装进行故障排除——该包将尝试自动执行此操作,但基于大量不同的配置,这是一个难题。
使用那个包,似乎可以做你想做的事。来自包的自述文件:
using Rsvg
using Cairo
filename_in = "a4.svg"
r = Rsvg.handle_new_from_file(filename_in);
d = Rsvg.handle_get_dimensions(r);
cs = Cairo.CairoImageSurface(d.width,d.height,Cairo.FORMAT_ARGB32);
c = Cairo.CairoContext(cs);
Rsvg.handle_render_cairo(c,r);
有没有办法从文件加载 SVG,然后将其渲染到 Cairo canvas?理想情况下是这样的:
image = read_from_svg("my.svg")
set_source_surface(cr, image, 0, 0)
paint(cr)
有 Rsvg.jl package that wraps the rsvg 图书馆。该软件包可以使用 Pkg.add("Rsvg")
安装。您可能必须对本地 Cairo 和 Rsvg 库的安装进行故障排除——该包将尝试自动执行此操作,但基于大量不同的配置,这是一个难题。
使用那个包,似乎可以做你想做的事。来自包的自述文件:
using Rsvg
using Cairo
filename_in = "a4.svg"
r = Rsvg.handle_new_from_file(filename_in);
d = Rsvg.handle_get_dimensions(r);
cs = Cairo.CairoImageSurface(d.width,d.height,Cairo.FORMAT_ARGB32);
c = Cairo.CairoContext(cs);
Rsvg.handle_render_cairo(c,r);