logo

Font de Java

A Java, Font és una classe que pertany a la java.awt paquet. Implementa la interfície Serialitzable. FontUIResource és la subclasse coneguda directa de la classe Java Font.

Representa el tipus de lletra que s'utilitza per representar el text. A Java, hi ha dos termes tècnics que s'utilitzen per representar el tipus de lletra personatges i Glifs .

Tipus de fonts en Java

Hi ha dos tipus de tipus de lletra a Java:

  • Fonts físiques
  • Tipus de lletra lògics

Fonts físiques

Els tipus de lletra físics són una biblioteca de fonts Java real. Conté taules que mapegen la seqüència de caràcters a les seqüències de glifos mitjançant la tecnologia de fonts, com ara Tipus de lletra TrueType (TTF) i Tipus de lletra PostScript 1 . Tingueu en compte que tota implementació de Java ha de suportar TTF. L'ús d'altres tecnologies de tipus de lletra depèn de la implementació. La font física inclou el nom com ara Helvetica, Palatino, HonMincho , altres noms de lletra.

codi de codificació huffman

La propietat del tipus de lletra físic és que utilitza el conjunt limitat de sistemes d'escriptura com ara caràcters llatins o només japonès i Llatí bàsic personatges. Pot variar pel que fa als canvis de configuració. Si alguna aplicació requereix un tipus de lletra específic, l'usuari pot agrupar i crear una instància d'aquest tipus de lletra mitjançant l' createFont() mètode de la classe Java Font.

Tipus de lletra lògics

Java defineix cinc famílies de tipus de lletra lògiques que són Serif, SansSerif, Monoespaiat, Diàleg, i Entrada de diàleg . Ha de comptar amb el suport del JRE. Tingueu en compte que JRE mapeja els noms de tipus de lletra lògics amb el tipus de lletra físic perquè aquestes no són les biblioteques de tipus de lletra reals. Normalment, la implementació de mapes depèn de la configuració regional. Cada nom de font lògic s'assigna a diversos tipus de lletra físiques per tal de cobrir una àmplia gamma de caràcters.

Per exemple, components AWT com ara Etiqueta i Camp de text només utilitza fonts lògiques.

Tipus de lletra i noms

Un tipus de lletra pot tenir moltes cares com ara gruixuda, regular, mitjana, obliqua, gòtica, etc.

Un objecte Font té tres noms diferents que són:

    Nom del tipus de lletra lògic:És el nom que s'utilitza per construir el tipus de lletra.Nom de la font:És el nom d'una font particular. Per exemple, Helvetica Bold.Nom de familia:És el nom de la família de tipus de lletra. Determina el disseny de la tipografia entre diverses cares.

La classe Java Font representa una instància d'una font d'una col·lecció de fonts que estan presents als recursos del sistema del sistema amfitrió. Un exemple de tipus de lletra són Arial Bold, Courier Bold Cursiva, etc. Un tipus de lletra (cadascun amb mida, estil, transformació i funció de tipus de lletra) es pot associar amb diversos objectes Font.

matriu de retorn de java

Camps de classe de lletra

Modificador Camp Descripció
int estàtic NEGRATA La constant d'estil atrevit.
int estàtic CENTER_BASELINE La línia de base que s'utilitza en escriptures ideogràfiques com el xinès, el japonès i el coreà a l'hora de dissenyar el text.
Cadena estàtica DIALOG Una constant de cadena per al nom de família canònic de la font lògica 'Diàleg'.
Cadena estàtica DIALOG_INPUT Una constant de cadena per al nom de família canònic de la font lògica 'DialogInput'.
int estàtic HANGING_BASELINE La línia de base utilitzada a Devanigiri i scripts similars a l'hora de dissenyar el text.
int estàtic ITALICA La constant d'estil en cursiva.
int estàtic LAYOUT_LEFT_TO_RIGHT Una bandera a layoutGlyphVector que indica que el text és d'esquerra a dreta, tal com determina l'anàlisi de Bidi.
int estàtic LAYOUT_NO_LIMIT_CONTEXT No s'ha d'examinar un senyal a layoutGlyphVector que indica que el text de la matriu de caràcters després del límit indicat.
int estàtic LAYOUT_NO_START_CONTEXT No s'ha d'examinar una bandera a layoutGlyphVector que indica que el text de la matriu de caràcters abans de l'inici indicat.
int estàtic LAYOUT_RIGHT_TO_LEFT Una bandera a layoutGlyphVector que indica que el text és de dreta a esquerra tal com determina l'anàlisi de Bidi.
Cadena estàtica MONOSPACIAT Una constant de cadena per al nom de família canònic del tipus de lletra lògic 'Monospaced'.
Cadena estàtica nom El nom lògic d'aquesta font, tal com s'ha passat al constructor.
int estàtic PLANA L'estil senzill constant.
flotador estàtic mida del punt La mida del punt d'aquesta font en flotant.
int estàtic ROMAN_BASELINE La línia de base que s'utilitza en la majoria de les escriptures romanes a l'hora de dissenyar el text.
Cadena estàtica SANS SERIF Una constant de cadena per al nom de família canònic de la font lògica 'SansSerif'.
Cadena estàtica SERIF Una constant de cadena per al nom de família canònic de la font lògica 'Serif'.
protegit int mida La mida del punt d'aquest tipus de lletra, arrodonida a un nombre enter.
protegit int estil L'estil d'aquesta Font, tal com va passar al constructor.
int estàtic TRUETYPE_FONT Identifiqueu un recurs de tipus de lletra de tipus TRUETYPE.
int estàtic TYPE1_FONT Identifiqueu un recurs de tipus de lletra de tipus TYPE1.

