delphi - Why are condensed fonts not displayed properly in FireMonkey? -
(and can it?)
if create 2 labels in vcl , set 1 use arial , arial narrow i'll see expected result.
if same in firemonkey, second label not displayed in arial narrow. not displayed in arial (dots on i's round, shape of 's' wrong etc.).
does know why fm (i testing delphi xe4) not displaying font properly? there can it?
source vcl form:
object form3: tform3 left = 0 top = 0 caption = 'form3' clientheight = 198 clientwidth = 475 color = clbtnface font.charset = default_charset font.color = clwindowtext font.height = -11 font.name = 'tahoma' font.style = [] oldcreateorder = false pixelsperinch = 96 textheight = 13 object label1: tlabel left = 24 top = 32 width = 134 height = 14 caption = 'this label using arial @11' font.charset = default_charset font.color = clwindowtext font.height = -11 font.name = 'arial' font.style = [] parentfont = false end object label2: tlabel left = 24 top = 52 width = 152 height = 15 caption = 'this label using arial narrow @11' font.charset = default_charset font.color = clwindowtext font.height = -11 font.name = 'arial narrow' font.style = [] parentfont = false end object label3: tlabel left = 24 top = 98 width = 398 height = 36 caption = 'this label using arial @32' font.charset = default_charset font.color = clwindowtext font.height = -32 font.name = 'arial' font.style = [] parentfont = false end object label4: tlabel left = 24 top = 140 width = 429 height = 37 caption = 'this label using arial narrow @32' font.charset = default_charset font.color = clwindowtext font.height = -32 font.name = 'arial narrow' font.style = [] parentfont = false end end
source fm form:
object form4: tform4 left = 0 top = 0 caption = 'form4' clientheight = 207 clientwidth = 558 formfactor.width = 320 formfactor.height = 480 formfactor.devices = [dkdesktop, dkiphone, dkipad] designermobile = false designerwidth = 0 designerheight = 0 designerdevicename = '' designerorientation = 0 object label1: tlabel font.family = 'arial' styledsettings = [sssize, ssstyle, ssfontcolor] height = 17.000000000000000000 position.x = 16.000000000000000000 position.y = 32.000000000000000000 text = 'this label using arial @11' width = 225.000000000000000000 end object label2: tlabel font.family = 'arial narrow' styledsettings = [sssize, ssstyle, ssfontcolor] height = 17.000000000000000000 position.x = 16.000000000000000000 position.y = 48.000000000000000000 text = 'this label using arial narrow @11' width = 225.000000000000000000 end object label3: tlabel font.family = 'arial' font.size = 32.000000000000000000 styledsettings = [ssstyle, ssfontcolor] height = 41.000000000000000000 position.x = 16.000000000000000000 position.y = 104.000000000000000000 text = 'this label using arial @32' width = 433.000000000000000000 end object label4: tlabel font.family = 'arial narrow' font.size = 32.000000000000000000 styledsettings = [ssstyle, ssfontcolor] height = 65.000000000000000000 position.x = 16.000000000000000000 position.y = 128.000000000000000000 text = 'this label using arial narrow @32' width = 545.000000000000000000 end end
this seems affect fonts within families - if font not exist in fonts folder under own family name. arial narrow, example, font within "arial" font file (it exists within family , not, per se, family unto itself).
typically font family include 4 styles
arial (naively contains)
- arial regular
- arial bold
- arial italic
- arial bold italic
"arial narrow", however, exists within "arial" family alongside standard styles - ie :
arial (actually contains)
- arial regular
- arial bold
- arial italic
- arial bold italic
- arial narrow
- arial narrow bold
- arial narrow italic
- arial narrow bold italic
- arial black
it seems fmx looking 1 level deep within given font family , not looking @ style variant deviates strict gdi+ style definitions (regular, bold, italic, bold italic).
this also, inspection, affects arial black - other examples easy find running through fonts folder. franklin gothic demi, gill sans ultra bold, etc... follows above pattern. font seems rendered in default segoe ui when these fonts encountered.
a stopgap solution use arial , set scale
property x=0.82
- it's not perfect, it's quite close arial narrow.
this bug , should qc'd.
Comments
Post a Comment