Em Java, Fonte é uma classe que pertence ao java.awt pacote. Ele implementa a interface Serializable. FontUIResource é a subclasse direta conhecida da classe Java Font.
Ele representa a fonte usada para renderizar o texto. Em Java, existem dois termos técnicos usados para representar a fonte: personagens e Glifos .
Tipos de fontes em Java
Existem dois tipos de fontes em Java:
- Fontes físicas
- Fontes Lógicas
Fontes físicas
Fontes físicas são bibliotecas de fontes Java reais. Ele contém tabelas que mapeiam sequências de caracteres para sequências de glifos usando a tecnologia de fonte, como Fontes TrueType (TTF) e Fonte PostScript Tipo 1 . Observe que toda implementação de Java deve suportar TTF. O uso de outras tecnologias de fontes depende da implementação. A fonte física inclui o nome como Helvética, Palatino, HonMincho , outros nomes de fontes.
tipos de árvores binárias
A propriedade da fonte física é que ela usa um conjunto limitado de sistemas de escrita, como Caracteres latinos ou apenas japonês e Latim básico personagens. Pode variar quanto às alterações de configuração. Se algum aplicativo exigir uma fonte específica, o usuário poderá agrupar e instanciar essa fonte usando o criarFonte() método da classe Java Font.
Fontes Lógicas
Java define cinco famílias de fontes lógicas que são Serif, SansSerif, Monoespaçado, Diálogo, e DialogInput . Deve ser apoiado pelo JRE. Observe que o JRE mapeia os nomes de fontes lógicas para fontes físicas porque essas não são as bibliotecas de fontes reais. Normalmente, a implementação do mapeamento depende da localidade. Cada nome de fonte lógica é mapeado para diversas fontes físicas para cobrir uma grande variedade de caracteres.
Por exemplo, componentes AWT como Rótulo e Campo de texto usa apenas fontes lógicas.
Faces e nomes de fontes
Uma fonte pode ter muitas faces, como pesada, regular, média, oblíqua, gótica, etc. Todas as faces da fonte têm um design tipográfico semelhante.
Um objeto Font tem três nomes diferentes que são:
A classe Java Font representa uma instância de uma fonte de uma coleção de fontes que estão presentes nos recursos do sistema host. Exemplos de fontes são Arial Bold, Courier Bold Italic, etc. Uma fonte (cada uma diferente em tamanho, estilo, transformação e recurso de fonte) pode ser associada a vários objetos Font.
matriz dinâmica java
Campos de classe de fonte
Modificador | Campo | Descrição |
---|---|---|
interno estático | AUDACIOSO | O estilo ousado constante. |
interno estático | CENTER_BASELINE | A linha de base usada em scripts ideográficos como chinês, japonês e coreano ao organizar o texto. |
String estática | DIÁLOGO | Uma constante String para o nome de família canônico da fonte lógica 'Dialog'. |
String estática | DIALOG_INPUT | Uma constante String para o nome de família canônico da fonte lógica 'DialogInput'. |
interno estático | HANGING_BASELINE | A linha de base usada no Devanigiri e scripts semelhantes ao preparar o texto. |
interno estático | ITÁLICO | A constante de estilo em itálico. |
interno estático | LAYOUT_LEFT_TO_RIGHT | Um sinalizador para layoutGlyphVector indicando que o texto é da esquerda para a direita, conforme determinado pela análise Bidi. |
interno estático | LAYOUT_NO_LIMIT_CONTEXT | Um sinalizador para layoutGlyphVector indicando que o texto na matriz char após o limite indicado não deve ser examinado. |
interno estático | LAYOUT_NO_START_CONTEXT | Um sinalizador para layoutGlyphVector indicando que o texto na matriz char antes do início indicado não deve ser examinado. |
interno estático | LAYOUT_RIGHT_TO_LEFT | Um sinalizador para layoutGlyphVector indicando que o texto é da direita para a esquerda, conforme determinado pela análise Bidi. |
String estática | MONOSPACADO | Uma constante String para o nome de família canônico da fonte lógica 'Monospaced'. |
String estática | nome | O nome lógico desta Font, conforme passado para o construtor. |
interno estático | SIMPLES | A constante de estilo simples. |
flutuação estática | tamanho do ponto | O tamanho em pontos desta fonte em float. |
interno estático | ROMAN_BASELINE | A linha de base usada na maioria das escritas romanas ao organizar o texto. |
String estática | SEM SERIFA | Uma constante String para o nome de família canônico da fonte lógica 'SansSerif'. |
String estática | SERIF | Uma constante String para o nome de família canônico da fonte lógica 'Serif'. |
protegido interno | tamanho | O tamanho em pontos desta fonte, arredondado para um número inteiro. |
protegido interno | estilo | O estilo desta Font, conforme passado para o construtor. |
interno estático | TRUETYPE_FONT | Identifique um recurso de fonte do tipo TRUETYPE. |
interno estático | TIPO1_FONT | Identifique um recurso de fonte do tipo TYPE1. |
Construtores de classe de fonte
Construtor | Descrição |
---|---|
Fonte(Fonte da fonte) | Cria uma nova fonte a partir da fonte especificada. |
Fonte (atributos do mapa) | Cria uma nova fonte com os atributos especificados. |
Fonte (nome da string, estilo interno, tamanho interno) | Cria uma nova fonte a partir do nome, estilo e tamanho de ponto especificados. |
Métodos de classe de fonte
Métodos | Descrição |
---|---|
canDisplay(char c) | Ele verifica se esta fonte possui um glifo para o caractere especificado. |
canDisplay(int codePoint) | Ele verifica se esta fonte possui um glifo para o caractere especificado. |
canDisplayUpTo(char[] texto, int início, int limite) | Indica se esta Fonte pode ou não exibir os caracteres do texto especificado começando no início e terminando no limite. |
canDisplayUpTo(caminho do CharacterIterator, int start, int limit) | Indica se esta Fonte pode ou não exibir o texto especificado pelo iter começando no início e terminando no limite. |
canDisplayUpTo(Stringstr) | Indica se esta Fonte pode ou não exibir uma String especificada. |
createFont(int fontFormat, arquivo fontFile) | Ele retorna uma nova fonte usando o tipo de fonte especificado e o arquivo de fonte especificado. |
createFont(int fontFormat, InputStream fontStream) | Ele retorna uma nova fonte usando o tipo de fonte e os dados de entrada especificados. |
createGlyphVector(FontRenderContext frc, char[] caracteres) | Ele cria um GlyphVector mapeando caracteres para glifos um a um com base no cmap Unicode nesta fonte. |
createGlyphVector (FontRenderContext frc, CharacterIterator ci) | Ele cria um GlyphVector mapeando os caracteres especificados para glifos um a um com base no cmap Unicode nesta fonte. |
createGlyphVector(FontRenderContext frc, int[] glyphCodes) | Ele cria um GlyphVector mapeando caracteres para glifos um a um com base no cmap Unicode nesta fonte. |
createGlyphVector (FontRenderContext frc, String str) | Ele cria um GlyphVector mapeando caracteres para glifos um a um com base no cmap Unicode nesta fonte. |
decodificar (String str) | Ele retorna a fonte que o argumento str descreve. |
derivaFont(AffineTransform trans) | Ele cria um novo objeto Font replicando o objeto Font atual e aplicando uma nova transformação a ele. |
derivaFont(tamanho flutuante) | Ele cria um novo objeto Font replicando o objeto Font atual e aplicando um novo tamanho a ele. |
derivaFont(estilo int) | Ele cria um novo objeto Font replicando o objeto Font atual e aplicando um novo estilo a ele. |
derivaFont(estilo int, AffineTransform trans) | Ele cria um novo objeto Font replicando esse objeto Font e aplicando um novo estilo e transformação. |
derivaFont(estilo int, tamanho flutuante) | Ele cria um novo objeto Font replicando esse objeto Font e aplicando um novo estilo e tamanho. |
derivaFont (atributos do mapa) | Ele cria um novo objeto Font replicando o objeto Font atual e aplicando um novo conjunto de atributos de fonte a ele. |
é igual (objeto obj) | Ele compara este objeto Font com o objeto especificado. |
getAttributes() | Ele retorna um mapa de atributos de fonte disponíveis nesta Fonte. |
getAvailableAttributes() | Retorna as chaves de todos os atributos suportados por esta Fonte. |
getBaselineFor(char c) | Ele retorna a linha de base apropriada para exibir este caractere. |
getFamília() | Ele retorna o sobrenome desta fonte. |
getFamily(Local l) | Ele retorna o nome da família desta fonte, localizado para o código do idioma especificado. |
getFont(atributos do mapa) | Retorna uma Font apropriada aos atributos. |
getFont(String nm) | Ele retorna um objeto Font da lista de propriedades do sistema. |
getFont(String nm, fonte da fonte) | Obtém a fonte especificada na lista de propriedades do sistema. |
getNomeFonte() | Ele retorna o nome da fonte desta fonte. |
getFontName(Local l) | Ele retorna o nome da fonte da Fonte, localizado para a localidade especificada. |
getItalicAngle() | Retorna o ângulo itálico desta fonte. |
getLineMetrics(char[] chars, int beginIndex, int limit, FontRenderContext frc) | Retorna um objeto LineMetrics criado com os argumentos especificados. |
getLineMetrics(CharacterIterator ci, int beginIndex, int limit, FontRenderContext frc) | Retorna um objeto LineMetrics criado com os argumentos especificados. |
getLineMetrics(String str, FontRenderContext frc) | Ele retorna um objeto LineMetrics criado com String e FontRenderContext especificados. |
getLineMetrics(String str, int BeginIndex, int limit, FontRenderContext frc) | Retorna um objeto LineMetrics criado com os argumentos especificados. |
getMaxCharBounds(FontRenderContextfrc) | Ele retorna os limites do caractere com os limites máximos definidos no FontRenderContext especificado. |
getMissingGlyphCode() | Ele retorna o glyphCode que é usado quando esta fonte não possui um glifo para um ponto de código unicode especificado. |
getNome() | Retorna o nome lógico desta Fonte. |
getNumGlyphs() | Ele retorna o número de glifos nesta fonte. |
getPeer() | A renderização de fontes agora é independente de plataforma. |
getPSNome() | Ele retorna o nome pós-escrito desta fonte. |
getSize() | Ele retorna o tamanho em pontos desta fonte, arredondado para um número inteiro. |
getTamanho2D() | Ele retorna o tamanho em pontos desta fonte em valor flutuante. |
getStringBounds(char[] chars, int beginIndex, int limit, FontRenderContext frc) | Ele retorna os limites lógicos da matriz especificada de caracteres no FontRenderContext especificado. |
getStringBounds(CharacterIterator ci, int BeginIndex, int limit, FontRenderContext frc) | Ele retorna os limites lógicos dos caracteres indexados no CharacterIterator especificado no FontRenderContext especificado. |
getStringBounds (String str, FontRenderContext frc) | Ele retorna os limites lógicos da String especificada no FontRenderContext especificado. |
getStringBounds(String str, int BeginIndex, int limit, FontRenderContext frc) | Ele retorna os limites lógicos da String especificada no FontRenderContext especificado. |
getEstilo() | Ele retorna o estilo desta fonte. |
getTransform() | Ele retorna uma cópia da transformação associada a esta Fonte. |
código hash() | Ele retorna um código hash para esta fonte. |
hasLayoutAttributes() | Ele retornará verdadeiro se esta fonte contiver atributos que exijam processamento extra de layout. |
hasUniformLineMetrics() | Ele verifica se esta fonte possui métricas de linha uniformes ou não. |
isBold() | Indica se o estilo deste objeto Font é ou não BOLD. |
itálico() | Indica se o estilo deste objeto Font é ou não ITÁLICO. |
éPlain() | Indica se o estilo deste objeto Font é ou não PLAIN. |
isTransformado() | Indica se este objeto Font possui ou não uma transformação que afeta seu tamanho além do atributo Size. |
layoutGlyphVector(FontRenderContext frc, char[] texto, int start, int limit, int flags) | Ele retorna um novo objeto GlyphVector, realizando o layout completo do texto se possível. |
para sequenciar() | Ele converte este objeto Font em uma representação String. |
Vamos ver um exemplo de fonte 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); } }
Para executar o programa acima, siga as etapas abaixo:
binário para bcd
eu. Copie e cole o código acima e salve o arquivo com o nome JavaFontExample.java.
ii. Crie um arquivo HTM e escreva o código a seguir.
JavaFontExample.html
iii. Abra o prompt de comando e execute os seguintes comandos:
string comparar java
JavaFontExample.java appletviewer JavaFontExample.java
Saída 1:
Para obter a seguinte saída, faça as alterações na seguinte instrução:
Font font= new Font('Monospaced', Font.ITALIC, 30); //name, face and size of font is changed
Saída 2: