系统相关
首页 > 系统相关> > linux-通过librsvg缩放矢量图像

linux-通过librsvg缩放矢量图像

作者:互联网

在通过librsvg获得其像素缓冲区之前,是否可以缩放svg?我可以看到rsvg_pixbuf_from_file_at_zoom之类的API,但已将其标记为已弃用.

还有其他方法吗?如果可能的话,我希望避免使用cairo.

解决方法:

您没有太多选择,要么是:

>使用已弃用的函数,例如rsvg_pixbuf_from_file_at_size()(还不错,该函数不太可能很快消失)
>或将RsvgHandle对象与cairo曲面上的rsvg_handle_new_from_file()和rsvg_handle_render_cairo()配合使用,以正确的尺寸创建

如果您想在最后使用GdkPixbuf,则可以将cairo的使用量限制在最低限度,方法是:

>使用rsvg_handle_new_from_file()创建一个RsvgHandle
>创建一个cairo上下文并设置所需的转换矩阵
>使用rsvg_handle_render_cairo()渲染svg
>使用rsvg_handle_get_pixbuf()获取pixbuf

标签:svg,vector-graphics,librsvg,linux
来源: https://codeday.me/bug/20191102/1989410.html