Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Форматирование чисел в шрифтах нефиксированной ширины

4.6K
21 декабря 2005 года
The Lich
14 / / 26.03.2004
Есть ли способ выводить форматированные числа WinApi'шными функциями, если шрифт нефиксированной ширины? Такие функции как TextOut с wsprintf'ом напихивают туда обычных пробелов (например, запись "%8d" с числом 34, где нужно 6 пробелов перед числом), а хотелось бы, чтобы пробелы были шириной с цифру (да и есть ли в шрифте вообще такие пробельные символы?). Или есть какой-нибудь другой способ? Координаты считать неохота, свои функции писать неохота, вдруг есть более простой способ?
292
21 декабря 2005 года
Matush
726 / / 14.01.2004
Ну, сам понимаеш есть вариант использывать шрифт фиксированной ширины.
Для шрифта с нефиксированной шириной единственный выход (лично для меня в данный момент) написать свою функцию. Там нема шо писать.

Назвем ее к примеру TextOutEx(LPSTR text, POINT Pos, SIZE sz).
Эта функция получает строку (text), начальную позицию вывода (Pos) и размер символа (sz).
Ну и в нехитром цикле побуквенно выводит текст. Позицию каждой буквы вычисляет как Pos.x+sz.cx*i, где i - это номер буквы.
4.6K
22 декабря 2005 года
The Lich
14 / / 26.03.2004
Ну что ж. Благодарю за ответ. Ясно, что такой возможности нет в WinAPI. А могли бы микрософтовцы сделать такую возможность, руки бы у них не отвалились... впрочем у НИХ бы, конечно, отвалились.
Буду сам писать.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог