是什么导致带重音的印地语/泰语字符在调整大小的 TextField 中错误地自动换行以及如何解决?

发布于 2025-01-08 04:06:29 字数 503 浏览 0 评论 0原文

首先,我不懂这种语言 - 所以如果这不是印地语或泰语,我很抱歉!

现在,如果您仔细查看下面的两个文本字段示例,我会突出显示要重点关注的字符。

在第一张图片(顶部)中,第 1 行的最后一个字符是重音

亲自查看(出于说明目的,将照片放大):

在此处输入图像描述

然而,第二张图片中的角色(底部) ),显示将 TextField 缩小一两个像素后,会将重音字符“移动”到下一行,并结合 'o' 外观字符。

问题是: 是什么导致这个重音转移到下一行?以及如何才能正确显示呢?

系统信息:

  • Flex SDK 3.6;
  • 闪存生成器;
  • 闪存播放器 11.0.1.152;

First of, I don't understand this language - so my apologies if this is not Hindi or Thai!

Now, if you take a close look at the two textfield examples below, I highlighted the characters to focus on.

In the first picture (top), the last character on line 1 is accented.

See for yourself (photo zoomed-in for illustration purposes):

enter image description here

However the character in the second picture (bottom), shows that after shrinking the TextField by a pixel or two will "shift" the accent character to the next line combined with an 'o' looking character.

The Question is:
What causes this accent to shift on the next line? And how can it be displayed correctly?

System Information:

  • Flex SDK 3.6;
  • Flash Builder;
  • Flash Player 11.0.1.152;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

水染的天色ゝ 2025-01-15 04:06:29

这是印地语。 “o 查找字符”是在显示印地语变音符号而没有字母来放置它时使用的占位符。他们可以只在像 ´ 这样的空白处显示变音符号,但由于某种原因,他们更喜欢用圆圈来代表应该在那里的字符。

该问题与印地语变音符号的编写方式有关。为了更容易理解,我将使用欧洲重音字母作为示例,即字母 é。有两种可能:
1. é 可以是一个字符。如果按退格键,整个角色就会消失。
2. é 可以是两个字符,e 和 ´,其中 ´ 包含位置信息,以便结果看起来像 é 而不是 e´。如果您按退格键,则只有变音符号消失,您必须再次按退格键才能删除 e。
对于欧洲语言,您通常不会看到 2)。对于泰语,1) 和 2) 都在使用(这会造成搜索问题,因为单字符 é 与双字符 é 不匹配)。对于印地语,有太多变音符号和可能的组合,因此只有 2) 存在。

因此,由于您有两个字符而不是一个,唯一的解决方案是编写自己的换行代码。这也让您有机会防止在工作中发生换行
d,这从来都不是好事。

This is Hindi. The "o looking character" is the placeholder used when a Hindi diacritic is displayed without a letter to put it on. They could just display the diacritic over empty space like ´, but for some reason they prefer a circle to represent the character that should be there.

The problem is related to how diacritics are written for Hindi. To make it easier to understand, I will use a European accented letter for my example, the letter é. There are two possibilities:
1. é can be one character. If you hit backspace, the entire character disappears.
2. é can be two characters, e and ´, where the ´ contains placement information so that the result looks like é rather than e´. If you hit backspace, only the diacritic disappears and you have to hit backspace again to remove the e.
For European languages, you don't generally see 2). For Thai, both 1) and 2) are in use (which creates a problem for search because one-character é doesn't match two-character é). For Hindi, there are too many diacritics and possible combinations, so only 2) exists.

So, since you have two characters rather than one, the only solution is to write own line-break code. This would also give you the opportunity to prevent line-breaks occurring in the middle of the wor
d, which is never nice.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文