X11和ARGB视觉效果:DefaultDepth()永远不会返回32吗?

我正在建立与X服务器的连接,如下所示:
display = XOpenDisplay(NULL);
screen = DefaultScreen(display);
depth = DefaultDepth(display, screen);
我现在想知道为什么“深度”总是设置为24.我希望合成关闭时它只有24,但事实上,即使我打开合成它仍然是24。因此,为了获得32位ARGB视觉效果,我需要首先调用XGetVisualInfo(),并将深度设置显式设置为32。 现在我的问题是:DefaultDepth()通常永远不会返回超过24或者它只是在我的系统上? (我的显卡有点陈旧......)。我知道CLUT显示器可以返回15,16甚至8,但是它可以返回32吗?或者我是否总是首先使用XGetVisualInfo()来获得ARGB 32位视觉效果? 谢谢, 安迪     
已邀请:
X协议中的DefaultDepth指的是颜色深度。它不包括alpha。这有点难看,但这是20多年的非复合感知应用所假设的。 是的,它可以返回超过24.深度30显示不常见,但确实存在。     
xorg.conf中的“DefaultDepth”参数位于“Screen”部分。尝试改变它。 在
root_depth
字段中检测到深度:http://www.google.com/codesearch?hl = zh-xn;&n ;; afe;& =     

要回复问题请先登录注册