На какую величину изменяется ширина текста ???
От: Cynic Россия  
Дата: 20.11.09 14:43
Оценка:
На какую величину изменяется ширина текста для наклонных стилей

Судя по всему ширина текста не меняется, а применяется алгоритм искривления. По крайне мере если измерять один и тот-же текст MeasureString или MeasureCharacterRanges, то для Italic и Regular, они возвращают одинаковые значения ширины.
Я примерно посчитал, что для шрифтов разных размеров это величина не больше 30% ширины одного символа, но хотелось бы поточнее
:)
Re: На какую величину изменяется ширина текста ???
От: Hacker_Delphi Россия  
Дата: 21.11.09 07:54
Оценка:
Здравствуйте, Cynic, Вы писали:

от шрифта зависит. некоторые шрифты выглядят АБСОЛЮТНО по другому в стиле Italic...
... << RSDN@Home 1.2.0 alpha 4 rev. 1284>>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re[2]: На какую величину изменяется ширина текста ???
От: Cynic Россия  
Дата: 21.11.09 14:31
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

H_D>Здравствуйте, Cynic, Вы писали:


H_D>от шрифта зависит. некоторые шрифты выглядят АБСОЛЮТНО по другому в стиле Italic...


Тогда возвращаемся к старому вопросу о правильном размещении текста в собственно-ручно рисуемом контроле. Например, индикаторе состояния, который чего нибудь пишет. И вопрос этот звучит так: "Как очень точно разместить текст в контроле, при условии, что он может быть любого шрифта, размера и стиля" Буду очень признателен если дадите исчерпывающий ответ
Даже если использовать MeasureCharacterRanges, то ровно надпись разместить не удастся, потому что как вы правильно заметили, некоторые шрифты выглядят АБСОЛЮТНО по другому в стиле italic
:)
Re[3]: На какую величину изменяется ширина текста ???
От: vmpire Россия  
Дата: 08.12.09 10:00
Оценка:
Здравствуйте, Cynic, Вы писали:

C>Тогда возвращаемся к старому вопросу о правильном размещении текста в собственно-ручно рисуемом контроле. Например, индикаторе состояния, который чего нибудь пишет. И вопрос этот звучит так: "Как очень точно разместить текст в контроле, при условии, что он может быть любого шрифта, размера и стиля" Буду очень признателен если дадите исчерпывающий ответ

C>Даже если использовать MeasureCharacterRanges, то ровно надпись разместить не удастся, потому что как вы правильно заметили, некоторые шрифты выглядят АБСОЛЮТНО по другому в стиле italic
Некрасивый но отлично работающий способ: нарисовать текст чёрным по белому битмапу в памяти и найти границы по крайним не белым точкам.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.