GTK(原名)最初是GIMP的专用开发库(),后来发展为Unix-like系統下开发图形界面的应用程序的主流开发工具之一。GTK是自由软件,并且是GNU计划的一部分。自2019年2月6日起,GTK+改名为GTK。
![]() |
|
![]() gtk3-widget-factory是展示GTK +版本3中許多GUI小控件示例的集合 |
|
原作者 | Spencer Kimball、Peter Mattis、eXperimental Computing Facility |
---|---|
開發者 | GNOME計劃 |
首次发布 | 1998年4月14日 |
当前版本 |
![]() |
源代码库 |
![]() |
编程语言 | C语言 |
操作系统 | Linux、类Unix系统、macOS、Microsoft Windows |
类型 | 部件工具箱 |
许可协议 | GNU宽通用公共许可证2.1 |
网站 | gtk.org |
软件架构
GTK工具包
GTK的简化软件架构。Pango, GDK, ATK, GIO, Cairo 和 GLib
GDK包含了对X11, Wayland, Broadway (HTTP), Quartz, 和 GDI的后端,并依赖于Cairo进行渲染。它的新SceneGraph还在开发中。
GTK 包含了一组图形控制元素(部件);版本3.22.16包含了186个活跃的和36个废弃的部件。 GTK是用C语言编写的一个面向对象的部件工具;它使用GObject,即GLib对象系统,来实现面向对象。虽然GTK主要是为基于X11和Wayland的窗口系统设计的,但它也可以在其他平台上运行,包括Microsoft Windows(与Windows API接口),和macOS(与Quartz接口)。还有一个名为Broadway的HTML5后端。
GTK可以配置不同的显示引擎来改变绘制部件的外观。有几种显示引擎可以模仿所使用平台上的原生部件的外观。
从2005年发布的版本2.8开始,GTK开始使用Cairo来渲染大多数图形控制元素(部件)。自从GTK版本3.0开始,所有的渲染都是使用Cairo完成的。
在2018年1月26日的DevConf.cz上,GTK重要开发者Matthias Clasen介绍了GTK 4开发的当前状态,包括对GTK 3中渲染和输入工作方式的高层次解释,GTK 4 (>3.90)中正在进行的变化以及原因。在2019年2月6日,宣布GTK 4将从项目名称中去掉“+”号。
GTK绘图工具包(GDK)
GDK是对底层窗口系统和图形系统提供的低级函数的封装。
GTK场景图工具包(GSK)
GSK是GTK的渲染和场景图API。GSK位于图形控制元素(部件)和渲染之间。GSK最终在2017年3月发布的GTK版本3.90中合并。
GtkInspector
GtkInspector在版本3.14中引入。 GtkInspector只能在安装了开发包libgtk-3-dev/gtk±devel后调用。
GUI设计器
有几个GUI设计器可用于GTK。以下项目截至2011年7月仍在活跃:
- Glade,支