Bagikan melalui


Pemrosesan Skrip Kompleks

Berikut ini adalah opsi untuk tampilan dan pemrosesan teks terkait untuk mendukung efek tipografi halus atau skrip kompleks:

  • Fungsi teks
  • Kontrol pengeditan
  • Kontrol edit yang kaya
  • Uniscribe

Opsi yang Anda pilih bergantung pada faktor-faktor berikut:

  • Jenis teks atau skrip.
  • Model implementasi, misalnya, tata letak teks dan penanganan pemecahan baris oleh aplikasi.
  • Pembaruan aplikasi yang ada versus pembuatan aplikasi baru.

Secara umum, aplikasi yang melakukan pemrosesan skrip yang relatif sederhana dapat memilih opsi apa pun untuk memproses skrip yang kompleks. Namun, untuk kontrol paling lengkap dari pemrosesan skrip yang kompleks, Uniscribe direkomendasikan.

Pemrosesan Skrip Kompleks Menggunakan Fungsi Teks

Aplikasi yang menggunakan sebagian besar teks biasa, yaitu teks yang menggunakan typeface yang sama, bobot, warna, dan sebagainya, memiliki teks yang ditulis secara tradisional dan panjang garis yang diukur menggunakan fungsi teks standar, seperti TextOut, ExtTextOut, TabbedTextOut, DrawText, dan GetTextExtentExPoint. Fungsi-fungsi ini mendukung pemrosesan untuk skrip kompleks dan efek tipografi halus. Untuk informasi selengkapnya, lihat Font dan Teks.

Secara umum, dukungan teks standar transparan untuk aplikasi yang memproses skrip kompleks. Namun, Anda harus mengetahui beberapa aturan khusus yang harus diikuti dalam menulis aplikasi yang mendukung tipografi halus dan memproses skrip kompleks:

  • Aplikasi Anda harus menyimpan karakter dalam buffer dan menampilkan seluruh baris teks sekaligus alih-alih, misalnya, memanggil ExtTextOut pada setiap karakter saat diketik oleh pengguna. Mekanisme ini memungkinkan modul pembentukan teks tingkat lanjut menggunakan konteks untuk menyusun ulang dan menghasilkan glyph dengan benar.
  • Aplikasi harus menggunakan GetTextExtentExPoint untuk menentukan panjang garis, alih-alih menghitung panjang garis dari lebar karakter yang di-cache, karena lebar glyph dapat bervariasi menurut konteks.
  • Aplikasi dapat menambahkan dukungan opsional untuk urutan membaca dari kanan ke kiri dan perataan kanan.
  • Pengubahan ulang dan pemrosesan kontekstual yang diperlukan untuk skrip kompleks atau tipografi halus memerlukan peningkatan pemrosesan yang signifikan atas tampilan teks dasar untuk skrip sederhana. Oleh karena itu, untuk menghindari masalah performa, aplikasi Anda tidak boleh memproses teks dalam jumlah besar sebelum menampilkan hasil dan mengembalikan kontrol kepada pengguna.

Pemrosesan Skrip Kompleks Menggunakan Kontrol Edit

Kontrol edit Windows standar telah diperluas untuk mendukung teks multibahasa dan skrip kompleks. Dukungan yang diperluas mencakup input dan tampilan, serta pergerakan kursor yang benar atas kluster karakter, misalnya, dalam skrip Thai dan Devanagari. Untuk informasi selengkapnya, lihat Kontrol Pengeditan.

Pemrosesan Skrip Kompleks Menggunakan Kontrol Edit Kaya

Rich Edit 3.0 adalah kumpulan antarmuka tingkat lebih tinggi yang memanfaatkan Uniscribe untuk mengisolasi aplikasi tata letak teks dari kompleksitas skrip tertentu. Rich Edit adalah cara paling sederhana bagi aplikasi untuk menampilkan skrip kompleks meskipun tujuan utamanya belum tentu tata letak teks. Rich Edit menyediakan pengeditan cepat dan serbaguna dari teks multibahasa Unicode yang kaya dan teks biasa sederhana. Ini termasuk antarmuka pesan dan COM yang luas, pengeditan teks, pemformatan, pemisah baris, tata letak tabel sederhana, tata letak teks vertikal, tata letak teks dua arah, dukungan Indic dan Thai, antarmuka pengguna pengeditan seperti Microsoft Word, dan antarmuka Model Objek Teks.

Bersama dengan antarmuka Rich Edit, aplikasi dapat menggunakan fungsi Rich Edit TextOut untuk mengurai, membentuk, memposisikan, dan memecah garis secara otomatis. Untuk informasi selengkapnya, lihat Kontrol Pengeditan Kaya.

Pemrosesan Skrip Kompleks Menggunakan Uniscribe

Uniscribe memberikan dukungan paling luas untuk pemrosesan teks yang melibatkan efek tipografi halus dan skrip kompleks. Ini mendukung aturan kompleks yang ditemukan dalam skrip seperti Arab, Devanagari, dan Thailand. Ini menangani skrip yang ditulis dari kanan ke kiri, seperti Arab dan Ibrani, dan mendukung pencampuran skrip. Uniscribe juga mengekspos fitur font OpenType yang dapat digunakan oleh aplikasi untuk mengontrol efek tipografi halus. Untuk informasi selengkapnya, lihat Memproses Skrip Kompleks.

Tentang Uniscribe

Pemrosesan Skrip Kompleks