Maksud saya, apakah font harus mendukung setiap pengkodean karakter? Atau apakah pengkodean karakter harus mendukung setiap font?
Apa arti huruf Unicode? apakah mereka font yang hanya mendukung Unicode, dan mereka tidak mendukung, katakanlah, windows-1252?
fonts
character-encoding
DrStrangeLove
sumber
sumber
Jawaban:
Untuk memulai dengan dasar-dasar, semuanya didasarkan pada US-ASCII yang merupakan kode 7 bit dengan 128 titik kode di set, bernomor hex 00 hingga 7F atau desimal 0-127. Ini dipetakan untuk mengontrol kode, alfanumerik bahasa Inggris, dan karakter tanda baca dasar
Menambahkan 1 bit ke ini untuk kode 8 bit (byte) memberi kita 128 poin kode lain atau ASCII Diperpanjang.
Halaman himpunan karakter / kode diperlukan sejak awal untuk mengubah bagaimana kode poin di 128 bit dipetakan ke karakter untuk menutupi alfabet untuk bahasa tertentu yang ingin Anda wakili. Ini bekerja cukup baik untuk sebagian besar bahasa Eropa barat. ISO 8859-1 / Latin-1 adalah contoh dari rangkaian karakter tersebut. Lain adalah Windows-1252 yang memiliki perubahan dari ISO 8859-1 untuk membantunya mencakup lebih banyak karakter atau berbeda.
Bahasa dengan set karakter yang lebih kompleks seperti Cina, Jepang, dan Korea melebihi kemampuan set point kode 256 dan menggunakan kode byte ganda untuk memungkinkan representasi mereka.
Unicode UTF-8 adalah skema pengkodean karakter multi-byte (1-4 byte) dengan kompatibilitas mundur ke ISO 8859-1 / Latin-1 menjadi 128 karakter pertamanya. Ini memiliki ruang untuk lebih dari 1 juta titik kode yang berarti bahwa setiap titik kode dapat benar-benar mewakili karakter, tidak seperti penyimpangan yang dilakukan dengan Extended ASCII yang berarti bahwa titik kode memetakan ke karakter yang berbeda, tergantung pada set karakter / halaman kode / pengkodean.
Font adalah mesin terbang yang dipetakan ke titik kode dan secara visual mewakili karakter. Isi font tergantung pada bahasa apa yang semula dimaksudkan untuk dibahas. Anda dapat menggunakan Character Map untuk melihat mesin terbang apa yang terkandung dalam font.
Font Unicode tidak selalu mencakup semua poin kode, Anda harus melihat di mana mereka dimaksudkan untuk digunakan. Misalnya, di Windows 7, aktifkan Character Map dan lihat karakter di Calibri dan kemudian bandingkan dengan Ebrima, Meiryo dan Raavi. Perhatikan bahwa mereka sangat berbeda karena masing-masing dirancang untuk wilayah geografis yang berbeda.
Untuk font Unicode dan rangkaian karakter Windows-1252, Windows menggunakan tabel pemetaan untuk menerjemahkan Windows-1252 ke Unicode di mana ia tidak cocok dengan ISO 8859-1 untuk skenario "Paling Sesuai" di mana beberapa karakter dalam karakter Windows-1252 set mungkin tidak ditampilkan.
sumber
Set karakter
Set karakter adalah kumpulan karakter, yang masing-masingnya diberikan nomor.
Set karakter yang terkenal adalah ASCII. Ini adalah himpunan 128 karakter yang diberi nomor dari 0 hingga 127. Angka-angka ini semua dapat dinyatakan dalam 7 bit (oleh karena itu adalah himpunan karakter 7-bit)
Kebanyakan tetapi tidak semua set karakter lainnya termasuk set ASCII dengan penomoran yang sama. Contoh set karakter yang tidak seperti ASCII termasuk EBCDIC. Ada juga varian Eropa pada ASCII yang memiliki karakter berbeda di posisi tertentu (misalnya untuk memasukkan £)
Pengkodean
Set karakter besar seperti Unicode, dengan lebih dari satu juta karakter, akan membutuhkan tiga atau empat byte per karakter untuk mengakomodasi sejumlah besar angka yang telah ditetapkan untuk karakter. Sebagai gantinya mereka menggunakan sistem yang memungkinkan nomor itu untuk "dikodekan" sebagai satu, dua, tiga atau lebih byte. Dengan skema pengkodean UTF-8, karakter yang sama dengan karakter ASCII akan dikodekan dengan byte tunggal dengan nilai byte yang sama seperti pada ASCII.
Pengkodean di atas digunakan saat menyimpan teks dalam file.
Typefaces
Typeface adalah desain spesifik dari representasi visual (yaitu bentuk) untuk sekumpulan karakter. Bentuknya disebut mesin terbang. Jenis huruf mungkin memiliki beberapa mesin terbang untuk satu karakter (pertimbangkan "a"). Ini mungkin memiliki mesin terbang untuk pasangan karakter yang disebut ligatur (misalnya "ff" atau "fi"). Dalam jenis huruf, himpunan karakter, yang telah dirancang oleh mesin terbang, oleh karena itu sering berbeda dari rangkaian karakter dalam rangkaian karakter yang terkenal (tipografi biasanya tidak menyertakan mesin terbang untuk karakter kontrol ASCII).
Font
Dalam konteks komputer, font berarti file yang berisi mesin terbang yang dipesan sesuai dengan skema penomoran (yang sering tidak sama dengan penomoran dalam set karakter terkenal). Secara historis ada font sedikit-dipetakan yang mewakili ukuran tertentu (dalam piksel atau titik) dari jenis huruf. Saat ini sebagian besar font menggunakan kurva matematika untuk menggambarkan mesin terbang dan karenanya dapat diskalakan untuk mewakili berbagai ukuran jenis huruf.
Menyatukan semuanya
Saat Anda menampilkan file teks, komputer harus diberi tahu (atau menebak) pengkodean yang digunakan dalam file tersebut. Ini kemudian akan menggunakan penomoran yang berbeda (misalnya varian 16-bit Unicode) untuk mewakili teks dalam memori, kemudian akan menggunakan informasi dalam file font untuk memetakan representasi internal ke penomoran (pengkodean) yang digunakan dalam file font.
sumber
Apakah font harus mendukung setiap pengkodean karakter?
Tidak. Saya tidak tahu apakah ada yang benar-benar melakukannya.
Itu berarti mereka akan memiliki setiap karakter yang ada dalam diri mereka. Font yang paling umum digunakan untuk mendukung pengkodean budaya barat (latin).
Atau apakah pengkodean karakter harus mendukung setiap font?
Pengkodean karakter tidak, dengan cara apa pun, "mendukung" apa pun, jadi ini sebenarnya cara yang salah untuk melihatnya.
Apa arti huruf Unicode? Apakah mereka font yang hanya mendukung Unicode, dan mereka tidak mendukung, katakanlah, windows-1252?
Unicode adalah standar (atau setidaknya berusaha menjadi satu), yang memiliki dukungan untuk sejumlah besar karakter, oleh karena itu membuat banyak penyandian menjadi subset dari dirinya sendiri. Windows 1252 atau CP1252 adalah penyandian yang memiliki karakter latin plus beberapa karakter eropa tengah. Sebagian besar dari mereka "ditutupi" oleh unicode juga. Hampir semua font unicode juga mencakup, CP1252.
sumber