harfBuzz-14.1.0

Introduction à Harfbuzz

Le paquet Harfbuzz contient un moteur de formation de texte OpenType.

[Note]

Note

Les versions de développement de BLFS peuvent ne pas arriver à contruire ou à exécuter certains paquets correctement si LFS ou des dépendances ont été mises à jour depuis la dernière version stable des livres.

Informations sur le paquet

Dépendances de HarfBuzz

Recommandées

Facultatives

Cairo-1.18.4 (circulaire : construisez cairo et toutes ses dépendances recommandées, dont harfbuzz, d'abord, puis reconstruisez harfbuzz si le moteur cairo est requis), git-2.53.0, GTK-Doc-1.36.1, GLEW-2.3.1, Mesa-26.0.1 et glfw (tous trois pour l'utilitaire hb-gpu), FontTools (module Python 3, pour la suite de tests) ragel et wasm-micro-runtime

[Avertissement]

Avertissement

Les dépendances recommandées ne sont pas strictement requises pour construire le paquet. Cependant, vous pourriez ne pas obtenir les résultats attendus à l'exécution si vous ne les installez pas. S'il vous plaît ne nous signalez pas les bogues avec ce paquet si vous n'avez pas installé les dépendances recommandées.

Installation de HarfBuzz

Installez HarfBuzz en exécutant les commandes suivantes :

mkdir build &&
cd    build &&

meson setup ..             \
      --prefix=/usr        \
      --buildtype=release  \
      -D graphite2=enabled &&
ninja

Pour tester les résultats lancez : ninja test.

Maintenant, en tant qu'utilisateur root :

ninja install

Explication des commandes

--buildtype=release : spécifie le type de construction convenant aux versions stables de ce paquet, comme la valeur par défaut produit des binaires non optimisés.

-D graphite2=enabled : ce paramètre active la prise en charge de Graphite2, requis par la construction de texlive-20250308 et de LibreOffice-26.2.2.2 avec le harfbuzz du système.

-D docs=disabled : si GTK-Doc-1.36.1 est installé, la documentation est construite et installée. Ce paramètre empêche cela.

Contenu

Programmes installés: hb-info, hb-raster, hb-shape, hb-subset, hb-vector et hb-view (seulement si Cairo est installé)
Bibliothèques installées: libharfbuzz.so, libharfbuzz-cairo.so (seulement si Cairo est installé), libharfbuzz-gobject.so, libharfbuzz-gpu.so, libharfbuzz-icu.so, libharfbuzz-raster.so, libharfbuzz-subset.so et libharfbuzz-vector.so
Répertoires installés: /usr/include/harfbuzz, /usr/lib/cmake/harfbuzz et /usr/share/gtk-doc/html/harfbuzz (facultatif)

Descriptions courtes

hb-info

est utilisé pour collecter les informations des polices installées sur le système

hb-raster

est utilisé pour afficher du texte en image raster avec une police donnée

hb-shape

est utilisé pour la conversion de chaînes de texte en glyphes positionnés

hb-subset

est utilisé pour créer un sous-ensemble de polices et afficher du texte avec elles

hb-vector

est utilisé pour dessiner du texte au format SVG avec une police donnée

hb-view

visualise graphiquement la forme d'une chaîne, utilisant une police particulière, comme un ensemble de glyphes. Le format de sortie est automatiquement défini par l'extension du fichier, les formats supportés étant ansi/png/svg/pdf/ps/eps. Exemple : hb-view --output-file=hello.png /usr/share/fonts/dejavu/DejaVuSans.ttf "Hello World."

libharfbuzz.so

est la bibliothèque HarfBuzz de formation de texte

libharfbuzz-cairo.so

fournit l'intégration Cairo pour la bibliothèque HarfBuzz de formation de texte

libharfbuzz-gobject.so

fournit l'intégration GObject pour la bibliothèque HarfBuzz de formation de texte

libharfbuzz-gpu.so

fournit les fonctions de l'API pour encoder les contours des glyphes sur le CPU en blobs compacts que le GPU décode et rastérise directement en un shader de fragment

libharfbuzz-icu.so

fournit l'intégration ICU pour la bibliothèque HarfBuzz de formation de texte

libharfbuzz-raster.so

fournit les fonctions de l'API pour rastériser les glyphes en bitmap, y compris les polices en couleur

libharfbuzz-subset.so

fournit les fonctions de l'API pour effectuer des opérations d’échantillonnage sur les fichiers de polices

libharfbuzz-vector.so

fournit les fonctions de l'API pour afficher des glyphes en des formats vectoriels, y compris les polices en couleur. Seul le SVG est actuellement pris en charge, mais des formats supplémentaires pourraient être ajoutés ultérieurement