Swash is a pure Rust, cross-platform crate providing font introspection, complex text shaping, and glyph rendering. It aims to provide high performance components for beautiful typography while staying unopinionated about higher level layout, resource management, and lower level rendering.
This is free and open source software.
Key Features
- Font introspection covering font collections, localized names, metadata, variation axes, named instances, metrics, color palettes, and bitmap strikes.
- Zero allocation and zero copy introspection.
- Complex text shaping with OpenType advanced typography support.
- Partial Apple Advanced Typography support including glyph metamorphosis and extended kerning.
- Support for variable fonts including positioning and feature substitutions.
- Universal Shaping Engine implementation for complex scripts.
- Arabic joining including Urdu-style climbing runs.
- Basic shaping support including ligatures, marks, and kerning.
- Scalable outlines with full variation support for TrueType and PostScript.
- Horizontal subpixel rendering and fractional positioning.
- Emoji support for Apple, Google, and Microsoft formats.
- Text analysis covering Unicode character properties, composition, decomposition, cluster segmentation, word boundaries, and line boundaries.
Website: github.com/dfrg/swash
Support:
Developer: Chad Brokaw
License: Apache License 2.0 / MIT License
Swash is written in Rust. Learn Rust with our recommended free books and free tutorials.
Related Software
| Font Renderers | |
|---|---|
| HarfBuzz | OpenType text shaping engine |
| FreeType | Small and efficient software font engine |
| Pango | International text layout and rendering with rich script support |
| LibICU | Libraries for Unicode and internationalization |
| Fontconfig | Library for configuring and customizing font access |
| COSMIC Text | Rust library for rich multi-line text layout, shaping and editing |
| FriBidi | Implementation of the Unicode Bidirectional Algorithm |
| Swash | Pure Rust toolkit for glyph shaping, scaling and rendering |
| SheenBidi | Compact Unicode bidirectional algorithm implementation for text engines |
| Raqm | Bidirectional layout and shaping for complex writing systems |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.