Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
1-1089721797
BillyJeans
2004-07-13 16:29
2004.07.25
TreeView и ScrollBars


4-1086870441
Лёха
2004-06-10 16:27
2004.07.25
RegNotifyChangeKeyValue, отслеживание реестра


3-1088935800
white
2004-07-04 14:10
2004.07.25
Как создать БД с другим именем пользователя и паролем?


11-1076575330
Аид
2004-02-12 11:42
2004.07.25
Помогите с наследованием КОЛ объектов


11-1077751353
nester
2004-02-26 02:22
2004.07.25
Как обрабатывать сообщения в КОЛ проге, если она без формы.




   Наверх