Was ist die absolute Mindestanforderung, um SE Asian-Zeichensätze für ein Embedded-System-Projekt zu enthalten?

14

Ich arbeite für ein Unternehmen, das begonnen hat, eingebettete Computersysteme in unsere von uns hergestellten Produkte zu integrieren. Wir haben eine ziemlich große Auswahl an Produkten, die auf der ganzen Welt vertrieben werden. Darüber hinaus haben wir einige integrierte Karten entwickelt, die je nach Firmware, die auf das System geflasht wurde, mehreren Zwecken dienen können. Auf diese Weise müssen wir unsere Computerhardware für unsere verschiedenen Produkte nicht neu entwerfen. Wir müssen lediglich die Firmware-Schicht neu schreiben, um die spezifischen Anforderungen des Produkts zu erfüllen.

Aufgrund dieser Hardwarebeschränkungen ist das Ändern unserer Hardware ein Akt des Kongresses, das Schreiben neuer Software ist jedoch viel einfacher.

Eines unserer Produkte hat eine neue Anforderung, die wir zuvor nicht implementieren mussten, nämlich die Notwendigkeit für vom Benutzer eingegebenen Text.

Derzeit können wir internationalen Text in Ressourcen speichern und nur die erforderlichen Schriftzeichen werden zu Bitmap-Bildern kompiliert. Dies bedeutet, dass wir in der Lage waren, hochideografische Sprachen wie chinesischen und japanischen Text auf kleinstem Raum zu speichern, da wir nur einen sehr kleinen Prozentsatz des gesamten Sprachensatzes verwenden.

Da für dieses neue Produkt die Eingabe von Text durch unsere Benutzer erforderlich ist, müssen wir einen umfangreichen Zeichensatz implementieren. Als vorwiegend PC-Entwickler bin ich mit ASCII, Unicode, UTF-8 usw. vertraut. Die Implementierung eines vollständigen Zeichensatzes für eine dieser Sprachen ist jedoch nicht möglich, da nur eine begrenzte Anzahl von FRAMs auf dem Board vorhanden ist um die Schriftdaten zu speichern.

Mein Management hofft, dass es einen minimalen Zeichensatz gibt, der für stark ideografische Sprachen verwendet werden kann. Ich glaube, es gibt ein phonetisches Alphabet für Japanisch (das Hiragana?). Gibt es ähnliche phonetische Alphabete auch für Chinesisch, Koreanisch, Vietnamesisch usw. Und wenn ja, könnten Sprecher dieser Sprachen mit einem so engen Zeichensatz kommunizieren? Ich bin mir ziemlich sicher, dass die Antwort auf diese Frage "absolut nein" lautet, aber es ist eine Frage, die es wert ist, gestellt zu werden.

Das Management hat die "weiche" Anforderung aufgestellt, dass wir nur einen begrenzten Zeichensatz von ca. 8.000 Zeichen haben können, der alle gängigen Sprachen abdeckt. Wenn dies nicht möglich ist, müssen wir nach einer alternativen Methode suchen, um unsere Anforderungen basierend auf unseren begrenzten Hardwareressourcen zu erfüllen.

Ich bin sicher, dass dieses Problem zuvor gelöst werden musste. Hat jemand Erfahrung mit solchen Einschränkungen, wenn er ein umfangreiches System zur Schriftart- und Zeichenkodierung benötigt? Wenn ja, welche Nuggets von Weisheit können Sie anbieten?

RLH
quelle
Weder Korea noch Japan gehören zu Südostasien. Sie gehören zu E Asia. Natürlich, wenn Sie S, SE und E Asia meinen, schreiben Sie es bitte.
Lalala

Antworten:

25

Dies ist eine ausgezeichnete Frage.

Um Ihre Antwort in einer Sprache zu beantworten;

Vietnamesisch

Vietnamesisch verwendet keine ideografischen Zeichen mehr, aber seine lateinische Menge ist ziemlich breit: Sehen Sie sich das Beispiel an, um zu sehen, wie viele diakritische Zeichen es verwendet:

Tiếng Việt, hay Việt ngữ, là ngôn ngữ cữa người Việt (người Kinh) và là ngôn ngữ chính thức tại Việt Nam. Đây là tiếng mẹ ẹ cđẻa khoảng 85% dân cư t nam, cùng với gần ba triệu người việt hải ngoại, mà phần lớn là người mỹgỹc việt. Ich kann nicht sagen, dass ich diesen Namen nicht sagen kann.

Der Grund dafür ist, dass jede Vietnames-Silbe eine von sechs Tonmarkierungen hat, die sich auf die Aussprache auswirken - zusätzlich zu einem Nicht-Standard-Konsonanten-Glyphen und sechs Nicht-Standard-Vokalen.

Unicode setzt Tonzeichen über Vokalen. Wenn Sie in der Lage sind, Glyphen zu komponieren, benötigen Sie nur 13 zusätzliche Glyphen für Vietnamesen. Wenn nicht, benötigen Sie 1 zusätzlichen Konsonanten + 12 Vokale * 6 Töne + 6 neue Vokale ohne Ton = 79 zusätzliche Glyphen , in Absenkung und Großbuchstaben.

Koreanisch

Koreanisch ist eine schlechte Nachricht. Koreanisch wird durch ein Alphabet namens Hangul geschrieben , das zwar technisch gesehen ein Alphabet mit nur 68 Buchstaben ist (genannt Jamo), aber tatsächlich in silbengroßen Blöcken geschrieben ist, die aus Jamo konstruiert sind.

