Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Java / Cargar fuente TTF

Cargar fuente TTF

Por jc mouse sábado, mayo 19, 2012


Load font java

Cuando realizamos un proyecto java utilizando fuentes de nuestro sistema, al momento de distribuir el programa y ejecutarlo en una PC que no tenga las mismas fuentes, nuestro programa se deforma al tomar el sistema fuentes propias de la pc cliente, para evitar esto podemos incluir nuestra fuente en el JAR de distribución o en un archivo externo, luego cargamos ya podemos cargar la fuente desde java y utilizarla en el proyecto.

Para este ejemplo utilizamos la fuente LISSA___.TTF de uso gratuito :), pueden hacer la prueba con cualquier otra fuente que pueden encontrar en la red.

Lissa font ttf

Nos creamos una clase para cargar y personalizar esta fuente «CustomFont.java», la fuente TTF se encuentra en el mismo paquete que esta clase. Esta clase carga la fuente desde el constructor, ademas tiene una función para personalizar la fuente pasando como parámetros el estilo (Normal, Negrita, Italica) y el tamaño. Si la fuente no puede ser cargada, carga una fuente muy común en todos los sistemas la fuente tipo Arial.

import java.awt.Font;
import java.io.InputStream;
/**
 * @web https://www.jc-mouse.net
 * @author Mouse
 */
public class CustomFont {

    private Font font = null;

    public CustomFont() {
        String fontName = "LISSA___.ttf" ;
        try {
            //Se carga la fuente
            InputStream is =  getClass().getResourceAsStream(fontName);
            font = Font.createFont(Font.TRUETYPE_FONT, is);
        } catch (Exception ex) {
            //Si existe un error se carga fuente por defecto ARIAL
            System.err.println(fontName + " No se cargo la fuente");
            font = new Font("Arial", Font.PLAIN, 14);            
        }
  }

    /* Font.PLAIN = 0 , Font.BOLD = 1 , Font.ITALIC = 2
 * tamanio = float
 */
    public Font MyFont( int estilo, float tamanio)
    {
        Font tfont = font.deriveFont(estilo, tamanio);
        return tfont;
    }

}

Y para utilizar esta fuente desde cualquier clase, solo debemos instanciarla.

CustomFont cf = new CustomFont();

this.jLabel1.setFont(cf.MyFont(1, 28f));
this.jLabel1.setText("https://www.jc-mouse.net/");

this.jTextField1.setFont(cf.MyFont(1, 20f));
this.jTextField1.setText("Bolivia el mejor pais del mundo");

this.jTextArea1.setFont(cf.MyFont(0, 24f));
this.jTextArea1.setText("Aunque usted no lo crea. \n de Ripley");

Load font java

Proyecto Netbeans + Fuente HERE

Tags

Artículos similares

Código Único de Factura en C Sharp

En este post implementamos el «Código Único de Factura» según la documentación otorgada por Impuestos Bolivia en su siti[...]

API completo y ligero para el uso de webcams desde java

Webcam Capture es un API  que permite usar una cámara web incorporada o externa directamente desde código Java utilizand[...]

Lo nuevo de HTTP Client

Una de las novedades de Java 9 y 10 aunque por el momento en modo de prueba (jdk.incubator.http) es el Cliente HTTP el c[...]

Ejemplo práctico de MVC java Swing con Netbeans

Modelo Vista Controlador (MVC) es un patrón de arquitectura de software que separa los datos de una aplicación, la inter[...]

Búsqueda binaria (Binary Search)

Un algoritmo de búsqueda binaria se emplea para buscar un valor en particular en un arreglo previamente ordenado. Para i[...]

Procesamiento por lotes [Batch insert]

En ocasiones debemos insertar varios registros a nuestra base de datos desde nuestra aplicación java y lo que usualmente[...]