logo

Java Font

En Java, Police de caractère est une classe qui appartient à java.awt emballer. Il implémente l'interface Serialisable. FontUIResource est la sous-classe directement connue de la classe Java Font.

Il représente la police utilisée pour restituer le texte. En Java, deux termes techniques sont utilisés pour représenter la police : personnages et Glyphes .

Types de polices en Java

Il existe deux types de polices en Java :

  • Polices physiques
  • Polices logiques

Polices physiques

Les polices physiques sont une véritable bibliothèque de polices Java. Il contient des tableaux qui mappent la séquence de caractères aux séquences de glyphes en utilisant la technologie de police telle que Polices TrueType (TTF) et Police PostScript Type 1 . Notez que toute implémentation de Java doit prendre en charge TTF. L’utilisation d’autres technologies de polices dépend de la mise en œuvre. La police physique inclut le nom tel que Helvetica, Palatino, HonMincho , d'autres noms de polices.

La propriété de la police physique est qu'elle utilise un ensemble limité de systèmes d'écriture tels que Caractères latins ou seulement Japonais et Latin de base personnages. Cela peut varier en fonction des changements de configuration. Si une application nécessite une police spécifique, l'utilisateur peut regrouper et instancier cette police à l'aide de l'outil créer une police() méthode de la classe Java Font.

Polices logiques

Java définit cinq familles de polices logiques qui sont Serif, SansSerif, Monospaced, Boîte de dialogue, et Entrée de dialogue . Il doit être pris en charge par le JRE. Notez que JRE mappe les noms de polices logiques aux polices physiques, car il ne s'agit pas des bibliothèques de polices réelles. Habituellement, l'implémentation du mappage dépend des paramètres régionaux. Chaque nom de police logique correspond à plusieurs polices physiques afin de couvrir une large gamme de caractères.

Par exemple, les composants AWT tels que Étiquette et Champ de texte utilise uniquement des polices logiques.

Hrithik Roshan

Polices et noms

Une police peut avoir plusieurs faces telles que lourde, régulière, moyenne, oblique, gothique, etc. Toutes les polices ont la même conception typographique.

Un objet Font a trois noms différents qui sont :

    Nom de police logique :C'est le nom utilisé pour construire la police.Nom de la police :C'est le nom d'une police particulière. Par exemple, Helvetica Bold.Nom de famille:C'est le nom de la famille de polices. Il détermine le design typographique parmi plusieurs faces.

La classe Java Font représente une instance d'une police à partir d'une collection de polices présentes dans les ressources système du système hôte. Des exemples de polices sont Arial Bold, Courier Bold Italic, etc. Une police (chacune différant par sa taille, son style, sa transformation et sa fonctionnalité de police) peut être associée à plusieurs objets Font.

Champs de classe de police

Modificateur Champ Description
entier statique AUDACIEUX La constante du style audacieux.
entier statique CENTER_BASELINE Ligne de base utilisée dans les écritures idéographiques comme le chinois, le japonais et le coréen lors de la mise en page du texte.
Chaîne statique DIALOGUE Une constante String pour le nom de famille canonique de la police logique « Dialog ».
Chaîne statique DIALOG_INPUT Une constante String pour le nom de famille canonique de la police logique « DialogInput ».
entier statique HANGING_BASELINE La ligne de base utilisée dans le Devanigiri et les scripts similaires lors de la mise en page du texte.
entier statique ITALIQUE Constante de style en italique.
entier statique LAYOUT_LEFT_TO_RIGHT Un indicateur vers layoutGlyphVector indiquant que le texte est de gauche à droite, comme déterminé par l'analyse Bidi.
entier statique LAYOUT_NO_LIMIT_CONTEXT Un indicateur pour layoutGlyphVector indiquant que le texte dans le tableau de caractères après la limite indiquée ne doit pas être examiné.
entier statique LAYOUT_NO_START_CONTEXT Un indicateur pour layoutGlyphVector indiquant que le texte du tableau de caractères avant le début indiqué ne doit pas être examiné.
entier statique LAYOUT_RIGHT_TO_LEFT Un indicateur vers layoutGlyphVector indiquant que le texte est de droite à gauche, comme déterminé par l'analyse Bidi.
Chaîne statique MONOSSPACE Une constante de chaîne pour le nom de famille canonique de la police logique « Monospaced ».
Chaîne statique nom Le nom logique de cette police, tel que transmis au constructeur.
entier statique PLAINE La constante du style simple.
flotteur statique pointTaille La taille en points de cette police en float.
entier statique ROMAN_BASELINE Ligne de base utilisée dans la plupart des écritures romaines lors de la mise en page du texte.
Chaîne statique SANS_SERIF Une constante String pour le nom de famille canonique de la police logique « SansSerif ».
Chaîne statique SÉRIF Une constante de chaîne pour le nom de famille canonique de la police logique « Serif ».
entier protégé taille La taille en points de cette police, arrondie à un nombre entier.
entier protégé style Le style de cette police, tel que transmis au constructeur.
entier statique TRUETYPE_FONT Identifiez une ressource de police de type TRUETYPE.
entier statique TYPE1_FONT Identifiez une ressource de police de type TYPE1.

