ြမန်မာယူနီကုဒ်စာလံုးမ ားထဲတငွ ပ ် ါရေှိ သာ အလှိအ ု ေလ ာက် ေြပာင်းလွဲ ပုံေဖါ်သည့်် ေပးသည်စ့် နစ် (Rendering Engine)
သိေကာင်းစရာ
Normalization Normalization ဆိုတာ သတ်မှတ်ထာားတဲ့ စံ၊ ေရားထံိုားအတိုငား် ြဖစ်လာေအာင် လိုပေ ် ဆာင်ြခင်ားကို ဆိုလပ ို ါ တယ်။ Normalization ဆိုတာထက် Text Normalization ဆိုရင် ပိုြပား သင်ေ ဲ့ တာ်ပါတယ်။ စာေရားသာားသူ ေတွ က အမ ားမ ား ေရားသာားထာားတဲ့ ပံိုစံကို သတ်မတ ှ ်ထာားတဲ့ စံအတိုင်ား ြပန်လည်ား ေြပာင်ားယူတာကို ဆိုလိုတာပါ။ ဥပမာ အေနနဲ့ ကက ို ေ ို ရ ကို ရိုက်မယ်ဆိုပါေတာဲ့ … (တခ ျို့က ကြကားြပား၊ လံိုားြကားတင် တေခ ာင်ငင် က–-ို က–-ို ေရ လိုဲ့ ရိုက််ြကမယ်။ တခ ျို့က ကြကားြပား၊ တေခ ာင်ငင်၊ လံိုားြကားတင် က–ို- က–ို- ေရ လိုဲ့ ရိုက််ြကမယ်။) အဒါ ေတွကို သတ်မှတထ ် ာားတဲ့ စံတခို အေနနဲ့ ြပန်လည် ြပုစိုတာကို ေြပာတာပါ။ ဆိုလိုတဲ့ ရည်ရယ ွ ်ခ က်က အသံ တူ၊ အေ်ြကာင်ားတူ အကခရာေတွကို လိုအပ်တာထက် ပေ ို နရင် ြဖုတ်ပစ်တာမ ားကို ေြပာတာပါ။ ဥပမာ တ ေခ ာင်ားငင် အတိုနဲ့ အရှည်ကို ်ြကည်မ ဲ့ ယ်ဆရ ို င် အဓပပါယ်ေရာ အသံိုားအနှုန်ားပါ တူတာေ်ြကာင်ဲ့ Unicode ဇယာားမှာ တလံိုားတည်ားသာ ေနရာ ေပားထာားတာမ ားကို ဆိုလိုပါတယ်။ အလာားတူပ ဝိုက်ခ နဲ့ ေမာက်ခ ေတွ ကိုလည်ား တလံိုားတည်ား ထာားနိုင်ေအာင် ြကုားစာားရပါတယ်။ ဒါေပမယ်ဲ့ တိုင်ားရင်ားသာား ဘာသာ စကာားတခို ြဖစ်တဲ့ ပိုားကရင်ရဲ့ ေရားထံိုားမှာ ေမာက်ခ ကို မြဖစ်မေန သံိုားရမယ်ဲ့ အေနအထာားမ ားေ်ြကာင်ဲ့ ဝက ို ်ခ ေရာ၊ ေမာက် ခ ကိုပါ Unicode ဇယာားမှာ ထည်ထ ဲ့ ာားရတဲ့ အေနအထာားမ ားလည်ား ရှပါတယ်။
ဧရာြမန်မာ ယူနကိုဒ် စာလံိုားေတွဟာ ယရစ် ( ြ ) တခိုကလွရင် ြမန်မာစာေရားထံိုား အတိုငား် ပ အေြခခံ ထာားပါ တယ်။ ပံိုမှန်အာားြဖင်ဲ့ Normalization ဆိုတာကို ကိုတြခာား ပရိုဂရမ် တခိုအတွင်ားမှာ သွာားေရာက် လိုပေ ် ဆာင် ရတာ ြဖစ်ပါတယ်။ Normalization ကို အတိုငား် အတာ တခိုအထ လိုပေ ် ပားနိုငတ ် ဲ့ software ကိုလည်ား ဧရာ အင်တာနက် စာမ က်နာ ှ မှာ မည်သူမဆို အခမဲ့ ရယူနင ို ်ေအာင်လည်ား စစဉ်ေနပါတယ်။
Rendering Rendering ရဲ့ အဓပပါယ်ကို ြမန်မာလို ဆေလ ာ်မယ်ဲ့ စကာားလံိုားက ပံေ ို ဖာ်ြခင်ားပါ။ ပရိုဂရမ် အမ ာားစိုမှာ တိုက် ရိုကပ ် ံို ေဖာ်ြပားသာား မရှတဲ့ ကစစလိုမ ား၊ ဥပမာ 3D လိုဟာမ ားမှာ indirect setup လိုပ်ြပား အေခ ာသတ် ်ြကည်ဲ့ လိုတအ ဲ့ ခါ rendering လိုပ်တဲ့ သေဘာပါ။ Rendering မှာ ြမန်မာစာ ေရားထံိုားအရ အသံတူ၊ အေ်ြကာင်ားတူ ြဖစ် ေပမယ်ဲ့ အြမင်အာားြဖင်ဲ့ မတူတဲ့ ေနရာေတွမှာ စာလံိုားေတွရဲ့ ပံိုသဏ္ဌာန်ေတွကို အလ ဉ်ားသင်သ ဲ့ လို ေြပာင်ားေပား တာမ ားကို ဆိုလိုြခင်ား ြဖစ်ပါတယ်။ အထက်ပါ တေခ ာင်ားငင် အတိုအရှည် ဥပမာကိုပ ်ြကည်မ ဲ့ ယ်ဆရ ို င် တခ ျို့ ေနရာမှာ တေခ ာင်ားငင်ကို အတိုအေနနဲ့ အသံိုားြပုြပား၊ တခ ျို့ေနရာေတွမှာ အရှည်ကို အသံိုားြပုရတာမ ားပ ြဖစ် ပါတယ်။ ဧရာြမန်မာ ယူနကိုဒ် စာလံိုားေတွဟာ ကမဘာသံိုား အကခရာဇယာား (Universal Character Set) အ တွင်ား ေနရာခ တအ ဲ့ တိုငား် လိုက်နာထာားြပား (open type render) ကို အေြခခံြပားေတာဲ့ ဖန်တားထာားခတ ဲ့ ာလိုဲ့ ေြပာနိုင်ပါတယ်။ ြမန်မာစာလံိုားေတွရဲ့ ပံိုသဏ္ဌာန်ေတွကို အလ ဉ်ားသင်သ ဲ့ လို ေြပာင်ားလွေပားသည်ဲ့ ပံိုစံတခ ျို့မှာ
၁). ယရစ ( ြ ) တစမ ်းသာ ရိိုကရနလိအ ို ပ်ြပ်း၊ လိိုအပသည့် ျ
ၿ
ၾ
ႄ
ႃ
ႀ
ႂ
ကုိ အလုိအေလ ်ာက္ ေျပ်ာင္းလဲေပးနုိင္သည္။
သံုးတတ်သည်ေ့် နရာမ ား ( ြခ၊ ြက၊ ြခိ၊ ြကိ၊ ြကွ၊ … )
၂). -ါ နှင့် -- ကိိုေပါင်းထာ်းသည့် --ါ် ကိို တစ်ခိုြခင်ားရိုက်ပါက -ါ် သိုဲ့အလွယ်တကူ ေြပာင်ားလေပားနိုငသ ် ည်။
သံုးတတ်သည်ေ့် နရာမ ား (ေဒါ်၊ ေပါ်၊… ) ၃). တေခ ာင်းငင (--ို) နှင့် နှစေခ ာင်းငင (--ူ ) တိိုို့ကိို တစခိုသာ ရိိုကရနလိိုအပ်ြပ်း၊ လိိုအပသည့် တေခ ်ာင္းငင္ အရွည္ (--ဳ )၊ နွစ္ေခ ်ာင္းငင္အရွည္ ( --ဴ )
သံုးတတ်သည်ေ့် နရာမ ား ( ကွိွိုင်၊ မ ွိုး ခ ံွို၊ ခ ျူ၊… )
၄). ပါဌိဆင့်မ ာ်း ( -္က၊ -္ခ ၊ -္ဂ ၊ … ) တိိုို့အာ်း သားြခာားမှတ်သာားရန် မလိုအပ်ဘ
္
(u+1039) ကို အရင်ရိုက်ြပားရိုက်လိုသည်ဲ့ အကခရာကိုသာ
ရိုက်သာားရံိုြဖစ် ပါဌဆင်မ ဲ့ ာား အြဖစ်ေြပာင်ားလွေပားသွာားပါသည်။
ဥပမာ ။ ။ က ္က = ကက / စ ္စ = စစ သံုးတတ်သည်ေ့် နရာမ ား (တကကသိုလ်၊ ဝစစေပါက်၊ … ) ၅). နငယအတိို ( န ) အာ်း န ရိိုက်ြပ်း တေခ ာင်းငင ( --ို ) ရိိုကရံိုြဖင့် ေြပာင်းလဲေပ်းနိိုငသည။ ဥပမာ။ ။ န --ို = နို
သံုးတတ်သည်ေ့် နရာမ ား ( နိုင်ငံ၊ နုေဝ၊ နုနုရီ … ) ၆). ရေကာကအတိို ( ႐ ) အာ်း ရ ရိိုက်ြပ်း တေခ ာင်းငင ( --ို ) ရိိုကရံိုြဖင့် ေြပာင်းလဲေပ်းနိိုငသည။ ဥပမ်ာ။ ။ ရ ---ု = ရု
သံုးတတ်သည်ေ့် နရာမ ား ( ရံု၊ ရုပ်၊ … ) ၇). ြမနမာစာတွင ေအာကကြမင့်ကိို ေနရာအထာ်းအသိိုကိိုလိိုက၍ အနည်းဆံို်း ၃ ေနရာရှိပါသည။ အ ေြခခံ အာ်းြဖင့် ေအာကကြမင့် ( --့် ) ကိို
-့-႕႕
ကဲသ ့် ိိုို့ေတွြမငနိိုငပါသည။
ဥပမ်ာ။ ။ င့၊ --ု႔ ၊ --ဳ႕ ၊ --ြ႕
သံုးတတ်သည်ေ့် နရာမ ား ( က၊့် ြမင့််၊ ခန့််၊ ပို့်၊ ခ ံွို့၊ ေကွ့၊ ေကွ့၊ … ) ထိုသိုဲ့ ေြပာင်ားလြခင်ားမ ာားကို သရနှငတ ်ဲ့ ေသာ ွ အကခရာေပါ်မူတည်၍ ဗမာစာေရားနည်ားစနစ်အတိုင်ား ေြပာင်ားလ ရမည်ဲ့ပံိုစံကို ေြပာင်ားလြခင်ားကို ပံေ ို ဖါ်သည်စ ဲ့ နစ် (Rendering Engine) လိုပေ ် ဆာင်ေပားပါလမ်မ ဲ့ ည်။ ထို ပံေ ို ဖါ် သည်စ ဲ့ နစ် (Rendering) သည် (Unicode) ၏ စံသတ်မတ ှ ်ခ က်ကို လိုက်နာထာားေသာ Unicode Font မ ာားတွင် တစ်ပါတည်ားပါရှမည်သာြဖစ်သည်။
Auto Correction စာ႐ိုကသ ္ ည့္ကီးဘိုတ္စနစ္အတြငီး္ ထည့္သြင္ီးထာီးသည့္ မာီးေလ့မာီးတတ္သည့္ အမာီးမ ာီးကို အလိုအေလ ာက္စာ ျပင္သည့္စနစ္ Auto Correction သည္ အထက္တြင္ေရီးသာီးခေ ့ သာ Normalization ဆသ ို ည့္ သတ္မတ္ထာီး ေသာ စံ၊ ေရီးထံိုီးအတိုင္ီး ျဖစ္လာေအာင္ လိုပ္ေဆာင္ျခင္ီးတြင္မ ာီးစြာ ေထာက္ကူျပု လြယ္ကူေစရန္အတြက္ ဧရာ စာ႐ိုကန ္ ည္ီးစနစ္ ( Input Method Editor ) အတြင္ီးထည့္သြင္ီးေပီးထာီးပါသည္။
မှာ်းေလ့်မှာ်းတတသည့် ၂ခါထပထပရိိုကမိတစဲ့် ာလံို်း အမှာ်းမ ာ်း ( Repeat Errors ) - အသတ်ကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (က်)် - ေသားေသားတင်ကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (ကံ) - ေနာက်ပစ်ကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (က) - တစ်ေခ ာင်ားငင်ကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (ကို) - နှစေ ် ခ ာင်ားငင်ကို တစ်ခထ ို က်ပို၍ ရိုက်မြခင်ား (ကူ) - တစ်ေခ ာင်ားငင်နှင်ဲ့ နှစ်ေခ ာင်ားငင် ေရာ၍ ရိုက်မြခင်ား (ကူ) - ဟထိုားကို တစ်ခိုထက်ပ၍ ို ရိုက်မြခင်ား (လှ) - လံိုားြကားတင်ကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (က) - လံိုားြကားတင်ဆံခတ်ကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (က) - ဝဆွကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (ကွ) - ဝဆွဟထိုားကို တစ်ခိုထက်ပို၍ ရိုက်မြခင်ား (လွှ) - ေအာက်ြမစ်ကို တစ်ခထ ို က်ပို၍ ရိုက်မြခင်ား (က)ဲ့ ကို ထပ်ရိုက်လိုဲ့ မရေအာင် စမံေပားထာားြခင်ား၊ - ရှ လိုဲ့ရိုက်မလျှင် ရှ သိုဲ့ ေြပာင်ားေပားသွာားမည်။(ရေကာက် ရပင်ားရိုက်လျှင် ရေကာက် ဟထိုားသိုဲ့ ေြပာင်ားေပားသွာားမည်။) - ၄ င်ား လိုဲ့ရိုက်မလျှင် ၎င်ား သိုဲ့ ေြပာင်ားေပားသွာားမည်။ - ဈ လိုဲ့ရိုက်မလျှင် ဈ သိုဲ့ ေြပာင်ားေပားသွာားမည်။ -ဉာ လိုဲ့ရိုက်မလျှင် ဉာ သိုဲ့ ေြပာင်ားေပားသွာားမည်။ - ဝဆွဟထိုားကို ဝဆွဟထိုားအြဖစ် ေြပာင်ားေပားသွာားမည်။ - ြ+ သ လိုဲ့ရိုက်မလျှင် ဩ သိုဲ့ ေြပာင်ားေပားသွာားမည်။ - ေ+ ြ+ သ +ာ +် လိုဲ့ရိုက်မလျှင် ဪ သိုဲ့ ေြပာင်ားေပားသွာားမည်။ - က + -- + ---္က ။ စာလံိုားနှင်ဲ့ ပတ်ဆင်ဲ့ ်ြကာားတွင် လံိုားြကားတင် စသည်တိုဲ့ ရိုက်ခဲ့လျှင် အလိုအ ေလျှာက် လံိုားြကားတင်စသည်တိုဲ့ကို ေနာက်ေရွှျို့ေပားသည်။ - အသတ်၊ လံိုားြကားတင်၊ လံိုားြကားတင် ဆံခတ် စသည်တိုဲ့ကို ေရာရိုက်မရေအာင်ြပုလပ ို ်ထာားသည်။ - တစ်ေခ ာင်ားငင်၊ နှင်ဲ့ နှစေ ် ခ ာင်ားငင်ကို ေရာရိုက်မရေအာင်ြပုလပ ို ်ထာားသည်။
- ေသားေသားတင်နှင်ဲ့ ေနာက်ပစ်ကို ေရာရိုက်မရေအာင် ြပုလိုပ်ထာားသည်။ - လံိုားြကားတင် ရိုက်မြပား လံိုားြကားတင်ဆံခတ်ကို ြပန်ြပင်ခ င်တာ၊ တစ်ေခ ာင်ားငင်နဲ့ ၂ေခ ာင်ားငင် မှာား ရိုက်မြခင်ား၊ ပံိုမှန်အာားြဖင်မ ဲ့ ှာားသွာားရင် ြပန်ဖ က်ြပား ြပင်ရပါတယ်။ အတာကိုဲ့ ြပန်ဖ က်စရာ မလိုဘ ဒတိုင်ားထပ်ရိုက်လိုက်ရိုန ံ ဲ့ သူဲ့ဘာသာသူ replace လိုပ်ေပားေအာင် စမံထာားပါတယ်။ ထိုဲ့အတူ
- လံိုားြကားတင်၊ လံိုားြကားတင် ဆံခတ်၊ ေနာက်ပစ် - တစ်ေခ ာင်ားငင်၊ နှစ်ေခ ာင်ားငင် မ ာားတွင်ပါ အလိုပ်လိုပေ ် အာင် စမံထာားြခင်ား၊ - ရေကာက် ေနရာတွင် ၇ ကို မှာားရိုက်မလျှင် အလိုအေလျှာက်ြပင်ေပားြခင်ား၊ - ဝလံိုား ေနရာတွင် ၀ သိုညကို မှာားရိုက်မလျှင် အလိုအေလျှာက်ြပင်ေပားြခင်ား၊ - ဂငယ် ေနရာတွင် ၈ ရှစ်ကို မှာားရိုက်မလျှင် အလိုအေလျှာက်ြပင်ေပားြခင်ား၊
တိုဲ့ကို ထည်သ ဲ့ ွင်ားေပားထာားပါတယ်။ ထိုဲ့အြပင် ဧရာလက်ကွက်ကိုလည်ား အြခာားြမန်မာစာရိုက်နည်ား မ ာားကသ ဲ့ ိုဲ့ ခလိုပ်အေရအတွက် အမ ာားြကားမလဘ ို အလွယ်တကူ ေရားသာားနိုင်ေအာင်လည်ား စမံ ေပားထာားပါတယ်။