2009-07-04 61 views
0

對於附帶的代碼,我得到以下編譯時錯誤:轉碼過程中 例外:字體別名「myFontFamily」 大膽的重量和斜體樣式不是由 姓「坤德里印地文後發現正常'的Flex嵌入印地文字體問題

我已經安裝了其他印地語字體,並且我也得到了同樣的錯誤。

雖然我沒有得到標準字體,如宋體,黑體 甚至「微軟喜馬拉雅」任何錯誤

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
     <mx:Button x="96" y="102" label="Button"/> 
     <mx:Style> 
    @font-face { 
    src:local("Kundli Hindi Normal"); 
    fontFamily: myFontFamily; 
    advancedAntiAliasing: false; 
    font-weight:bold; 
    font-style:italic; 
} 

    Button { 
     fontFamily: myFontFamily; 
     fontSize: 18pt; 
    } 
    HBox { 
     fontFamily: Times; 
     fontSize: 18pt; 
    } 

    </mx:Style> 


</mx:Application> 

回答

2

我剛剛下載了Kundli印地文字體,我得到的只是一個'普通'字體 - 沒有粗體或斜體。顯然,我們可能已經從不同的地方獲得了字體,並且您可能還有其他的字體,但是您的具有單獨的粗體和斜體字體,以便嵌入具有粗體和斜體屬性的字體。

此外,我下載的字體被命名爲'Kundli Hindi NormalA'....不知道爲什麼它被命名爲'NormalA',而不是'普通'或'Regular'。如果你還沒有,你可以仔細檢查以確保你的名字實際上被命名爲'Kundli Hindi Normal'。這似乎不是問題所在,但重新檢查那種東西絕不會讓人感到痛苦。至少對於我來說 :)。

如果您無法獲得此字體的粗體字體 - 從我自己在Google上的搜索中看,它看起來不可用 - 您可以使用ActionScript的高級字體功能創建粗體和半粗體版本的一種字體。雖然我沒有任何有用的建議來僞造斜體。

以下是通過subpixel風格使用嵌入字體(無數專業版),並修改其重量的例子:

.roomViewTitleRoomType 
{ 
    color: "0x8AA1A8"; 
    font-size: 20; 
    fontFamily: "Myriad Pro"; 
    fontAntiAliasType: "advanced"; 
    fontThickness: 200; 
    fontGridFitType: "subpixel"; 
} 

您可能要聲明一個字型與先進的字體處理(fontAntiAliasType ,fontThickness,fontGridFitType),如下所示,但其他信息將被忽略。

@font-face 
{ 
    src: url("/assets/fonts/kundli.ttf"); 
    fontFamily: "Kundli Hindi Heavy"; 
    fontWeight: "normal"; 
    fontAntiAliasType: "advanced"; 
    fontThickness: 800; 
    fontGridFitType: "subpixel"; 
} 

希望有幫助。

+0

當我在Windows Fonts文件夾中列出字體時,它被命名爲:「Kundli Hindi Normal」。當我通過字體管理程序查看該字體時,此字體顯示的子族爲: 「NormalA」。 您的解決方案完美無缺。 謝謝! – dharm0us 2009-07-05 05:32:55

1

它是可能的字體文件本身有大膽的「無效」的名字和斜體版本的字體。我不記得確切的細節,但是我們遇到了類似的問題,即字體爲其導入此錯誤的粗體版本定製名稱。我們必須修改字體才能讓應用程序編譯。任何體面的字體管理程序應該能夠給你的字體的細節,以幫助您發現錯誤。

+0

確實。通過字體管理器程序查看,名稱爲NormalA。 – dharm0us 2009-07-05 05:33:25