Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Шрифт [D6]


Суслик ©   (2004-10-06 09:43:00) 

В настоящее время я занимаюсь экспортом в бинарный формат xls (excel).

Ширина колонки задается в у.е., которая равна 1/256 от символа "0" определенного шрифта (все параметры шрифта известны).

Вопросы:
1. Как перевести ширину в мм (дюймах, поинтах - не важно) в у.е.?
2. Является ли эта зависимость однозначной или зависит от компьютера, принтера, разрешения экрана и пр.?


MBo   (2004-10-06 13:16:00) [1]

widthlogpx*25.4/(GetDeviceCaps c LOGPIXELSX)


Суслик   (2004-10-06 13:01:00) [2]


>  [1] MBo ©   (06.10.04 12:51)


> А откуда такая информация? (просто интересно, раньше не
> встречался)

Документация, коей полно в сети. Если интересует, напиши, пришлю.


> Ширину в логических единицах для выбранного в данном контексте
> шрифта можно получить с помощью GetCharABCWidths (или GetTextExtentPoint32,
> если учитывать пустые промежутки (о кернинге в случае одного
> символа, наверно, нельзя говорить))

Да это я понимаю. Вчера в Юане прочел. Как перевести это в мм? Поделить на dpi?


MBo   (2004-10-06 12:51:00) [3]

>Ширина колонки задается в у.е., которая равна 1/256 от символа "0" определенного шрифта
А откуда такая информация? (просто интересно, раньше не встречался)

Ширину в логических единицах для выбранного в данном контексте шрифта можно получить с помощью GetCharABCWidths (или GetTextExtentPoint32, если учитывать пустые промежутки (о кернинге в случае одного символа, наверно, нельзя говорить))


Наверх

Титульная страница Поиск, карта сайта Написать письмо