21 releases (13 breaking)

0.14.1 Dec 12, 2023
0.14.0-alpha Sep 8, 2023
0.13.0 Feb 28, 2023
0.12.1 Dec 22, 2022
0.1.0 Dec 22, 2019

#577 in GUI

Download history 3/week @ 2024-02-19 30/week @ 2024-02-26 3/week @ 2024-03-04 8/week @ 2024-03-11 105/week @ 2024-04-01

114 downloads per month
Used in 2 crates

Apache-2.0

1MB
18K SLoC

KAS WGPU

KAS graphics backend over wgpu.

Compiling shaders

This library uses GLSL shaders. Pre-compiled SPIR-V modules are distributed so that users do not need a shader compiler.

For working on GLSL shaders, a compiler such as glslc (part of the shaderc project) is required. glslc can be installed from Fedora packages, but on other platforms manual installation may be required. Alternatively a web-based tool such as glslang.js may be used.

Automatic re-compilation may be enabled by setting e.g. SHADERC=glslc. See build.rs for details.

Optional features

This crate has the following feature flags:

  • raster (enabled by default): use [kas-text]'s default backend for glyph rastering (alternatively, specify kas-text/ab_glyph or kas-text/fontdue)
  • shaping (enabled by default): use [kas-text]'s default backend (Rustybuzz) for text shaping (alternatively, specify kas-text/harfbuzz or do not use shaping)

Note: at least one of ab_glyph, fontdue is required. If both are enabled, the choice of raster engine is controlled at run-time via theme configuration:

  • mode = 0: use ab_glyph
  • mode = 1: use ab_glyph and align glyphs to side-bearing
  • mode = 2: use fontdue

The COPYRIGHT file includes a list of contributors who claim copyright on this project. This list may be incomplete; new contributors may optionally add themselves to this list.

The KAS library is published under the terms of the Apache License, Version 2.0. You may obtain a copy of this licence from the LICENSE file or on the following webpage: https://www.apache.org/licenses/LICENSE-2.0

Dependencies

~13–45MB
~697K SLoC