Преобразование текста в сетку

Мне нужно преобразовать текст (строка + шрифт) в сетку (вершины, индексы, треугольники и т. Д.), Но мне не нужно ничего рисовать. Я просто получу строку из одного API и вставлю ее как вершины & показатели к другому. Какой самый простой / легкий / лучший способ сделать это? Метрики шрифта и размещение текста, конечно, доступны, и никаких других преобразований не требуется.

В настоящее время я работаю с VC ++. Тем не менее, любой вид OpenSource (C / C ++, C #, VB, …) и «не открытых, но бесплатных» COM / .NET-библиотек был бы хорош.

Я слышал о FreeType. Это отвечает на мои молитвы или есть что-то еще лучше?

РЕДАКТИРОВАТЬ: Как прокомментировал Нико Шертлер, в DirectX-библиотек, кажется, есть функция Mesh.TextFromFont, которая, вероятно, добивается цели. Спасибо, Нико! Я обновлю, когда у меня будет время проверить это на практике.

0

Решение

Mesh.TextFromFont звучало хорошо, но это не спасло день, так как я не мог понять, как получить фактические данные точки / треугольника из объекта-сетки.

Но потом я нашел этот. В этом проекте GraphicsPath используется для создания точечного пути из глифа. Затем точки объединяются в многоугольники, а затем многоугольники делятся на треугольники, используя Poly2Tri.

Быстрый просмотр исходного кода и с некоторыми небольшими изменениями и разбором кода, я получил красивую библиотеку .NET с одной простой статической функцией, которая делает все, что мне нужно.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]