Ein Beispiel, wie koreanischer Text aussieht:

하였다 43 또는 조선 글 하였다 하였다 하였다 문자, 1443 년 제 제 (제 訓 民) 하였다 이름 하였다 하여 1446 년 년 에 반포. 이라는 이후 한문 을 하는 이라는 이라는 이라는 이라는 하였으나 이라는 이라는 이라는 이라는 이라는 지다가 지다가 지다가 지다가 지다가 지다가 지다가 지다가 지다가 지다가 지다가 지다가 지다가 이라는 이라는 이라는 이라는 이라는 이라는 이라는 이라는 이라는 이라는 이름 이름 사용 사용.

Unicode verfügt über 11.172 vollständige Blockzeichen. Wenn Sie jedoch bereit sind, die Logik zum Erstellen der endgültigen „Blöcke“ selbst zu codieren, können Sie den Zeichensatz erheblich einsparen.

Grundsätzlich können alle Silben in zwei Kategorien unterteilt werden - Konsonant + Vokal und Konsonant + Vokal + Finale, wobei Finale ein Vokal, ein Konsonant oder ein Komposit sein kann. CV-Silben werden mit C links und V rechts konstruiert. CVF-Konsonanten werden mit dem CV-Block oben (von links nach rechts) und dem Endblock unten zusammengesetzt.

Grundsätzlich benötigen Sie also:

  • 19 Initialen in zwei Formen
  • 21 medials, in zwei formen
  • 28 Endspiele

für insgesamt 108 Symbole . (Ich bin mir nicht ganz sicher, ob es auf Koreanisch keine „Ligaturen“ gibt, so dass ein konstruierter Block manchmal anders aussieht als die Kombination von Komponenten, aber das ist das Beste, was wir vorerst bekommen werden.)

japanisch

Wie Sie richtig bemerkt haben, hat Japanisch ein phonetisches Alphabet - aber eigentlich nicht nur eines, sondern zwei! Hiragana und Katakana sind Silben mit jeweils 48 gleichen Silben, die jedoch in unterschiedlichen Zusammenhängen verwendet werden (Katakana wird für Fremdwörter verwendet, Hiragana für Grammatik).

Leider ist es (für unsere Zwecke) fast unmöglich, Japanisch vollständig mit diesen beiden Buchstaben zu schreiben - chinesische Schriftzeichen oder Kanji , wie sie in diesem Zusammenhang genannt werden, sind für jeden japanischen Text unerlässlich.

Obligatorisches Schreibbeispiel:

仮 名 (が が に を が 的 的 が に を を を が が 的 的 に に 1あ ら わ 音節 文字 に 分類 て 和 字 (わ あ る す 言 う う 事 も あ る す る る る 事 事 も る

Neben Kanji benötigen Sie 103 Glyphen , um zwei phonetische Alphabete + 7 gebräuchliche Kanji abzubilden, die es auf Chinesisch nicht gibt.

CKJ-Interpunktion

Dies ist kein Experte, aber sowohl Chinesen als auch Japaner verwenden klassische ostasiatische Interpunktion. Unicode verfügt über 64 Symbole für CJK-Interpunktion und -Symbole.

Chinesisch

Wir haben also noch 7631 Zeichen in unserem „Budget“. Wird es ausreichen, chinesische Schriftzeichen abzudecken?

公元前 公元前 為 的 的 的 的 所 創製 並 公元前 公元前 公元前 公元前 公元前 公元前 公元前 公元前 公元前 公元前 公元前 公元前 公元前自行 至 自行 自行 自行 自行 的 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行 自行創製 創製 漢字

Mit über 100.000 existierenden Zeichen ist es im Wesentlichen unmöglich, den chinesischen Zeichensatz vollständig abzudecken, die aktiv verwendete Teilmenge ist viel kleiner. 2000-3000 Zeichen sollen für die allgemeine Alphabetisierung ausreichen (HSK, TOEFL-ähnlicher Test für Mandarin-Chinesisch, erfordert Kenntnisse von 2800 Zeichen für die höchste Stufe, HSK Advanced), 4000-5000 Zeichen reichen für eine gebildete Person.

Wenn man bedenkt, dass es vereinfachte und traditionelle Zeichen gibt (erstere werden in der VR China verwendet, letztere - in Taiwan), die sich für viele Zeichen unterscheiden, würden die restlichen 7600 Symbole ausreichen , um die meisten Anwendungsfälle abzudecken beide Zeichensätze.

Fühlen Sie sich frei zu fragen, wenn Sie Fragen haben!

Ivan Cherevko
quelle
5
Beeindruckend. Das ist wahrscheinlich die beste Antwort, die ich jemals auf Fragen erhalten habe, die ich auf SO gepostet habe. Ich habe diese Frage heute früher geändert, weil sie noch offen war. Unsere Anforderungen haben sich leicht geändert, aber ich kenne auch die Beschaffenheit unserer Produkte und sehe voraus, dass dies in Zukunft zu einem unbekannten Zeitpunkt erforderlich sein wird. Sie erhalten die +1 und antworten abstimmen. Ich wünschte, ich könnte Ihnen auch mehr Punkte geben. Vielen Dank, 1.000.000!
RLH
Keine Liebe zu Thai?
Lalala