Longueur de la chaîne en pixels en Java
Est-il un moyen de calculer la longueur d'une chaîne de caractères en pixels, compte tenu d'un certain java.awt.Font
objet, qui n'utilise pas de composants GUI?
source d'informationauteur APerson
Vous devez vous connecter pour publier un commentaire.
Cela dépend de ce que tu veux dire ici. Je suppose que vous voulez dire que vous voulez le faire sans recevoir un
HeadlessException
.La meilleure façon est avec un
BufferedImage
. Autant que je sache, ce ne sera pas jeter unHeadlessException
:Autres que d'utiliser quelque chose comme cela, je ne pense pas que vous le pouvez. Vous avez besoin d'un contexte graphique afin de créer un
FontMetrics
et vous donner la taille de la police de l'information.Vous pouvez utiliser le
Graphics2D
objet pour obtenir la police limites (y compris la largeur):Mais cela dépend de la façon dont vous obtiendrez les
Graphics2D
objet (par exemple à partir d'unImage
).Cela donne à la sortie de l' (de 137,0, 15.09375) pour moi. Je n'ai aucune idée de ce que les unités sont, mais il semble certainement dans des proportions correctes et ne pas utiliser Graphics2D directement.