Code Java pour l'emballage des lignes de texte pour un max de largeur de ligne
Avant que je re-inventer la roue (mal), je voudrais savoir si il y a un certains de code Java pour l'emballage des lignes de texte à un maximum de largeur. Idéalement, il serait:
- dans le respect des retours à la ligne (
- briser les lignes qui dépassent une longueur maximale sur les limites de word
- casser des mots dont la longueur dépasse le maximum de la largeur de ligne par insertion de traits d'union
Edit: il n'existe pas de "pixels" ici, seulement de java.lang.Chaîne de caractères. "largeur maximale" désigne le nombre de caractères sur une ligne.
Thar Dragons 🙂
Êtes-vous après un pixel de l'algorithme, ou serait une approximation?
Êtes-vous après un pixel de l'algorithme, ou serait une approximation?
OriginalL'auteur George Armhold | 2010-10-29
Vous devez vous connecter pour publier un commentaire.
Apache commons a WordUtils et envelopper la fonction:
http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/text/WordUtils.html
OriginalL'auteur Roman Goyenko
Voici mon prendre
(Cette solution bandes de deux espaces d'un espace (donc même faute que @jett a avec Apache commons WordUtils)).
OriginalL'auteur Esko Piirainen
Ce que vous voulez faire ne fonctionne que si vous affichez les résultats avec une police à largeur fixe. Sinon le nombre de caractères dans une ligne ne serait pas la même d'une ligne à l'autre. Si c'est bien avec vous, je dirais que votre est assez rare cas (surtout compte tenu de césure), donc je doute que vous trouverez des solutions prêtes à l'.
OriginalL'auteur Ivan P
Si vous essayez de formater une certaine manière, de la documentation, il y a aussi le vieux unix roff (ou les eaux de ruissellement) de la famille des commandes. Vous avez juste à insérer des commandes de mise en forme et laissez roff faire le gros du travail.
OriginalL'auteur Tony Ennis
OriginalL'auteur Praveen
Utiliser le word-wrap bibliothèque (disponible sur Maven Central).
Voici une façon de l'utiliser:
De sortie est:
La bibliothèque conserve les espaces sur les lignes est une plainte concernant le comportement de l'Apache commons-lang offre. Vous pouvez également spécifier le
stringWidth
fonction permettant d'obtenir des pixels des résultats précis lors du rendu du texte.La bibliothèque a décent couverture de tests unitaires (quelque chose à garder à l'esprit lorsque vous envisagez de copier et coller des morceaux de code à partir du web!).
La dépendance Maven est:
Assurez-vous de vérifier pour une version ultérieure.
OriginalL'auteur Dave Moten