我有一個Flex應用程序,其中的字體樣式已設置如下:Adobe Flex的unicodeRange
@font-face {
fontFamily: Arial;
fontWeight: normal;
fontStyle: normal;
src: local("Arial");
unicodeRange: U+0021-U+007E,
U+a3-U+a3;
}
ü的Unicode範圍+ A3允許用戶輸入的£(英鎊符號)。
在Flex中輸入數據並保存到數據庫時,英鎊符號前面加上了一些奇怪的字符,例如「ÃÃÃã£」。我調試了Flex應用程序,並在保存操作中停止了代碼,並且有問題的控件確實在保存變量中顯示了怪異字符。所以,錯誤似乎是在靈活的一面創建的。
然後我改變了字體如下,刪除任何Unicode引用
@font-face {
fontFamily: Arial;
fontWeight: normal;
fontStyle: normal;
src: local("Arial");
}
這似乎有所改善,但現在的數據被保存爲「£」。逐步執行代碼顯示的字符只被通過對服務器作爲£發送,所以它會似乎現在在數據庫方面
我可能丟失的東西在這裏很明顯創建的錯誤。理想情況下,我想保持unicode範圍儘可能小。
我也曾嘗試設置unicodeRange如下: @字體面{ fontFamily中:Arial; fontWeight:正常; fontStyle:normal; src:local(「Arial」); unicodeRange:U + 0021-U + 007E, U + 00A3-U + 00A3; } 這會導致適度的改善,儘管該項目仍然保存爲£ – JonoB 2011-01-06 13:21:27