Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Шрифт с высотой и шириной   Найти похожие ветки 

 
vin   (2004-07-07 17:36) [0]

Уважаемые коллеги,

Необходимо вывести на канву моноширный техт с заданой высотой и шириной в пикселях.

Познакомился с TLOGFONT и CreateFontIndirect,
но выводимый текст не соответствует задаваемой высоте и ширине
(в хелпе речь идет о неких EM единицах для фонта - до конца не понял, что это такое).
Помогите разобраться.

Заранее благодарен,
Иван


 
KSergey ©   (2004-07-07 17:40) [1]

А что имеется в виду под высотой букв, например? Просто для шрифта эта величина не равна видимой высоте букв. Она несколько больше (если не путаю, то максимум/минимум будет у сочетания Йу, вот на эти элементы сверху/снизу и запас)


 
vin   (2004-07-07 17:50) [2]

2KSergey>
Хочу, чтобы каждая буква вписывались в прямоугольник с заданной высотой и шириной...


 
TUser ©   (2004-07-07 18:18) [3]

Если есть моноширинный TrueType - выводи нужной высоты.Высота дается св-вом Label"а Height при отрицательном size, ширина - наверное через Canvas.TextWidth можно определить, и потом смасштабировать. Можно, конечно, создать свой канвас, кинуть на него через TextOut нужный тебе текст и потом сделать CopyRect.


 
KSergey ©   (2004-07-08 07:13) [4]

> [2] vin   (07.07.04 17:50)
> Хочу, чтобы каждая буква вписывались в прямоугольник с заданной
> высотой и шириной...

Она и так вписывается, уверяю
Вот только его границы Вы и Win видимо понимают по разному ;)


 
vin   (2004-07-08 12:19) [5]

2 KSergey, TUser >
Может я некоректно выразился, проблема в следующем:
Обычно для определения размера шрифта задается его высота, как правило в пунктах (1 пункт = 1/72 дюйма), при этом ширину символа мы задать извне не можем. Т.е задается только высота шрифта!
Задача состоит в том, чтобы задать как высоту так и ширину щрифта извне, такой какой захочу.
Для этого я использовал TLOGFONT  (в нем есть свойства высоты и ширины) и функцию CreateFontIndirect. Но не добился желаемого результата.
Спасибо за поддержку дискуссии.


 
KSergey ©   (2004-07-08 12:34) [6]

Не уверен, вероятно может помочь перед выводом текста SetMapMode(Canvas.Handle, MM_ANISOTROPIC) - ну и читаем справку по этому поводу... как задать нужную систему координат по X и Y (надеюсь, про именно MM_ANISOTROPIC я не промахнулся; но в любом случае что-то около того, может и другой какой метод)
Коэффициенты - ну не знаю, надо думать где их взять

А вообще, признаться, уж извините, идиотизьм это
Надписи на экране (на экране!) будут весьма не читабельны. Ну разве что это типа граф. редактор, где не суть в качестве отображения, а в его идентичности распечатки...



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

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
14-1088690674
mvgfirst
2004-07-01 18:04
2004.07.25
Подскажите кто чем учитывает списки "What s new",


8-1084188673
Никита
2004-05-10 15:31
2004.07.25
Воспризведение DWD


8-1084306993
Рома
2004-05-12 00:23
2004.07.25
Уменьшение битмапа


9-1081937690
V@LER@N
2004-04-14 14:14
2004.07.25
АльфаБленд


14-1089102719
beaddy
2004-07-06 12:31
2004.07.25
Закрыть