PEMBUATAN SMART FONT AKSARA BALI
DENGAN GRAPHITE DESCRIPTION LANGUAGE
Bemby Bantara Narendra
Program Studi Teknik Informatika, Institut Teknologi Bandung
Jl. Ganesha 10, Bandung 40132
E-mail:
[email protected]
,
[email protected]
ABSTRAK
Aksara Bali adalah aksara kedua bagi tiga juta warga Bali. Akan tetapi jumlah kepustakaan dalam aksara Bali di dunia komputer sangat langka. Untuk mempopulerkan lagi aksara Bali di kalangan generasi yang akan datang, diperlukan usaha komputerisasi teks secara lengkap.
Usaha tersebut telah dimulai dengan memasukkan karakter aksara Bali ke dalam standard Unicode versi 5.0. Hal ini memungkinkan pertukaran data teks aksara Bali secara internasional dan menciptakan landasan bagi perangkat lunak global yang mempergunakan aksara Bali. Namun masih belum ada font aksara Bali yang memenuhi standard Unicode baik dari segi penggunaan encoding Unicode maupun pelaksanaan aturan penulisan aksara Bali yang benar secara visual dan logical. Aksara bali merupakan aksara kompleks sehingga tidak dapat direpresentasikan dalam bentuk font biasa. Karenanya tugas akhir ini disusun untuk menciptakan font ‘cerdas’ aksara bali yang dapat memenuhi seluruh kriteria di atas.
Perangkat lunak yang dibangun dalam tugas akhir ini dinamakan smart font Bali Galang. Smart font Bali Galang merupakan font TrueType aksara Bali dengan encoding Unicode yang ditambahkan program khusus sehingga mampu melaksanakan perilaku kompleks aksara Bali dengan tetap mempertahankan kesesuaiannya di dalam memory komputer.
Smart font Bali Galang hanya dapat berfungsi dengan baik dalam aplikasi yang telah terintegrasikan mesin Graphite.
Namun karena sifatnya yang open source, baik smart font Bali Galang maupun aplikasi-aplikasi yang mendukungnya dapat diperoleh dengan cuma-cuma dan dapat didistribusikan dengan bebas. Pengembangan smart font ini diharapkan dapat menjadi langkah awal dalam melestarikan aksara Bali yang kini sudah semakin jarang digunakan.
Kata kunci: smart font, aksara Bali, font TrueType, Graphite, Graphite Description Language (GDL), WorldPad, SIL
International.
1. PENDAHULUAN
Aksara Bali saat ini digunakan untuk menulis bahasa asli dari penduduk Bali yaitu bahasa Bali. Namun, jumlah kepustakaan dalam aksara Bali di dunia komputer sangat langka. Aksara Bali memiliki beberapa sifat umum yang terbawa dari aksara Brahmi purba, contohnya: aksaranya berdasarkan per-suku-kata (konsonan secara alami mendapat akhiran bunyi vokal /-a/) dan ciri penggunaan virama untuk mematikan bunyi yang terbawa oleh aksara.
Aksara Bali dapat dikategorikan sebagai aksara kompleks karena beberapa sebab berikut:
1. Susunan logical dan visual dari karakternya bisa berbeda (perlu pengaturan ulang).
2. Bentuk dan posisi dari rendering karakter yang terletak di atas atau di bawah karakter lainnya sangat bervariasi dan bergantung pada konteks karakternya.
3. Deretan karakter tertentu sering membentuk
ligature kompleks. Ligature adalah sebuah glyph
(bentuk huruf yang digunakan) yang dapat merepresentasikan lebih dari satu karakter.
4. Beberapa karakter mungkin memiliki lebih dari satu bagian glyph yang terpisah (contohnya split
vowel).
Saat ini aksara Bali sudah memiliki kodifikasi karakter (character set) yang telah disetujui oleh konsorsium Unicode dan telah dimasukkan dalam standard Unicode internasional (ISO/IEC 10646). Kodifikasi karakter akan memungkinkan dioperasikannya bermacam-macam fungsi pemrosesan teks seperti: pencarian, pengurutan, penghitungan kata, dan lain sebagainya. Pencantumannya di dalam standard Unicode akan memungkinkan penyimpanan teks aksara Bali ke dalam basis data, jaringan internet, dan masih banyak lagi manfaat yang lainnya.
Namun font aksara Bali yang ada saat ini masih belum sesuai dengan standard Unicode internasional. Salah satu contohnya adalah proses rendering yang dilakukan oleh font-font tersebut bersifat visual semata. Susunan logical-nya di memory masih kacau dan
banyak tingkah laku kompleks aksara Bali yang tidak bisa diakomodasikan. Hal ini dikarenakan aksara Bali sebagai aksara kompleks harus di-render sebagai smart
font.
Smart font adalah font dengan data tambahan yang
mengandung instruksi-instruksi bagaimana pemilihan dan peletakan glyph dilakukan di layar. Berbeda dengan sistem encoding font umumnya yang memiliki pemetaan langsung antara data karakter dengan glyph dan peletakannya yang mudah berdampingan satu dengan yang lainnya.
Terdapat tiga teknologi smart font yang populer: 1. Apple Advanced Typography, dikembangkan oleh
Apple [FYN04].
2. OpenType, dikembangkan oleh Microsoft dan
Adobe [FYN04].
3. Graphite, dikembangkan oleh SIL International [FYN04].
Graphite dipilih sebagai teknologi untuk
mengembangkan aksara Bali karena beberapa alasan. Pertama, Graphite telah diimplementasikan pada
Microsoft Windows dan sifatnya open-sourced. Graphite juga dikembangkan untuk menangani
implementasi dari sistem penulisan untuk bahasa minoritas yang membutuhkan pemrosesan yang tidak didukung pada pengembangan implementasi bahasa yang dikenal luas. Kedua, OpenType merupakan teknologi smart font yang sangat canggih dan sudah diterima dengan luas namun sifatnya yang tidak
open-sourced menyebabkan opsi ini menjadi terlalu mahal.
Ketiga, Apple Advanced Typography hanya tersedia pada Macintosh [COR03].
2. STANDARD UNICODE
Standard Unicode adalah aturan encoding karakter universal untuk karakter dan teks tertulis. Unicode mendefinisikan langkah konsisten untuk encoding teks multi bahasa sehingga memungkinkan pertukaran data teks secara internasional dan menciptakan landasan bagi perangkat lunak global [UNI06]. Unicode menyediakan kapasitas untuk meng-encode seluruh karakter yang digunakan dalam bahasa tertulis di seluruh dunia. Jumlah karakter yang bisa di-encoding mencapai lebih dari satu juta buah karakter. Encoding karakter Unicode memperlakukan karakter alfabet, karakter ideografis, dan simbol-simbol dengan sama, yang berarti mereka dapat digunakan dalam percampuran apapun.
Standard Unicode menetapkan sebuah nilai numerik (codepoint) dan sebuah nama untuk setiap karakternya. Jangkauan integer yang digunakan sebagai codepoint disebut dengan codespace. Dalam standard Unicode, codespace terdiri dari integer dari 0 sampai dengan 10FFFF16, menyediakan 1.114.112 buah
codepoint yang dapat digunakan. Ketika merujuk codepoint dalam standard Unicode, biasanya
menggunakan nilai numeriknya dalam heksadesimal dengan prefiks “U+” [UNI06].
Aksara Bali telah resmi dimasukkan ke dalam standard Unicode terbaru yaitu versi 5.0 melalui usaha yang cukup panjang oleh Yayasan Bali Galang yang bergerak di bidang kebudayaan khususnya kebudayaan Bali. Karenanya aksara Bali juga sudah memiliki
codepoint yang dapat digunakan secara internasional.
Aksara Bali memperoleh porsi codespace dari U+1B00 sampai dengan U+1B7F. Selanjutnya dalam tugas akhir ini akan digunakan codepoint dan nama karakter aksara Bali yang sesuai dengan Unicode.
3. AKSARA BALI
Aksara Bali digunakan untuk menulis bahasa asli penduduk Bali yaitu bahasa Bali. Aksara Bali berasal dari aksara Brahmi purba dari India. Karenanya, aksara Bali memiliki banyak kemiripan dengan aksara-aksara modern di Asia Selatan dan Asia Tenggara yang berasal dari rumpun aksara yang sama. Aksara Bali pada abad ke-11 banyak memperoleh pengaruh dari bahasa Kawi atau Jawa kuno. Versi modifikasi aksara Bali ini digunakan juga untuk menuliskan bahasa Sasak yang digunakan di Pulau Lombok. Beberapa kata-kata dalam bahasa Bali meminjam dari bahasa Sansekerta yang kemudian juga mempengaruhi aksara Bali. Tulisan Bali tradisional ditulis pada daun pohon
siwalan (sejenis palma), tumpukannya kemudian diikat
dan disebut lontar [UNI06].
Konsonan aksara Bali memiliki suara vokal /–a/ yang melekat. Konsonan yang digabungkan dengan konsonan berikutnya mengikuti kebiasaan aksara
Brahmi yaitu vokal yang melekat “dibunuh” atau
dihilangkan dengan adeg–adeg (virama) dan konsonan yang mengikuti ditambahkan di belakangnya [UNI06]. Namun hal ini hanya hanya bisa digunakan pada suku kata terakhir dari suatu kalimat [TIN94b]. Untuk menghilangkan vokal yang melekat pada konsonan yang digabungkan dengan konsonan berikutnya di tengah kata atau kalimat digunakan gantungan atau
gempelan. Setiap konsonan pada aksara Bali memiliki
bentuk rupa lain yang digunakan untuk mematikan bunyi vokal konsonan di depannya yang disebut
gantungan atau gempelan. Gantungan dituliskan di
bawah konsonan sebelumnya (menggantung) sedangkan gempelan dituliskan di samping konsonan sebelumnya (menempel). Berikutnya, gantungan dan
gempelan ini akan disebut bentuk gabungan konsonan.
Aksara Bali awalnya hanya berjumlah 18 buah yaitu: ha, na, ca, ra, ka, da, ta, sa, wa, la, ma, ga, ba, nga, pa, ja, ya, dan nya [TIN94b]. Karena jumlah aksaranya yang terbatas sedangkan bahasa Bali terus berkembang terutama mengambil dari bahasa Jawa kuno dan Sansekerta, maka aksara Bali kemudian berkembang menjadi lebih banyak jumlahnya. Menurut Wayan Simpen, AB dalam bukunya “Pasang Aksara
penulisan ak sebanyak 14 Jadi seluruhn Aksara sw aksara hrésw panjang). Ak o, au, r, ŕ, konsonan d menjadi [TIN 1. Kanthya 2. Talawya 3. Murdhany n(n)a, ra, 4. Dantya (D 5. Osthya (L Rupa visual dapat dilihat G Aksara-ak dalam penuli kalaupun ma dengan warg mengganti /k saat ini ma Aksara-aksar aksara /kha disesuaikan aksara Bali y Aksara /j dírgha) awal sama dalam membedakan yang terdaft terlihat pada Selain ak pangangge tengenan, an Pangangge sedangkan ak
ksara Bali) dis 4 buah dan k nya berjumlah
wara atau vok wa (suara pend ksara swara te l dan ĺ [SIM dapat dibagi N94b]: (Gutturals): k (Palatals): ca nya (Cerebrals s(s)a. Dentals): ta, th Labials): pa, p aksara swar pada gambar Gambar 2-1 Gambar 2-2. A ksara /kha/, isan aksara B asih ada mak ga aksara ya kha/ dengan asih ada han ra dalam gam a/, /t(t)ha/,
bentuk glyph yang telah dida jha/ dan aksa lnya ditulis da berbagai lite n keduanya m tar dalam Un gambar 2-2. ksara swara swara (sand
ngka, dan cec
swara merup
ksara swara m
sebutkan bahw konsonan seba h 47 buah [SIM
kal dapat diba dek) dan aksar erdiri dari: a, á M95]. Aksara
lagi menur ka, kha, ga, gh a, cha, ja, jha,
s): t(t)a, t(t)ha
ha, da, dha, na pha, ba, bha, m
ra maupun a
2-1 dan 2-2 d
. Aksara swar
Aksara wianja /t(t)ha/, /d(d ali sudah tida ka aksara ters ang bersangk /ka/. Sedangk nyalah gantu mbar 2-2 di a /d(d)ha/, dan h-nya dengan aftarkan dalam ara /ai/ (dalam alam bentuk r eratur Bali ya maka rupa vis
nicode digan dan wianjana dangan voka ciren pepaosa pakan tanda v merupakan vo wa jumlah vok anyak 33 bua M95].
agi lagi menja ra dírgha (sua á, i, í, u, ú, é, a wianjana at rut fonologin ha, nga, ha.
n(y)a, ya, s(h) a, d(d)a, d(d)h a, la, sa. ma, wa. aksara wianja di bawah. ra. ana. d)ha/, dan /ch ak ada lagi. D ebut disamak kutan, misaln kan /cha/, ya ungan-nya sa atas (khususn n /cha/) tel n bentuk glyp m Unicode. m aksara swa rupa visual ya ang ada. Unt sual aksara /jh nti seperti ya a, terdapat pu al), pangang an (tanda bac vokal depend okal independe kal ah. adi ara ai, tau nya )a. ha, ana ha/ Dan kan nya ang aja. nya lah yph ara ang tuk ha/ ang ula gge ca). den en. Pa pe di se D ga se /h vo be se di be se m K ga pa B an pe 6 Ta 1 2 3 4 5 6 angangge sw enggunaannya iakritik). Akib esuai dengan aftar lengkap ambar 2-3 di b Gam Pangangge endiri. Bisah ha/ (aksara w okalnya tanp erbunyi /h/. B ebagai pengga igunakan seb erbunyi /ng/. ebelumnya m membunuh su Keempat pang ambar 2-4 di b Gam Bilangan ata ada gambar 2-ali adalah ba ntara tanda ca epaosan atau t Ceciren pep adalah tanda anda-tanda ya 1. Carik siki, k dalam kalim itu dipakai j angka [TIN 2. Carik par kedudukann 3. Carik pas karangan, s digunakan s geguritan [T 4. Panti atau p kalimat atau 5. Pamada, d menulis dan [TIN94a]. 6. Carik pasal kekawin-kek sarga. Ditu pareren da [TIN94a].
wara tidak bis
a menempel batnya akan m n pangangge p pangangge bawah ini. mbar 2-3. Pan tengenan j digunakan se wianjana) yan pa menggun Begitu pula d anti konsonan bagai penggan Adeg-adeg erupakan tan uara vokal gangge tengen bawah ini. mbar 2-4. Pang au angka dala -5. Aturan pen ahwa angka te
arik yang akan
tanda baca.
paosan yang b
baca yang dig ang digunakan kedudukannya mat maupun d juga untuk me 94a]. reren, dipaka
nya sama deng
salinan, dip
surat, dan lai sebagai tanda TIN94a]. panten, dipaka u karangan [T dipergunakan n atau mengak
linan dan car kawin untuk ulis menggu an windu a sa berdiri sen pada konso mengubah bun swara yang swara dapat ngangge swar juga tidak d ebagai pengga ng telah dim nakan viram dengan suran /ra/ berbunyi nti konsonan sudah pernah nda yang digu konsonan d
nan ini dapat
gangge tengen am aksara Bali nulisan angka ersebut harus n dijelaskan d bisa dilihat pa gunakan dalam n yaitu: a sama denga dalam kakawin engapit aksar ai pada ak gan titik [TIN
akai pada in-lainnya. Se a pergantian t ai pada permu IN94a]. sebagai tand khiri kalimat a
rik agung, dig
pergantian unakan tanda atau pamada ndiri sehingga nan (sebagai nyi konsonan g digunakan. t dilihat pada ra. dapat berdiri anti konsonan matikan bunyi ma sehingga ng digunakan i /r/ dan cecek n /nga/ yang h disinggung unakan untuk di depannya. t dilihat pada nan. i dapat dilihat dalam aksara dituliskan di dalam ceciren ada gambar 2-m aksara Bali. an koma, baik n. Di samping ra anceng dan khir kalimat, 94a]. penghabisan elain itu juga tembang pada ulaan menulis da permulaan atau karangan gunakan pada wirama atau a baca carik dan windu a i n . a i n i a n k g g k . a t a i n -. k g n , n a a s n n a u k u
7. Carik pa baca titik Ga Ketika a Unicode ve aksaranya ju berikut: 1. Simbol m dang sura gede. 2. Tanda di kempul, kempli wi 3. Simbol m pung, pla Selain itu dimasukkan bahasa Sasak
ve, zal, dan a
Jumlah to standard Un meliputi selu 4. SMART Smart fon tambahan bagaimana p layar, alih-al aplikasi ata dengan sistem ini diistilahk langsung an peletakannya yang lainnya Umumny berkas font perangkat lu
font dan men rendering. amungkah, fu k dua [TIN94a ambar 2-5. An Gambar 2-6. aksara Bali d ersi 5.0 me uga diperleng musik untuk n ang, ding, da akritik untuk kempli, jego ith jegogan, b musik lainnya
ak, pluk, dan p
u dalam stand aksara mo k sebanyak 7 asyura. otal aksara Ba icode versi 5 uruh aksara ya FONT nt adalah font yang meng pemilihan dan lih dikodekan au komponen m encoding fo kan “dumb fon ntara data k a yang mudah a [COR03]. ya data smart f itu sendiri. S unak diperluka nggunakannya Dengan kata ungsinya sama a]. ngka dalam ak Ceciren pepa dimasukkan lalui konsor gkap dengan nada: dong, de aeng, deung, d simbol musik ogan, kempul bende, dan gon
a: dug, dag,
ping.
dard Unicode odifikasi untu
buah yaitu: k
ali yang telah 5.0 sebanyak ang telah dipap
yang dilengk gandung in peletakan gly n secara lang n sistem op ont umumnya nt”) yang mem karakter deng h berdamping font berbentuk Semacam me an untuk mem a dengan ben a lain, sma a dengan tan ksara Bali. aosan. dalam standa rsium Unicod n simbol-simb
eng, dung, dan daing, dan da
k: tegeh, ende
with jegoga ng.
tuk, tak, pan
e versi 5.0 ju
uk menulisk
kaf, khot, tzir,
terdaftar dala 121 buah ya parkan di atas kapi dengan da nstruksi-instruk yph dilakukan gsung ke dala perasi. Berbe (atau dalam h miliki pemeta gan glyph d gan satu deng
k tabel di dala esin atau driv mbaca tabel d
ar dalam pros
art font dap
nda ard de, bol ng, ang ep, an, ng, uga kan ef, am ang s. ata ksi n di am eda hal aan dan gan am ver dari ses pat di ke m [C lib m gi te ka po ya ba ko gl da pe pe ‘T us ke U A m ya te ap pe co da Pr ka te co ju da pe 5. ke ko [C tin 1 2 3 4 5 6 7 ga ka ka de iibaratkan seb ecil di dalamn menjalankan COR03]. Lingkungan brary dengan me-render teks ilirannya aka erletak di dala arakter, meme osisi dan sub ang saling b agian dari fo ontrol maksim
lyph dalam fon
Penanganan an pemrosesa enanganan te engguna aplik T’ lewat keyb ser menekan emudian di-e Unicode untu Aplikasi pemro emory dan ju ang bertangg ersebut di lay plikasi ekste emrosesan t odepoint seba an kemudian roses ini ber arakter lainny eks untuk sm
odepoint untu
uga mencocok alam tabel dat enggambaran . GRAPHIT Graphite emampuan ompleksitas COR06]. Gr ngkah laku ko 1. Pembentuka 2. Ligature. 3. Pengaturan 4. Glyph terpis 5. Bidirectiona 6. Penumpuka 7. Peletakan k Arsitektur ambar 2-7. M arakter yang arakter dan eretan glyph y bagai font d nya. Mesinny program k n aplikasi n API sehingg s aksara komp an mempergu m font itu sen etakan karakte bstitusi konte berelasi. Kare ont, maka pe mum terhada nt tadi [FYN0 n teks kompu an. Berikut eks untuk h kasi pemroses board, sistem sebuah komb encode seba uk ‘LATIN osesan teks m uga melempark gungjawab un yar. Aplikasi ernal ataupun teks tadi, agai indeks u menggambar rlanjut selam ya. Aplikasi
mart font tid
uk mencari ga kkannya deng ta smart font. ke layar. E adalah siste yang mema seluruh sis raphite mam ompleks sistem an kontekstua ulang. sah. ality. an diakritik. kompleks. sistem Grap Masukan mes g dapat dile atau fitur f yang tersusun engan progra ya adalah pene omputer ke menyediakan ga dapat digu pleks. Rutin-ru unakan tabel ndiri untuk me er ke glyph, m ekstual dan g ena tabel-tabe engembang fo ap perilaku 04]. uter melibatk adalah conto huruf latin an teks meng m menerima binasi tuts un agai U+0054 CAPITAL L menyimpan a kannya ke ap ntuk meletak display ini, n bagian d kemudian m untuk mencari rkannya ke la ma pengguna display pada dak hanya m ambar yang s gan aturan y Setelah itu ba em smart f adai untuk stem penulis mpu menanga m penulisan se al. phite dapat sin Graphite engkapi deng font. Keluara n dengan bena am komputer erjemah yang ecil tersebut n rutin-rutin unakan untuk utin ini dalam aturan yang engatur ulang membuat tanda glyph lainnya el ini adalah font memiliki pembentukan kan encoding oh sederhana ‘T’. Ketika getikkan huruf pesan bahwa ntuk ‘T’ yang 4 (codepoint LETTER T’). angka tadi di plikasi display kkan karakter bisa berupa dari aplikasi menggunakan i gambar ‘T’ ayar monitor. mengetikkan a penanganan menggunakan sesuai, namun yang terdapat aru dilakukan font dengan menangani san modern ani berbagai eperti: dilihat pada adalah data gan properti annya adalah ar, dilengkapi r g t n k m g g a a h i n g a a f a g t . i y r a i n ’ . n n n n t n n i n i a a i h i
dengan pemetaan antara glyph di layar dengan karakter yang mendasarinya. Sistem Graphite menyediakan dukungan terhadap mekanisme editing seperti klik
mouse dan seleksi penyorotan. Sebuah font dapat
diproses dengan sistem Graphite dengan meng-compile sebuah program yang ditulis dengan Graphite
Description Language (GDL) ke dalam font TrueType
biasa. Hasilnya adalah font TrueType dengan tabel khusus yang digunakan oleh mesin Graphite [COR06].
Gambar 2-7. Arsitektur sistem Graphite. Sistem Graphite terdiri dari [COR03]:
1. Bahasa pemrograman rule-based Graphite
Description Language yang bisa digunakan untuk
mendeskripsikan tingkah laku sistem penulisan. 2. Compiler untuk bahasa tadi.
3. Mesin rendering yang dapat berfungsi sebagai aplikasi pemrosesan teks.
Program Graphite Description Language (GDL) menggunakan tabel untuk mengorganisasikan aturan dan penugasan. Tabel diidentifikasikan dengan menggunakan kode ‘table()’ dan ‘endtable’. Ada enam jenis tabel yang dideklarasikan dengan feature, glyph,
name, linebreak, substitution, dan positioning. Tabel feature mendefinisikan fitur-fitur yang tersedia dalam smart font. Tabel glyph digunakan untuk
mendefinisikan kelas glyph dan menyediakan informasi tentang glyph-glyph yang akan digunakan dalam aturan. Tabel name digunakan untuk memasukkan informasi font seperti nama font, pembuat, fitur font, dan lain-lain dalam teks multibahasa dalam berkas GDL yang di-compile. Tabel
linebreak dapat digunakan untuk menyediakan
informasi tentang bagaimana baris sebaiknya dipotong (linebreaking). Tabel substitution digunakan untuk mendefinisikan aturan untuk pengaturan, substitusi, pemasukan dan penghapusan glyph sebelum proses pengaturan posisi. Tabel positioning berisi aturan pengaturan posisi glyph di layar. Tabel linebreak,
substitution, dan positioning digunakan dalam proses rendering.
Tabel-tabel yang mengandung aturan (tabel
linebreak, substitution, dan positioning)
dikelompokkan dalam satu atau lebih pass yang terurut. Pass diidentifikasikan dengan kode ‘pass()’ dengan parameter angka. Pernyataan ‘endpass’ menghentikan pass. Setiap pass menggunakan deretan
glyph sebagai masukan, memproses isinya, dan
menghasilkan aliran keluaran. Urutan keluaran ini kemudian menjadi masukan bagi pass berikutnya. Pass awal mengubah karakter Unicode menjadi glyph. Pass lainnya menjalankan aturan, melaksanakan pencocokan
pada aliran masukan dan meletakkan hasil pelaksanaan aturan pada aliran keluaran. Pass terakhir meletakkan
glyph ke posisi final untuk proses rendering.
6. AKSARA BALI DALAM STANDARD
UNICODE 5.0
Melalui proses yang panjang, aksara Bali akhirnya dapat didaftarkan dalam standard Unicode versi 5.0 pada tahun 2006 melalui konsorsium Unicode. Aksara Bali memperoleh porsi codepoint dari U+1B00 sampai dengan U+1B7F dengan total 128 slot dan terisi 121 buah karakter. Detail karakter aksara Bali yang terdaftar adalah sebagai berikut:
1. 1B00 – 1B04: berbagai lambang. 2. 1B05 – 1B12: vokal independen. 3. 1B13 – 1B33: konsonan.
4. 1B34: lambang (BALINESE SIGN REREKAN). 5. 1B35 – 1B43: tanda vokal dependen.
6. 1B44: lambang (BALINESE ADEG ADEG). 7. 1B45 – 1B4B: konsonan tambahan (aksara
Sasak).
8. 1B50 – 1B59: angka. 9. 1B5A – 1B60: tanda baca.
10. 1B61 – 1B6A: simbol musik untuk nada.
11. 1B6B – 1B73: tanda diakritik untuk simbol musik.
12. 1B74 – 1B7C: simbol musik lainnya.
Bentuk gabungan konsonan aksara Bali tidak dimasukkan ke dalam peta karakter Unicode karena merepresentasikan informasi yang sama dengan konsonan itu sendiri. Sehingga yang didaftarkan hanya bentuk konsonan dasarnya saja. Nantinya akan menjadi tugas smart font untuk secara otomatis mengubah bentuk glyph konsonan aksara Bali apakah akan menggunakan bentuk konsonan dasar atau bentuk gabungannya. Dalam gambar 3-1 berikut ditunjukkan bentuk dasar dan bentuk gabungan dari konsonan aksara Bali.
Gambar 3-Rendering swara) /u/ d ketika dikom tertentu. Bat adalah tiga k /ya/, /wa/, at dengan istil tradisional y menengah ad ba nga | pa j dalam tabel Brahmi. Kedua k U+1B5B B memulai bab PAMUNGKA U+1B5E BA BALINESE tanda baca ko Teks Bal (sejenis palm disebut lont digunakan da dipotong pa penuh). Tan hubung kata pemotongan Bali terke Beberapa si musik. Un pentatonis, d deng, dung U+1B66), sa sudah kita berdasarkan 1. Konsonan b g untuk la dan /ú/ meng mbinasikan d tas maksimal karakter, dim tau /ra/ (komb
ah ‘tumpuk yang diajark dalah; ha na ca a ya nya. Sed kode Unico arakter U+1B BALINESE P b pada teks. U AH digunakan ALINESE C CARIK PAR
oma dan titik. i tradisional d ma), tumpuka
tar. U+1B60
alam teks lont da akhir bar nda ini tidak a, namun han baris. enal dengan w istem notasi ntuk merepr digunakan su g (di-encodin ama seperti ‘ kenal. Simb bentuk tanda bentuk dasar d ambang vok gambil bentuk dengan kelom l untuk kelom mana karakter
binasi ini seri
tiga’). Uruta kan di seko a ra ka | da ta dangkan peny de mengikuti B5A BALINE PAMADA dig U+1B5D BAL n sebagai tand CARIK SIKI REREN digu . ditulis di daun annya kemud 0 BALINESE tar dimana se is (selalu set k digunakan nya digunaka warisan musik digunakan resentasikan uku kata ding
ng pada U+ do re mi fa s bol musik y a vokal depen dan gabungan al (pangang k yang berbe mpok konson mpok konson terakhir adal ing disebut ju an aksara B lah dasar d sa wa la | ma yusunan karak i urutan aksa ESE PANTI d gunakan unt LINESE CAR da baca titik du dan U+1B unakan sebag n pohon siwal dian diikat d E PAMENEN
ebuah kata har telah suku ka
sebagai tan an sebatas pa
knya yang kay untuk menu tangga na g, dong, dan +1B61..U+1B6 o la ti do’ ya yang digunak nden dan simb
n. gge eda nan nan lah uga Bali dan ga kter ara dan tuk RIK ua. 5F gai lan dan NG rus ata nda ada ya. ulis ada ng, 64, ang kan bol la m be Pe ka di ka in B m di U di pa m po ke “p pe su hu po CA di di ya RE ka /k /γ /v sa bu re da SA AS da hu in ainnya. Wala masing-masing erbeda sehingg erbedaannya d arakter ini be iakritik. Bebe arakter dasar n nformasi iram eberapa ta mengindikasika igunakan. Tan U+1B6B..U+1B igunakan untu ada U+1B menyatakan pen osisi tangan t endang “la perempuan” emukulan. Aksara Bal uci” yang di uruf-huruf in okok termasu CANDRA. Kar ikenal digun iusulkan seba ang akan datan
Tanda peng
EREKAN (nuk
arakter untuk ka/ + rerekan γa/, /ja/ + rerek va/, dan lain-l aja yang dap
unyinya menj erekan dapat d an mengenai p Tujuh huru ASAK sampai SYURA SASA
asar untuk bah uruf-huruf ini ni. Gambar 3 aupun bentuk g merepresen ga memperole dengan tanda erdiri sendiri erapa tanda d notasi musik ma (tanda n anda lainny an instrume nda-tanda diak B73. Set sim uk fitur khusu B74..U+1B7C. nggunaan tan terbuka atau aki-laki” (la (wadon), li juga meny isebut simbol ni dapat disu uk U+1B01 rakter-karakter akan dalam agai tambahan ng. ggabungan U kta) digunaka bunyi-bunyi n menjadi /xa kan menjadi / lain. Karena pat diperluas
adi apa, maka dimasukkan p perubahan bun uf U+1B45 B i dengan U+1 AK adalah ta hasa Sasak. B i ditunjukkan 3-2. Konsonan k rupa glyp ntasikan info eh codepoint y vokal depend dan dapat dib
diakritik ditam
ini untuk men nada tinggi d ya diguna en alat m
kritik ini di-e
mbol musik us pertunjukan
. Simbol-s gan kanan ata tangan tertutu
anang) ata
dan keras
yertakan beb l modre. Se usun dari beb
BALINESE r tambahan l teks, dihar n aksara Bali U+1B34 BALI an untuk memp asing. Conto a/, /ga/ + rere /za/, /pa/ + rer
kurang jelas bunyinya da a penulis bera pada semua ko nyinya tidak d BALINESE L 1B4B BALINE ambahan kons Bentuk dasar d pada gamba n untuk bahasa ph-nya sama, ormasi yang yang berbeda. den, karakter-berikan tanda mbahkan pada ngindikasikan dan rendah). akan untuk musik yang ncoding pada lainnya yang n di-encoding simbol ini au tangan kiri, up, memukul au kendang lembutnya berapa “huruf bagian besar berapa unsur SIGN ULU lainnya, yang apkan untuk i pada waktu INESE SIGN perluas daftar ohnya adalah ekan menjadi rekan menjadi karakter apa an perubahan asumsi bahwa onsonan dasar diperhatikan. LETTER KAF ESE LETTER sonan bentuk dan gabungan ar 3-2 berikut a Sasak. , g . -a a n . k g a g g i , l g a f r r U g k u N r h i i a n a r F R k n t
7. FONT TR Perangka dapat dibagi TrueType ak aturan penuli Font Tru dalam imp modifikasi f dikembangka glyph baru y Bali Simbar contoh glyph Selanjutn juga ditamb nama posts Attachment p relatif pada pandu dalam posisinya se adalah nama mengasosias 8. PERILA Aksara-ak dan Brahm kompleks ka 1. Susunan berbeda ( 2. Teks Ara dibaca da dua arah) 3. Bentuk d terletak d sangat b karaktern glyph yan 4. Deretan ligature komposis 5. Beberapa satu bagia Karena a aksara Brahm kompleks di Bali merupa yang dimilik rendering ko berikut: 1. Memerlu karakter. lebih dari 2. Peletakan dengan k 3. Pemilihan kontekstu TRUETYPE A at lunak yang i menjadi du ksara Bali dan isan font True
ueType aksara plementasi font TrueType an oleh Bapa yang tidak te r versi B dib h dalam tabel k
nya font aksa bahkan inform script untuk point adalah se garis glyph m penggabun esuai satu sa a yang diberik ikan glyph. AKU KOMPL ksara Asia ya i dapat dik arena beberapa logical dan (perlu pengatu ab dibaca dari ari kiri ke ka ). dan posisi da di atas atau bervariasi dan nya (memerluk ng bergantung karakter te kompleks ( si banyak glyp a karakter m an glyph yang aksara Bali sen
mi dan memil atas maka da akan aksara k ki oleh aksa ompleks pula ukan pengatu Beberapa k i satu bagian g n diakritik onteks aksara n glyph y ual aksaranya AKSARA BAL disusun dalam ua bagian be n program G eType aksara B a Bali yang a Bali Galan e Bali Simba ak Made Sua ersedia dalam buat sendiri karakter Unic ara Bali mod masi attachm setiap glyp ebuah titik yan yang bergun ngan dua bu ama lain. N kan oleh desa
LEKS AKSAR ang berasal d kategorikan a sebab beriku visual dari k uran ulang). i kanan ke kir anan (memerl ari rendering di bawah k n bergantung kan substitusi g pada konteks ertentu serin memerlukan ph ke satu glyp mungkin mem g terpisah. ndiri merupak liki sebagian b apat dipastika kompleks. Per ara Bali sehi di antaranya uran ulang d
karakter mun
glyph yang ter
yang berbed a yang diikutin yang disesu a. Bentuk d LI m tugas akhir esar, yaitu fo GDL yang ber Bali tersebut. akan digunak ng merupak ar versi B ya atjana. Bebera m font TrueTy dengan men ode. difikasi terseb ment point d ph yang ad ng didefinisik na sebagai ti uah glyph ag Nama postscr
ainer font unt
RA BALI dari aksara Ar
sebagai aksa ut:
karakternya b ri, namun ang lukan renderi g karakter ya karakter lainn g pada konte dan pengatur s). ng membent substitusi d ph baru). miliki lebih d kan turunan d besar ciri aksa an bahwa aksa rilaku komple ingga menun a adalah sebag dan pemisah ngkin memil rpisah. da-beda sesu nya. uaikan deng dan posisi d ini ont risi kan kan ang apa ype iru but dan da. kan itik gar ript tuk rab ara isa gka ing ang nya eks ran tuk dan dari dari ara ara eks ntut gai han liki uai gan dari 4 w A (U se Ak ko m ke be /b B ke BA se pe Sa sa (te ak pe m gl di ak ak DA (U be pa BA U te te w pa SI /d pe (U be rendering k bawah karak 4. Pembentuka Gambar 3 Gambar 3 ianjana /ba/ Aksara kedua U+1B3E BA ehingga beru ksara Bali’, onsonan seh menunjukkan b emudian ak elakangan ya ba/. Hal ini m
ali yang me etiga memper ALINESE V ehingga berub enulisan aksar atu bagian m atu bagian la edung). Hal ksara Bali engaturan ulan menjadi contoh lyph. Gambar 3-3 iakritik yang ksaranya. Pad ksara wianjan DA). Aksara pe U+1B36 BALI erbunyi /di/. angangge ten ALINESE SIG Ulu pada aksar
engah sedangk ergeser oleh ce Pada gamb ianjana /da/ angangge swa IGN PEPET)
de/ pada kata
epet dan pan
U+1B03 BAL erbunyi /daer/ karakter yang kter lainnya sa an ligature ko 3-3. Perilaku k 3-3.A memp (U+1B29 B memperoleh ALINESE VO ubah menjadi taling dile hingga rupa bahwa taling d ksara /ba/. ang kemudian menunjukkan emerlukan p roleh pangan VOWEL SIG
bah bunyi men ra Bali, taling mengapit di ki agi mengapit ini memperli yang mem ng karakter. S h karakter yan 3.B dan 3-3.C berbeda-bed da gambar II na /da/ (U+1 ertama mempe INESE VOW Aksara ked ngenan yang GN CECEK) ra /da/ pertam kan ulu pada
ecek.
bar 3-3.C te pula. Aksa
ara /ae/ (U+
sehingga ber a ‘derap’). A ngangge teng LINESE SIG /. Pepet pada a g terletak di angat bervaria ompleks. kompleks aksa perlihatkan BALINESE L h pangangge OWEL SIGN i /be/. Menu etakkan di a visualnya ditulis terlebih Padahal ta n mengubah perilaku kom pengaturan ul ngge swara / GN TALING njadi /bo/. M g tedung dituli iri konsonan sebelah kan ihatkan perila erlukan pem Selain itu talin
ng memiliki le memperlihatk da sesuai den II-1.B terdap B24 BALINE eroleh pangan WEL SIGN UL dua mempero berbunyi /n sehingga ber ma terletak tep aksara /da/ k erdapat dua ara pertama 1B42 BALINE rbunyi /dae/ ( Aksara kedua genan yang GN SURANG
aksara /da/ per
atas atau di asi. ara Bali. tiga aksara LETTER BA). e swara /e/ N TALING) urut ‘Pasang sebelah kiri seolah-olah h dahulu baru aling ditulis bunyi aksara mpleks aksara lang. Aksara /o/ (U+1B40 G TEDUNG) Menurut aturan skan terpisah. (taling), dan nan konsonan aku kompleks misahan dan g tedung juga
ebih dari satu
kan peletakan ngan konteks pat dua buah
ESE LETTER ngge swara /i/ LU) sehingga
oleh ulu dan ng/ (U+1B02 rbunyi /ding/. pat di tengah-kedua sedikit buah aksara memperoleh NESE VOWEL (seperti bunyi memperoleh berbunyi /r/ G) sehingga rtama terletak i a . / ) g i h u s a a a 0 ) n . n n s n a u n s h R / a n 2 . -t a h L i h / a k
tepat di teng /da/ kedua b juga menjad melebihi leba Gambar 3 dari gantun BALINESE L atau guung. yang berbu pembentukan Bentuk glyph /kra/ lebarny aksara ketiga glyph cakra sedangkan u sejajar denga perilaku ko karakternya disesuaikan d Gambar pembentukan aksara Bali. LETTER NA (U+1B35 BA otomatis glyp yang berbed berikutnya pa Penulisan aksara Roma baseline alih dilihat pada g Gamb Selain itu rumit adalah dalam kalima tidak mutla memilih unt buku pelajar aturan penu jarak spasi belajar meng Namun h penulisan ak hubungan an spasi kosong 4. Kalimat d gah-tengah se bukan hanya di lebih pipih ar aksara /da/ 3-3.D menunj ngan aksara LETTER RA) Bentuk glyph unyi /krya/ nnya bisa d h cakra pada ya tidak seleb a yang berbu kedua menem ujung glyph an aksara di a ompleks aks yang memerl dengan kontek terakhir 3 n beberapa l Ketika aksar NA) diikuti o ALINESE VO ph keduanya da. Begitu ada gambar 3 n teks aksara an dimana pen h-alih “duduk” gambar 3-4 be mbar 3-4. Penu u, aturan penu h tidak adany at maupun ant ak dimana p tuk memakai ran aksara Ba ulisan aksara antar kata u gajar.
hal ini juga ksara Bali ya ntar kata tidak g. Contohnya dalam aksara B edangkan pep tergeser oleh h agar lebar itu sendiri. jukkan berbag wianjana yang dinama h cakra pada merupakan dilihat pada aksara kedua bar bentuk gly unyi /skra/. S mpel pada ak cakra ketiga atasnya. Hal in sara Bali p lukan pemilih kstual aksaran -3.E menun ligature yang ra /na/ (U+1B oleh pangang WEL SIGN T diganti denga pula dengan -3.E. Bali tidak se nulisannya me ” pada baselin erikut ini.
lisan teks aksa ulisan aksara B a jarak atau tar kalimat. N pengguna ak spasi atau ti ali di sekolah Bali dengan untuk mempe tidak mudah ang komplek selalu dapat d dapat dilihat Bali tersebut
pet pada aksa
h surang, teta keduanya tid
gai bentuk glyp /ra/ (U+1B2 akan juga cak
aksara pertam
ligature ya
gambar 3-3 a yang berbun
lyph cakra pa
elain itu, uju ksara di atasn a naik sehing ni menunjukk pada sebagi han glyph ya nya. njukkan pros g terdapat pa B26 BALINES gge swara TEDUNG) ma an glyph tungg n aksara-aksa eperti penulis enggantung pa
ne. Hal ini dap
ara Bali. Bali yang cuk
spasi antar ka Namun aturan sara Bali b idak. Umumn dasar memak n menggunak ermudah pros h karena atur s menyebabk diberi jarak at pada gambar berbunyi “Bu ara api dak yph 2D kra ma ang .E. nyi ada ung nya gga kan ian ang ses ada ESE /á/ aka gal ara san ada pat kup ata ini isa nya kai kan ses ran kan tau 3-udi be m pa tid ke BA di BA da ko ba da pe ko m ka (U BA VO ‘s m ‘s Pe m ‘s ‘s cu m m ya ad AD pe de ko ko Sm m ad te m de di pe ad di ermain bola.” menggunakan
ada jarak anta dak mungkin etiga karena
ALINESE LE
igantung den
ALINESE LE
alam hal ini /b
Gambar 3-4 Sebelumnya onsonan aksa ahasa Sasak m an bentuk ga ermasalahan b onsonan yang membedakan p ata memiliki U+1B32 BAL ALINESE LET VOWEL SIGN sri’ mengguna mematikan bun sari’ menggu ermasalahanny mengetahui ba sri’ dengan hu sari’ dengan hu Hal ini da ukup sederhan memiliki satu membunuh bun ang disebut v dalah karakt DEG-ADEG) enulisan huru engan menul onsonan yang onsonan yang
mart font akan
melaksanakan deg-adeg (kar engah kata m mengubah ko engan bentuk i atas, kata enyusun nam deg-adeg. Leb i gambar 3-5. ”. Pengguna spasi antar k ara kata pertam
untuk diguna a konsonan ETTER NA) gan konsona ETTER BA) bo/). 4. Contoh kal memperguna a telah di ara Bali dan t memiliki dua abungan. Hal baru, yaitu m g ingin diperg penulisan kat huruf penyus LINESE LET TTER RA), da ULU). Perbed akan huruf /r nyi /a/ pada h unakan hur ya adalah bag ahwa penggun uruf /ra/ bentuk uruf /ra/ bentu apat diselesai na. Aksara tu karakter khu nyi vokal /a/
virama. Dalam ter adeg-ade . Jadi, mek uf konsonan liskan karakt g ingin dimati g ingin ditulis n menerima k aturan untuk rena adeg-ad menurut ‘Pa onsonan yan gabungannya ‘sri’ tidak t mun empat ka bih jelasnya d aksara Bali kata. Hal ini ma dan kedua. akan antara ka terakhir /n dalam kat an pertama /b dalam kata imat dalam ak akan spasi. isebutkan b tambahan kon bentuk yaitu l ini menimb mengenai pem unakan. Cont ta ‘sri’ dan sun yang sam
TTER SA), /r an /i/ (U+1B3 daan keduany ra/ bentuk ga huruf /sa/) se ruf /ra/ be gaimana mek na ingin men k gabungan da uk dasar. ikan dengan urunan dari ak usus yang be yang mengik m aksara Bal eg (U+1B44 kanisme unt bentuk gabu ter adeg-ade ikan bunyi /a s dalam bentu kombinasi kar k menghilang
deg tidak bol sang Aksara ng mengikuti a. Sehingga d terdiri dari arakter, ditam dapat dilihat memutuskan dapat dilihat Namun spasi ata kedua dan a/ (U+1B26 a “bermain” ba/ (U+1B29 “bola” (atau ksara Bali ahwa huruf nsonan untuk bentuk dasar bulkan suatu milihan bentuk tohnya adalah ‘sari’. Kedua ma, yaitu /sa/ ra/ (U+1B2D 36 BALINESE ya adalah kata abungan (dan dangkan kata entuk dasar. anisme untuk nuliskan kata an bukan kata solusi yang ksara Brahmi erguna untuk kuti konsonan li, virama ini BALINESE tuk memilih ungan adalah eg di antara a/-nya dengan uk gabungan. rakter ini dan gkan karakter leh ditulis di a Bali’) dan i adeg-adeg dalam contoh tiga karakter mbah karakter pada ilustrasi n t i n 6 ” 9 u f k r u k h a / D E a n a . k a a g i k n i E h h a n . n r i n g h r r i
Gambar 3-5. Mekanisme pemilihan bentuk konsonan. Perilaku-perilaku ini secara alami menempatkan batasan-batasan pada pendesain font karena glyph harus cocok dengan analisis perilaku pembentukan aksara yang ditentukan pada saat aplikasi ditulis atau sewaktu mendesain encoding. Seringkali analisis hanya cocok digunakan pada bentuk atau gaya dari satu aksara. Karenanya digunakan teknologi smart font.
9. KAPABILITAS GRAPHITE UNTUK RENDERING AKSARA BALI
Kapabilitas Graphite dalam aksara kompleks menentukan perilaku kompleks aksara Bali apa saja yang bisa dimplementasikan nantinya dalam smart font yang akan dibuat. Berikut adalah perilaku kompleks aksara Bali yang akan dapat diimplementasikan:
1. Pembentukan kontekstual (contextual shaping). Pembentukan kontekstual berarti pemilihan glyph untuk karakter yang diberikan dipengaruhi oleh karakter yang bertetangga dengan dirinya. Karenanya untuk karakter yang sama tidak dapat diasumsikan akan dapat di-render dengan glyph yang sama dalam dua situasi yang berbeda.
2. Korespondensi kompleks karakter ke glyph.
Dalam memilih glyph untuk merepresentasikan karakter, Graphite mengijinkan kombinasi
pemetaan satu ke satu, satu ke banyak, banyak ke satu, dan banyak ke banyak. Contohnya adalah U+1B40 BALINESE VOWEL SIGN TALING
TEDUNG yang merupakan pemetaan satu ke dua.
3. Pengaturan posisi (positioning).
Glyph yang di-render dapat diatur posisinya baik
secara vertikal maupun horisontal sehingga hasil keluaran rendering-nya tampak sama sekali berbeda dari apa yang dihasilkan oleh “dumb font” dengan hanya metriks dasar dan tabel kerning. Situasi umum dimana hal ini diperlukan adalah untuk menciptakan tumpukan diakritik atau untuk meletakkan diakritik pada lokasi yang berbeda-beda yang tidak kentara pada berbagai glyph dasar. 4. Ligature.
Dalam Graphite, istilah ligature tidak hanya berarti me-render rangkaian karakter dengan satu glyph, namun juga berarti asosiasi antara elemen visual
dengan karakter yang mendasarinya (logical). Untuk setiap ligature, memungkinkan untuk menyatakan wilayah persegi terpisah yang sesuai dengan karakter-karakter yang mendasarinya. Memilih karakter tersebut akan menyorot wilayah yang sesuai dan begitu pula sebaliknya.
5. Pengaturan ulang (reordering) dan pemisahan (splitting).
Glyph aksara Bali dapat ditampilkan dalam susunan
yang berbeda dari susunan karakter yang mendasarinya (logical-nya). Perilaku ini cukup umum untuk aksara-aksara dari daerah Asia Selatan dan Asia Tenggara, dimana beberapa vokal
di-render sebelum konsonan yang mendahuluinya.
Karakter U+1B40 BALINESE VOWEL SIGN
TALING TEDUNG terpisah menjadi dua glyph dan
di-render pada kedua sisi konsonan yang mendahuluinya. Konsonan dan vokal yang berasosiasi dengannya dapat dipandang sebagai satu bagian, dan terkadang bisa dianggap tidak baik untuk memilih atau mengubah elemen bagian secara terpisah.
6. Kursor terpisah (split insertion bars).
Kursor terpisah ini berguna ketika rangkaian glyph tidak mengikuti susunan linier horisontal yang ketat yang mematuhi urutan karakter yang bersesuaian. 7. Pemotongan baris.
Graphite dapat menjadi mesin pemotongan baris untuk aksara yang perilaku pemotongan barisnya dapat dijabarkan dalam aturan. Graphite me-render sebuah paragraf per satu baris, mengisi baris sepenuh mungkin dan memotong baris di lokasi yang dianggap paling baik oleh font. Mesin
Graphite akan mencoba memilih pemotongan yang
paling diinginkan, dari yang paling ideal ke kurang ideal sampai menemukan porsi teks yang cukup atau memutuskan bahwa tidak ada teks yang akan cukup bahkan pada kondisi pemotongan yang tidak ideal sekalipun.
8. Jusifikasi teks.
Justifikasi teks meliputi pengaturan lebar baris dari teks agar mengisi secara tepat ruang yang tersedia.
10. ATURAN PENULISAN AKSARA BALI YANG DIIMPLEMENTASIKAN
Aturan-aturan penulisan aksara Bali yang akan diimplementasikan dalam perangkat lunak nantinya diambil dari dua literatur utama untuk aksara Bali yaitu buku karangan I Nengah Tinggen yang berjudul “Celah-Celah Kunci Pasang Aksara Bali” dan “Pedoman Perubahan Ejaan Bahasa Bali dengan Huruf Latin dan Huruf Bali”. Aturan-aturan tersebut adalah sebagai berikut ini:
1. Konsonan bentuk dasar yang mengikuti
adeg-adeg (U+1B44 BALINESE ADEG-ADEG) diubah
dihilangkan, baik untuk konsonan yang langsung mengikuti adeg-adeg ataupun yang dipisahkan oleh spasi (bukan satu kata). Proses ini sering diistilahkan ‘konsonan dibunuh’ yang berarti dihilangkan bunyi vokal /-a/-nya [TIN94b].
2. Sebagian besar konsonan memiliki bentuk gabungan yang terletak di bawah karakter (dalam hal ini konsonan) sebelumnya. Jika hal ini dilakukan dua kali maka akan terjadi tumpuk tiga. Contohnya dalam kata 'taMBLang'. Hal ini harus dihindari. Karenanya, jika terjadi kondisi ini konsonan bentuk gabungan pertama diubah lagi menjadi konsonan dasar dan adeg-adeg (U+1B44
BALINESE ADEG-ADEG), kemudian konsonan
kedua dan ketiga mengikuti aturan yang biasa. Sama dengan di atas, spasi bersifat opsional (tidak mempengaruhi) [TIN94b].
3. Khusus konsonan bentuk gabungan yang mendatar (gempelan) jika diikuti oleh adeg-adeg (U+1B44 BALINESE ADEG-ADEG) dan
konsonan (dan otomatis konsonan berubah menjadi bentuk gabungan) tidak akan membentuk tumpuk tiga sehingga dapat ditulis apa adanya. Spasi bersifat opsional [TIN94b].
4. Hanya tiga konsonan /ya/ (U+1B2C BALINESE
LETTER YA), /ra/ (U+1B2D BALINESE LETTER RA), dan /wa/ (U+1B2F BALINESE LETTER WA)
yang boleh melakukan tumpuk tiga dimana konsonan /ya/, /ra/, dan /wa/ menjadi konsonan ketiga [TIN94a].
5. Diakritik U+1B3E BALINESE VOWEL SIGN
TALING dan U+1B3F BALINESE VOWEL SIGN TALING REPA yang ditulis mengikuti konsonan,
peletakannya di layar justru terbalik yaitu ditulis sebelum konsonan tadi.
6. Konsonan U+1B32 BALINESE LETTER SA yang dibunuh dan diikuti konsonan U+1B18
BALINESE LETTER CA atau U+1B30 BALINESE LETTER SA SAGA diganti dengan U+1B30 BALINESE LETTER SA SAGA. Aturan ini hanya
berlaku dalam satu kata. Contohnya adalah kata 'Pascad' dan 'Pascima' [TIN94a].
7. Konsonan U+1B24 BALINESE LETTER DA yang dibunuh dan diikuti konsonan U+1B1C
BALINESE LETTER NYA diganti dengan
U+1B1A BALINESE LETTER JA. Aturan ini hanya berlaku dalam satu kata. Contohnya adalah kata 'Pradnyan’ yang berubah menjadi ‘Prajnyan' [TIN94a].
8. Konsonan U+1B32 BALINESE LETTER SA yang mengikuti konsonan U+1B13 BALINESE
LETTER KA yang dibunuh, diganti dengan
U+1B31 BALINESE LETTER SA SAPA. Aturan ini hanya berlaku dalam satu kata. Contohnya adalah kata 'Taksi' dan 'Paksa' [TIN94a].
9. Konsonan U+1B26 BALINESE LETTER NA yang dibunuh dan diikuti konsonan U+1B1D
BALINESE LETTER TA LATIK atau U+1B25 BALINESE LETTER DA MADU diganti dengan
U+1B21 BALINESE LETTER NA RAMBAT. Aturan ini hanya berlaku dalam satu kata. Contohnya adalah kata 'Kanta' dan 'Pandu' [TIN94a].
10. Konsonan U+1B32 BALINESE LETTER SA yang dibunuh dan diikuti konsonan U+1B1D
BALINESE LETTER TA LATIK, U+1B21 BALINESE LETTER NA RAMBAT, U+1B13 BALINESE LETTER KA, atau U+1B27 BALINESE LETTER PA diganti dengan U+1B31 BALINESE LETTER SA SAPA. Aturan ini hanya
berlaku dalam satu kata. Contohnya adalah kata 'Dusta' dan 'Kresna' [TIN94a].
11. Konsonan U+1B26 BALINESE LETTER NA yang dibunuh dan diikuti konsonan U+1B18
BALINESE LETTER CA atau U+1B1A BALINESE LETTER JA diganti dengan U+1B1C BALINESE LETTER NYA. Aturan ini hanya
berlaku dalam satu kata. Contohnya adalah kata 'Panca’ yang berubah menjadi ‘Panyca' [TIN94a]. 12. Konsonan U+1B26 BALINESE LETTER NA yang mengikuti konsonan U+1B2D BALINESE
LETTER RA atau U+1B03 BALINESE SIGN SURANG diganti dengan U+1B21 BALINESE LETTER NA RAMBAT. Aturan ini hanya berlaku
dalam satu kata. Contohnya adalah kata 'Karna' dan 'Rana' [TIN94a].
13. Konsonan U+1B32 BALINESE LETTER SA yang mengikuti konsonan U+1B2D BALINESE
LETTER RA atau U+1B03 BALINESE SIGN SURANG diganti dengan U+1B31 BALINESE LETTER SA SAPA. Aturan ini hanya berlaku
dalam satu kata. Contohnya adalah kata 'Warsa' dan 'Rasa' [TIN94a].
14. Konsonan U+1B2D BALINESE LETTER RA dan U+1B2E BALINESE LETTER LA yang diubah bunyi vokalnya oleh U+1B42 BALINESE
VOWEL SIGN PEPET diganti dengan U+1B0B BALINESE LETTER RA REPA dan U+1B0D BALINESE LETTER LA LENGA [TIN94a].
15. Konsonan U+1B2D BALINESE LETTER RA bentuk gabungan yang diikuti oleh konsonan U+1B2C BALINESE LETTER YA bentuk gabungan (tumpuk tiga) diganti dengan bentuk
ligature gabungan keduanya.
16. Konsonan U+1B17 BALINESE LETTER NGA yang dibunuh diganti dengan U+1B02 BALINESE
SIGN CECEK [TIN94a].
17. Konsonan U+1B33 BALINESE LETTER HA yang dibunuh diganti dengan U+1B04 BALINESE
18. Diakritik U+1B02 BALINESE SIGN CECEK, U+1B03 BALINESE SIGN SURANG, dan U+1B04 BALINESE SIGN BISAH yang diikuti oleh konsonan U+1B33 BALINESE LETTER HA berubah menjadi konsonan U+1B17 BALINESE
LETTER NGA, U+1B2D BALINESE LETTER RA,
dan U+1B33 BALINESE LETTER HA. Aturan ini hanya berlaku dalam satu kata. (Aturan tengenan
majalan) [TIN94a].
19. Sebagian besar konsonan jika diikuti oleh U+1B35 BALINESE VOWEL SIGN TEDUNG berubah menjadi bentuk ligature kombinasi keduanya.
11. DESKRIPSI UMUM PERANGKAT LUNAK Perangkat lunak yang disusun dalam tugas akhir ini adalah sebuah smart font aksara Bali yang diberi nama
smart font Bali Galang. Nama smart font “Bali
Galang” itu sendiri diambil dari nama yayasan nirlaba yang atas dedikasi dan usahanya berhasil memasukkan aksara Bali dalam standard internasional Unicode versi 5.0. Bali Galang dalam bahasa Bali juga berarti Bali Terang.
Smart font Bali Galang adalah font cerdas yang
mampu mengakomodasikan perilaku kompleks aksara Bali (yang tergolong aksara kompleks). Bali Galang merupakan font TrueType aksara Bali yang ditambahkan program berupa data tabel aturan penulisan aksara Bali dalam Graphite Description
Language (GDL). Font TrueType tersebut digabungkan
dengan program GDL melalui sebuah compiler
Graphite yang sudah tersedia. Lebih jelasnya dapat
dilihat pada gambar 4-1 berikut.
Gambar 4-1. Arsitektur smart font Bali Galang.
Smart font ini nantinya tidak bisa digunakan pada
seluruh aplikasi pemrosesan teks yang ada. Program
GDL yang tertanam pada smart font hanya dapat
dibaca oleh mesin khusus tertentu. Aplikasi yang sudah mendukung Graphite adalah aplikasi WorldPad,
OpenOffice versi 3.0, dan versi Graphite-enabled dari browser Firefox dan email client Thunderbird. Smart font Bali Galang jika digunakan oleh aplikasi
pemrosesan teks biasa akan menjadi “dumb” font atau
font TrueType biasa tanpa bisa me-render perilaku
khusus aksara Bali.
Smart font Bali Galang dikembangkan dengan
tujuan untuk menciptakan font aksara Bali yang dapat mendukung perilaku kompleks aksara Bali serta dapat digunakan secara luas karena menggunakan encoding karakter internasional Unicode. Selain itu, pengembangan smart font ini diharapkan dapat menjadi langkah awal dalam melestarikan aksara Bali yang kini sudah semakin jarang digunakan. Dengan memanfaatkan perkembangan teknologi diharapkan
smart font ini akan dapat merangkul generasi muda
untuk menggunakannya sehingga aksara Bali tidak ditinggalkan.
Bahasa pemrograman yang digunakan dalam pengembangan smart font Bali Galang adalah Graphite
Description Language dengan Graphite Compiler versi
2.4. Kakas yang digunakan dalam pembangunan font
TrueType aksara Bali adalah FontLab Studio versi 5.
Untuk pengujian visual font digunakan kakas SIL
FieldWorks WorldPad versi 2.8. Selain itu juga
digunakan perangkat lunak lainnya seperti PSPad
Editor untuk pengembangan kode program serta Microsoft Keyboard Layout Creator versi 1.4 untuk
pembuatan keyboard driver sementara untuk keperluan pengujian.
12. PENGUJIAN
Pengujian terhadap perangkat lunak smart font Bali Galang bertujuan untuk:
1. Mengetahui kinerja smart font Bali Galang pada aplikasi pemrosesan teks WorldPad.
2. Mengetahui kesesuaian asosiasi antara karakter aksara Bali yang ditampilkan di layar dengan karakter yang mendasarinya di dalam memory. 3. Mengetahui kebenaran smart font Bali Galang
dalam mengakomodasikan tingkah laku kompleks aksara Bali.
4. Mengetahui kesesuaian karakter smart font Bali Galang dengan standard Unicode versi 5.0.
5. Mengetahui kinerja smart font Bali Galang pada aplikasi pemrosesan teks yang tidak mendukung
Graphite.
Pengujian smart font Bali Galang dilakukan dengan menggunakan kakas SIL FieldWorks WorldPad versi 2.8. Kakas ini merupakan aplikasi pemrosesan teks yang mampu membaca program GDL yang tertanam dalam smart font sehingga mampu menjalankan smart
font dengan baik. Selain itu aplikasi ini juga mampu
membangkitkan berkas catatan proses yang dikerjakan di memory ketika smart font dijalankan. Berkas inilah yang akan digunakan sebagai acuan dalam melakukan pengujian.
Untuk keperluan pengujian juga diperlukan
keyboard driver dengan layout keyboard yang mampu
Berikut ini adalah analisis dari seluruh hasil pengujian yang telah dilakukan:
1. Kasus uji untuk mengukur kinerja smart font Bali Galang pada aplikasi pemrosesan teks WorldPad. Hasil uji menunjukkan bahwa smart font Bali Galang telah memenuhi spesifikasi kebutuhan perangkat lunak yang telah dipaparkan. Hal ini dibuktikan dengan keberhasilan smart font Bali Galang untuk dibuka dalam aplikasi WorldPad, menampilkan karakter dalam berbagai ukuran font, dan mampu menjalankan fitur pemilihan spasi dalam aplikasi WorldPad.
2. Kasus uji untuk mengukur kesesuaian asosiasi antara karakter smart font Bali Galang yang ditampilkan di layar dengan karakter yang mendasarinya di dalam memory.
Hasil uji juga menunjukkan bahwa smart font Bali Galang telah memenuhi spesifikasi kebutuhan perangkat lunak yang telah dipaparkan. Smart font Bali Galang mampu menjaga konsistensi asosiasi antara karakter-karakter yang ditampilkan pada layar dengan karakter yang tersimpan dalam
memory. Karakter yang ditampilkan di layar
memiliki susunan yang sesuai dengan aturan penulisan aksara Bali tanpa harus kehilangan kesesuaian secara logical di memory. Karakter-karakter yang diposisikan di atas, bawah, ataupun sebelah kiri karakter sebelumnya tidak merusak susunan karakternya di memory.
3. Kasus uji untuk mengukur kebenaran smart font Bali Galang dalam mengakomodasikan tingkah laku kompleks aksara Bali.
Seluruh aturan penulisan aksara Bali yang didefinisikan dapat dilaksanakan dengan baik. Kapabilitas Graphite dalam mendukung perilaku kompleks aksara kompleks ternyata dapat digunakan secara sangat baik dalam mengimplementasikan aturan-aturan penulisan aksara Bali.
4. Kasus uji untuk mengukur kesesuaian karakter
smart font Bali Galang dengan standard Unicode
internasional versi 5.0.
Hal yang tidak kalah pentingnya adalah kompatibilitas smart font Bali Galang dengan standard Unicode internasional. Dengan
mengaplikasikan kode Unicode bahkan semenjak mulai mendesain font TrueType aksara Bali mampu menjamin smart font Bali Galang sesuai dengan standard Unicode. Hasilnya, pengujian
menunjukkan bahwa karakter-karakter dalam smart
font Bali Galang menggunakan kode Unicode
dengan benar.
5. Kasus uji untuk mengukur kinerja smart font Bali Galang pada aplikasi pemrosesan teks yang tidak mendukung Graphite.
Hasil uji menunjukkan perbedaan penggunaan
smart font Bali Galang pada aplikasi yang
mendukung Graphite dan tidak. Di sini dapat
terlihat bagaimana perilaku smart font Bali Galang tanpa program GDL dan betapa besarnya peranan aturan yang didefinisikan dalam program GDL dalam membentuk font aksara Bali yang sesuai dengan aturan penulisan aksara Bali.
Gambar 12-1 berikut memperlihatkan contoh tampilan smart font Bali Galang dalam aplikasi
WorldPad dalam berbagai ukuran font.
Gambar 12-1. Smart font Bali Galang dalam aplikasi
WorldPad.
13. KESIMPULAN
Kesimpulan yang dapat diambil setelah mengerjakan tugas akhir ini adalah:
1. Teknologi smart font dari Graphite mampu mendukung tingkah laku kompleks aksara Bali sehingga dapat melaksanakan aturan penulisan aksara Bali yang benar menurut ‘Pasang Aksara
Bali’.
2. Smart font Bali Galang hanya dapat berjalan dengan baik dalam aplikasi yang mendukung
Graphite, atau dengan kata lain aplikasi yang
terintegrasikan mesin Graphite. Jika smart font Bali Galang digunakan dalam aplikasi yang tidak mendukung Graphite maka smart font Bali Galang akan kehilangan ‘kecerdasannya’ dan bertingkah laku seperti font biasa.
3. Porsi karakter aksara Bali yang didaftarkan ke dalam standard Unicode internasional versi 5.0 cukup lengkap sehingga sanggup mendukung variasi penulisan aksara Bali dengan baik.
14. SARAN
Beberapa saran untuk pengembangan tugas akhir ini antara lain:
1. Pendefinisian aturan-aturan mengenai penggunaan huruf suci (simbol modre), notasi musik dan simbol musik lainnya serta konsonan tambahan untuk bahasa Sasak dapat melengkapi keterbatasan smart
font Bali Galang saat ini.
2. Aturan penulisan aksara Bali yang didefinisikan dalam smart font Bali Galang sudah cukup lengkap dan dapat digunakan dalam berbagai variasi penulisan aksara Bali. Namun tidak menutup kemungkinan masih ada aturan penulisan aksara Bali yang terlupa ataupun tidak tercantum dalam literatur yang digunakan selama pengembangan
smart font Bali Galang. Karenanya jika dirasa perlu
dapat dilakukan penambahan aturan-aturan penulisan aksara Bali dalam pengembangan smart
font Bali Galang berikutnya.
3. Glyph yang tersedia dalam smart font Bali Galang masih dapat ditambahkan lagi jumlahnya untuk mendukung variasi penulisan aksara Bali.
4. Bentuk font aksara Bali tidak terbatas hanya pada gaya yang digunakan dalam font TrueType Bali Galang ataupun Bali Simbar. Dapat dilakukan pengembangan gaya bentuk lainnya seperti bentuk modern, bentuk alternatif, ataupun kreasi kreatif lainnya yang kemudian tetap dapat ditambahkan fungsi cerdas menjadi smart font.
5. Tugas akhir ini melakukan pengujian smart font Bali Galang dalam aplikasi pemrosesan teks
WorldPad. Namun penggunaan smart font Bali
Galang tidak terbatas pada aplikasi ini saja. Ke depannya diharapkan smart font Bali Galang juga dapat diujikan kinerjanya dalam web browser
Mozilla Firefox, email client Mozilla Thunderbird,
dan aplikasi pemrosesan teks Open Office.
6. SIL International yang merupakan pengembang
Graphite dan Graphite Description Language juga
menyediakan Graphite API untuk
diimplementasikan dalam aplikasi pemrosesan teks. Hal ini memungkinkan pengembangan dukungan terhadap aksara Bali berikutnya seperti aplikasi pemrosesan teks khusus aksara Bali yang memiliki fungsi dictionary, thesaurus, fungsi pencarian, fungsi pengurutan, fungsi penghitungan kata, dan lain sebagainya.
7. Teknologi smart font Graphite dapat pula diimplementasikan dalam aksara-aksara daerah lainnya di Indonesia selain aksara Bali seperti aksara Jawa, aksara Bugis, dan aksara Sunda. 8. Keyboard driver yang digunakan dalam pengujian
smart font Bali Galang dipetakan menurut
keinginan penulis. Tidak ada kaidah-kaidah yang perlu ditaati dalam mendefinisikan keyboard driver
sehingga keyboard driver ini tidak bersifat mengikat dan setiap pengguna dapat mendefinisikan pemetaan keyboard driver menurut kenyamanannya sendiri.
15. DAFTAR PUSTAKA
[AGE07] Ager, Simon. (2007). Writing Systems and
Languages of the World: Balinese.
Omniglot.
http://www.omniglot.com/writing/balinese.h tm. Tanggal Akses: 27 Oktober 2007. [CAB04] Cabarga, Leslie. (2004). Learn FONTLAB
Fast. Iconoclassics Publishing Co.
[COR03] Correll, Sharon. (2003). Graphite:
Frequently Asked Questions. SIL
International.
http://scripts.sil.org/cms/scripts/page.php?sit e_id=nrsi&item_id=GraphiteFAQ. Tanggal Akses: 27 Oktober 2007.
[COR06] Correll, Sharon. (2006). Graphite Application Programmer's Guide (Implementing Graphite support in your text-processing application). SIL
International.
[GIL03] Gillam, Richard. (2003). Unicode
Demystified (A Practical Programmer’s Guide to the Encoding Standard).
Addison-Wesley.
[HAB05] Habibi, Imam. (2005). Pemrosesan Teks
Berbasiskan Standard Unicode Aksara Bali.
Tugas Akhir STEI ITB.
[HOS00] Hosken, M., B. Hallissy, W. Cleveland, S. Correll, A. Ward. (2000). Graphite
Description Language. SIL International.
[KOR06] Korpela, Jukka K. (2006). Unicode
Explained. O'Reilly Media, Inc.
[SIM95] Simpen, Wayan. (1995). Pasang Aksara
Bali. Upada Sastra.
[SUD03] Sudewa, Ida Bagus Adi. (2003). Proposal
Pembuatan Character Encoding, Smart Font, dan Keyboard Driver untuk Aksara Bali. Yayasan Bali Galang. http://www.babadbali.com/aksarabali/propos al-ind.htm. Tanggal Akses: 27 Oktober 2007.
[UNI06] The Unicode Consortium. (2006). The
Unicode Standard Version 5.0.
Addison-Wesley Professional.
[TIN94a] Tinggen, I Nengah. (1994). Pedoman
Perubahan Ejaan Bahasa Bali Dengan Huruf Latin dan Huruf Bali. Rhika Dewata
Singaraja.
[TIN94b] Tinggen, I Nengah. (1994). Celah-Celah
Kunci Pasang Aksara Bali. Rhika Dewata