Cross Platform Font Layout - current workarounds
Sean Cole (Pi)
sean at pidigital.co.uk
Tue Aug 25 00:02:50 EDT 2020
It's hardly 'Code Once' then. You absolutely HAVE to write for each OS
specifically. Livecode DOES NOT pull up the slack and make it work
cross-platform identically as insinuated in their homepage.
Yet again, everyone happy to make excuses in accepting their fate to have
to do all the work twice. I might as well code it in Java, C# and Swift for
all the hassle I get in LC. It's laughable how excuses are made for them.
If LC is rendering it out, they must know, from experimentation, how each
system renders and compensate accordingly - in the engine. If I am feeding
it a ttf or whatever, and they are effectively creating an OS operating
within the given platform, they have better control over how things are
rendered at engine level.
If I do artwork in photoshop, Premier, After effects with text layers and
open it up in another platform, guess what?? It damn well looks identical
(as long as the font is installed)! Your excuses cut no mustard with me.
I've been doing this since the late 80's early 90's.
It negates having, in the standalone settings, the need to have checkboxes
for each platform like you can happily output for all in one go. I always,
still, to date, end up with a stack saved for windows, another for mac,
another for whatever else. It's soo stupid, otherwise, I end up with a
tonne of 'if platform() is "fecked up" then' conditions for every display
code I do! When I need to make an update, I end up having to go back over
what I've changed and copy-paste it into the other stacks as best I can
avoiding the differences for font height and placing changes and all the
other NON-CODE-ONCE discrepancies between the platforms. IT IS ABSOLUTELY
FALSE ADVERTISING!!! I'm effing SERIOUS! I've been lied to FAR TOO MUCH by
LC, and you guys just backing them up with really LAME excuses. I mean, do
any of you write multiplatform? How the eff do you manage to account for
and compensate for the display discrepancies (short of them being lame-ass
apps that layout in crappy 80s fashion, basically no better than the old
It IS supposed to be the POINT of LC!
On the LC homepage:
One code base -- LiveCode is cross platform so you won’t have to write
extra code for each platform you deploy to. This avoids having to write
your app multiple times for multiple platforms saving you crucial developer
EFF OFF!!! Total BS!! Saving me frikin time, my buttocks! I'm forever going
round in circles trying to work out what crappy workaround I have to use
this time because some feature on LC isn't functioning correctly, only to
find when attempting to put it up on the 'Quality' (yet another JOKE!)
bugzilla site, that it's a bug that has already existed for anything
between 4 to 15 friggin years.
And, don't you dare say 'it's just the way it is' or 'the way it's always
been'. Unacceptable! Change the way it is! Put the way it's always been
behind us! MAKE IT EFFIN WORK!!
On Tue, 25 Aug 2020 at 03:43, J. Landman Gay via use-livecode <
use-livecode at lists.runrev.com> wrote:
> On August 24, 2020 5:01:54 PM "Sean Cole \(Pi\) via use-livecode"
> <use-livecode at lists.runrev.com> wrote:
> > The font IS embedded. Not a problem using the font itself. It is the same
> > physical font on the two platforms. That's not what I'm asking when you
> > read past paragraph one.
> > HowTF do you get them to show up in the same 'fin place though (ie, the
> > pixel placement of the text itself, baseline, etc) from one platform to
> > next?
> Mac and Windows have always rendered fonts differently, the font rendering
> is done by the OS. Talk to Apple, MicroSoft and Google about it (Android
> and iOS are each unique too.) The text will always start at the same place
> but will render differently from there depending on the OS. You may be
> to adjust the baselines by tinkering with the textheight per platform. You
> will never exactly match the text wrap. In general I leave extra space in
> field to accomodate Windows font rendering. Here's why:
> > Side note follow up:
> > put fontstyles("Arial",0) - Put that in Windows and Mac messagebox and
> > two different results -- MIND BLOWN! It's 2020 people. This was solved
> > in the 70's, wasn't it? Who's overcomplicating this?
> The various operating systems. LC asks the OS what fonts are available,
> each OS returns its own interpretation of what it has (apparently Windows
> does more consolidation by font family than Mac.This is a disadvantage
> sometimes when you do need to know the font file name in order to set a
> specific style.) LC relies on the OS for a whole lot of its info and
> operations, which it passes on to us. It could hardly do otherwise,
> writing its own OS.
> Jacqueline Landman Gay | jacque at hyperactivesw.com
> HyperActive Software | http://www.hyperactivesw.com
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
More information about the use-livecode