Skip to main content

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}