Spécification d'une police externe dans JavaFX CSS
Est-il possible de spécifier une police à l'aide de CSS dans le JavaFX application? J'ai un FXML scène et le fichier CSS correspondant. Dans le code Java, il est possible de spécifier une police de caractères à l'aide de la setFont
méthode:
text.setFont(Font.loadFont("file:resources/fonts/SourceSansPro-Bold.ttf", 12));
J'ai essayé les différentes constructions, comme:
-fx-font-family: url("../fonts/SourceSansPro-Bold.ttf");
mais ça ne fonctionne pas.
source d'informationauteur syscreat
Vous devez vous connecter pour publier un commentaire.
Vous étiez proche de la solution:
Essayez cela, il devrait fonctionner correctement.
Cela pourrait peut-être aider? (Je ne suis pas un expert en JavaFX)
https://forums.oracle.com/forums/thread.jspa?messageID=10107625
MODIFIER:
Charge de la police:
Utiliser votre police avec
-fx-
:- Je utiliser une combinaison de code de l'application et CSS pour mettre en forme via une police externe.
Je place le
loadFont
appel à l'intérieur d'un substituée Application méthode d'initialisation pour s'assurer qu'elle est invoquée avant que quelque chose se passa dans l'application.D'utiliser la police, je fais appel à la police par la police en CSS:
Agréable que le CSS tailles de polices d'amende.
Même lorsque la police est chargée à la taille 10, la police a été redimensionnée correctement à ce qui est spécifié dans le CSS
-fx-font-size
spécifications.Inline style de l'étiquette via CSS à l'aide d'un
Font
chargé lors de l'initialisation de l'application fonctionne aussi très bien:La TRON police a été téléchargé sur dafont et placé dans le même répertoire que le CustomFontTest classe et copié dans le répertoire de sortie version par le système de compilation.
Réponse copié à partir de ma réponse à un post sur le forum sur "En Utilisant Des Polices".
Viens de découvrir un plus de détail:
En JavaFX-8 si vous souhaitez être informé régulièrement et de gras des variantes de la même police de caractère que vous pouvez les spécifier avec deux instances de @font-face. Ensuite, vous pouvez utiliser -fx-font-weight: bold;
Une autre façon est à la charge de la police à l'aide de FileIUnputStream, donc vous n'avez pas besoin d'utiliser les css: