PHP တွင်ရုပ်ပုံများကိုထုတ်ယူသောအခါ GD စာကြည့်တိုက်မှပေးသောလုပ်ငန်းဆောင်တာများကိုစာသားဆွဲရန်အသုံးပြုသည်။ ImageFontwidth () သည် built-in font width ရရန်အသုံးပြုသောလုပ်ဆောင်ချက်များထဲမှတစ်ခုဖြစ်သည်။ သို့သော် developer များစွာသည် TrueType ဖောင့်ကိုအသုံးပြုရန်ကြိုးစားသောအခါ imagefontwidth () function သည်ကောင်းမွန်စွာအလုပ်လုပ်သည်ကိုတွေ့ရှိလိမ့်မည်။ ဤဆောင်းပါးသည်ဤဖြစ်စဉ်နောက်ကွယ်ရှိအကြောင်းရင်းများကိုနက်နက်နဲနဲဖော်ပြထားသည်။
ImageFontwidth () သည် PHPG GD စာကြည့်တိုက်တွင်လုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ၎င်း၏ function ရှေ့ပြေးပုံစံအောက်ပါအတိုင်းဖြစ်သည် -
imagefontwidth(int $font): int
Parameter သည် ဒေါ်လာစာလုံး (1 မှ 5 မှ 5) ကိုကိုယ်စားပြုသောကိန်းဂဏန်းကိုကိုယ်စားပြုသည်။ ဤလုပ်ဆောင်ချက်သည် GD စာကြည့်တိုက်မှကြိုတင်သတ်မှတ်ထားသောဖောင့်များကိုသာထောက်ပံ့သည်။
PHPG GD စာကြည့်တိုက်သည်အဓိကဖောင့်ပုံဆွဲခြင်းနည်းလမ်းနှစ်ခုကိုထောက်ပံ့သည်။
Built-in ဖောင့်များ - GD စာကြည့်တိုက်တွင်ပါ 0 င်သော bitmap fonts များဖြင့်ရေးဆွဲခြင်း,
Truetype font (TTF) - Egyplettext () , ပြင်ပ .ttf font files များကဲ့သို့သောလုပ်ဆောင်ချက်များနှင့်အတူ .Ttf font files များနှင့်ပိုမိုမြင့်မားသောအရည်အသွေးမြင့်စာသားပြန်ဆိုခြင်းများကိုထောက်ပံ့ရန်အသုံးပြုနိုင်သည်။
ImageFontwidth () function ၏ဒီဇိုင်း၏အစတွင်သာ built-in font ၏ပုံသေအကျယ်ကိုသာမေးမြန်းခြင်း။ ၎င်း၏အကောင်အထည်ဖော်မှုယုတ္တိဗေဒသည် dynamically font ဖိုင်များမဟုတ်ဘဲကြိုတင်သတ်မှတ်ထားသောဖောင့်အချက်အလက်များအပေါ်အခြေခံသည်။ သတ်သတ်မှတ်မှတ်အကြောင်းပြချက်မှာအောက်ပါအတိုင်းဖြစ်သည် -
Built-in ဖောင့်များသည် fixed bitmap fonts များဖြစ်သည် built-in font ၏ဇာတ်ကောင်အကျယ်ကိုကြိုတင်သတ်မှတ်ထားပြီးပုံသေပြီးပုံသေ ပြီးပုံfontwidth () သည် သက်ဆိုင်ရာအကျယ်တန်ဖိုးကိုတိုက်ရိုက်ပြန်ပို့နိုင်သည်။
Truetype ဖောင့်များသည် dynamic analysis လိုအပ်သည်
Truetype font ဖိုင်များတွင်ရှုပ်ထွေးသော vector data များပါ 0 င်သည်။ စာလုံးရေသည်တိုင်းတာခြင်းဖိုင်တွင်တိုင်းတာခြင်းဆိုင်ရာအချက်အလက်များပေါ်တွင်မူတည်သည်။ ImageFontwidth () TTF ဖိုင်များကိုခွဲခြမ်းစိတ်ဖြာနိုင်စွမ်းမရှိပါ။
ကွဲပြားခြားနားသောအလုပ်လုပ်တဲ့ positioning
ImageFontwidth () သည် built-in ဖောင့်များအတွက်ဒီဇိုင်းပြုလုပ်ထားသောအထောက်အမသုံးသောလုပ်ဆောင်ချက်ဖြစ်သည်။ TTF font width ကိုကိုင်တွယ်ရန် tsf font width ကိုပုံမှန်အားဖြင့် imagettfbobbox () ကဲ့သို့သောလုပ်ဆောင်မှုများဖြင့်ပြုလုပ်လေ့ရှိသည်။ ၎င်းသည်စာသား၏နယ်နိမိတ်သေတ္တာကိုပြန်ပို့နိုင်သည်။
TrueType ဖောင့်များအတွက် Igejtfbox () function ကိုအသုံးပြုရန်အကြံပြုသည်။
<?php
$fontFile = 'm66.net/fonts/arial.ttf'; // ကျေးဇူးပြု. Font ဖိုင်လမ်းကြောင်းမှန်ကိုသေချာအောင်လုပ်ပါ
$fontSize = 12;
$text = "Hello, world!";
// စာသား box ကို box ကိုရယူပါ
$bbox = imagettfbbox($fontSize, 0, $fontFile, $text);
// အကျယ်တွက်ချက်
$width = abs($bbox[4] - $bbox[0]);
echo "စာသားအကျယ်ဖြစ်ပါတယ်: " . $width . " pixels";
?>
စာသား၏ထောင့်လေးထောင့်၏ညှိနှိုင်းမှုများဖြစ်သောဒြပ်စင် 8 ခုပါ 0 င်သော angbartfbox () imagettfbox တစ်ခုပြန်ပို့သည်။ စာသားအကျယ်ကိုအလျားလိုက်သွဒီနိတ်ကွဲပြားမှုကိုတွက်ချက်ခြင်းဖြင့်ရရှိနိုင်သည်။
imagefontwidth () gd built-in fonts အတွက်သာအသုံးပြုနိုင်ပြီး TrueType ဖောင့်ကိုမကိုင်တွယ်နိုင်ပါ။
Truetype font width တွက်ချက်မှုသည် imagettfbox () function ကိုလိုအပ်သည်။
အဆင့်မြင့်စာသားပုံဆွဲရန် GD စာကြည့်တိုက်ကိုမှန်ကန်စွာအသုံးပြုရန်ကူညီလိမ့်မည်။