Форум: "WinAPI";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
ВнизFont Size Найти похожие ветки
← →
Mamed © (2004-05-31 10:30) [0]kak mne naytı FontSize v milllimetrax:
Var p:Tfont;
Begin
p.FontName:=v_fontname
p.FontSize:=v_Fontsize;
← →
Mamed © (2004-05-31 11:09) [1]Pomagite kto nibud(
← →
Mamed © (2004-05-31 11:44) [2]Pomossss(((
← →
wicked © (2004-05-31 15:02) [3]> Var p:TFont;
mm_size: integer;
...
mm_size := Round((abs(p.Height) / Screen.PixelsPerInch) * 2.54);
обьяснения:
св-во Height у TFont измеряется в пикселях (см справку для деталей)...
abs(p.Height) / Screen.PixelsPerInch - переводим его в дюймы...
и умножением на 2.54 переводим размер в миллиметры...
вроде всё...
← →
Anatoly Podgoretsky © (2004-05-31 15:54) [4]Это свойство в пунктах
FontSize * 254 / 720
← →
wicked © (2004-05-31 16:08) [5]хмм... Борланд обманывает?...
цитируем справку от билдера:
Description
Use Height to specify the height of the font in pixels.
--- skipped ---
To specify the size of the font in points, use the Size property instead. Users usually specify font size in points, while applications may be concerned with the actual size of the font in pixels when displaying the font on the screen.
The value of Height can be obtained from the point size using this formula:
Font.Height = -Font.Size * Font.PixelsPerInch / 72
--- конец цитаты ---
хотя если автор имел в виду АПИшную структуру LOGFONT, тогда совсем другое дело....
кстати, в моих изысканиях есть ошибка - множить надо не на 2.54, а на 25.4 - кол-во миллиметров в дюйме...
← →
Anatoly Podgoretsky © (2004-05-31 16:18) [6]Не обманывает, это формула получения пикселей из пунктов. То есть это привязка физическим характеристикам уствройства. А для получения миллиметров из пунктов, пиксели не нужны.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c