Travailler avec la césure

Parfois, il est nécessaire d’utiliser une césure pour un arrangement plus compact du texte dans un document. En même temps, il est important de comprendre que les spécificités de la césure des mots peuvent différer pour chaque langue.

À l’heure actuelle, la césure n’est pas utilisée aussi souvent qu’auparavant, en particulier dans les textes anglais. Néanmoins, l’utilisation de cette fonctionnalité peut avoir un impact sérieux sur les documents utilisateur – la césure affecte la mise en page et, par conséquent, l’apparence des fichiers de sortie, par exemple au format PDF.

Pour une division correcte des mots, des dictionnaires de césure spécifiques à la langue sont utilisés. Aspose.Words utilise des algorithmes avancés pour travailler avec de tels dictionnaires et vous permet d’obtenir la même césure que dans Microsoft Word.

Dictionnaires de Césure

Étant donné que différentes langues utilisent des normes et des règles différentes pour la césure des mots, la solution optimale pour une césure correcte consiste à utiliser des dictionnaires spéciaux. Aspose.Words utilise OpenOffice dictionnaires.

Pour la vérification orthographique, OpenOffice utilise le Hunspell bibliothèque, qui est une généralisation de l’algorithme de césure de TeX. Cet algorithme permet une césure automatique non standard à l’aide de modèles de césure standard et personnalisés concurrents. Hunspell utilise le Trait d’Union pour la césure.

Algorithme de Césure

Aspose.Words outils l’algorithme de césure TeX et peut réutiliser les dictionnaires de césure OpenOffice.

Les caractéristiques suivantes des algorithmes Aspose.Words doivent être prises en compte:

  • Paramètres de distance de césure (LEFTHYPHENMIN, RIGHTHYPHENMIN, COMPOUNDLEFTHYPHENMIN, COMPOUNDRIGHTHYPHENMIN) spécifiés dans le dictionnaire de césure sont ignorés. Aspose.Words utilise son propre ensemble de paramètres de distance en fonction du mode de compatibilité du document.
  • L’algorithme de césure dans Aspose.Words prend en charge césure composite. Cependant, Aspose.Words divise les séquences de caractères contenant des caractères mixtes alphabétiques et non alphabétiques en parties alphabétiques uniquement (mots) et les sépare séparément. Notez que la logique Microsoft Word de césure des mots composés dépend du mode de compatibilité du document.
  • L’algorithme de césure dans Aspose.Words n’implémente pas le césure non standard. Les modèles non standard sont ignorés.

Chargement des Dictionnaires de Césure

Pour utiliser la fonctionnalité de césure, enregistrez d’abord un dictionnaire de césure.L’exemple de code suivant montre comment charger des dictionnaires de césure pour les langues spécifiées à partir d’un fichier:

L’exemple de code suivant montre comment charger des dictionnaires de césure pour la langue spécifiée à partir d’un flux:

Au lieu de préenregistrer les dictionnaires de césure, il est possible d’enregistrer uniquement les dictionnaires de césure requis “sur demande”. Pour ce faire, implémentez l’interface IHyphenationCallback et utilisez le rappel statique Callback.

L’exemple de code suivant montre comment implémenter l’interface IHyphenationCallback:

Impact de la césure sur la mise en page

Lors de la division du texte en lignes, Aspose.Words vérifie que chaque mot correspond entièrement à la ligne en cours. Si un autre mot est trop long pour tenir à la fin de la ligne, par défaut Aspose.Words le déplace au début de la ligne suivante au lieu de le couper.

Cependant, la fonction de césure peut être utilisée dans Aspose.Words pour insérer des traits d’union dans les mots afin d’éliminer les lacunes dans le texte justifié ou de maintenir une longueur de ligne uniforme dans les colonnes étroites. Cela peut évidemment affecter le nombre de lignes et donc le nombre de pages. En d’autres termes, l’utilisation de la fonction de césure affecte la mise en page du document.

Césure et justification (H & J)

Microsoft Word a une logique complexe pour choisir un point d’arrêt si le texte est justifié et que la césure est activée. En bref, Microsoft Word peut préférer réduire ou étirer les espaces pour éviter la césure des lignes. Très probablement, cette logique est basée sur L’article de Knuth.

Aspose.Words implémente son propre algorithme H & J qui donne le même résultat que Microsoft Word et fournit des sauts de ligne identiques dans le document de sortie.

Voir Aussi