Gio UI – Go 的跨平台 GUI
Gio UI – Cross-platform GUI for Go

原始链接: https://gioui.org/

Gio 是一个 Go 库,用于使用立即模式方法创建跨平台图形用户界面 (GUI)。 它与各种系统兼容:Linux、macOS、Windows、Android、iOS、FreeBSD、OpenBSD 和 WebAssembly。 如果您的浏览器支持,您可以在此处查看 WebAssembly 演示。 Gio 运行良好,依赖性最小,只需要用于窗口、输入和图形渲染的平台库。 在继续学习资源之前,请通过提供的说明安装这些先决条件。 为什么要使用吉奥? 它允许 Go 开发人员在主要操作系统上构建高效、响应灵敏且可移植的 GUI。 通过将 Project Pathfinder 的先进 2D 图形技术与图形模型的即时性相结合,Gio 为应用程序创建提供了强大且统一的基础。 此外,Gio 拥有基于 OpenGL ES 和 Direct3D 11 的强大矢量渲染器。其未来计划包括过渡到 Piet-GPU 支持的更精简的基于计算着色器的渲染器。 与大多数图形引擎相比,Gio 仅通过轮廓而不是位图图像渲染文本和形状,确保有效的动画处理、可扩展性和像素精度。 赞助商资助 Gio 的持续开发; 考虑在 OpenCollective 上支持该项目或直接为其贡献者做出贡献。

本文讨论了让具有屏幕阅读器的用户可以访问 Flutter Web 应用程序所面临的挑战。 作者分享了他们在使用 Flutter Web 应用程序时遇到的无障碍问题的个人经验。 他们建议在 canvas 元素旁边添加一个不可见的 DOM 以提高可访问性。 尽管这可能需要付出巨大的努力,但这似乎是一个潜在的解决方案。 作者还提到了在 Flutter for Web 中实现可访问性的困难,因为与其他 Web 技术和 Flutter 移动应用程序相比,它还不够成熟。 此外,他们对谷歌对其产品的决策的不可预测性表示担忧。 尽管存在这些担忧,作者还是承认 Flutter 作为领先的跨平台开发环境的流行和广泛使用。
相关文章

原文

Gio is a library for writing cross-platform immediate mode GUI-s in Go. Gio supports all the major platforms: Linux, macOS, Windows, Android, iOS, FreeBSD, OpenBSD and WebAssembly.

For a quick demonstration take a look at the WebAssembly demo below. This requires a browser that supports WebAssembly.

Kitchen screenshot

The source for the Kitchen project.

Getting Started

Gio is designed to work with very few dependencies. It depends only on the platform libraries for window management, input and GPU drawing.

To install the necessary dependencies, take a look at:

Once you have everything installed head over to Learn, which contains links to get you started with Gio.

Showcase

Why?

Gio helps Go developers to build efficient, fluid, and portable GUIs across all major platforms. It combines bleeding-edge 2D graphics technology with the flexibility of the immediate mode graphics paradigm to create a compelling and consistent foundation for application development.

Gio includes an efficient vector renderer based on the Pathfinder project implemented on OpenGL ES and Direct3D 11, and is migrating towards an even more efficient compute-shader-based renderer built atop piet-gpu. Text and other shapes are rendered using only their outlines without baking them into texture images, to support efficient animations, transformed drawing and pixel resolution independence.

Development of Gio is funded by sponsorships. If you find Gio useful, please consider sponsoring the project on OpenCollective or one or more of its developers directly.

联系我们 contact @ memedata.com