LCARSx32 / Main-LCARS-x32-Project

http://www.lcarsx32.com
Other
27 stars 10 forks source link

LCARS font not displaying for certain items. #2

Closed DenKomm closed 8 years ago

DenKomm commented 8 years ago

LCARS font does not work on certain GUI items such as time and power status in WINDOWS 10 HOME , the same GUI items work correctly in WINDOWS 10 PRO

Tested with official 0.6.5 LCARS release and with self compiled latest pull. Compared WIN10 PRO and WIN10 HOME side by side.

DenKomm commented 8 years ago

Solution found:

The object must have the property "UseCompatibleTextRendering = True" for each label on the form.

Why it needs it is beyond me, since Windows 10 Pro doesn't need it, and yet Windows 10 Home does.

No idea how this will affect older windows versions, needs further testing, however I only have Windows 10 at my disposal.

Surak256 commented 8 years ago

Thanks for finding this; I thought this issue had been fixed, but I only have Windows 10 Pro to test with. Can you confirm that you have the Windows 10 November update installed?

If it is not fixed by the November update, there are several ways I could fix it. I will probably end up fixing the underlying problem with the font, rather than make any changes to the code to work around it.

Surak256 commented 8 years ago

OK, the underlying problem is the MS name and MAC name of the font don't match. On every previous version of Windows, this didn't cause any problems, but some versions of Windows 10 are choking on it. Apparently, the person who created the font changed one but not the other, or the software used couldn't change both.

Looking at the Mac name, the LCARS font was originally named "Swiss911 Ultra Compressed BT". Searching for that font shows that they're the same. Looking through various LCARS fonts, the only one that matches is the LCARS font from the LCARS standards development board, and it is a bit-for-bit match.

So, I see two ways to fix the font. The first is to find a way to fully change the name without changing anything else. FontForge works for changing the name, but modifies the line height to the point that major changes would be needed for LCARS.dll. I haven't found anything else that could change the name.

The second option is to just install the original, unmodified font and add "LCARS" as an alias. The problem with this is, while both fonts are freely available, I am unsure if the original font permits redistribution. It doesn't help that the license bits are set in a pattern that makes no sense. (Cannot be modified or distributed; may be distributed to open documents read-only, but not installed; may be distributed and installed temporarily to edit documents)

Ideas or suggestions?

Surak256 commented 8 years ago

Fully fixed by 7f68c62bf99efac7f2d34188fa941530d531d2d9. Thanks for your help.