Android System မွာ Font ေတြဘယ္လိုအလုပ္လုပ္သလဲ...
Android မွာ Font File ( .ttf ) ေတြကို system/fonts ေအာက္မွာထည့္ထားပါတယ္။ ဒါေပမယ့္ system/fonts ေအာက္ကို font file သြားထည့္လိုက္႐ုံနဲ႔ေတာ့ ၎ font ကိုျမင္ရမွာမဟုတ္ပါဘူး။ Android မွာ စာဖိုင္ေတြကိုေတြ႕ၿပီးဆိုတာနဲ႔ ပထမဆုံး system/etc ထဲမွာရွိတဲ့ system_fonts.xml ဆိုတဲ့ဖိုင္ထဲမွာ မွတ္တမ္းတင္ထားတဲ့ စာရင္းမွာပါမပါ စစ္ေဆးပါတယ္။ ၎ system_fonts.xml ထဲမွာမွတ္တမ္းတင္ထားတဲ့စာရင္းထဲပါရင္ ၎ Font Style အတိုင္းျပေပးမွာျဖစ္ပါတယ္။ တကယ္လို႔ system_fonts.xml စာရင္းထဲမွာမပါတဲ့ Font အမ်ိဳးအစားဆိုရင္ေတာ့ system/etc ထဲက fallback_fonts.xml ဆိုတဲ့ XML File ထဲက Font List မွာ ပါ မပါ ထပ္ၿပီးေတာ့စစ္ေဆးပါတယ္။ အဲဒီလိုစစ္ေဆးတဲ့အခါမွာလည္း အေပၚကေန ေအာက္ဘက္ အထိ အစဥ္အတိုင္းစစ္ေဆးပါတယ္။ ၎စာလုံးေတြကို ျပေပးနိုင္မယ္ Font ေတြ႕ၿပီဆိုတာနဲ႔အဲ့ဒီ Font Style ကိုသုံးၿပီးျပေပးပါတယ္။ ဒါက Android System မွာ Font ေတြအလုပ္လုပ္ပုံကို အၾကမ္းဖ်င္းရွင္းျပတာျဖစ္ပါတယ္။
ဒါဆိုရင္ ျမန္မာေဖာင့္ျမင္ရဖို႔အတြက္ ဘယ္လိုလုပ္မလဲ။
Android ကိုျမန္မာစာသြင္းတဲ့ အခါမွာ Method ႏွစ္မ်ိဳးကို အသုံးမ်ားပါတယ္။
Replacing Method
ဒီနည္းက ခုနေျပာတဲ့ system_fonts.xml စာရင္းထဲမွာပါတဲ့ system font တစ္ခုခုနဲ႔နာမည္တူ Change ေပးလိုက္တာျဖစ္ပါတယ္။ ဒါကို Replacing Method လို႔ေခၚပါတယ္။ system fonts ကိုနာမည္တူ Change ေပးရမယ္ဆိုေတာ့ ကၽြန္ေတာ္တို႔သြင္းမယ့္ Font File ကို ၎ System Font နဲ႔နာမည္တူ ေျပာင္းေပးရမွာေပါ့။ၿပီးေတာ့မွာ ခုနက Font ေတြထားတဲ့ေနရာျဖစ္တဲ့ system/fonts ေအာက္ကို သြားၿပီးထားေပးရမွာပါ။ အရင္ရွိၿပီးသား System Font နဲ႔ Repalce လုပ္ေပးရမွာေပါ့။
XML Method
ဒီ ဒုတိယနည္းကေတာ့ fallback_fonts.xml ကိုျပင္တာပါ။ဖုန္းတစ္လုံးနဲ႔တစ္လုံး falllback_fonts.xml မွာပါတဲ့ Font ေတြက အတိအက်မတူပါဘူး။ ကၽြန္ေတာ္ကေတာ့ ၎ fallback_fonts.xml ကို ADB Command သုံးၿပီး PC ထဲဆြဲထုတ္၊ XML File ကို Notepad++ နဲ႔ျပင္၊ၿပီးေတာ့မွာ system/etc ေအာက္ကမူလ fallback_fonts.xml ေနရာမွာျပန္အစားထိုးလိုက္တာပါ။တကယ္လို႔စာဖတ္သူက fallback_fonts.xml ကိုဆြဲထုတ္ၿပီးမျပင္ခ်င္ဘူးဆိုရင္ ၎ fallback_fonts.xml ထဲက Font Family ထဲကို Font အသစ္ထည့္လို႔ရပါေသးတယ္။ ဒါကေတာ့ /vendor/etc/ ထဲမွာ fallback_fonts.xml ဖိုင္တစ္ခုထည့္ေပးရမွာပါ။ ဒါေပမယ့္ ဒီ fallback_fonts.xml ထဲက စာရင္းထဲမွာေတာ့ စာဖတ္သူထည့္မယ့္ Font Family တစ္ခုပါရင္ ရပါၿပီ။ဒါေပမယ့္ ၎ Font ကို system/etc/ ထဲက fallback_fonts.xml ထဲမွာဘယ္ႏွစ္ခုေျမာက္မွာထည့္ခ်င္လည္းဆိုတဲ့ Order ကိုေတာ့သတ္မွတ္ေပးရပါတယ္။ XML ေတြအားလုံးျပင္ၿပီးမွ system/fonts ထဲမွာ စာဖတ္သူထည့္မယ့္ Font အသစ္ကိုထည့္ေပးရမွာပါ။ နာမည္ေျပာင္းစရာမလိုေတာ့ပါဘူး။
***************************************************************
ဒီ Post မွာ အမွားအယြင္းတစ္စံုတစ္ရာပါပါက စာေရးသူရဲ႕ ေလ့လာမွဳအားနည္းခ်က္ေၾကာင့္ျဖစ္ပါလိမ့္မယ္။ Font သြင္းနည္းအေသးစိတ္နဲ့ XML File ျပင္နည္းကို စာေရးသူရဲ႕ Android System စာအုပ္ထဲမွာ စာနဲ႕အျပင္ Video သင္ခန္းစာအေနနဲ႔ပါရွင္းျပထားပါေသးတယ္။
အားလံုးအဆင္ေျပပါေစ။
credit: စည္သူပိုင္
Admin Sai