模块'cairo'没有'Context'成员



当我尝试运行此示例时,我收到以下问题消息:

  1. 模块"cairo"没有"ImageSurface"成员
  2. 模块"cairo"没有"Context"成员
  3. 模块"cairo"没有"FORMAT_ARGB32"成员

这里有什么问题?

Pycairo需要在系统上安装cairo C头文件。它写在";入门;部分。

该示例之所以适用于Anaconda,是因为Anaconda将cairo安装为conda包

conda包是通过一个名为conda-build的工具使用conda配方构建的(例如,这里是cairo的配方(。当构建cairo-conda包时,conda-build遵循conda-recipe的meta.yaml文件中所写的内容。从meta.yml文件中可以看到,cairo是作为一个tarball下载的。然后,如果您在Windows上,conda-build会运行bld.bat文件并编译cairo。否则,如果您在Linux或macOS上,conda-build会使用build.sh文件执行同样的操作。换句话说,Anaconda(通过conda构建(为您安装了cairo C头文件。

注意:我不是conda专家,我认为conda构建的过程过于简单。如果您感兴趣,这里有一个链接到官方的conda构建文档。

最新更新