X11 是否跨 Linux 平台并且不受平台怪癖的影响?

X11 是否跨 Linux 平台并且不受平台怪癖的影响?

X11 可以在所有 Linux 操作系统上运行吗?如果我编写一个具有 X11 窗口的应用程序,它在 Linux 操作系统上的外观和操作是否相同,或者我需要执行不同的调整吗?

  • 是否有 C/C++ 和低级跨 Linux 平台的 X11 替代方案? *我知道 QT 和 GTK。
  • linux最底层的图形系统/窗口系统是什么?

答案1

如果我编写一个具有 X11 窗口的应用程序,它在 Linux 操作系统上的外观和操作是否相同

是的,但并不是你想象的那样。 X11 的级别非常低,主要关注绘制图形基元并提供合理的标准化(请注意,这并不意味着神志清醒;X11 可以被称为很多东西,但我怀疑“为现代环境精心设计”将是很多人第一个想到的)硬件输入设备和软件之间的接口。它甚至没有太多的字体和文本绘制支持;这就是为什么像这样的图书馆潘戈已经开发了。

实际上,这就是 Qt 和 GTK 等工具包存在的原因:这些都不是 X11 的替代品而是建立在它之上,使图形应用程序编程不再那么令人头疼。因为他们抽象出了如何实际操作的所有细节在屏幕上画画它们还支持将图形应用程序移植到本身不支持 X11 应用程序的替代平台(例如 Windows)。

如果您想要替代方案X11那么你正在寻找类似的东西韦兰这是获得一些动力

如果您使用纯 X11,那么窗口内容(不是窗口装饰,如标题栏、窗口边框等;纯 X11 不进行窗口装饰,该任务委托给窗口管理器)应该始终看起来相同,因为您的程序正在执行所有操作绘图本身,因此无论好坏,您都可以完全控制结果的外观。

如果你依赖一些中间库例如 GTK、Qt 或其他库,那么您的应用程序的外观可能取决于用户如何根据其个人喜好配置该特定库。如果您希望您的应用程序受到好评,建议您接受用户所做的这些选择,并确保您的应用程序能够很好地适应他们。

相关内容