Можно ли использовать Cairo (графическую библиотеку) для визуализации математических формул и изображений (в стиле латекса)?

Нужны ли ему какие-либо зависимости для полноценного рендеринга символов Юникода, или он может читать и визуализировать глифы родного шрифта любой платформы (Linux/Max/Windows) без особых проблем?

Может ли он импортировать / отображать eps/pdf/svg внутри созданного файла pdf, или мне придется вручную анализировать файл изображения и перерисовывать его в Каире?

1 ответ

Решение

Cairo сам по себе не выполняет "формул" - он может работать с полным набором символов Юникода, но я думаю, что поддержка текста лучше, если вы используете библиотеку "pango" вместе с Cairo.

Что касается импорта векторного формата, существует "librsvg", который работает вместе с cairo, позволяя использовать его для рендеринга файлов SVG - это позволяет другим библиотекам - возможно, самому Tex, отображать сами математические формулы.

Что касается картинок, да, Cairo может импортировать и рисовать растровые картинки на себе.

У меня есть пример использования librsvg с Cairo для этого ответа, хотя он написан на Python, а не на C. Вам придется искать онлайн-документы по обеим библиотекам, чтобы получить примеры того, как это работает на C. (Помню, были такие потому что не было примеров Python, я должен был заставить этот работать из примеров, приведенных в C).

Другие вопросы по тегам