我能够成功移植,交叉编译并运行cairo齿轮 在我的嵌入式系统目标上的gles后端应用程序。 http://people.linaro.org/~afrantzis/cairogears-0~git20100719.2b01100+gles2.tar.gz 移植的样本trap,comp,text和shadow在cairo1.12.3中运行良好 和1.12.4。 但是我在1.12.14中运行相同的问题。 我无法运行与comp,text,shadow等纹理相关的样本。 陷阱效果很好,但梯度无法在渐变样本中显示。 我使用gles后端并转换我从png加载的所有图像表面 归档到gl表面。 让我知道是否应该为此做些什么 纹理+渐变样本在1.12.14中工作。
感谢 Sundara raghavan
答案 0 :(得分:2)
问题在于需要将GL_BGRA(cairo的内部图像格式)转换为GL_RGBA以加载到GL纹理(默认情况下为GL_RGBA)。我通过应用使用BGRA GL纹理的现有补丁来解决它,从而避免了转换。这是可能的,因为我的硬件能够同时读取和创建bgra纹理。
补丁在这里找到: http://lists.freedesktop.org/archives/cairo/2013-February/024038.html