Vertically aligning text in a field

Terence Heaford t.heaford at btinternet.com
Tue Dec 16 05:54:06 EST 2014


Is there a definitive calculation that correctly sets the position of text vertically in a field?

I am using LC 6.7.

I have come across a few ideas like the one below that all appear to use an arbitrary offset to the margins, is there a method to calculate this accurately?

   put the effective textSize of fld id tID into tTextSize
   --   put round (((tTextSize - 22) * 1/3)) into tOffset
   put round (((tTextSize - 24) * 1/3)) into tOffset
   put the formattedheight of char 1 to - 1 of fld id tID into tFormattedHeight
   put round((the height of fld id tID - tFormattedHeight) / 2) into tVerticalMargins
   put tVerticalMargins - tOffset into tTopMargin
   put tVerticalMargins + tOffset into tBottomMargin
   set the margins of fld id tID to 8,tTopMargin,8,tBottomMargin

All the best

Terry


More information about the Use-livecode mailing list