Constructeurs de classes de polices

Constructeur Description
Font(Font font) Crée une nouvelle police à partir de la police spécifiée.
Police (attributs de la carte) Crée une nouvelle police avec les attributs spécifiés.
Police (nom de chaîne, style int, taille int) Crée une nouvelle police à partir du nom, du style et de la taille en points spécifiés.

Méthodes de classe de police

Méthodes Description
canDisplay (char c) Il vérifie si cette police a un glyphe pour le caractère spécifié.
canDisplay (int codePoint) Il vérifie si cette police a un glyphe pour le caractère spécifié.
canDisplayUpTo(char[] texte, int début, int limite) Il indique si cette police peut ou non afficher les caractères du texte spécifié commençant au début et se terminant à la limite.
canDisplayUpTo (chemin du CharacterIterator, int start, int limit) Il indique si cette police peut ou non afficher le texte spécifié par l'iter commençant au début et se terminant à la limite.
canDisplayUpTo (String chaîne) Il indique si cette police peut ou non afficher une chaîne spécifiée.
createFont(int fontFormat, Fichier fontFile) Il renvoie une nouvelle police utilisant le type de police spécifié et le fichier de police spécifié.
createFont(int fontFormat, InputStream fontStream) Il renvoie une nouvelle police en utilisant le type de police spécifié et les données d'entrée.
createGlyphVector (FontRenderContext frc, char[] caractères) Il crée un GlyphVector en mappant les caractères sur les glyphes un à un en fonction du cmap Unicode dans cette police.
createGlyphVector (FontRenderContext frc, CharacterIterator ci) Il crée un GlyphVector en mappant les caractères spécifiés sur des glyphes un à un en fonction du cmap Unicode dans cette police.
createGlyphVector(FontRenderContext frc, int[] glyphCodes) Il crée un GlyphVector en mappant les caractères sur les glyphes un à un en fonction du cmap Unicode dans cette police.
createGlyphVector (FontRenderContext frc, String str) Il crée un GlyphVector en mappant les caractères sur les glyphes un à un en fonction du cmap Unicode dans cette police.
décoder (String str) Il renvoie la police décrite par l'argument str.
dériveFont (transformation AffineTransform) Il crée un nouvel objet Font en répliquant l'objet Font actuel et en lui appliquant une nouvelle transformation.
dériveFont (taille flottante) Il crée un nouvel objet Font en répliquant l'objet Font actuel et en lui appliquant une nouvelle taille.
dériveFont (style int) Il crée un nouvel objet Font en répliquant l'objet Font actuel et en lui appliquant un nouveau style.
dériveFont (style int, transformation AffineTransform) Il crée un nouvel objet Font en répliquant cet objet Font et en appliquant un nouveau style et une nouvelle transformation.
deriveFont (style int, taille flottante) Il crée un nouvel objet Font en répliquant cet objet Font et en appliquant un nouveau style et une nouvelle taille.
deriveFont (attributs de la carte) Il crée un nouvel objet Font en répliquant l'objet Font actuel et en lui appliquant un nouvel ensemble d'attributs de police.
est égal (objet obj) Il compare cet objet Font à l’objet spécifié.
getAttributes() Il renvoie une carte des attributs de police disponibles dans cette police.
getAvailableAttributes() Il renvoie les clés de tous les attributs pris en charge par cette police.
getBaselineFor(char c) Il renvoie la ligne de base appropriée pour afficher ce caractère.
getFamille() Il renvoie le nom de famille de cette police.
getFamily(Locale l) Il renvoie le nom de famille de cette police, localisé pour les paramètres régionaux spécifiés.
getFont (attributs de la carte) Il renvoie une police appropriée aux attributs.
getFont(Chaîne nm) Il renvoie un objet Font de la liste des propriétés système.
getFont (String nm, police de police) Obtient la police spécifiée dans la liste des propriétés système.
getFontName() Il renvoie le nom de la police de cette police.
getFontName (Locale l) Il renvoie le nom de la police, localisé pour les paramètres régionaux spécifiés.
getItalicAngle() Il renvoie l'angle italique de cette police.
getLineMetrics(char[] chars, int startIndex, int limit, FontRenderContext frc) Il renvoie un objet LineMetrics créé avec les arguments spécifiés.
getLineMetrics (CharacterIterator ci, int startIndex, int limit, FontRenderContext frc) Il renvoie un objet LineMetrics créé avec les arguments spécifiés.
getLineMetrics (String str, FontRenderContext frc) Il renvoie un objet LineMetrics créé avec la chaîne et le FontRenderContext spécifiés.
getLineMetrics (String str, int startIndex, int limit, FontRenderContext frc) Il renvoie un objet LineMetrics créé avec les arguments spécifiés.
getMaxCharBounds(FontRenderContext frc) Il renvoie les limites du caractère avec les limites maximales telles que définies dans le FontRenderContext spécifié.
getMissingGlyphCode() Il renvoie le glyphCode qui est utilisé lorsque cette police n'a pas de glyphe pour un point de code Unicode spécifié.
getName() Il renvoie le nom logique de cette police.
getNumGlyphs() Il renvoie le nombre de glyphes dans cette police.
obtenirPeer() Le rendu des polices est désormais indépendant de la plate-forme.
getPSName() Il renvoie le nom postscript de cette police.
getSize() Il renvoie la taille en points de cette police, arrondie à un nombre entier.
getSize2D() Il renvoie la taille en points de cette police en valeur flottante.
getStringBounds(char[] chars, int startIndex, int limit, FontRenderContext frc) Il renvoie les limites logiques du tableau de caractères spécifié dans le FontRenderContext spécifié.
getStringBounds (CharacterIterator ci, int startIndex, int limit, FontRenderContext frc) Il renvoie les limites logiques des caractères indexés dans le CharacterIterator spécifié dans le FontRenderContext spécifié.
getStringBounds(String str, FontRenderContext frc) Il renvoie les limites logiques de la chaîne spécifiée dans le FontRenderContext spécifié.
getStringBounds (String str, int startIndex, int limit, FontRenderContext frc) Il renvoie les limites logiques de la chaîne spécifiée dans le FontRenderContext spécifié.
obtenirStyle() Il renvoie le style de cette police.
getTransform() Il renvoie une copie de la transformation associée à cette police.
code de hachage() Il renvoie un hashcode pour cette police.
hasLayoutAttributes() Il renvoie vrai si cette police contient des attributs qui nécessitent un traitement de mise en page supplémentaire.
hasUniformLineMetrics() Il vérifie si cette police a des métriques de ligne uniformes.
estBold() Il indique si le style de cet objet Font est GRAS ou non.
italique() Il indique si le style de cet objet Font est ITALIC ou non.
estPlain() Il indique si le style de cet objet Font est PLAIN ou non.
estTransformed() Il indique si cet objet Font a ou non une transformation qui affecte sa taille en plus de l'attribut Size.
layoutGlyphVector (FontRenderContext frc, char[] texte, int start, int limit, int flags) Il renvoie un nouvel objet GlyphVector, effectuant si possible une mise en page complète du texte.
àChaîne() Il convertit cet objet Font en une représentation String.

Voyons un exemple de police Java.

JavaFontExample.java

 import java.applet.Applet; import java.awt.Font; import java.awt.Graphics; public class JavaFontExample extends Applet { public void paint(Graphics gph) { //creating a constructor of the font class and passing name, style, and size of the font //we can change these three parameters accordingly Font font= new Font('Courier', Font.PLAIN, 20); //setting font by invoking the setFont() method gph.setFont(font); gph.drawString('Javatpoint is the best learning platform.', 12, 45); } } 

Pour exécuter le programme ci-dessus, suivez les étapes ci-dessous :

je. Copiez et collez le code ci-dessus et enregistrez le fichier sous le nom JavaFontExample.java.

ii. Créez un fichier HTM et écrivez le code suivant.

JavaFontExample.html

variable bash
 

iii. Ouvrez l'invite de commande et exécutez les commandes suivantes :

 JavaFontExample.java appletviewer JavaFontExample.java 

Sortie 1 :

Java Font

Pour obtenir le résultat suivant, apportez les modifications dans l'instruction suivante :

 Font font= new Font('Monospaced', Font.ITALIC, 30); //name, face and size of font is changed 

Sortie 2 :

Java Font