Usando Fuentes Propias para Aplicaciones en Java

Para esta oportunidad les traigo un pequeño ejemplo de como podemos usar fuentes (que no tengamos instaladas en nuestra PC) para nuestras aplicaciones desarrolladas en java. Esto para poder darle un toque personalizado a las aplicaciones que vamos a desarrollar y así darle un detalle fuera de lo común.

Lo primero que debemos hacer es tener el archivo .ttf con la fuente que queremos trabajar. Existen diferentes pagina en las que encontraremos diversos tipos de fuentes (en mi caso uso dafont) las cuales podemos descargar.

Agregamos esas fuentes a nuestro proyecto:



En este ejemplo usaré una interfaz sencilla la cual funcionara de la siguiente manera:

  • Ingresamos una cadena de texto
  • Seleccionamos la fuente
  • Clic en el botón Ver, para finalmente obtener la cadena que habíamos ingresado pero ya formateada con la fuente seleccionada. 


Los pasos anteriores, a nivel de código, se transforman en lo siguiente:


    private void VerActionPerformed(java.awt.event.ActionEvent evt) {                                    
        String texto_in = texto_ingresado.getText();
        int fuente = combo_fuentes.getSelectedIndex();
        CambiarFuente(texto_in, fuente);
        texto_salida.setText(texto_in);
    }

Como ven en este fragmento de código (que pertenece al evento del botón Ver) declaro una función llamada CambiarFuente() con los parámetros texto y fuente. Ahora trabajaremos el contenido de esa función:


     public void CambiarFuente(String texto, int fuente_index){
        Font fuente = null; 
        InputStream myStream = null;
        switch(fuente_index){
            case 0  :   try {
                                      myStream = new BufferedInputStream(new FileInputStream("src/fuentes/FineCollege.ttf"));
                                      fuente = Font.createFont(Font.TRUETYPE_FONT, myStream);
                                      fuente = fuente.deriveFont(Font.PLAIN, 26);
                             } catch (FontFormatException ex) {
                                      Logger.getLogger(JF_PRINCIPAL.class.getName()).log(Level.SEVERE, null, ex);
                             } catch (IOException ex) {
                                      Logger.getLogger(JF_PRINCIPAL.class.getName()).log(Level.SEVERE, null, ex);
                             }
                             break;
            case 1   : /*...*/
            case 2   : /*...*/   
        }
        GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
        ge.registerFont(fuente);
        
        texto_salida.setFont(fuente);
     }


Aquí una breve y sencilla explicación de lo que hace esta función: primero declaro la fuente que voy a crear y leo el archivo que contiene la fuente seleccionada; paso a crear la fuente con el contenido que tiene el archivo y luego le asigno algunas características como el tipo y tamaño de la fuente. Finalmente registro la fuente y así ya la puedo usar.
En el ejemplo solo estoy considerando una fuente, pero los pasos son exactamente los mismos.
Este es un pequeño vídeo sobre el ejemplo desarrollado:



Y eso fue todo, espero que este post les sea de utilidad, gracias y bienvenidas cualquier duda o sugerencia.

PD: Compartan en sus redes sociales.

Post Reciente
Anterior
Siguiente »

1 comentarios:

Write comentarios