<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> 
<dfn>complex script(s)</dfn> は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OpenType</anchor> にとって複雑な処理を必要とする<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">用字系</anchor>です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アラビア文字</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インド系文字</anchor>などが該当するようです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> 
使ってる当事者がどう思ってるのかは知りませんが、
欧米の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IT技術者</anchor>は複雑だと思って<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">この名前で呼んでいる<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">欧米中心主義</title></anchor>のではないでしょうか。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アーキテクチャー</anchor>に基づく<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">計算機処理</anchor>の観点の複雑さをみているので、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>として、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">言語</anchor>としての複雑さや<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ネイティブ</anchor>の認知の「複雑」さとは必ずしも一致していません。
例えば<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日本人</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">仮名</anchor>が単純、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">漢字</anchor>を複雑と思っている人が多そうですが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">complex script</anchor> に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CJK</anchor> は含まれていなそうです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">現代ハングル</anchor>も <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">complex script</anchor> には含まれていないようなのですが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">古ハングル</anchor>は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">complex script</anchor> の実装である <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Uniscribe</anchor> の対象に入っています。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">現代ハングル</anchor>に1音節1<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号位置</anchor>が与えられていて<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字のレンダリング</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字コード</anchor>に対応する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">フォント</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">グリフ</anchor>をただ表示するだけで簡単なのですが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">古ハングル</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ハングル字母</anchor>ごとの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号位置</anchor>の組み合わせで1音節を表すしかないので、
比較的複雑な処理になります。
この差は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>の性質の違いでは説明できなくて、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> の構造から生じたものでしかありません。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">漢字</anchor>も<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">部分字形</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">合成</anchor>で表現する技術 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">デジタル</anchor>版<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">分合活字</anchor>)
は未だに実用化されていない (というか見込みがなく諦めてしまった) のですが、そちらが採用されていた<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">世界線</anchor>では紛うことなき
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">complex script</anchor> のはず。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> 
実は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ラテン文字</anchor>にも複雑な処理を必要とするものがあるのですが、
なぜか<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">基底文字</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結合文字</anchor>の組み合わせではなく合成済み文字として <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor>
に追加されているので、 「complex」ではないことになっています。
<sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <anchor>ラテン文字</anchor> </sw-see></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> 経済的植民地主義の視点からの批判:</p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> 
本来はただの別の書記体系であって、劣っているわけでも特殊でもない。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> 
しかし技術仕様を支配した側(欧米IT産業)が、自分たちにとって理解しやすい形を「シンプル」とし、それに適合しないものを「複雑」「特殊」「legacy」と呼んでしまう。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> 
これはまさに、<ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> 
近代植民地主義が現地の言語や文化を「未発達」「原始的」と決めつけ、</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> 
自国の制度や基準を「普遍的」「先進的」として押し付けた構図と同じ。</li></ul></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> 
欧米人にとって理解・実装しやすい文字(ラテン、ギリシャ、キリル)を標準・シンプルとみなし、
それに比べて多層的な母音記号や複合子音を持つ文字を「複雑」と呼ぶのは、すでに価値基準が偏っている。</li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> 
こういう問題があるので、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">complex script</anchor> という用語、分類法それ自体が偏見に満ち差別的であるともいわれます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> 
ただ事実として今や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OpenType</anchor> は世界中で不可避な技術基盤で、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OpenType</anchor> に於いて難しい、
複雑であることはもはや一般の技術者にはどうしようもないので、
複雑 (complex) と表現するしかないつらみはあります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> 利用例:</p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <cite xml:lang="ja-jp">OpenType development (LEGACY INFORMATION) - Typography | <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Microsoft</anchor> Docs</cite>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">nihar</anchor>, <time>2022-08-27T07:27:20.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://docs.microsoft.com/ja-jp/typography/develop/otdevinfo">https://docs.microsoft.com/ja-jp/typography/develop/otdevinfo</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <cite xml:lang="ja-jp">OpenType glyph processing (part 1) - Typography | <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Microsoft</anchor> Docs</cite>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">alib-ms</anchor>, <time>2022-08-27T07:55:01.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://docs.microsoft.com/ja-jp/typography/develop/processing-part1#uniscribe">https://docs.microsoft.com/ja-jp/typography/develop/processing-part1#uniscribe</anchor-external></li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite>23107-terminal-suppt.pdf</cite>, <time>2023-04-24T14:18:11.000Z</time>, <time>2023-06-16T10:53:15.493Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://www.unicode.org/L2/L2023/23107-terminal-suppt.pdf">https://www.unicode.org/L2/L2023/23107-terminal-suppt.pdf</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite>What Is Complex Text?</cite>, <time>2023-08-05T13:50:28.000Z</time>, <time>2002-02-13T05:31:50.369Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://web.archive.org/web/20020213053134/http://www.m17n.org/m17n2000_all_but_registration/proceedings/felt/sld003.htm">https://web.archive.org/web/20020213053134/http://www.m17n.org/m17n2000_all_but_registration/proceedings/felt/sld003.htm</anchor-external></p><p>complex text</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite xml:lang="ja">IRGN2578OrganicChemical.pdf</cite>, <time>2022-10-13T22:40:25.000Z</time>, <time>2024-04-27T08:18:42.698Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://appsrv.cse.cuhk.edu.hk/~irg/irg/irg59/IRGN2578OrganicChemical.pdf#page=2">https://appsrv.cse.cuhk.edu.hk/~irg/irg/irg59/IRGN2578OrganicChemical.pdf#page=2</anchor-external></p><p>complex script vs simple script</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> 
<cite xml:lang="ja-jp">GPOS — Glyph Positioning Table (OpenType 1.9.1) - Typography | Microsoft Learn</cite>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PeterCon</anchor>, <time>2024-05-31T17:42:24.000Z</time>, <time>2024-12-04T07:57:52.173Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://learn.microsoft.com/ja-jp/typography/opentype/spec/gpos">https://learn.microsoft.com/ja-jp/typography/opentype/spec/gpos</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> 
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;14</anchor-internal> には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">越南語</anchor>で使う<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ラテン文字</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイアクリティカルマーク</anchor>の配置が
complex glyph positioning
の事例として紹介されています。これが実現する前に比べれば complex ですが、
いわゆる  complex script に比べるとずっと単純なものです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> 
まあ <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;15</anchor-internal> の場合実際比較的 complex であるのは確かですし、
complex なのは glyph positioning という技術であって script 
には言及していないので、 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;15</anchor-internal> のような表現は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">政治的正しさ</anchor>的にも無問題なんですよね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <cite xml:lang="fr">&lt;FONT FACE&gt; réputé nuisible</cite>, <time>2025-06-16T14:25:10.000Z</time>, <time>1999-02-21T10:58:46.044Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://web.archive.org/web/19990221105800/http://babel.alis.com:8080/web_ml/html/fontface.html">https://web.archive.org/web/19990221105800/http://babel.alis.com:8080/web_ml/html/fontface.html</anchor-external></p><p>Écritures complexes, écriture complexe </p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;17</anchor-internal> 平成11年には既にこの概念が使われていた。<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">中国語</anchor>も他バイトだけど複雑ではない。
複雑なのは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アラビア文字</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インド系文字</anchor>。</p><hr></hr><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">南アジア</anchor>などでは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor>普及前は素朴な<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">8ビット符号</anchor>などを使っていました。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> / <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OpenType</anchor> の概念でいえば<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">グリフ</anchor>の列に近い存在です。
そのためそれらから <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> への<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">変換<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">文字コードの変換</title></anchor>は、
いわば <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode文字</anchor>から<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">グリフ</anchor>への変換 (= <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unicode</anchor> / <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OpenType</anchor>
の世界でいう complex な処理) の逆変換のようになるため、
かなり「複雑」な処理になってしまいます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> 関連: <code>.map</code></p><hr></hr><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> 
関連:
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インド系文字の文字コード</anchor>,
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ビルマ文字の文字コード</anchor></p></body></html>