Issues with FR165 (vector font face, packing format)

I just tried to add the FR165 to my app and noticed two things:

The device reference lists Pridi as standard font and there is a scalable PridiRegular to match it. But I cannot access that vector font. Tried to specify "Pridi", "PridiRegular", "PridiRegularGarmin" (from font name from simulator.json), "Pridi-Regular", "Pridi-Regular_Garmin" (file names), but none of them work.

Does anyone know how to access "Pridi" as vector font?

The other weird thing is that while it being a 5.1.0 device, the compiler reports:

WARNING: fr165: D:\ProjectsLocal\evccg\evcc-garmin\resources-drawables\fr165\drawables.xml:83,4: Device doesn't support given format 'png', reverse to default format.

Top Replies

  • I just tried to add the FR165 to my app and noticed two things:

    The device reference lists Pridi as standard font and there is a scalable PridiRegular to match it. But I cannot access that…

All Replies

  • I expected that the SDK knows which of the scalable font faces equals to the one used by the standard fonts, but when looking under the hood a bit it becomes clear that there is no such link.

    I mean there is in simulator.json, if not the device reference.

    (note how the system font definitions have standard names like "xtiny", "tiny", etc)

    epix2pro47mm/simulator.json (system fonts are not ttf):

    - note the lack of `"type": "ttf"`

        "fonts": [
            {
                "fontSet": "ww",
                "fonts": [
                    {
                        "filename": "FNT_006B431300_CDPG_ROBOTO_19B",
                        "name": "xtiny"
                    },
                    {
                        "filename": "FNT_006B431300_CDPG_ROBOTO_26B",
                        "name": "tiny"
                    },
                    {
                        "filename": "FNT_006B431300_CDPG_ROBOTO_29B",
                        "name": "small"
                    },
    

    fr165/simulator.json (system fonts are ttf):

    - note the presence of `"type": "ttf"`

        "fonts": [
            {
                "fontSet": "ww",
                "fonts": [
                    {
                        "filename": "Roboto-Regular",
                        "name": "xtiny",
                        "size": 5.7624,
                        "type": "ttf"
                    },
                    {
                        "filename": "Roboto-Regular",
                        "name": "tiny",
                        "size": 6.6722,
                        "type": "ttf"
                    },
                    {
                        "filename": "Roboto-Regular",
                        "name": "small",
                        "size": 8.4919,
                        "type": "ttf"
                    },
                    {
                        "filename": "Roboto-Regular",
                        "name": "medium",
                        "size": 10.0083,
                        "type": "ttf"
                    },
    

    document if a standard font is scalable in the device reference.

    With a few exceptions (like the font size column?), I feel like the device reference is a watered down version of compiler.json+simulator.json for all devices.

    But you can still kinda tell in the device reference as follows:

    - the system fonts which are scalable (as of 5.1.0) have a value in the Font column which refers to another scalable (TTF) font below

    - the system fonts which are not scalable have a value in the Font column which does not refer to another scalable (TTF) font below

    I agree this could be improved. They probably didn't want to list system fonts as "scalable" in the past, because even though they were based on TTF fonts, they were not "scalable" in CIQ.