circuitpython/shared-bindings/lvfontio/OnDiskFont.h
Scott Shawcroft 1cb188d6d3
Add native support for LVGL binary fonts on disk
This allows the terminal to use a font from the disk at
/fonts/terminal.lvfontbin for languages that need more
characters than we want to ship.

TileGrid now support 16bit indices as well.

Font files for use with it are generated by the GitHub actions
here:
https://github.com/adafruit/circuitpython-font-generator
2025-03-28 15:54:41 -07:00

22 lines
1.1 KiB
C

// This file is part of the CircuitPython project: https://circuitpython.org
//
// SPDX-FileCopyrightText: Copyright (c) 2024 Scott Shawcroft for Adafruit Industries
//
// SPDX-License-Identifier: MIT
#pragma once
#include "shared-module/lvfontio/OnDiskFont.h"
extern const mp_obj_type_t lvfontio_ondiskfont_type;
mp_obj_t common_hal_lvfontio_ondiskfont_get_bitmap(const lvfontio_ondiskfont_t *self);
mp_obj_t common_hal_lvfontio_ondiskfont_get_bounding_box(const lvfontio_ondiskfont_t *self);
void common_hal_lvfontio_ondiskfont_get_dimensions(const lvfontio_ondiskfont_t *self, uint16_t *width, uint16_t *height);
// Function prototypes
void common_hal_lvfontio_ondiskfont_construct(lvfontio_ondiskfont_t *self, const char *file_path, uint16_t max_glyphs, bool use_gc_allocator);
void common_hal_lvfontio_ondiskfont_deinit(lvfontio_ondiskfont_t *self);
bool common_hal_lvfontio_ondiskfont_deinited(lvfontio_ondiskfont_t *self);
int16_t common_hal_lvfontio_ondiskfont_cache_glyph(lvfontio_ondiskfont_t *self, uint32_t codepoint, bool *is_full_width);
void common_hal_lvfontio_ondiskfont_release_glyph(lvfontio_ondiskfont_t *self, uint32_t slot);