#spf #parser #code-point #properties #language

spf

.spf (Simple Pixel Font) file parsing, and useful api's to go alongside

9 releases (5 breaking)

0.5.0 Apr 17, 2025
0.4.1 Mar 2, 2025
0.3.0 Dec 7, 2024
0.2.1 Nov 23, 2024
0.0.2 Oct 26, 2024

#947 in Text processing

Download history 1/week @ 2025-01-08 10/week @ 2025-02-19 294/week @ 2025-02-26 36/week @ 2025-03-05 3/week @ 2025-03-12 154/week @ 2025-04-16 4/week @ 2025-04-23

158 downloads per month

Unlicense

74KB
1.5K SLoC

SimplePixelFont - spf.rs stars - spf.rs forks - spf.rs Rust GitHub tag License issues - spf.rs Codecov Documentationcov

A very simple and concrete parser library for the SimplePixelFont file specifications, written in Rust. spf.rs is both a native crate and also an FFI library which can be used in a variety of other programming languages which support library loading. spf.rs is additionally shipped with features/modules to help integration be faster and easier for you next pixelated project.

Installation

  • To install spf.rs as a rust crate run the following command in your cargo project or read more:
cargo add spf
  • To use spf.rs as an FFI library in your language of choice you must first download a pre-built library version of spf.rs from the releases section (a corrosponding header file is also included if you are programming in C/C++). Please note that pre-built binaries are only avaiable for Windows and Linux-x86-64bit architectures. As a result you may want to compile spf.rs from source, specifically if a pre-built binary is not availible for you.

Usage

Usage varies depending on the programming language you choose. For a guide using the native Rust interface check out the Getting Started in Rust article. You can also check out the Using the FFI in C article for usage with the spf.rs library.

Supported SPF Header Properties

Flag Type Stability Notes
Constant Cluster Codepoints Configuration Added in v0.5
Constant Width Configuration Added in v0.5
Constant Height Configuration Added in v0.5
Compact Modifier Added in v0.4

Key:

  • ⚠️ = Work in progress
  • = Not implemented
  • = Stable

Dependencies

~0–6MB
~31K SLoC