WPF应用程序的语言使用中的奇怪行为
我在文本框中使用了FontFamily="Bamini Plain"
,该文本框允许我在运行时键入泰米尔语言文本。但是当我在后面的代码中捕获txtPlaceAcquire.Text
返回英文文本。为什么这个奇怪的行为我怎样才能获得我的原始语言价值?WPF应用程序的语言使用中的奇怪行为
<TextBox Text="" Name="txtPlaceAcquire" Width="210" Margin="10,0" FontFamily="Bamini Plain" /> <!-- Tamil language font setup -->
var textCapuredVal = txtPlaceAcquire.Text; // It was given english value
作为一个泰米尔语和处理了这么多的泰米尔编码的,我想我应该启发你在这个问题上。 Bamini不属于任何编码,如TAB,TAM,TSCII或通用标准Unicode。 Bamini字体在英文剧本之上有泰米尔语剧本。
所以我建议你开始使用Unicode字体。网上有泰米尔语字体。即使Windows带有默认的Unicode淡米尔文字体latha.ttf
。
要输入泰米尔语,请使用e-kalappai或NHM writer之类的软件。或者您可以使用在线转换器,如Google IME。
我建议你放弃Bamini并继续使用Unicode字体。如果您坚持使用Bamini,那么您应该在Bamini和Unicode之间进行代码级编码更改。 Check out this class written in Java,看看它是如何完成的。你必须这样做。
这个工作对我来说没有问题,它返回Unicode文本对我来说,我把它放在一个答案,因为我不能在注释中添加图像。见下图。
http://www.ufonts.com/fonts/bamini-plain.html试试这个原始版本,让我知道 – Smaug 2013-03-24 14:42:45
因为Bamini字体不是Unicode字体。 – emaillenin 2013-03-25 13:28:58
unicode和普通字体有什么区别? – Smaug 2013-03-25 15:32:01
请建议一些链接,如果你知道 – Smaug 2013-03-25 15:32:18