web-dev-qa-db-ja.com

メモ帳またはMS Wordでアラビア語/ウルドゥー語/ペルシャ語のテキストに英語の単語を挿入すると、単語がシャッフルされるのはなぜですか?

MS Wordまたはメモ帳でアラビア語/ウルドゥー語/ペルシャ語を問題なく書くことができますが、英語の単語や数字を挿入すると、シーケンスが乱れ、文中のすべての単語がシャッフルされたように見えます。

以下の例を見てください:

یہ ایک مثال ہے اردو کی ...

今、私は英語の単語を挿入し、次のようになりました:

 یہ ایک مثال ہےWord  اردو کی ...

だから、ほとんどすべての単語がごちゃごちゃになっているのを見ることができます...その解決策は何ですか?

26
Arfeen

例えば:

باللغةالعربية“キーボード”اناأريدأنأعرفالكلمة

  1. アラビア語の入力を終了し、その後にスペースを追加します(このスペースにより、埋め込みテキストとアラビア語のテキストが右側に分離されます)。
  2. 特殊文字U + 200Fを挿入します(前のスペースをアラビア文字にします)。キャラクター名は「右から左のマーク」です。
  3. 特殊文字U + 202Aを挿入します(左から右への埋め込みを開始します)。キャラクター名は「左から右への埋め込み」です。
  4. 別のスペースを挿入します(埋め込まれたテキストを、その左側に続くアラビア語のテキストから分離します)。
  5. キーボードを変更します英語で、左から右の単語を入力します。
  6. 特殊文字U + 202Cを挿入します(双方向補正の状態を、左から右への埋め込み前の状態に戻します)。キャラクター名は「ポップ方向フォーマット」です。
  7. キーボードを元に戻し、アラビア語で書き続けます。

Microsoft OfficeまたはOpen Officeで作業している場合、「特殊文字」は「挿入」の下にあります[挿入->記号->他の記号-> MS 2013の特殊文字]。適切なUnicode番号の文字が見つかるまでスクロールし、使用しているバージョンのMS WordにUnicode番号が表示されない場合は、名前で選択します(上記を参照)。

また、ユニコードを記述して選択し、Alt + Xを押すことで文字を追加することもできますが、アラビア語と英語の間で絶えず変更する必要があるため、混乱を招く可能性があります。

この小さな操作に関係する特殊文字はすべて目に見えない文字であるため(テキストの向きを変えるだけです)、何も挿入していないように見えても驚かないでください。

