Comment puis-je utiliser une police personnalisée en Java?
J'ai écrit un programme en Java qui utilise une police spéciale qui par défaut n'existe pas sur n'importe quel système d'exploitation.
Est-il possible en Java pour ajouter cette police spéciale pour le système d'exploitation? Par exemple, dans Windows, pour copie de cette police les Polices spéciales dossier.
Si c'est possible, comment?
Vous devez vous connecter pour publier un commentaire.
Si vous incluez un fichier de police (feo, ttf, etc.) dans votre paquet, vous pouvez utiliser la police de caractères de votre demande par le biais de la méthode décrite ici:
Oracle Java SE 6: java.awt.La police
Il y a un tutoriel disponible d'Oracle que montre cet exemple:
Je serais probablement conclure dans une sorte de chargeur de ressources mais aussi de ne pas recharger le fichier du package à chaque fois que vous voulez utiliser.
Une réponse plus étroitement liés à votre question de départ serait d'installer la police dans le cadre de votre demande, le processus d'installation. Ce processus dépendra de la méthode d'installation que vous choisissez. Si ce n'est pas une application de bureau, vous aurez à chercher dans les liens fournis.
Voici comment je l'ai fait!
createFont
deux fois? Si elle l'est, pourquoi?De la Java tutoriel, vous devez créer une nouvelle police et de l'inscrire dans l'environnement graphique:
Une fois cette étape réalisée, la police est disponible dans les appels à
getAvailableFontFamilyNames()
et peut être utilisé dans la police des constructeurs.Si vous souhaitez utiliser la police pour dessiner avec graphics2d ou similaires, cela fonctionne:
48f
ici est la taille de la police transmis en tant que float. Si vous passer dans comme un entier, il ne fonctionne pas correctement, car cette méthode attend int constantes telles queFont.BOLD
. Si vous êtes à l'aide de différentes tailles ou styles d'une seule police, vous pouvez déduire tous d'entre eux à partir de votre uniqueFont
objet.