问题标签 [bidi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 禁用 ActionBar RTL 方向
Android 4.2 引入了 RTL (BiDi) 支持,要开始使用它,我只需按照说明进行操作(清单文件中的元素的 android:supportsRtl 属性并将其设置为“true”)
但是随后我的 ActionBar 徽标也会向右更改方向(徽标显示在右侧),这是我不想要的。我确实想使用 RTL 功能,但保持 ActionBar 向左...
换句话说,当语言方向为 RTL 时,如何使用 android:supportsRtl 属性而不改变 Android 4.2 上的 ActionBar 方向
有什么建议么 ?
html - 单选按钮和文本在从右到左 (rtl) HTML 区域内的顺序是否正确?
在 HTML 的同一行上使用基于从右到左的单选按钮时,我注意到了一个问题。如我所料,单选“按钮”与相关文本不一致;第 1 组的收音机在第 4 组的标签旁边,但其他按钮似乎按我的预期排列。这发生在多个浏览器上。
这是预期的行为吗?一个从右到左的语言人会理解这一点吗?
你可以在这里玩代码:http: //jsfiddle.net/6U9fw/
java - 双向多语言字符串对话
我正在尝试使用 SWT、Paperclips 和 Java 打印双向字符串。当我将字符串打印到屏幕上时 - 一切正常(在 Java-SWT 标签上)但是当我尝试用回形针打印它时,字符串混淆了。
这就是我想要得到的:
这就是我得到
的:看起来 RTL/LTR 部分颠倒了。因为我没有将字符串定义为 RTL(在回形针上)的 API,我该如何对字符串进行转换,使其在回形针上看起来没问题?
顺便说一句,回形针是 swt 的开源打印支持。但据我了解,这个问题不是回形针问题,而是更多的双向/字符串对话问题。
javascript - 如何根据输入文本语言自动设置文本方向?
在 Google plus(以及许多其他地方)中,当我想发布一些东西时,当我用波斯语(一种从右到左的语言)输入时,文本方向会自动设置为rtl和text-alignment:right
,而当我开始输入英文它会自动更改为ltr和text-alignment:left
. 我怎样才能拥有这样的功能?这与 HTML5 或 Javascript 有什么关系吗?我应该遵循什么线索?
提前致谢
python - 在文本编辑器和 Python 中处理乌尔都语双向文本
我想使用 Python 脚本在 MS Word 文档中处理一些双向文本(乌尔都语和英语),该脚本将文本转换为表格标记。我无法直接访问 Word 文档中的双向文本,因为它是二进制格式,即使我将 Word 文档中的文本复制粘贴到文本编辑器,所有双向文本都会错误地呈现方向性。
例子:
以下文本从我复制它的原始 MSWord 文本(涉及乌尔都语文本)以相反的方向呈现:
图片 پر ہے۔
那么如何处理这样的双向文本,以便在像notepad++这样的文本编辑器中正确呈现,从而可以用Python脚本忠实地处理呢?
iphone - 如何在 iOS 上查询字符方向性?
我正在尝试根据对其包含的字符方向性的分析来定义文本行的方向性。每个 Unicode 字符都有一个独特的属性——由 Unicode 标准定义的方向性。在 Java 中可以通过以下方式查询:
由于 iOS 提供了开箱即用的上下文(又名第一个强)文本方向,我认为这种分析/处理是由 iOS 内部完成的。但是,我还没有在 Objective C 中找到任何公开可用的 API 组合来实现这一点。
在 NSLocale 中,我找到了一个 API (characterDirectionForLanguage),它返回给定语言的自然文本方向(即阿拉伯语/希伯来语 -> RTL,英语 -> LTR)。但是,我还没有找到任何 API 可以帮助我理解给定字符属于哪种语言。
我们当然可以考虑基于字符范围的启发式方法。例如,定义英语和希伯来语字符范围,并根据其中一个给定字符的包含来决定使用 characterDirectionForLanguage 函数的方向性。但是,这只是一种启发式方法,因为它并未涵盖所有语言中的所有字符。
有没有办法以编程方式可靠地识别 Objective C 中给定字符的方向性?
css - 如何根据自然方向自动显示用户文本
我想支持根据其一般方向而不是默认的从左到右方向以 Unicode 显示用户输入的文本。例如,在下面的阿拉伯语文本中,英文单词 (4th) 似乎是分开的:
اُردو کا بعض اوقات ہندی کے ساتھ موازنہ کیا جاتا ہے。اُ找ہہہsthim,ُہییییققہےہےکہکہکہکہ排下 جبکہ ہندی دیوناگری رسم الخط میں لکھی جاتی ہے اور سنسکرت الفاظ زیادہ استعمال کرتی ہے。最重要的事情是什么?تاہم، دوسرے اِن کو معاش اللسانی تفرّقات کی بنیاد پر الگ سمجھتے ہیں۔ کہیہہےکہہہی,,,,کککےےے招募ییےےےیییstript
是否有自动考虑文本流自然方向的 CSS 或 HTML 方法?我从 W3C 阅读了这篇文章,其中讨论了设置文本方向的方法,但没有找到任何自动执行此操作的解决方案。
right-to-left - 将文本转换为适当的 RTL 表示
我正在寻找任何有助于将一段文本转换为适当的 RTL 表示的 java 库。
例如,从文件中读取的希伯来语/阿拉伯语文本将采用 LTR 表示,但是在转换后它应该以 RTL 格式显示。
出现这个要求是因为在 html 的情况下,我们可以将 dir 指定为 rtl 或 ltr。然而,当我们想要文本的文本变体或短信变体时,样式表根本不会发挥作用。
html - 在具有 RTL 方向的文本字段中输入数字显示错误的输出
我正在尝试在我的网络应用程序中支持 RTL 方向(用于阿拉伯语)。我的文本字段发生了一件奇怪的事情。当我输入 AAAA BBBB CCCC DDDD 时,我在文本字段中得到了正确的显示,但是当我尝试输入数字时,我得到了一个奇怪的输出。假设我的 html 代码只包含
我的CSS包含
尝试输入
AAAA BBBB CCCC DDDD - 注意输出是正确的。
尝试输入
1111 2222 3333 4444 - 注意文本字段中发生的情况。
我希望有一个人可以帮助我。谢谢!
注意:我不能在其中使用 javascript,因为这是针对移动浏览器的。特别是低端设备。
android - 如何在Android中获取文本方向并根据方向动态更改布局?
我正在研究根据文本方向动态更改 UI 的可行性。尽管 Google 支持 RTL 语言(参考:Android 4.2 中的原生 RTL 支持),但它并未涵盖应用程序混合了 LTR 和 RTL 内容的情况。
如果我们有多语言应用程序并且它具有不同语言的不同静态数据源(例如菜单项),Google 的解决方案是正确的。但是,我没有找到任何其他关于如何根据文本内容的方向动态更改布局的文档。
下图显示了我的测试应用程序的当前设计。列表来自 Facebook(我的朋友列表),包含英文和波斯语名称。
我的解决方案是在适配器中有两种布局(一种用于 LTR,一种用于 RTL),并根据名称的方向分配每种布局。因此,我编写了以下代码行:
结果是:
我根据行是偶数还是奇数来镜像行。现在,我的问题是如何根据名称镜像 UI。我想我应该将条款条件从更改if(position % 2 == 0)
为if(isNameLTR(FIRST_CHAR_OF_NAME))
. 我不知道如何实现这个方法。
我怎么知道一个字符是 LTR 还是 RTL?(我认为 Android 知道单词的第一个字符是 RTL 或 LTR,这就是为什么当文本视图的宽度与父级匹配时,如果字符是 RLT,则将文本向右对齐,如果字符是 LTR,则向左对齐)。
任何建议或意见将不胜感激。谢谢