Skip to content

Latest commit

 

History

History
52 lines (41 loc) · 2.1 KB

README.md

File metadata and controls

52 lines (41 loc) · 2.1 KB

dpfont specification

The following is a proposal for a specification for MSP Displayport fonts.

a dpfont package

A dpfont package shall be a folder of .png images of font pages for various flight-controller glyph maps with the following accompanying dpfont.json metadata file:

{
    "name": "My Cool Font",
    "version": "1.0.0",
    "author": "Your Name <email@example.com>",
    "license": "ISC",
    "homepage": "https://github.com/awesomeuser/awesomefont",
    "supports": [
        {
            "identifier": "BTFL",
            "min_version": "4.4",
            "files": {
                "24x36": ["bf44_hd_1.png", "bf44_hd_2.png"],
                "36x54": ["bf44_sd_1.png", "bf44_sd_2.png"]
            }
        },
        {
            "identifier": "BTFL",
            "min_version": "4.0",
            "max_version": "4.3", //optional
            "files": {
                "36x54": ["bf40_sd.png"]
            }
        }
    ]
}

Todo:

  • rename to .osdfont?
  • kill the ZIP packaging? unnecessary complexity?
  • elaborate on .png dimensions, glyph indexing and pages

On min_version and max_version

An implementation should always pick the font with the biggest valid min_version for a given FC identifier and version if multiple versions are available.

max_version is optional and can be used to restrict a font from being used with newer incompatible versions when a newer compatible version isn't available (as the prior min_version rule would take precedence regardless of max_version if a newer version is available).

Both min_version and max_version can be a partial semver string in order to allow for matching against minor patch releases that are released after the font update. This means for example that a max_version of "4.4.0" should not match against an FC version of "4.4.1", however a max_version of "4.4" should match against "4.4.1".

User friendly distribution

For the purpose of manual installation, dpfont folders should be distributed and installable as a ZIP file with the extension .dpfont with all files present in the root of the ZIP archive.