在編輯flash文件中加載了非 Unicode 編碼的外部txt文本文件時(shí),有些中文就不能正常顯示。
解決辦法:
用鼠標右鍵單擊舞臺上的元件,從彈出的快捷菜單中選擇“動(dòng)作”選項,打開(kāi)動(dòng)作腳本編輯面板,鍵入下面腳本
System.useCodepage = true;
腳本解釋?zhuān)猴@示中文字符的語(yǔ)句,使外部文本文件中的中文字符能正常顯示。否則只能顯示英文字符,中文字符為亂碼。
例子:
on (release) {
loadVariablesNum("chem.txt", 0);
System.useCodepage = true;
}
說(shuō)明:
對于作為外部文件包含或加載的文本(使用 #include 命令,loadVariables() 或 getURL 動(dòng)作,或 LoadVars 或 XML 對象),保存這些文本文件時(shí)必須使用 Unicode 對其進(jìn)行編碼,這樣 Flash Player 才能將其識別為 Unicode。若要使用 Unicode 對外部文件進(jìn)行編碼,請在支持 Unicode 的應用程序(例如,Windows 2000 上的“記事本”)中保存這些文件。
如果包含或加載了非 Unicode 編碼的外部文本文件,則應將 system.useCodepage 設置為 true。在加載數據的 SWF 文件的第一幀中,在最前面添加以下代碼(第一行代碼):
system.useCodepage = true;
如果有這一行代碼,Flash Player 將使用運行 Flash Player 的操作系統的傳統代碼頁(yè)來(lái)解釋外部文本。對于英文 Windows 操作系統,該代碼頁(yè)通常為 CP1252;對于日文操作系統,該代碼頁(yè)通常為 Shift-JIS。如果將 system.useCodepage 設置為 true,Flash Player 6 和更高版本處理文本的方式與 Flash Player 5 相同。(Flash Player 5 在處理文本時(shí),將所有文本都視為按運行播放器的操作系統的傳統代碼頁(yè)編碼的文本。)
如果將 system.useCodepage 設置為 true,應注意您的外部文本文件中使用的字符必須包含在運行播放器的操作系統的傳統代碼頁(yè)中,這樣才能顯示該文本。例如,如果您加載了一個(gè)包含中文字符的外部文本文件,這些字符在使用 CP1252 代碼頁(yè)的系統上將無(wú)法顯示,因為該代碼頁(yè)不包含中文字符。
若要確保所有平臺上的用戶(hù)都能查看您的 SWF 文件中使用的外部文本文件,應使用 Unicode 對所有外部文本文件進(jìn)行編碼,并將 System.useCodepage 設置保留為其默認設置 false。這樣,Flash Player 6 和更高版本將按 Unicode 解釋文本。
聯(lián)系客服