Constructors de classes de font

Constructor Descripció
Tipus de lletra (tipus de lletra) Crea un nou tipus de lletra a partir del tipus de lletra especificat.
Font (atributs del mapa) Crea una nova font amb els atributs especificats.
Font (nom de la cadena, estil int, mida int) Crea una nova font a partir del nom, estil i mida de punt especificats.

Mètodes de classe de font

Mètodes Descripció
canDisplay(car c) Comprova si aquest tipus de lletra té un glif per al caràcter especificat.
canDisplay(int codePoint) Comprova si aquest tipus de lletra té un glif per al caràcter especificat.
canDisplayUpTo(char[] text, int inici, int límit) Indica si aquest tipus de lletra pot mostrar o no els caràcters del text especificat començant al principi i acabant al límit.
canDisplayUpTo (camí de l'Iterador de caràcters, int inici, int límit) Indica si aquest tipus de lletra pot mostrar o no el text especificat per l'iter començant a l'inici i acabant al límit.
canDisplayUpTo(String str) Indica si aquest tipus de lletra pot mostrar o no una cadena especificada.
createFont(int fontFormat, fitxer fontFile) Retorna una nova font utilitzant el tipus de lletra especificat i el fitxer de tipus de lletra especificat.
createFont(int fontFormat, InputStream fontStream) Retorna una font nova utilitzant el tipus de lletra especificat i les dades d'entrada.
createGlyphVector(FontRenderContext frc, char[] caràcters) Crea un GlyphVector assignant caràcters a glifs un a un basat en el cmap Unicode d'aquest tipus de lletra.
createGlyphVector(FontRenderContext frc, CharacterIterator ci) Crea un GlyphVector assignant els caràcters especificats a glifs un a un basat en el cmap Unicode d'aquest tipus de lletra.
createGlyphVector(FontRenderContext frc, int[] glyphCodes) Crea un GlyphVector assignant caràcters a glifs un a un basat en el cmap Unicode d'aquest tipus de lletra.
createGlyphVector(FontRenderContext frc, String str) Crea un GlyphVector assignant caràcters a glifs un a un basat en el cmap Unicode d'aquest tipus de lletra.
descodificar(String str) Retorna la font que descriu l'argument str.
derivFont(AffineTransform trans) Crea un nou objecte Font replicant l'objecte Font actual i aplicant-hi una nova transformació.
derivFont (mida flotant) Crea un nou objecte Font replicant l'objecte Font actual i aplicant-hi una mida nova.
derivFont (estil int) Crea un objecte Font nou replicant l'objecte Font actual i aplicant-hi un estil nou.
derivFont (estil int, AffineTransform trans) Crea un nou objecte Font replicant aquest objecte Font i aplicant un nou estil i transformació.
derivFont (estil int, mida flotant) Crea un nou objecte Font replicant aquest objecte Font i aplicant un estil i una mida nous.
derivFont(atributs del mapa) Crea un nou objecte Font replicant l'objecte Font actual i aplicant-hi un nou conjunt d'atributs de font.
iguals (objecte objecte) Compara aquest objecte Font amb l'objecte especificat.
getAttributs() Retorna un mapa d'atributs de tipus de lletra disponibles en aquest tipus de lletra.
getAvailableAttributes() Retorna les claus de tots els atributs suportats per aquest tipus de lletra.
getBaselineFor(car c) Retorna la línia base adequada per mostrar aquest caràcter.
getFamily() Retorna el cognom d'aquesta Font.
getFamily (local l) Retorna el nom familiar d'aquest tipus de lletra, localitzat per a la configuració regional especificada.
getFont (atributs del mapa) Retorna una font adequada als atributs.
getFont(String nm) Retorna un objecte Font de la llista de propietats del sistema.
getFont(String nm, font de lletra) Obté el tipus de lletra especificat de la llista de propietats del sistema.
getFontName() Retorna el nom de la font d'aquest tipus de lletra.
getFontName (local l) Retorna el nom de la font del tipus de lletra, localitzat per a la configuració regional especificada.
getItalicAngle() Retorna l'angle cursiva d'aquesta font.
getLineMetrics(char[] caràcters, int beginIndex, int límit, FontRenderContext frc) Retorna un objecte LineMetrics creat amb els arguments especificats.
getLineMetrics(CharacterIterator ci, int beginIndex, int límit, FontRenderContext frc) Retorna un objecte LineMetrics creat amb els arguments especificats.
getLineMetrics(String str, FontRenderContext frc) Retorna un objecte LineMetrics creat amb la cadena i FontRenderContext especificats.
getLineMetrics(String str, int beginIndex, int limit, FontRenderContext frc) Retorna un objecte LineMetrics creat amb els arguments especificats.
getMaxCharBounds(FontRenderContext frc) Retorna els límits del caràcter amb els límits màxims definits al FontRenderContext especificat.
getMissingGlyphCode() Retorna el glyphCode que s'utilitza quan aquest tipus de lletra no té un glif per a un punt de codi Unicode especificat.
getName() Retorna el nom lògic d'aquesta font.
getNumGlyphs() Retorna el nombre de glifs d'aquest tipus de lletra.
getPeer() La representació de fonts ara és independent de la plataforma.
getPSName() Retorna el nom postscript d'aquest tipus de lletra.
getSize() Retorna la mida del punt d'aquesta font, arrodonida a un nombre enter.
getSize2D() Retorna la mida del punt d'aquest tipus de lletra en valor flotant.
getStringBounds(char[] caràcters, int beginIndex, int límit, FontRenderContext frc) Retorna els límits lògics de la matriu de caràcters especificada al FontRenderContext especificat.
getStringBounds(CharacterIterator ci, int beginIndex, int límit, FontRenderContext frc) Retorna els límits lògics dels caràcters indexats al CharacterIterator especificat al FontRenderContext especificat.
getStringBounds(String str, FontRenderContext frc) Retorna els límits lògics de la cadena especificada al FontRenderContext especificat.
getStringBounds(String str, int beginIndex, int limit, FontRenderContext frc) Retorna els límits lògics de la cadena especificada al FontRenderContext especificat.
getStyle() Torna l'estil d'aquesta font.
getTransform() Retorna una còpia de la transformació associada a aquest tipus de lletra.
hashCode() Retorna un codi hash per a aquesta font.
hasLayoutAttributes() Retorna true si aquest tipus de lletra conté atributs que requereixen un processament de disseny addicional.
hasUniformLineMetrics() Comprova si aquest tipus de lletra té mètriques de línia uniformes o no.
és en negreta () Indica si l'estil d'aquest objecte Font és NEGRETA o no.
cursiva () Indica si l'estil d'aquest objecte Font és ITALIC o no.
isPlain() Indica si l'estil d'aquest objecte Font és PLAIN o no.
es transforma () Indica si aquest objecte Font té o no una transformació que afecta la seva mida a més de l'atribut Mida.
layoutGlyphVector(FontRenderContext frc, char[] text, int start, int limit, int flags) Retorna un nou objecte GlyphVector, realitzant la disposició completa del text si és possible.
toString() Converteix aquest objecte Font en una representació String.

Vegem un exemple de font 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); } } 

Per executar el programa anterior, seguiu els passos que s'indiquen a continuació:

programació stdin c

i. Copieu i enganxeu el codi anterior i deseu el fitxer amb el nom JavaFontExample.java.

ii. Creeu un fitxer HTM i escriviu el codi següent.

JavaFontExample.html

 

iii. Obriu el símbol del sistema i executeu les ordres següents:

tupla java
 JavaFontExample.java appletviewer JavaFontExample.java 

Sortida 1:

Font de Java

Per obtenir la sortida següent, feu els canvis a la instrucció següent:

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

Sortida 2:

Font de Java