Visualizzazione dei risultati da 1 a 7 su 7

Discussione: importare font da ttf

  1. #1
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543

    importare font da ttf

    Salve, come mai non setta il font dal ttf font.ttf? il file lo apre correttamente poichè facendo f.getName() mi visualizza il nome corretto del font...
    codice:
    JLabel comp = new JLabel("Testo per altra font");
    try {
    	File font = new File(path);
    	FileInputStream fis = new FileInputStream(font);
    	Font f = Font.createFont(Font.TRUETYPE_FONT, fis);
    	comp.setFont(f);
    } catch (Exception e) {
    	System.out.println(e.getMessage());
    	comp.setFont(new Font("Verdana", 0, 50));
    }
    non capisco l'errore...inoltre, non generando eccezioni, non mi imposta nemmeno il font alternativo non facendo visualizzare nessun testo ovviamente...come lo risolvo?

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: importare font da ttf

    Originariamente inviato da oronze
    Salve, come mai non setta il font dal ttf font.ttf? il file lo apre correttamente poichè facendo f.getName() mi visualizza il nome corretto del font...
    createFont()

    Returns a new Font using the specified font type and input data. The new Font is created with a point size of 1 and style PLAIN.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    grazie 1000 mi era sfuggita quella dichiarazione della javadoc:P
    ma ora non so come procedere
    [code]
    private Font caricaFont(String path){
    try {
    File font = new File(path);
    FileInputStream fis = new FileInputStream(font);
    return Font.createFont(Font.TRUETYPE_FONT, fis);
    } catch (Exception e) {
    return new Font("Verdana", 0, 50);
    }
    }
    labTitolo.setText("Testo");
    Font f = caricaFont("font.ttf");
    labTitolo.setFont(f);
    /code]
    ma ovviamente è di 1 la sua dimensione...come la faccio diventare 18? il costruttore setFont ho provato a usarlo così
    labTitolo.setFont(new Font(f.getFontName(), Font.BOLD, 18));
    ma non mi carica il font del file font.ttf....come faccio? f.getFontName() restituisce correttamente il nome della font

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  4. #4
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    GraphicsEnvironment.getLocalGraphicsEnvironment(). registerFont(f);
    labTitolo.setFont(new Font(f.getFontName(), Font.BOLD, 18));
    è la soluzione...avevo letto la JavaDoc mooooolto distrattamente

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da oronze
    ma ovviamente è di 1 la sua dimensione...come la faccio diventare 18?
    f = f.deriveFont(18f);

    Mooooolto semplice, no?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    Originariamente inviato da andbin
    f = f.deriveFont(18f);

    Mooooolto semplice, no?
    io cercavo un setSize su Font...
    cmq anche registrare la font e poi applicarla va benone per le mie esigenze...tanto la registro una sola volta e la uso svariate volte con dimensione diversa

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da oronze
    io cercavo un setSize su Font...
    Un Font è "immutabile".

    Originariamente inviato da oronze
    cmq anche registrare la font e poi applicarla va benone per le mie esigenze...tanto la registro una sola volta e la uso svariate volte con dimensione diversa
    A parte il fatto che registerFont() c'è solo da Java 6, quindi restringi l'utilizzo solo a Java 6 o superiore (che potrebbe o non potrebbe andarti bene ... non lo so) .... comunque servirebbe solo per renderlo disponibile per la enumerazione (con GraphicsEnvironment) e per la costruzione di un Font per nome/famiglia.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.