I thought its in the right API range but only works on fenix 8, I wanted to add some in the list(now the simulator bugs just around with other devices added)
I thought its in the right API range but only works on fenix 8, I wanted to add some in the list(now the simulator bugs just around with other devices added)
What is the crash you see and the code involved?
When you do the getVectorFont, do you check that the return isn't null? You pass the font name(s) in that call, and not all fonts are available on all devices.
From one of my test apps, here's the fonts I use:
why does it work with fenix 8 ? Its the first line drawRadialText and I use of course systemfonts. seems that in fenix 7 state getVectorFont gives null, how have you instanced it?
The fonts you can use with getVectorFont vary by device. Sounds to me you are specifying a font that's available on the f8 that's not available on the f7.
What are you using with getVectorFont?
I used
Those are not verctor fonts on all devices
Try using an array with the two strings I posted earlier as the font names.
Found it, I wonder why the buildin Fonts not work, that was the first I thought compatiblity is made, I rework my RingInfo watchface, guess I had made the ringnumbers with lines and turned them and made png sets for the varfields, hehehehe(in 2023), I have some weird mistakes from stressHistory, I ordered a new watch now to find out if its the device.
I wonder why the buildin Fonts not work
As jim_m_58 said, it's because the system fonts are not vector fonts on all devices.
e.g.
On Fenix 8, FONT_* / FONT_SYSTEM_* are vector fonts.
On Fenix 7, FONT_* / FONT_SYSTEM_* are not vector fonts.
You can see this by opening the CIQ devices folder on your development machine and looking at simulator.json for various devices.
e.g. ConnectIQ\Devices\fenix847mm\simulator.json
"fonts": [ { "fontSet": "ww", "fonts": [ { "filename": "Roboto-Regular", "name": "xtiny", "size": 6.9542, "type": "ttf" }, { "filename": "Roboto-Regular", "name": "tiny", "size": 8.7683, "type": "ttf" }, { "filename": "Roboto-Regular", "name": "small", "size": 9.9777, "type": "ttf" },
Note how the various system fonts (xtiny, tiny, etc.) have a type of "ttf" (which means they are scalable vector fonts).
e.g. ConnectIQ\Devices\fenix7s\simulator.json
Note how the various system fonts (xtiny, tiny, etc.) do not have a type of "ttf" (which means they are bitmap fonts).
"fonts": [ { "fontSet": "ww", "fonts": [ { "filename": "FNT_FENIX6S_CDPG_ROBOTO_13B", "name": "xtiny" }, { "filename": "FNT_FENIX6S_CDPG_ROBOTO_17B", "name": "tiny" }, { "filename": "FNT_FENIX6S_CDPG_ROBOTO_19B", "name": "small" },
You can also indirectly see this in the device reference guide:
https://developer.garmin.com/connect-iq/reference-guides/
For example:
- For Fenix 8, the FONT_* font filenames (in the "Font" column) are the same as some of the scalable font filenames in the same font list
- For Fenix 7, the FONT_* font filenames are *not* the same as some of scalable font filenames in the same font list
As I said, it s a bit wild where which font, I reworked all and it works in the watchfaces.