我似乎无法让cairo地区在内部工作 使用gintrospection。
例如
from gi.repository import cairo
reg = cairo.Region()
会给我
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
MemoryError
试图从Gdk.get_clip_region()获取一个区域会给我
return info.invoke(*args)
TypeError: Couldn't find conversion for foreign struct 'cairo.Region'
我错过了什么明显的事情?我无法找到一种方法来使用它,并且无法想象你需要的区域看起来像一个简单的结构。我不知道为什么gdk找不到cairo类型,我不知道我是否应该以某种方式显示它。
答案 0 :(得分:6)
显然你需要使用常规的cairo绑定,即使你对其他一切也使用内省。
所以只是import cairo
。
(我不确定为什么gi.repository.cairo
存在...)
当你拥有所有必需的库时,“找不到转换”错误就会消失(例如在Ubuntu上除python-gi-cairo
之外还需要python-cairo
包(或等效的python3包) ))。