2010-11-17 29 views
3

J'ai un projet dans lequel je dois prendre du texte d'entrée et le restituer à une image. Le texte doit être enveloppé, avoir des marges, un crénage, un espacement des lettres, des polices spécifiques, et ainsi de suite. Il me semble que je pourrais écrire la plupart de ce manuscrit à la main, mais il semble aussi qu'il y ait quelque chose pour lequel il devrait y avoir des bibliothèques préexistantes. J'ai regardé des moteurs de rendu Web comme WebKit et Gecko qui semblent trop complexes, LaTeX ne semble pas avoir d'API C++, GhostScript semble le plus prometteur jusqu'à présent. J'écris l'application en C++, et je ne veux pas avoir à débourser un appel système - il semble que ce sera inflexible et non-performant. Il doit fonctionner sous Linux, et de préférence sous Mac OSX.API du moteur de présentation de texte pour C++

Merci pour tout conseil que vous pouvez offrir.

Répondre

4

Les sous-processus peuvent être assez géniaux, mais je suppose que vous recherchez quelque chose comme pango ou le moteur de rendu des polices dans Qt. Il semble que vous puissiez réaliser tout ce dont vous avez besoin avec QPainter::drawText(...). Voir aussi QFont.

Il est à noter que j'ai déjà fait glisser dans Qt spécifiquement pour le rendu des polices, sans l'utiliser pour autre chose. Vous avez besoin de créer un objet QCoreApplication, mais c'est tout. Fonctionne comme un charme :)

+0

Pango et QPainter ressemblent exactement à ce que je cherchais. Merci. – Ian

1

Si vous voulez quelque chose de plus bas niveau (et avec moins de dépendances que Qt ou Pango), vous pouvez utiliser FreeType directement. Il faudra plus de lignes de code pour dessiner le même texte (voici leur premier example1.c) mais il pourrait être inférieur aux lignes Makefile requises pour amener Qt!