Это кросспостинг, так как .NET шрифты и GDI шрифты, как я понял из MSDN почти одно и тоже.
Нужно написать программу по конвертации любого шрифта в свой растровый формат. Читаю MSDN по этому поводу.
Как это лучше сделать?
Можно узнать у FontFamily высоту (GetEmHeight) шрифта (еще не пробовал), высоту нижней части букв (GetCellDescent), высоту от строки написания до самой верхушки буквы(GetCellAscent).
1) Чем отличается EmHeight от суммы Descent и Ascent?
Что такое EmHeight(em size)!? Часто упоминается, но не объясняется.
2)Что такое Design Units, как их перевести в пиксели (или другие GraphicsUnits)?
Есть предположение, что можно создать конкретный Font объект, узнать его LineSpacing в пикселях, разделить его на LineSpacing в DesignUnits FontFamily и получить таким образом соотношение между DesignUnits и пикселями. Но как-то это криво выглядит.
3)Как узнать ширину конкретного char (Скажем, CharWidth)?
Как мне заполнить массив byte [(CellDescent+CellAscent) * CharWidth] изображением конкретного char? Можно нарисовать в Graphics, но тут у меня возникает два вопроса:
4)Как создать этот Graphics?
5) Как эффективно получить обратно изображение из Graphics? (В массив байтов).