Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.07.12;
Скачать: [xml.tar.bz2];

Вниз

Рамер шрифта в width и height   Найти похожие ветки 

 
torcik   (2009-05-19 15:13) [0]

Можно ли каким нибудь способом узнать сколько в высоту и ширину занимает один символ заранее заданного размера (например 12-го)?


 
Сергей М. ©   (2009-05-19 15:24) [1]


> сколько в высоту и ширину


В чем должно измеряться это "сколько" ? В попугаях ?)


 
Ega23 ©   (2009-05-19 15:29) [2]


function GetTextWidthInPixels(AText: string; AControl: TControl): integer;
// Copyright by Игорь Шевченко ©
var
propInfo: PPropInfo;
thisFont: TFont;
begin
Result := 0;
propInfo := GetPropInfo(AControl.ClassInfo, "Font");
if propInfo <> nil then begin
  thisFont := TFont(GetObjectProp(AControl, "Font"));
  if Assigned(thisFont) then
    with TControlCanvas.Create do
      try
        Control := AControl;
        Font.Assign(thisFont);
        Result  := TextWidth(AText);
      finally
        Free;
      end;
end;
end;


 
Ega23 ©   (2009-05-19 15:30) [3]

А, ну ещё в uses надо TypInfo добавить


 
torcik   (2009-05-19 15:30) [4]

А разве поля width и height могут измерятся в разных величинах? :)


 
torcik   (2009-05-19 15:31) [5]


> Ega23


Спасибо


 
Сергей М. ©   (2009-05-19 15:32) [6]


> поля width и height


Поля чего ?)


 
copron   (2009-05-19 15:34) [7]


> Сергей М.


ну что ты пристал? :) Всё же прекрасно понял


 
copron   (2009-05-19 15:35) [8]

Любите вы тут ко всем новичкам приставать, уму разуму учить :)


 
Сергей М. ©   (2009-05-19 15:37) [9]

Ничего я не понял)
Кроме того что "поле" имеет отношение к структурированной записи или к классу/объекту.

Символ же ни ткм ни другим как бы не является)


 
torcik   (2009-05-19 15:40) [10]


> Сергей М.


Просто мне надо подогнать размеры панели под размеры шрифта. я это имел ввиду


> copron


:)


 
Сергей М. ©   (2009-05-19 15:44) [11]


> я это имел ввиду


Почему бы сразу это не уточнить ?
А то ведь получается, что ты имеешь что-то против попугаев)
Если, скажем, высоту и ширину чего-то там можно измерять в миллиметрах (против мм ты же ничего не имеешь ?), то почему же тогда нельзя в попугаях ?)


 
antonn ©   (2009-05-20 01:13) [12]


> Ega23 ©

насколько я понимаю, курсив оно может неверно посчитать :)


 
Игорь Шевченко ©   (2009-05-20 02:13) [13]


> насколько я понимаю, курсив оно может неверно посчитать
> :)


безусловно

кстати, автор не я, код взят откуда-то из borland.public.delphi.language


 
Игорь Шевченко ©   (2009-05-20 02:16) [14]


> Можно ли каким нибудь способом узнать сколько в высоту и
> ширину занимает один символ заранее заданного размера (например
> 12-го)?


нет. можно в среднем узнать - GetTextMetrics и tmAveCharWidth

как ты понимаешь, символы "i" и "w" имеют разную ширину, а символы "b" и "m" разную высоту. Все написано в TEXTMETRIC



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.07.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.004 c
15-1242208823
PEAKTOP
2009-05-13 14:00
2009.07.12
Поддержи Firebird !


2-1242651148
Wadim005
2009-05-18 16:52
2009.07.12
Как организовать поиск текста по шаблону?


15-1241762640
мс_анатолий
2009-05-08 10:04
2009.07.12
случайный ряд


2-1242997016
cyber-pilot
2009-05-22 16:56
2009.07.12
Директива inline


2-1242802069
roadster
2009-05-20 10:47
2009.07.12
Зашитые в код строковые константы- как защитить их от просмотра?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский