lotus_shared/font.rs
1//! Bitmapfont-Metadaten zum Zeichnen von Text auf Script-Texturen.
2//!
3//! Bitmap font metadata used when drawing text on script textures.
4
5use std::collections::HashMap;
6
7use serde::{Deserialize, Serialize};
8
9/// Eigenschaften einer Bitmap-Schrift.
10///
11/// Properties of a bitmap font.
12#[derive(Debug, Clone, Serialize, Deserialize)]
13pub struct BitmapFontProperties {
14 /// Horizontaler Abstand zwischen den Buchstaben.
15 ///
16 /// The horizontal distance between letters.
17 pub horizontal_distance: i32,
18 /// Vertikale Größe der Schrift.
19 ///
20 /// The vertical size of the font.
21 pub vertical_size: i32,
22 /// Enthaltene Buchstaben der Schrift.
23 ///
24 /// The letters in the font.
25 pub letters: HashMap<char, FontLetter>,
26}
27
28/// Ein Zeichen in einer Bitmap-Schrift.
29///
30/// A letter in a bitmap font.
31#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
32pub struct FontLetter {
33 /// Das durch den Buchstaben dargestellte Zeichen.
34 ///
35 /// The character represented by the letter.
36 pub character: char,
37 /// Startposition des Buchstaben in der Textur.
38 ///
39 /// The start of the letter in the texture.
40 pub start: u32,
41 /// Breite des Buchstaben in der Textur.
42 ///
43 /// The width of the letter in the texture.
44 pub width: u32,
45}