Как стать автором
Обновить

Комментарии 15

Этот пример может (и будет) расширен для рендеринга символов в текстуру OpenGL
Планируется ли дальнейшее расширение примера для вывода полностью трехмерного текста, то есть построение трехмерной модели глифа?
А разве FreeType на подобное рассчитан?
Не знаю. Разве формат шрифта не векторный?
Он векторный, однако, плоский. Третье измерение не появилось, хотя 3D-эффекты надписей «рисовались» уже давно.
Если возможно построить векторное плоское изображение, то и «выдавить» способ найдется.
ну и зачем оно надо, чем бы люди не тешились. лучше б внесли вклад в нормальную граф. библиотеку вместо этого
Разрабатывал рендер надписей с эффектами, компоновкой и смешением с подложкой контекста на базе этой библиотеки. Лично не хватало только одного: расчёта габаритов глифов без их рендеринга и, соответственно, генерации массива графического контекста. ИМХО, это — единственный бич данной либы. 100 пудов решаемый, но для этого её надо либо изменять, либо форкать. Ну и огромные глифы долго рендерит из-за закраски.

Этому современному рендерингу (через freetype) уже больше 20 лет. И, эта, подключать библиотеки явным указанием флагов линковщика, некрасиво как-то. 21 век давно наступил.

Правильно, надо подсаживать программеров инструкциями на конкретные IDE, напрочь игнорируя суть действий. А то начнёшь указывать на флаги компиляторов — они научатся сравнивать сами компиляторы, изучать их. Глядишь, составят конкуренцию на рынке труда… Оно надо? Вот-вот! Надо нарисовать ещё одну «мартышкинскую» инструкцию и сопроводить это восхвалением 21-го века, мол, нынче модно быть не создателем, а потребителем.
А как стоит подключать библиотеки?
1. Так, как делает автор в своих проектах. Он же использует какую-то систему конфигурации сборки?
2. Так, как сделано в этом самом freetype (autoconf).

Да, autotools это конечно хорошо, как и cmake и тд. Но в конечном итоге все это превращается в длинный список флагов компилятора. И на мой взгляд понимать как это все работает на таком уровне крайне полезно.
Понятно, что для больших проектов никто не станет писать это все руками, но если смотреть на эту статью, как на обучающую, то использование такого подхода вполне обоснованно. Плюс, чтобы добавить здесь сборку через autotools, автору пришлось бы дописать чёртову кучу объяснений, что да как, и зачем тут эти 5 файлов(точно не помню, сколько нужно для минимальной конфигурации). На мой взгляд статья не об этом.

autotools просто боль и отчаяние) Если бы автор упомянул тут autotools, статья была бы на 95% процентов забита текстом о том, как это всё завести)

Вы правы, про autotools это я не подумавши. Очень сильное колдунство.

$ sudo apt install libfreetype6 libfreetype6-dev
$ sudo apt install libpng16-16 libpng-dev

Есть же зависимости, -dev пакеты и так зависят от своих библиотек:
$ sudo apt install libfreetype6-dev libpng-dev
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории