Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di caralu
    Registrato dal
    Sep 2004
    Messaggi
    135

    Installare nuovo Font

    Ciao a tutti! Volevo chiedere se è possibile (e in tal caso come si fa) ad utilizzare un Font installato nel sistema (o comunque fare importare il file del font da una qualsiasi directory) per fare la stampa a video di una stringa..
    Linux Slackware 11 - Kernel 2.6.18

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Puoi utilizzare il metodo statico createFont() della classe Font.
    Non l'ho mai usato, quindi non ho esempi da fornirti (nemmeno al volo), ma seguendo la documentazione dovresti riuscire a fare quello che ti serve.

    Ad ogni modo, il metodo getAllFonts() dovrebbe comunque restituire un array con tutti i Font installati nel sistema.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di caralu
    Registrato dal
    Sep 2004
    Messaggi
    135
    Originariamente inviato da LeleFT
    il metodo getAllFonts() dovrebbe comunque restituire un array con tutti i Font installati nel sistema.
    Non riesco a fare restituire questo diavolo di array!!
    Ho provato in questo modo:
    codice:
    Graphics2D g = (Graphics2D) strategy.getDrawGraphics();
    Font font = new Font(g.getFont().getName(), Font.BOLD, 35);
    Font arrfont[] = font.getAllFonts();
    Ma non riconosce il metodo getAllFonts() su oggetti di tipo Font!
    Linux Slackware 11 - Kernel 2.6.18

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da caralu
    Non riesco a fare restituire questo diavolo di array!!
    Ho provato in questo modo:
    codice:
    Graphics2D g = (Graphics2D) strategy.getDrawGraphics();
    Font font = new Font(g.getFont().getName(), Font.BOLD, 35);
    Font arrfont[] = font.getAllFonts();
    Ma non riconosce il metodo getAllFonts() su oggetti di tipo Font!
    getAllFonts è un metodo della classe GraphicsEnvironment!!!

    codice:
    GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    
    Font[] listaFont = ge.getAllFonts();
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di caralu
    Registrato dal
    Sep 2004
    Messaggi
    135
    Originariamente inviato da andbin
    getAllFonts è un metodo della classe GraphicsEnvironment!!!
    VVoVe: ....Che distratto!! Grazie! Ho così ottenuto la lista dei font, visualizzata in questo modo:
    ...
    java.awt.Font[family=Tahoma,name=Tahoma,style=plain,size=1]
    java.awt.Font[family=Tahoma,name=Tahoma Bold,style=plain,size=1]
    java.awt.Font[family=Times New Roman,name=Times New Roman,style=plain,size=1]
    java.awt.Font[family=Times New Roman,name=Times New Roman Bold,style=plain,size=1]
    java.awt.Font[family=Times New Roman,name=Times New Roman Bold Italic,style=plain,size=1]
    java.awt.Font[family=Times New Roman,name=Times New Roman Italic,style=plain,size=1]
    java.awt.Font[family=Trebuchet MS,name=Trebuchet MS,style=plain,size=1]
    java.awt.Font[family=Trebuchet MS,name=Trebuchet MS Bold,style=plain,size=1]
    java.awt.Font[family=Trebuchet MS,name=Trebuchet MS Bold Italic,style=plain,size=1]
    java.awt.Font[family=Trebuchet MS,name=Trebuchet MS Italic,style=plain,size=1]
    java.awt.Font[family=Trendy,name=Trendy,style=plain,size=1]
    ...
    e grazie a questa è possibile stampare il font che si desidera, ad esempio per Trendy:
    codice:
    Graphics2D g = (Graphics2D) strategy.getDrawGraphics();         
    Font font = new Font("Trendy", Font.PLAIN, 35); 
    g.setFont(font);
    Linux Slackware 11 - Kernel 2.6.18

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Ehm... già, mi sono dimenticato di riferire la classe del metodo getAllFonts()... distrazione dovuta al troppo lavoro!


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it L'avatar di caralu
    Registrato dal
    Sep 2004
    Messaggi
    135
    Originariamente inviato da LeleFT
    Ehm... già, mi sono dimenticato di riferire la classe del metodo getAllFonts()...
    No no, sono io che dovevo verificarlo! Il tuo consiglio era giusto!
    Comunque...E' andato tutto a buon fine, grazie a tutti e due, alla prossima!
    Linux Slackware 11 - Kernel 2.6.18

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 © 2025 vBulletin Solutions, Inc. All rights reserved.