我想在大图像上绘制多边形/折线。
所以,我正在从 PIL/opencv 迁移到 pyvips。最近,我遇到了loadsvg_buffer
一种不用draw_mask
and方法就可以做到的draw_image
方法。
有人可以给我一个使用loadsvg_buffer
or draw_mask
or的填充示例吗draw_image
?该文档没有太大帮助。
另外,如果我必须绘制多条折线怎么办?
欢迎任何其他见解。
svgload 文档在这里:
https://libvips.github.io/libvips/API/current/VipsForeignSave.html#vips-svgload
您可以绘制任何 SVG 图形。例如:
import pyvips
x = pyvips.Image.svgload_buffer(b"""
<svg viewBox="0 0 200 200">
<circle r="100" cx="100" cy="100" fill="#900"/>
</svg>
""")
x.write_to_file("x.png")
生成:
libvips SVG 加载器非常快,可以制作任何大小的图像。它是渐进式渲染的,因此也不需要太多内存。
使用布尔运算符用结果遮盖其他图像,或使用composite
PDF 混合模式对图像进行分层。