BUG - Scalable fonts incorrect size on F265/F265s/F965/Venu3/Venu3s

The font returned from Graphics.getVectorFont() is way too large on the F265/F265s/F965/Venu3/Venu3s.

This is what it should look like on all watches:

Venu3:

Related bug in the simulator: forums.garmin.com/.../simulator-bug-with-scalable-fonts

  • Which font(s) are you using?  are you specifying more that one for face=>  ?  Could it be the same fonts aren't available in the sim/real devices for each target?

  • Given they are scalable, the font shouldn't matter, the size should be correct on all devices.  Otherwise, what is the point of having scalable fonts?

  • In the sim the font is BionicBold on both watches, but as can be seen, the fonts are clearly different on the real watch (Venu3).  So that's yet another bug.

  • I found out, that we have 2 variants of sizes on getvectorfonts, so I implemented a correction factor when needed

    The group with smaller size is

    d2mach1
    epix2
    epix2pro42mm
    epix2pro47mm
    epix2pro51mm
    fenix7
    fenix7pro
    fenix7s
    fenix7spro
    fenix7x
    fenix7xpro
    marq2
    marq2aviator

    and the other group with bigger size is

    fr265
    fr265s
    fr955
    fr965
    venu3
    venu3s

  • I've had to do the same for non-scalable fonts.  It seem the fonts are not correctly sized on these watches regardless of the font used.

  • It looks like the bigger size font watches are returning a font that is twice the size requested (at least on the sim.  the factor appears different on the actual devices).

    I'm unwilling to compensate for this bug because if/when Garmin fixes this, my apps will look bad until I can update them.  I'd rather just wait for them to fix this glaring bug.

  • The sizes for native fonts are not set by the CIQ group.  They are set by the group that does the watch.

    Look at something like the FONT_NUMBER_HOT in the sim for the f3,f5, and f6

    Been that way since CIQ started.

    If you look at the simulator.json file for the venu3, you'll see it doesn't support BionicBold, while you'll see it for others like the fr265/965

  • And yet, on the sim, it does support BionicBold scalable font on the Venu3.  Yet another scalable font bug...

  • The sim seems to allow any valid name for a scaleable font, even if a device doesn't have it

  • Scalable fonts are a bit of a mess.  In the attached, notice that the "c" and "d" are rendered incorrectly (roughly 2x too big):

    Also, notice that the fonts are not all of size 16 pixels which is what the app is requesting.

    This is from the sample TrueTypeFonts app.  This app clearly shows the issues which tells me no one at Garmin actually ran it on the "bigger font" devices (265 in this example.