我在使用開源Flex 4.5 SDK(英雄)嵌入字體時遇到了問題,但是與Flex 4開源SDK有相同的問題。我已經添加了一些TTF文件到我的項目結構的資產目錄中,我試圖訪問我的CSS文件中的字體如下:需要Flex 4爲Spark組件嵌入字體
@font-face {
src: url("../assets/DroidSans.ttf");
fontFamily: DroidSans;
embedAsCFF: true;
}
這種特殊字體用於許多火花控制整個項目(這就是爲什麼embedAsCFF設置爲true,儘管我相信這個參數是可選的)。但是,當它設置在fontFamily屬性中時,沒有任何spark組件會顯示該字體。我得到的編譯對於每個Spark組件我試圖設置字體此錯誤:
警告:不兼容的嵌入字體 「DroidSans」的 規定(控件名稱)。該組件 要求使用embedAsCff = true聲明嵌入字體爲 。
奇怪的是上面的字體與MX組件協同工作,即使embedAsCFF設置爲true(從我擡頭對這個問題本應設置爲false MX組件和火花真)。
上面的代碼也適用於Flash Builder,但是,此項目需要使用開源SDK進行開發,它在此失敗。
任何想法?當然其他人也有同樣的問題?
運行以下腳本時,它顯示字體是「嵌入」的,但不是「CFFEmbedded」。 Adobe的文件說,這些都需要說 「CFFEmbedded」
var fontArray:Array = Font.enumerateFonts(false);
trace("Fontarray length: " + fontArray.length);
for(var j:int = 0; j < fontArray.length; j++) {
var thisFont:Font = fontArray[j];
trace("FONT " + j + ":: name: " + thisFont.fontName + " embedded as type:" + thisFont.fontType + ".");
}
感謝
鮑勃
[編輯]
行 - 我終於成功地嵌入字體。我試圖從CS4,SWC的SWC的從Flash Builder 4,SWF來自CS4和Flash Builder的....
- 最終修復
1)包裝的字體到在Flash Builder 4 2的SWF)參考編譯的SWF使用以下CSS
@font-face {
cff: false;
src: url('../bin/DroidSansFont.swf');
fontFamily: DroidSansMX;
}
@font-face {
cff: true;
src: url('../bin/DroidSansFont.swf');
fontFamily: DroidSans;
}
瘋狂的事情是 - 使用「cff:true」指令。所有的文件說使用「embedAsCFF」。這會在使用「cff」屬性時引發錯誤 - 它似乎可行。
我不知道 - 任何人都可以參與一些想法嗎?
`直接使用cff`,救命!並且它不需要將字體打包到swf文件中 – gone 2016-05-29 17:21:34