Difference between revisions of "Font"

From Free Pascal wiki
Jump to navigationJump to search
Line 26: Line 26:
  
 
Normally, you want to use Positive font size values.
 
Normally, you want to use Positive font size values.
 +
 +
===Size to Height===
 +
 +
Once should use the following formal to convert from Size to height
 +
 +
Font.Height := -Font.Size * DPI / 72
 +
 +
and from Height to Size
 +
 +
Font.Size := -Font.Height / DPI * 72
 +
 +
Note, the use of negative , due to reverse logic.

Revision as of 00:31, 10 January 2020

TFont class describes a typographic font information

Height

The height property specifies the font height in Pixels.

However, due to Windows and Delphi compatibility, height might be described in 2 values, negative and positive.

font height.png

Negative value takes into account only the height of font characters.

Positive value takes into account height of font characters plus additional space on top of the font. (So, it would be possible to write a line of the text right after another, without adding any extra space, and the font would not look too densed).

Normally, you want to use Negative font height.

Size

Is the size of the font in Typographic points.

In order to convert from Typographic points to Pixels one should use a device (Screen or Printer) dots per point value (DPI)

The size is also using Positive and Negative values, but in reverse order.

Positive value takes into account only the height of font characters. (it's a typographic standard)

Negative value takes into account height of font characters plus additional space on top of the font. (So, it would be possible to write a line of the text right after another, without adding any extra space, and the font would not look too dense).

Normally, you want to use Positive font size values.

Size to Height

Once should use the following formal to convert from Size to height

Font.Height := -Font.Size * DPI / 72

and from Height to Size

Font.Size := -Font.Height / DPI * 72

Note, the use of negative , due to reverse logic.