GUI包整理

原生GUI绑定 #

dlgs是一个跨平台的显示对话框和输入框的Go代码库。

glfw是一个GLFW3绑定库。

go-mobile支持移动平台应用开发(Android和iOS)。(其中包含OpenGL ES 2.0和ES 3.0绑定库。)

go-sdl2是一个SDL2绑定库。

go-gtk是一个GTK2绑定库。

gotk3是一个GTK+3绑定库。

GXUI,Google员工出品,但已经停止维护很久了。

qt是一个qt绑定库。

shiny是一个跨平台的UI库。貌似荒废了。

systray是一个跨平台的系统托盘通知图表和菜单库。

trayhost是另一个跨平台的系统托盘通知图表和菜单库。

ui提供了原生GUI绑定。

Walk是一个"Windows Application Library Kit"绑定。

w32.go是一段使用Windows系统调用生成GUI的小例子。

XGB是一个X系统绑定。

xgbutil是一个X系统绑定工具库

基于HTML的GUI #

go-astilectron基于Electron,使用HTML/JS/CSS来构建跨平台GUI应用。

go-sciter是一个Sciter绑定。

gowd基于nwjs,使用HTML/JS/CSS来构建跨平台GUI应用。

Wails另用原生浏览器,使用HTML/JS/CSS来构建跨平台GUI应用。

webview基于WebKit,使用HTML/JS/CSS来构建跨平台GUI应用。

非原生GUI #

duit是一个纯Go跨平台UI库。

Fyne使用OpenGL实现立即模式跨平台GUI。

gi是一个基于场景图的2D和3D GUI库。

Gio是一个轻便的立即模式跨平台GUI。支持:iOS/tvOS, Android, Linux (Wayland), macOS, Windows和browsers (Webassembly/WebGL)。

go-flutter实现了Flutter Embedding API。

goey(这个的介绍没看太明白,各位自个儿研究一下。)

gui是一个并发GUI库。

imgui-go是一个Dear ImGui绑定炉。

nk是一个nuklear绑定库。(另一个:nucular

3D图形API绑定 #

d3d9是一个Direct3D9绑定。

gl是一个OpenGL绑定。(另外GLHF对gl3.3进行了更接近于Go风格的包装。)

vulkan是一个Vulkan绑定。

2D矢量图形库 #

gg是一个纯Go矢量图形库。

go-cairo是一个cairo绑定。

go-skia是一个skia绑定。

svgo用来生成SVG 1.1规范的svg文件

字体处理相关 #

freetype是一个Freetype字体渲染器光栅化Go库。

pixfont是一个位图字体库。

游戏开发相关 #

请访问Awesome Go获取列表。

图像处理相关 #

image标准库。

官方image补充库。

请访问Awesome Go获取更多