Python的交互式矢量图形画布?

10 投票
3 回答
5366 浏览
提问于 2025-04-16 08:18

我正在用Python写一个小应用程序,想让用户能够在画布上放置、移动、旋转等不同的对象。有没有什么方法可以做到这一点,而不需要写很多代码?我在业余时间做这个,而且我在PyQt方面的经验有限。

其实这就是任何矢量图形编辑器的基本功能(比如Inkscape、Corel Draw或者Dr. Geo):它们给用户提供了可以移动、拉伸和旋转对象的把手。我在想有没有什么现成的组件或者工具,可以提供这些把手和基本操作,这样我只需要实现程序对这些操作的反应就行了。

因为我打算把这个项目以免费许可证发布(如果我能做到这一点的话),所以任何开源许可证都很好。

谢谢!

3 个回答

1

看看这个库 gaphas,它默认就支持对象的调整大小、移动和编辑,所以使用起来非常方便。

3

一个选择是GooCanvas,还有它的Python绑定。你可以在这个链接找到更多信息:GooCanvas

4

看看这个 Qt图形视图框架,它在PyQt4中是支持的。另一个选择是使用OpenGL,这需要写更多的代码,但能提供更大的灵活性和硬件加速(同样在PyQt4中支持)。

撰写回答