elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Pregunta con método SetFont();
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Pregunta con método SetFont();  (Leído 10,119 veces)
BEATMASTER

Desconectado Desconectado

Mensajes: 153



Ver Perfil WWW
Re: Pregunta con método SetFont();
« Respuesta #10 en: 30 Julio 2009, 07:48 am »

esto solo funciona apra objetos graficos? (supongo que si) o puedo tener un objeto pro ejemplo inventario, donde pongo en pantala un inventario? me imagino que en salida de consola no se puede cambiar la fuente


En línea

rigoxls

Desconectado Desconectado

Mensajes: 57



Ver Perfil
Re: Pregunta con método SetFont();
« Respuesta #11 en: 30 Julio 2009, 17:07 pm »

esto solo funciona apra objetos graficos? (supongo que si) o puedo tener un objeto pro ejemplo inventario, donde pongo en pantala un inventario? me imagino que en salida de consola no se puede cambiar la fuente

Ps de hecho yo lo utilice para un JLabel y un jTextField, y funciono a la perfeccion, me busco la fuente dentro del jar y me cambio el tipo de letra segun requeri..

Creo que en consola no se puede cambiar la fuente, igual puedes mirar el link principal donde obtuve la informacion:

http://java.sun.com/docs/books/tutorial/2d/text/fonts.html


En línea

No hay verdades absolutas sin ciegas posiciones !!!
1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Pregunta con método SetFont();
« Respuesta #12 en: 8 Agosto 2009, 04:06 am »

Hola a todos, muy buen tema pero el metodo que posteo rigoxls no funciona al menos no a mi.

Código:
public class fuentes{	
public fuentes(){
}

public Font fuentes1(String font_name){

try {
     font = Font.createFont(Font.TRUETYPE_FONT, new File(font_name));    
     }catch (Exception ex) {
     }
     return font.deriveFont(60f);

}
}

Ese código tiene algunos errores bueno cualquiera que no sea novato lo notaria, pero lo digo que si se va a posterar algún código que sea bien, no tengo nada contra ti, asi que no te la tomes a mal.
p. ej.

fuentes1??
font no está declarada.

Pero corrigiendo esto aun asi al compilar no te marca error, sino hasta ejecutar... por lo menos a mi me tira el siguiente error.

Exception in thread "main" java.lang.NullPointerException
    at fuentes.fuentes(fuente.java:87)
    at fuente.inciarComponentes(fuente.java:35)
    at fuente.<init>(fuente.java:16)
    at fuente.main(fuente.java:12)

fuente es mi clase principal.

Y mejor aun, volviendo al punto de obtener la fuente del jar ese metodo no funciona ya que utilizas la clase File, mas bien se debe usar la clase InputStream, como lo dice la referencia que posteaste.

Citar
However, an InputStream might be needed if your code is unable to access file system resources, or if the font is packaged in a Java Archive (JAR) file along with the rest of the application or applet.

fuente: http://java.sun.com/docs/books/tutorial/2d/text/fonts.html

mas bien deberia ser algo asi.

Código:
import java.awt.Font;
import java.awt.FontFormatException;
import java.io.IOException;
import java.io.InputStream;
import javax.swing.JPanel;

public class MainClass extends JPanel {

  public void loadFont() throws FontFormatException, IOException{
    String fontFileName = "yourfont.ttf";
    InputStream is = this.getClass().getResourceAsStream(fontFileName);

    Font ttfBase = Font.createFont(Font.TRUETYPE_FONT, is);

    Font ttfReal = ttfBase.deriveFont(Font.PLAIN, 24);
    
  }
  public static void main(String[] args) {

  }

}

fuente: http://www.java2s.com/Code/JavaAPI/java.awt/FontcreateFontintfontFormatInputStreamfontStream.htm

Y para los que no saben como llamar la fuente obtenida desde su clase principal es algo asi (Utilizando la clase (corregida) de rigoxls).

En la clase donde se manda llamar

Código:
fuentes f = new fuentes();
Font font = f.fuentes("Kaela.ttf");
etqHMC.setFont(font);
etqHMC.setText("Hola Mundo Cruel");


Esta es mi clase fuentes

Código:
class fuentes{

public Font font;

public fuentes(){
}

public Font fuentes(String nombreFuente, int tamanoFuente){

     InputStream nombre = getClass().getResourceAsStream("/fonts/"+nombreFuente); //Jar

try{
font = Font.createFont(Font.TRUETYPE_FONT, nombre);
font = font.deriveFont(Font.PLAIN, tamanoFuente);    
     }catch (Exception ex){
     }
    
     return font;
}
}

/fonts/ es una carpeta donde tengo mis fuentes  ;D

Bueno esto lo posteo para aquellos que se interesen, y que no les haya funcionado el primer metodo, y al parecer es la unica forma de hacerlo.

Alguien sabe si se pueden abrir fonts OpenType? o solo truetype.

Se aceptan criticas o sugerencias :xD

Saludos



« Última modificación: 8 Agosto 2009, 04:23 am por Darhius » En línea

abc
Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
pregunta sobre metodo para poder auntentificarnos
Wireless en Linux
chikocxy 3 2,327 Último mensaje 24 Junio 2011, 10:35 am
por ChimoC
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines