C#在文本框中显示Thai

时间:2017-11-20 10:08:18

标签: c# unicode textbox thai

我正在创建一个将Unicode显示在文本框和图片框中的应用程序。 App Image

当我尝试使用泰语时,我遇到了一些问题,我不会说泰语,但知道规则允许我有一个角色,然后最多两个其他标记。

我尝试将以下Unicode添加到文本框中。然后在0E2c上添加0E36,接着是0E4B。我已将文本框的字体大小设置为30。文本框我尝试并自动调整如下注意高度我尝试添加超过我需要的情况,这将有所帮助,但唉它没有。

Size size = TextRenderer.MeasureText(txtbx_text.Text, txtbx_text.Font);
txtbx_text.Width = size.Width;
txtbx_text.Height = size.Height + 25;

我想要得到的是picturebox image,但文本框显示的是Textbox image,注意到顶部的位丢失了。知道如何强制文本框正确显示泰语吗?

我认为txtbx_text.height不起作用,因为我将大小增加了2000并且没有任何反应。宽度很好所以如何使高度工作?

代码可从http://www.filedropper.com/i-braille获得。 选择页面0e设置高度为30.右键单击每个字符串以构建字符串左键单击提供信息。 Form1.cs第116行是我试图设置文本框大小的地方。

2 个答案:

答案 0 :(得分:0)

我收到了来自泰国人的消息他们告诉我字体是问题,并非所有字体都有效,所以他们不能在UI中使用它们,我不知道。他们建议使用" Angsana New",我试过这个,到目前为止一切正常。以下是Bembo的证明我将字符放在文本框的顶部

Using Bembo

但是当我只更改字体类型时,尺寸保持不变

Using Angsana New

这是它应该如何显示所以我认为使用这种字体会更好。如果其他人有泰语经验并且可以帮助我会感激任何评论和帮助。目前我认为我对前进的方向有了答案。

答案 1 :(得分:-1)

发现了这个问题。 将文本框的Font Property GdiVerticalFont设置为True。