内容简介:目前Go语言主要活跃在区块链、云计算、命令行工具和后端服务等领域。这些领域基本上和GUI关系不大。近来出现了很多跨平台的Go GUI项目。虽说用井喷之势形容有些过了,但是的确有加速的迹象。难道Go语言将要开辟出另一大块疆土?忙中偷闲,整理了一份目前GUI/图形/图像相关的Go项目列表。见下。欢迎补充。
目前 Go 语言主要活跃在区块链、云计算、命令行 工具 和后端服务等领域。这些领域基本上和GUI关系不大。近来出现了很多跨平台的Go GUI项目。虽说用井喷之势形容有些过了,但是的确有加速的迹象。难道Go语言将要开辟出另一大块疆土?
忙中偷闲,整理了一份目前GUI/图形/图像相关的Go项目列表。见下。欢迎补充。
原生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 获取更多。
本文首发在微信Go 101公众号,欢迎各位转载本文。Go 101公众号将尽量在每个工作日发表一篇原创短文,有意关注者请扫描下面的二维码。
101-group-qrcode-1.jpg
关于更多Go语言编程中的事实、细节和技巧,请访问《Go语言101》官方网站: https://gfw.go101.org 。如果官网被墙,请访问《Go语言101》github项目: https://github.com/golang101/golang101 。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。