我需要在一个JavaFX项目中嵌入本地的.ttf文件,其中还有一些变体(粗体、斜体等),但是css解析器似乎不支持@font-face声明中的字体属性:
@font-face {
font-family: 'Open Sans', sans-serif;
src: url('fonts/OpenSans-Regular.ttf');
}
@font-face {
font-family: 'Open Sans', sans-serif;
src: url('fonts/OpenSans-Bold.ttf');
font-weight: bold;
}
@font-face {
font-family: 'Open Sans', sans-serif;
src: url('fonts/OpenSans-ExtraBoldItalic.ttf');
font-style: italic;
}
警告:CSS错误解析 jar:file:/home/test/dist/run736633436/test.jar!/it/test/vending/css/application.css: 在[8,15]处出现意外的TOKEN [:] mag 06,2015 3:40:15 PM com.sun.javafx.css.parser.CSSParser fontFace WARNING: CSS错误解析 jar:file:/home/test/dist/run736633436/test.jar!/it/test/vending/css/application.css: 在[13,14]处出现意外的TOKEN [:]
我该如何实现这个?
==编辑==
请注意,解析器会抱怨font-weight: bold;和font-style: italic;规则。
font-family
应该使用你想在所有 CSS 文件中使用的字体名称。你要使用的字体应该有唯一的名称,如OpenSansRegular
、OpenSansBold
、OpenSansBoldItalic
。虽然我不确定这是否完全是问题所在,因为你的 CSS 错误没有提供太多信息,但值得一试。 - ItachiUchiha