Corrected points to pixels calculation

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2002-02-28 15:57:26 +00:00
parent cbf60e091e
commit 0a68bc6908

View File

@@ -644,20 +644,17 @@ static wxNativeFont wxLoadQueryFont(int pointSize,
int yPixelsPerCM = screenInfo.ydpcm;
// A point is 1/20 of an inch.
// A point is 1/72 of an inch.
// An inch is 2.541 cm.
// So pixelHeight = (pointSize / 20) (inches) * 2.541 (for cm) * yPixelsPerCM (for pixels)
// So pixelHeight = (pointSize / 72) (inches) * 2.541 (for cm) * yPixelsPerCM (for pixels)
// In fact pointSize is 10 * the normal point size so
// divide by 10.
// I don't know why this is necessary, but otherwise fonts
// are just too big.
float fudgeFactor = 0.6 ;
int pixelHeight = (int) ( (((float)pointSize) / 200.0) * 2.541 * (float) yPixelsPerCM * fudgeFactor) ;
int pixelHeight = (int) ( (((float)pointSize) / 720.0) * 2.541 * (float) yPixelsPerCM * fudgeFactor) ;
// An alternative: assume that the screen is 72 dpi.
// This gets a similar result to above (pre-fudge factor)
//int pixelHeight = (int) (((float)pointSize / 200.0) * 72.0) ;
//int pixelHeight = (int) (((float)pointSize / 720.0) * 72.0) ;
//int pixelHeight = (int) ((float)pointSize / 10.0) ;
GR_LOGFONT logFont;
logFont.lfHeight = pixelHeight;