段落の大部分がRTLの場合、リボンからRTLオプションを選択し、選択したままにしてください[この回答の図に示すように https://stackoverflow.com/a/46050171/8558867 =]。

13

これはOKです;シャッフルされていません。LTRレンダリングモードで表示されています。

あなたはそれらを右から左にするだけです。メモ帳またはWordで、右Ctrl + Shiftを押して方向を右から左にします。これで問題ありません。 (それは<p dir="rtl">...</p>のHTML)。

制御文字LREとRLE(0x202Aと0x202B)およびLRMとRLM(0x200Eと0x200F)は、段落全体に適用する必要があります。つまり、シーケンスの先頭に来る必要があります。一部のプラットフォームの一部のテキスト表示ウィジェットでは、特に古い(2000年以前)プラットフォームやUnicode双方向アルゴリズムを正しくサポートしていないプラットフォームでは、これらの制御文字が破棄される場合があります。新しいOSとプログラムは問題ないはずです。たとえば、Windowsのメモ帳で試してください。

プラットフォームの手段を使用してテキストRTLを作成することを個人的にお勧めします。特殊な制御文字は目に見えず、制御不能になると驚くような結果を招く可能性があるため、特殊な制御文字を避けます。したがって、WordのAPIを使用してテキストRTLを作成するか、出力がHTMLの場合は<div dir="rtl">...</div>タグ。プレーンテキストファイルの場合、ユーザーは手動でCtrl + Shiftキーを押す必要があります。

7
Hossein
  1. アラビア語/ペルシャ語で入力を開始する前に、「右から左方向」ボタンが選択されていることを確認してください。このボタンは、AZソートボタンのすぐ左側の[段落]タブにあります。また、「揃える」ボタンの「段落」タブの左側にある「テキストを右に揃える」ボタンを選択します。

  2. 言語の入力を開始します

  3. 英語の単語を入力する前にスペースを入れてから、左のALT + SHIFTを選択して英語の単語を入力します

  4. 英語の単語が終わったら、正しいALT + SHIFTを選択してからスペースを入れて、もう一度言語を入力し続けます

お役に立てれば

7
Abbas

段落を選択し(たとえば、トリプルクリックを使用)、[開始]ウィンドウの[段落]セクションで右から左の方向のボタン(¶◀)を使用します。

ホセインの答えが説明しているように、問題はパラグラフの方向性です。ラテン文字を挿入すると左から右に変化するため、これを手動で修正する必要があります。

4

編集:これは、最初の回答に対する明確な回答として書かれたものです。後で最初の回答を編集し、ここに書いた重要なメモを追加しました[編集はまだ承認が必要です]。


ここで最初の回答の手順に従うことで、テキストを修正することができました。手順を実行中に誰かが問題に直面した場合に備えて、いくつかのことを明確にしましょう。

アラビア語のテキストで英語の単語を入力する場合は、リボンの[RTL]オプションが選択されていることを確認してください[次の図の赤で囲まれた部分]:

screenshot

使用している言語に関係なく、段落全体で選択したままにします(段落の大部分がアラビア語やヘブライ語などのRTL言語で書かれている限り)。

特殊文字の検索場所とそれらの挿入方法:

あなたはキャラクターのユニコードを書き、それを選択して「Alt + X」を押すことができます。ただし、コードを書くために英語とアラビア語の間を行き来する必要があるため、これは少し混乱する可能性があります。そのため、最善の方法は、名前を挿入して「手動」で入力することです。

それには、[挿入]-> [シンボル]-> [その他のシンボル]-> [特殊文字[スクロールダウン]]を選択します。次に、ユニコードの代わりに使用する必要がある文字の名前を選択します。

使用する必要があるキャラクターの名前は、[最初の回答で指定されているとおり]です。

  • 「右から左のマーク」:U + 200F。
  • 「左から右への埋め込み」:U + 202A。
  • 「Pop Directional Formatting」:U + 202C。

最初の答えが示すように、それは非印刷文字であるため画面には何も表示されません。したがって、挿入しても何も起こらないと感じた場合は正常です。

逆に、つまり英語のテキストにヘブライ語またはアラビア語の単語を挿入する必要がある場合は、ユニコードの使用を逆にするか、次のリンクの手順に従ってください: https:// superuser.com/a/1247476/767967

特殊文字の機能と、段落LTRまたはRTLを作成することの意味について詳しく知りたい場合は、次のリンクにアクセスしてください。 http://dotancohen.com/howto/rtl_right_to_left.html#Directionality =

3
Ghadir

行の先頭に非表示のRLE Unicode文字を追加する必要があります [^] 。 0x202B hex = 8235 decimalまたはRIGHT-TO-LEFT EMBEDDING(RLE)です。メモ帳には必要ですが、MS-Wordで処理できます。テキストを正しく配置する必要があります。

RLEの入力方法: http://www.fileformat.info/tip/Microsoft/enter_unicode.htm

2
VahidN

ワードプロセッシングでは、左から右または右から左(または上から下、ただし無視してみましょう)のいずれかであるメインテキスト方向があり、個々の文字のテキスト方向があります。また、左から右または右から左になります。

ワープロは、テキストを同じ文字順序の文字列のチャンクに分割し、メインのテキスト順序に従ってこれらのチャンクを表示します。

メインテキストの順序は左から右のようです。すべてのテキストがアラビア語である限り、アラビア語のテキストを含むチャンクは1つだけです。テキストの順序は左から右であるため、すでに右揃えではなく左揃えで表示されています。文字はアラビア語が表示される方法であるため、右から左に表示されます。

ラテン文字を挿入すると、アラビア語、ラテン語、アラビア語の3つのチャンクがありました。これらの3つのチャンクは、メインテキストの順序であるため、左から右に表示されます。ほとんどがラテン語のテキスト(「犬と牛のアラビア語は...と...」など)には適しています。時々ラテン語でアラビア語のテキストの場合、メインのテキストの順序を「右から左」に変更する必要があります。

0
gnasher729

これに従うだけです:

  • アラビア語のテキストをコピーして、WordまたはテキストドキュメントからAdobe Illustratorに貼り付けます。
  • イラストレーター文書を.EPS形式で保存します。
  • Indesignを開き、.EPSドキュメントを目的の場所に配置します。

Indesignはアラビア語のテキストの問題を自分で処理できないため、この方法は多くのデザイナーに役立ちます。

0