On 2020-08-24 21:49, Sean Cole (Pi) via use-livecode wrote:
My client provided the font they needed in line with their tv show brand. They need the app to work both PC and Mac. It seems I have to manually go
through each field, button and widget and make sure they are laid out
properly. The left, right, center alignments don't always match and the
vertical position certainly never matches.
https://www.dropbox.com/s/v50aj7uv06bh4d9/MacText.png?dl=0
https://www.dropbox.com/s/pry5teqp89xzbun/PCText.png?dl=0

I suspect the main issue with vertical alignment here is to do with the font.

This very readable article contains the relevant information here as well as how the problem can be resolved:

<https://www.williamrchase.com/post/font-height-differences-between-windows-and-mac/>

TL;DR; version - the custom font probably does not have the correct settings/tables for use in programs which use the system text engines on *both* Mac and Windows.

FWIW, LiveCode fields try to match the way the running platform displays text in OS editable fields.

Specifically, text in a field on macOS will look almost the same as that in TextEdit; and text in a field on Windows will look almost the same as that in WordPad (DPI differences taken into account - LC assumes 72dpi, Win assumes 96dpi).

Unfortunately this means you do need to do some work (i.e. scripting) if you want to use LiveCode fields in more 'graphical' situations - e.g. as the labels on custom buttons.

Warmest Regards,

Mark.

P.S. It is perfectly possible that fettling with the metrics detailed in the article above would mean you could achieve identical vertical layout on macOS and Windows but it isn't something I have actually tried.

--
Mark Waddingham ~ m...@livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create app

_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to