Comment calculer la largeur de la police?
Je suis à l'aide de java pour dessiner du texte, mais il m'est difficile de calculer la chaîne de largeur.
par exemple:
zheng中国...
Combien de temps cette chaîne occuper?
source d'informationauteur MemoryLeak | 2009-10-06
Vous devez vous connecter pour publier un commentaire.
Pour une seule chaîne de caractères, vous pouvez obtenir les paramètres pour le dessin de la police, et l'utiliser pour calculer la taille de la chaîne. Par exemple:
Si vous avez du texte plus complexe de mise en page, tels que la circulation d'un paragraphe de texte à l'intérieur d'une largeur, vous pouvez créer un
java.awt.la police.TextLayout
objet, comme dans cet exemple (à partir de la documentation):Voir Les graphiques.getFontMetrics() et FontMetrics.stringWidth().
ici est une application simple qui peut vous montrer comment utiliser FontMetrics lors de l'essai de la largeur de la Chaîne:
Prendre un coup d'oeil à cette belle présentation, en particulier "le Texte de la Mesure". Il explique tailles disponibles et leurs utilisations: Java avancé 2D™ sujets pour les Applications de Bureau.
Certains plus d'informations dans Java2D FAQ: Quelle est la différence entre logique, visuels et limites de pixels?
Utiliser le getWidth méthode dans la classe suivante:
Vous pouvez trouver à partir de la Police.getStringBounds():