Fuentes en Java

Hola a todos, hoy os explicare como podemos modificar la fuente del texto en los componentes de Java.

La clase que nos permitirá modificar la fuente del texto de los componentes es Font, que esta en java.awt.

La forma mas sencilla de crear un objeto Font es indicarle un nombre como String, un int como estilo (definidos como constantes) y otro int indicando el tamaño de la letra. Por ejemplo:

Font fuente=new Font("Arial", Font.ITALIC, 15);

La forma de modificar una fuente es con el método setFont(Font) que tiene el componente. Veamos un ejemplo con esta ventana:

ejemplo fuente

Os dejo el código modificando la fuente del texto.

import java.awt.EventQueue;
import java.awt.Font;
import javax.swing.*;

public class EjemploFuentes extends JFrame {

	private JPanel contentPane;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					EjemploFuentes frame = new EjemploFuentes();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public EjemploFuentes() {

		//Parametros asociados a la ventana
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 450, 300);
		contentPane = new JPanel();
		contentPane.setLayout(null);
		setContentPane(contentPane);

		//Fuentes

		Font fuente=new Font("Arial", Font.ITALIC, 15);
		Font fuente1=new Font("Tahoma", Font.BOLD, 25);
		Font fuente2=new Font("Times New Roman", Font.PLAIN, 10);

		//Componentes

		JLabel lblEtiquetaConOtra = new JLabel("Etiqueta con otra fuente");
		lblEtiquetaConOtra.setBounds(56, 49, 154, 14);
		lblEtiquetaConOtra.setFont(fuente);
		contentPane.add(lblEtiquetaConOtra);

		JLabel lblEtiquetaConOtra_1 = new JLabel("Etiqueta con otra fuente distinta");
		lblEtiquetaConOtra_1.setBounds(56, 163, 350, 36);
		lblEtiquetaConOtra_1.setFont(fuente1);
		contentPane.add(lblEtiquetaConOtra_1);

		JButton btnBotonConDistinta = new JButton("Boton con distinta fuente");
		btnBotonConDistinta.setBounds(56, 101, 218, 23);
		btnBotonConDistinta.setFont(fuente2);
		contentPane.add(btnBotonConDistinta);

	}
}

Así lo veríamos ahora:

ejemplo fuente 2

 

Si usamos Windows Builder, podemos cambiar la fuente de los componentes de una forma más fácil, al seleccionar un componente, buscamos en las propiedades font y pinchamos en el botón del final:

ejemplo fuente 3

 

Cuando pinchemos, nos aparecerá una ventana con los 3 parámetros que les debemos pasar:

ejemplo fuente 4

Con NetBeans también lo podemos hacer. Solo debemos ir a propiedades de un elemento o control que contenga texto y buscar la propiedad Font o fuente.

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

5 comentarios

  1. Timothy

    Hola
    Pregunta: ¿Como le podría hacer para tener un texto en dos formatos distinos dentro de un mismo TextArea?, osea que la mitad del texto esté en Arial y la otra mitad en Tahoma

  2. Timothy

    jaja que pregunta la mia, mirando por ahí encontré que no se puede hacer eso en un TextArea
    Disculpen la molestia =P

  3. Niel MV

    Buenas y si kiero cambiar la fuente por defecto para que todo lo k cree comience con esa fuente, como lo haria?

  4. yader

    claro que se puede todo es posible lo primero que debes hacer es un boton que cuando des click en el te de cambie la letra que vas escribiendo y
    si quieres que sea cuando se muestre usa que cando la cantidad de letra se mayor que una cantidad canvie esta otra ya

  5. Carlos Salas

    hola
    me podrías ayudar ?
    labels = casiilla de ajedrez

    he conseguido un tablero de 8*8 pero no consigo tener acceso a él
    como consigo rellenarlo con las piezas ?
    habia pensado en una fuente true type de ajedrez pero no se como hacerlo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *