Apa persyaratan mutlak, minimal untuk berisi rangkaian karakter Asia Tenggara untuk proyek sistem tertanam?

14

Saya bekerja untuk perusahaan yang telah mulai mengintegrasikan sistem komputer tertanam ke dalam produk kami yang kami produksi. Kami memiliki berbagai macam produk dan didistribusikan di seluruh dunia. Selain itu, kami telah merancang beberapa papan terintegrasi yang dapat melayani berbagai keperluan tergantung pada firmware yang telah di-flash ke sistem. Dengan cara ini kita tidak perlu mendesain ulang perangkat keras komputer kita untuk berbagai produk kita - yang harus kita lakukan adalah menulis ulang lapisan firmware untuk memenuhi kebutuhan produk tertentu.

Karena keterbatasan perangkat keras ini, mengubah perangkat keras kami memerlukan tindakan kongres tetapi menulis perangkat lunak baru jauh lebih sederhana.

Salah satu produk kami memiliki persyaratan baru yang belum harus kami terapkan sebelumnya, yaitu kebutuhan akan teks yang dimasukkan pengguna.

Saat ini, kami dapat menyimpan teks internasional dalam sumber daya dan hanya karakter font yang diperlukan dikompilasi ke gambar yang dipetakan sedikit. Ini berarti bahwa kami telah dapat menyimpan bahasa yang sangat ideografis seperti teks Cina dan Jepang dalam ruang minimal karena kami hanya menggunakan persentase yang sangat kecil dari seluruh rangkaian bahasa.

Karena produk baru ini mengharuskan pengguna kami memasukkan teks, kami harus mengimplementasikan rangkaian karakter yang luas. Sebagai pengembang PC, saya cukup akrab dengan ASCII, Unicode, UTF-8, dll. Namun, mengimplementasikan rangkaian karakter lengkap dari bahasa-bahasa ini tidak layak karena kami memiliki jumlah FRAM terbatas di papan tulis untuk menyimpan data font.

Manajemen saya berharap ada set karakter minimal yang dapat digunakan untuk bahasa yang sangat ideografis. Saya percaya ada alfabet fonetik untuk bahasa Jepang (Hiragana?) Apakah ada huruf fonetis yang serupa untuk bahasa Cina, Korea, Vietnam, dll. Dan, jika demikian, dapatkah penutur bahasa-bahasa ini berkomunikasi dengan rangkaian karakter yang begitu sempit? Saya cukup yakin jawaban untuk pertanyaan itu adalah "benar-benar, tidak" tetapi itu adalah pertanyaan yang pantas ditanyakan.

Manajemen telah menetapkan persyaratan "lunak" bahwa kami hanya dapat memiliki rangkaian karakter terbatas sekitar 8.000 karakter yang mencakup semua bahasa utama yang umum digunakan. Jika ini tidak memungkinkan, kita perlu mencari beberapa bentuk metode alternatif untuk memenuhi kebutuhan kita berdasarkan sumber daya perangkat keras kita yang terbatas.

Saya yakin masalah ini harus dipecahkan sebelumnya. Apakah ada yang punya pengalaman bekerja dalam kendala seperti itu sambil membutuhkan font yang luas dan sistem pengkodean karakter? Jika demikian, nugget kebijaksanaan apa yang dapat Anda tawarkan?

RLH
sumber
Baik Korea maupun Jepang bukan bagian dari Asia Tenggara. Mereka milik E Asia. Tentu saja jika Anda maksud S, SE dan E Asia, silakan tulis begitu.
lalala

Jawaban:

25

Ini adalah pertanyaan yang sangat bagus.

Untuk menangani jawaban Anda satu bahasa pada satu waktu;

Orang Vietnam

Bahasa Vietnam tidak lagi menggunakan karakter ideografis, tetapi bahasa Latinnya cukup luas: lihat contoh untuk melihat berapa banyak diakritik yang digunakannya:

Tiệng Việt, hay Việt ngữ, là ngôn ngữ cưa Viư (ngđ Kini Kinh) dan lain-lain di ch )nh thức tại Việt Nam. Apakah Anda tahu 85% dari 85% Nam, sekitar satu tahun lalu, hanya satu bulan, maka Anda akan dapat kembali. Tiệng Việt còn là ngôn ngữ thứ hai của các do dai thiểu số tại Việt Nam.

Alasannya adalah bahwa setiap suku kata Vietnam memiliki satu dari enam tanda nada yang berdampak mengucapkan - selain memiliki satu mesin terbang konsonan non-standar dan enam vokal non-standar.

Unicode membuat tanda nada di atas vokal; jika Anda memiliki kemampuan untuk menyusun mesin terbang, Anda hanya perlu 13 mesin terbang tambahan untuk bahasa Vietnam, tetapi jika tidak, Anda akan memerlukan 1 konsonan ekstra + 12 vokal * 6 nada + 6 vokal baru tanpa nada = 79 mesin terbang tambahan , dalam huruf kecil dan huruf besar.

Korea

Bahasa Korea adalah berita buruk. Bahasa Korea ditulis melalui alfabet yang disebut Hangul , yang, sementara secara teknis menjadi alfabet hanya 68 huruf (disebut jamo), sebenarnya ditulis dalam blok berukuran suku kata, dibangun dari jamo.

Contoh tampilan teks Korea:

