Please help me find a list of available "faces" for Vector Fonts?
ie to use as an option for .getVectorFont()
Thank you!
Please help me find a list of available "faces" for Vector Fonts?
ie to use as an option for .getVectorFont()
Thank you!
As far as the devices that support the calls, see "Supported devives" in the API doc in the SDK:
Supported Devices:
You can also look at the Connect IQ Devices Reference. Optionally click on the device you're interested in, and search for "Scalable".
The left-most column (Font Symbol) contains the face…
But not all those fonts can be used on all devices with scalable fonts
I never said that, did I? The screenshot was simply an example. Next time I'll be sure to type FOR EXAMPLE to make…
As far as the devices that support the calls, see "Supported devives" in the API doc in the SDK:
Supported Devices:
As far as seeing what fonts are available for a supported device, see simulator.json for the device in the devices folder. Look for
"type": "system_ttf"
There is also the sample in the SDK, the TrueTypeFonts sample
There is also this sample I did that uses scaleable fonts on a device where it can and a native font on others.
You can also look at the Connect IQ Devices Reference. Optionally click on the device you're interested in, and search for "Scalable".
The left-most column (Font Symbol) contains the face name to pass in to getVectorFont().
But not all those fonts can be used on all devices with scalable fonts. BionicBold isn't on the Venu3/3s for example. At least per the sim, but from posts I've seen, it's not on the real devices either.
But not all those fonts can be used on all devices with scalable fonts
I never said that, did I? The screenshot was simply an example. Next time I'll be sure to type FOR EXAMPLE to make that clear.
I kind of implied that each device has its own section on the devices reference page when I said "Optionally click on the device you're interested in". I also made sure to include the "#fēnix®7spro" url fragment in my screenshot, but maybe that was a little too subtle.
Actually, each device does have its own section, and within each device section, there's a section for each part number (which contains information about available fonts). It's not too different from simulator.json, just in a more human-readable form.
To be clear I'm not saying one way or another is better (*), I just wanted to offer an alternative. Ironically, in the past when I've suggested looking at simulator.json for other things, you've suggested looking at the devices reference page (which is fine with me.)
(* except for the poor usability of the devices reference page, where it's not always easy to know which device you're looking at since the sections are so long and there's no indication of the current section, except for the url fragment if you clicked on a device link. Ofc the url fragment doesn't help if you scroll far enough into another device's section, since it doesn't automatically change.
Another advantage of simulator.json is you can use a tool like jq to filter/aggregate/reshape the data to your liking.)
1. Open https://developer.garmin.com/connect-iq/reference-guides/devices-reference/
2. Scroll to Fenix 7S Pro and click on the link
3. Scroll through the Fenix 7S Pro section and note the sub-sections for part numbers, which contain lists of fonts.
Thank you a lot and special thanks for WF example.
Thank you for so detailed step by step instruction. Finally I have got a point and completed experimental implementation for Vector fonts.
So, do I understand it correctly that if the device is on the getVectorFont list, it should have some scalable font supported? Looking at the Approach s70, it has getVectorFont support, but device files and the device reference web page does not seem to contain any scalable fonts ...?
Documentation was probably not updated yet. I see some additional devices on there as well, like FR165.
Is it possible to add my own vector font? One that isn't on the device by default?
Is it possible to add my own vector font? One that isn't on the device by default?
No, I don’t think so.
Source: the docs imply that custom fonts are not scalable fonts
https://developer.garmin.com/connect-iq/core-topics/graphics/
Scalable fonts work with
Dc.drawText()
but can also be used with theDc.drawAngledText()
andDc.drawRadialText()
. These APIs only support scalable fonts and do not support custom fonts loaded as resources.