2016-11-07 1 views
1

저는 JavaFX 프로젝트에서 작업하고 있습니다. CSS 파일의 Label에 맞춤 글꼴을 사용하고 싶습니다. 나는 예를 들면 읽고 읽었다. this 게시물. 글꼴이 성공적으로로드되도록사용자 정의 글꼴을 설정할 수 없습니다.

public class Main extends Application { 
    @Override 
    public void init() { 
     Font font = Font.loadFont(getClass().getResourceAsStream("Dimitri_Swank.ttf"), 32); 
     System.out.println(font); 
    } 
    @Override 
    public void start(Stage primaryStage) throws Exception { 
     Parent root = FXMLLoader.load(getClass().getResource("Window.fxml")); 
     // ... 
    } 
} 

그것은 Font[name=Dimitri Swank, family=Dimitri Swank, style=Regular, size=32.0]를 인쇄합니다. FXML 파일의 루트 컨테이너가 stylesheets="@Window.css" 속성을 가지고 있으며,이 CSS 파일에서 규칙이있다 : 내가 변경하는 경우

#gameName { 
    -fx-font-family: Dimitri Swank; 
    -fx-font-size: 32px; 
} 

선택기가 잘 작동 (그것이 Label을 의미), 나는 그 차이를 볼 수 있습니다 -fx-font-size. 그러나 글꼴 패밀리는 기본 시스템 글꼴로 유지됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

@font-face{ 
    src: url("../fonts/Younger than me Bold.ttf"); 
} 

.button{ 
    -fx-background-color:white; 
    -fx-background-radius:15.0; 
    -fx-font-size:18.0; 
    -fx-font-family:"Younger than me"; 
    -fx-text-fill:black; 
    -fx-font-weight:bold; 
} 

언급 원래 이름을 찾을 수 있습니다

+0

당신의 링크 된 게시물의 답안에서'-fx-font-family'가 따옴표로 묶인 것을 보았습니다. -fx-font-family : 'Dimitri Swank'; –

+0

@MichaelPickett 권자, 그렇게 쉽게, 그리고 문제를 해결, 감사합니다. – klenium

답변

0

JavaFX version 1.8u60에서로서 당신은하지만 자르 사용하면 예를 들어, Font File의 정확히 원래 이름을 사용하는 데 필요한 폰트를로드하는 일반 CSS를 사용할 수 있습니다 .ttf을 기본 편집기로 열어 모르는 경우 이름을 확인하십시오.

전체 튜토리얼 : 마지막으로 Specifying external font in JavaFX CSS


:

http://www.guigarage.com/2014/10/integrate-custom-fonts-javafx-application-using-css/도 여기에 상황에 보라는

코드의 문제는 CSS에서 당신이 아니라는 것이다 큰 따옴표를 붙이십시오 " 또는 주위에 작은 따옴표 'font - family

+0

고마워, 나는 내일 이런 식으로 보일거야. – klenium

+0

@klenium;) https://youtu.be/p_o5F3x-Rnc?t=763 – GOXR3PLUS

관련 문제