한글 또는 조선 글 은 한국어 의 고유 문자 로서, 1443 년 조선 제 4 대 임금 세종 이 이 (訓 民 正音) 이라는 이름 으로 창제 하여 46 1446 년 에 반포 하였다. 이후 한문 을 고수 하는 사대부 들 에게는 경시 되기도 하였으나, 조선 왕실 과 일부 양반층 서민층 서민층 으로 어 어 어 어 1894 년 갑오 에서 한국 의 공식적인 공식적인 한국 되었고, 1910 년대 에 르러 라는 이 이 이 이 이름 을 사용 하였다.

Unicode memiliki 11.172 karakter blok yang selesai - tetapi jika Anda bersedia untuk membuat kode logika sendiri untuk membuat "blok" akhir, Anda dapat menghemat set karakter dengan hebat.

Pada dasarnya, semua suku kata dapat dibagi menjadi dua kategori - konsonan + vokal dan konsonan + vokal + final, di mana final dapat berupa vokal, konsonan atau gabungan. Suku kata CV dibangun dengan C di kiri dan V di kanan; Konsonan CVF disusun dengan blok CV di atas (kiri-ke-kanan), dan final di bawah.

Jadi, pada dasarnya, Anda perlu:

  • 19 inisial, dalam dua bentuk
  • 21 medial, dalam dua bentuk
  • 28 final

untuk total 108 simbol . (Saya tidak benar-benar yakin tidak ada "pengikat" di Korea, sehingga kadang-kadang blok yang dikonstruksi terlihat berbeda dari kombinasi komponen, tetapi itulah yang terbaik yang akan kita dapatkan untuk saat ini).

Jepang

Seperti yang Anda perhatikan dengan benar, bahasa Jepang memiliki alfabet fonetik - tetapi sebenarnya, bukan hanya satu, tetapi dua! Hiragana dan Katakana adalah suku kata, keduanya dengan 48 suku kata yang sama, tetapi digunakan dalam konteks yang berbeda (katakana digunakan untuk kata-kata asing, hiragana digunakan untuk tata bahasa).

Sedihnya (untuk tujuan kita), bahasa Jepang hampir tidak mungkin untuk sepenuhnya ditulis hanya menggunakan dua huruf ini - karakter Cina, atau kanji , sebagaimana mereka dikenal dalam konteks ini, sangat penting untuk teks bahasa Jepang.

Contoh penulisan wajib:

仮 名 (な) と は は 、 漢字 漢字 を を 字 字 字 字 字 字 字 字 字 字 字 字 字 字 字 字 字 字 字 の の の の の の の の の の の の の の の の の の の の の の の字 ら わ す 字 字 字 字 字 分類 さ れ る。 に 対 対 対 和 和 わ じ じ じ) も も も も 言 た 和 和 字 字 は 意味 す す も。。。。。。。

Selain kanji, Anda akan membutuhkan 103 mesin terbang untuk memetakan dua huruf fonetis + 7 kanji umum yang tidak ada dalam bahasa Cina.

Tanda Baca CKJ

Bukan ahli dalam hal ini, tetapi baik Cina dan Jepang menggunakan tanda baca klasik Asia Timur. Unicode memiliki 64 simbol yang didedikasikan untuk tanda baca dan simbol CJK.

Cina

Jadi, kami memiliki 7631 karakter yang tersisa di "anggaran" kami. Apakah itu cukup untuk menutupi karakter Cina?

漢字 為 上古 時代 的 華夏族 人 所 發明 創製 並 作 改進 , 目前 确切 歷史 可 追溯 至 公元前 1300 年 甲骨 的 甲骨文 、 、 、 金。。。。 再到 小篆 小篆 發展 , 發展 漢朝 變 ,至 唐代 楷 化為 今日 所 手寫 的 手寫 字體 標準 —— 正楷。 汉字 是 迄今为止 连续 时 最长间 最长 的 时 文主要 , 也是 上古 时期 各大 文字 体系 中 唯一 传承 至今 的 文字 , 期間 東亞 都 有 一体系創製 漢字。

Dengan lebih dari 100.000 karakter yang ada, pada dasarnya tidak mungkin untuk sepenuhnya menutupi karakter Cina, subset yang digunakan secara aktif jauh lebih kecil. 2000-3000 karakter dikatakan cukup untuk literasi umum (HSK, tes TOEFL seperti Mandarin Cina, membutuhkan pengetahuan 2800 karakter untuk level tertinggi, HSK Advanced), 4000-5000 karakter cukup untuk orang yang berpendidikan.

Perlu diingat bahwa ada karakter Sederhana dan Tradisional (yang pertama digunakan di RRC, terakhir - di Taiwan), yang berbeda untuk banyak karakter, sisa 7600 simbol, saya katakan, akan cukup untuk menutupi sebagian besar kasus penggunaan untuk kedua karakter.

Jangan ragu untuk bertanya jika Anda memiliki pertanyaan!

Ivan Cherevko
sumber
5
Wow. Itu sangat mungkin jawaban terbaik yang pernah saya terima untuk setiap pertanyaan yang saya posting di SO. Saya memodifikasi pertanyaan ini sebelumnya hari ini karena dibiarkan luar biasa. Persyaratan kami sedikit berubah tetapi saya juga tahu sifat produk kami dan saya memperkirakan ini menjadi kebutuhan di masa depan pada waktu yang tidak diketahui. Anda mendapatkan +1 dan menjawab suara. Saya berharap saya bisa memberi Anda lebih banyak poin dari itu juga. Terima kasih 1.000.000!
RLH
Tidak ada cinta untuk Thailand?
lalala