Arf*_*een 26 ms-word bidi arabic persian direction
我可以在MS Word或Notepad上写阿拉伯语/乌尔都语/波斯语就好了,但每当我插入任何英文单词或数字时,序列就会受到干扰,看起来所有的单词都在句子中被洗牌了.
看下面的例子:
?? ??? ???? ?? ???? ?? ...
Run Code Online (Sandbox Code Playgroud)
现在我插入了一个英文单词,它变为:
?? ??? ???? ??word ???? ?? ...
Run Code Online (Sandbox Code Playgroud)
所以你可以看到几乎所有的单词都被混淆了......解决方法是什么?
小智 14
例如:
باللغةالعربية"keyboard"اناأريدأنأعرفالكلمة
如果您在Microsoft Office或Open Office中工作,可以在"插入"[插入 - >符号 - >其他符号 - > MS 2013中的特殊字符]下找到"特殊字符".滚动浏览直到找到具有相应Unicode编号的字符,如果您的MS Word版本中未出现Unicode编号,请按名称选择它[如上所示].
您也可以通过编写unicode然后选择它并按Alt + X来添加角色 - 但这可能会令人困惑,因为它需要阿拉伯语和英语之间的不断变化.
这个小动作中涉及的所有特殊字符都是隐形字符(它们的工作只是改变文本的方向)所以如果看起来你没有插入任何东西,不要感到惊讶.
当段落的大部分是RTL时,请注意从功能区中选择RTL选项并保持选中[如本答案/sf/answers/3223512001/中的图片所示].
还行吧; 它们没有被洗牌:你在LTR渲染模式下看到它们.
你只需要从右到左制作它们.在记事本或Word中,按右Ctrl + Shift键使其方向从右向左,这样就可以了.(就像<p dir="rtl">...</p>在HTML中一样).
控制字符LRE和RLE(0x202A和0x202B)以及LRM和RLM(0x200E和0x200F)需要应用于整个段落,即它们应该出现在序列的开头.某些平台的某些文本显示小部件可能会丢弃这些控制字符,特别是较旧的(2000之前的)平台或那些不正确支持Unicode双向算法的平台.较新的操作系统和程序应该没问题; 以Windows Notepad为例.
我个人建议使用平台的方法来制作文本RTL,并避免使用特殊控制字符,因为它们是不可见的,如果它们失去控制可能会导致令人惊讶的结果.因此,您最好使用Word的API来生成文本RTL,或者如果您的输出是HTML,则将它们放在<div dir="rtl">...</div>标签中.对于纯文本文件,用户必须自己手动按下Ctrl + Shift键.
在开始输入阿拉伯语/波斯语之前,请确保已选择"从右向左"方向按钮.此按钮可以在AZ排序按钮左侧的段落选项卡上找到.同时选择"右对齐文本"按钮,该按钮可在"对齐"按钮的"段落"选项卡左侧找到.
开始输入您的语言
在放一个英文单词之前放一个空格然后选择左ALT + SHIFT并输入你的英文单词
完成英语单词后,选择右键ALT + SHIFT,然后放一个空格并继续输入您的语言
希望这可以帮助
在“开始”窗格的“段落”部分中选择段落(例如,使用三次单击),然后使用从右到左方向(¶?)的按钮。
正如侯赛因的回答所解释的那样,问题在于该段落中的方向性。当您插入拉丁字母时,它会从左到右更改,您需要手动解决。
编辑:这是作为对这里第一个答案的澄清答案而写的,我后来编辑了第一个答案并添加了我在这里写的重要注释[尽管编辑仍然需要批准]。
我能够按照此处第一个答案中的步骤修复我的文本。如果有人在执行步骤时遇到麻烦,让我澄清一些事情:
如果您在阿拉伯文本中输入英文单词,请确保选择了功能区中的 RTL 选项[下图中以红色圈出]:
无论您使用何种语言,在整个段落中都保持选中状态 [只要段落的大部分内容是用 RTL 语言(如阿拉伯语或希伯来语)编写的]。
在哪里可以找到特殊字符以及如何插入它们:
您可以编写字符的 unicode,然后选择它并按“Alt + X”。但是,这可能有点令人困惑,因为需要在英语和阿拉伯语之间来回更改才能编写代码,因此最好的办法是通过插入他们的姓名“手动”输入它们。
你可以通过插入 -> 符号 -> 更多符号 -> 特殊字符 [向下滚动] 来做到这一点。然后选择您需要使用的字符名称而不是其 unicode。
您需要使用的字符名称 [如此处第一个答案中所指定] 是:
正如第一个答案所说,屏幕上不会出现任何内容,因为它是一个非打印字符,所以如果您在插入时感觉什么也没发生,这是正常的。
如果您需要反过来做,即在英文文本中插入希伯来语或阿拉伯语单词,只需反转 unicodes 的使用——或按照以下链接中的步骤操作:https ://superuser.com/ a/1247476/767967
如果您想了解更多关于特殊字符的作用以及使您的段落 LTR 或 RTL 的含义,请访问以下链接:http : //dotancohen.com/howto/rtl_right_to_left.html#Directionality
您需要在行[^]的开头添加一个不可见的 RLE Unicode 字符。它是: 0x202B 十六进制 = 8235 十进制或从右到左嵌入 (RLE)。这对于记事本来说是必需的,但 MS-Word 可以处理它。您需要正确对齐文本。
如何输入RLE:http://www.fileformat.info/tip/microsoft/enter_unicode.htm
| 归档时间: |
|
| 查看次数: |
60285 次 |
| 最近记录: |