| Aprenda Java fazendo Applets ENTENDENDO FONTES |
Notice: Undefined variable: idx in /home/numaboa.com.br/public_html/informatica/java/head.php on line 19 ![]() |
| CRIANDO FONTES |
Use o construtor Font para criar objetos Font de diferentes nomes, estilos e tamanhos. O formato do construtor é Font(String nome, int estilo, int tamanho); O primeiro parâmetro especifica o nome da fonte, por exemplo, "Arial" ou "Comic Sans". O segundo parâmetro é um número inteiro que indica o estilo da fonte. Podemos utilizar números ou as variáveis pre-definidas Font.PLAIN (normal), Font.BOLD (negrito), Font.ITALIC (itálico) ou combinações como Font.BOLD + Font.ITALIC. O terceiro parâmetro especifica o tamanho da fonte. Exemplo:
Font minhaFonte = new Font("Courier", Font.PLAIN, 14);
|
| FONTES DISPONÍVEIS EM JAVA |
Java define 5 nomes de fontes independentes de plataforma: Courier, Dialog, Helvetica, TimesRoman e Symbol. Quando um applet cria um objeto Font, Java transforma a fonte em uma fonte dependente de plataforma. Por exemplo, Java transforma a fonte Helvetica na fonte Arial sob o MS Windows. Pode-se especificar qualquer nome de fonte mas, se a fonte não estiver disponível, Java escolherá uma das que estejam disponíveis. |
| OBTENDO UMA LISTA DAS FONTES DISPONÍVEIS |
Para se obter uma lista das fontes disponíveis pode-se utilizar o método getFontList da classe Toolkit, que retorna um array de strings com o nome de todas as fontes disponíveis: String listaDeFontes[ ] = getToolkit( ).getFontList( ); Este método foi substituído pelo método getLocalGraphicsEnvironment da classe GraphicsEnvironment na Java 2 Platform SE versão 1.3: String listaDeFontes[ ] = GraphicsEnvironment.getLocalGraphicsEnvironment( ).getAvailableFontFamilyNames( ); Ambos os métodos funcionam igualmente bem. Seu uso depende da plataforma que você estiver utilizando. |
| DESENHANDO COM FONTES |
Após definir as fontes que serão utilizadas, pode-se desenhar as mesmas no método paint() de um applet:
public void paint(Graphics g) {
g.setFont(f1);
g.drawString("Desenhando com a fonte f1", 5, 10);
g.setFont(f2);
g.setColor(Color.red);
g.drawString("Desenhando em vermelho com a fonte f2", 5, 20);
}
|
| OBTENDO INFORMAÇÕES SOBRE UMA FONTE |
Algumas vezes se torna necessário obter informações sobre a fonte que estiver em uso. Neste caso, utiliza-se os métodos de um objeto da classe Font obtido através de uma chamada ao método getFont() da classe Component. Exemplo: ... Font minhaFonte = getFont( ); String nome = minhaFonte.name; int tamanho = minhaFonte.getSize( ); int estilo = minhaFonte.getStyle( ); boolean negrito = minhaFonte.isBold( ); boolean italico = minhaFonte.isItalic( ); boolean normal = minhaFonte.isPlain( ); ... |
| MEDIDAS DE FONTE |
![]() |
| OBTENDO INFORMAÇÕES SOBRE AS MEDIDAS DE UMA FONTE |
Para obter informações sobre as medidas de uma fonte utiliza-se o método getFontMetrics ou o construtor FontMetrics. A seguir, um exemplo usando o contrutor:
...
Font f1 = Font("Courier", Font.BOLD, 14);
FontMetrics fm = getFontMetrics(f1);
O objeto FontMetrics fm possui vários métodos que fornecem informações sobre as medidas da sua fonte: fm.getAscent( ); retorna o valor do ascendente. |
| SUBLINHANDO TEXTO |
Para sublinhar texto é preciso desenhar a linha abaixo do texto desejado porque o pacote AWT da Java não possui o estilo sublinhado. Da mesma forma, é preciso produzir o estilo riscado (texto com um risco no meio). O exemplo a seguir deve facilitar:
...
Font f1 = new Font("Helvetica", Font.BOLD, 16);
String s = "Java NumaBoa";
...
public void paint(Graphics g) {
int comprString = getFontMetrics(f1).stringWidth(s);
g.setFont(f1);
g.drawString(s, 5, 30);
g.drawLine(5, 31, 5 + comprString, 31);
}
|