ကျယ်ပြန့်စွာအသုံးပြုသောဆာဗာဘေးထွက် Scripting Language တွင် PHP ၏ built-in Image Processing Library GD သည်ကွဲပြားခြားနားသောဗားရှင်းများပြောင်းလဲမှုများအချို့ကိုရရှိခဲ့သည်။ ဤဆောင်းပါးသည် Importfontwidth () function ကိုကွဲပြားခြားနားသော PHP ဗားရှင်းများ၏အပြုအမူကွဲပြားမှုကိုအာရုံစိုက်ပါက developer များအနေဖြင့် function ကိုမှန်ကန်စွာနားလည်ပြီးအသုံးပြုသောပြ problems နာများကိုရှောင်ရှားရန်နှင့်ဗားရှင်းကွဲပြားခြားနားမှုများကြောင့်ပြ problems နာများကိုရှောင်ရှားပါလိမ့်မည်။
ImageFontwidth () သည်သတ်မှတ်ထားသော built-in font width ရရှိရန်အသုံးပြုသော PHPG GD စာကြည့်တိုက်တွင် function တစ်ခုဖြစ်သည်။ ၎င်း၏အဓိပ္ပါယ်ဖွင့်ဆိုချက်ကိုအောက်ပါအတိုင်းဖြစ်သည် -
int imagefontwidth ( int $font )
Parameter $ font : များသောအားဖြင့် 1 မှ 5 မှ 5 အထိကိန်းဂဏန်းများကိုကိုယ်စားပြုသည်။
ပြန်လာတန်ဖိုး - ဖောင့်၏အက်ခရာအကျယ် (pixel) ။
ဤလုပ်ဆောင်ချက်သည်အဓိကအားဖြင့် ရုပ်ပုံများကို တွက်ချက်ရန်အဓိကအားဖြင့်ဗဟိုနှင့် alignment salignment ကိုပိုမိုထိရောက်စေရန်စာသားအကျယ်ကိုတွက်ချက်ရန်အဓိကအားဖြင့်အသုံးပြုသည်။
PHP 5.x နှင့်အစောပိုင်းတွင် ImageFontwidth () တွင်မတည်ငြိမ်သောအရာများပြုလုပ်သောကြောင့်ပြန်လည်နေရာချထားသည့်အ 0 တ်အစားသည်သတ်မှတ်ထားသောဖောင့်၏တိကျသောအရွယ်အစားနှင့်သက်ဆိုင်သောသတ်မှတ်ထားသောသတ်မှတ်ထားသောတန်ဖိုးတစ်ခုဖြစ်သည်။ ဥပမာအားဖြင့်:
<?php
for ($font = 1; $font <= 5; $font++) {
echo "Font $font width: " . imagefontwidth($font) . "\n";
}
?>
အောက်ပါအတိုင်း output ကိုအကြမ်းအားဖြင့်:
Font 1 width: 5
Font 2 width: 6
Font 3 width: 7
Font 4 width: 8
Font 5 width: 9
၎င်းသည် imagefonteight () နှင့်အလုပ်လုပ်သည်, aliasing ဆန့်ကျင်ရေးနှင့်ချုံ့ခြင်းမရှိဘဲ font size တပ်ဆင်ထားသည်။
PHP 7.x ဗားရှင်းသည် GD စာကြည့်တိုက်သို့နောက်ခံအကောင်းမြင်မှုများပြုလုပ်ခဲ့ပြီး, ImageFontwidth () ၏အပြုအမူသည်အခြေခံအားဖြင့်တသမတ်တည်းဖြစ်သည်။ နေဆဲကြိုတင်သတ်မှတ်ထားသောအကျယ်ကိုပြန်ပို့ခြင်းနှင့် built-in font နံပါတ် 1 မှ 5 ကိုထောက်ပံ့နေကြသည်။
သို့သော်, GD စာကြည့်တိုက်ဗားရှင်းသည်အသက်ကြီးလွန်းပါက, GD စာကြည့်တိုက်နှင့် PHP ဗားရှင်းကိုထပ်တူပြုခြင်းကိုအဆင့်မြှင့်တင်ရန်အကြံပြုသည်။
PHP 8.x သည်ဤလုပ်ဆောင်မှုကိုအခြေခံကျကျပြောင်းလဲခြင်းကိုအခြေခံကျကျပြောင်းလဲခြင်းမရှိဘဲ imagefontwidth () ကိုအထောက်အပံ့ဆက်လက်ထိန်းသိမ်းထားသည်။ သို့သော် PHP 8 သည်တင်းကျပ်သောအမျိုးအစားစစ်ဆေးခြင်းကိုအလေးထားသည်။ ဥပမာအားဖြင့်:
<?php
echo imagefontwidth("3"); // အမှားတစ်ခုဖြစ်ပေါ်စေလိမ့်မယ်
?>
ဝင်လာသော $ font parameter သည်ကိန်းတစ်ခုဖြစ်ကြောင်းသေချာစေရန်လိုအပ်သည်။
ထို့အပြင် PHP 8.x သည် GD စာကြည့်တိုက်ကိုပိုမိုကောင်းမွန်သောပုံရိပ်များနှင့်ပိုမိုကောင်းမွန်သောစွမ်းဆောင်ရည်ကိုထောက်ပံ့နိုင်သည့် GD စာကြည့်တိုက်ကိုတိုးမြှင့်ပေးသည် ။
ImageFontwidth () ကိန်းဂဏန်းများ 1 မှ 5 ကိုသာလက်ခံသည် ။
<?php
var_dump(imagefontwidth(6)); // bool(false)
?>
ထို့ကြောင့်, ဥပဒေရေးရာစာလုံးအရေအတွက်ကိုသေချာအောင်လုပ်ပါ။
ImageFontwidth () GD စာကြည့်တိုက်တွင်တည်ဆောက်ထားသောဖောင့်များဖြင့်သာအလုပ်လုပ်သည်။ အကယ်. သင်သည် isionettext () စိတ်ကြိုက်ဖောင်များကိုတင်ရန် function များကိုအသုံးပြုပါက imagefontwidth () ကို width ကို 0 င်ရန်မသုံးနိုင်ပါ။ စာသားအကျယ်ကိုအခြားနည်းများဖြင့်တွက်ချက်ရမည် ။
ကွဲပြားခြားနားသော operating systems တွင် GD စာကြည့်တိုက်တွင်အကောင်အထည်ဖော်မှုကွဲပြားမှုများကြောင့် Font Width တန်ဖိုးများသည်ရှားပါးသောအခြေအနေများတွင်အနည်းငယ်ကွဲပြားနိုင်သည်, သို့သော်ယေဘုယျအားဖြင့်အဆင်အပြင်ကိုမထိခိုက်ပါ။
imagefontwidth () ကိုအသုံးပြုပြီး string ၏အကျယ်ကိုမည်သို့တွက်ချက်ရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
<?php
header('Content-Type: image/png');
$img_width = 200;
$img_height = 50;
$image = imagecreatetruecolor($img_width, $img_height);
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
imagefill($image, 0, 0, $white);
$text = "Hello PHP";
$font = 3;
$font_width = imagefontwidth($font);
$text_width = strlen($text) * $font_width;
$x = ($img_width - $text_width) / 2;
$y = ($img_height - imagefontheight($font)) / 2;
imagestring($image, $font, $x, $y, $text, $black);
imagepng($image);
imagedestroy($image);
?>
ဤနေရာတွင်ကျွန်ုပ်တို့သည် imagefontwidth () နှင့် imagefonfontheight () နှင့် imagefonfontheight () ကို အသုံးပြုသည်။ စာသား၏အလျားလိုက်နှင့်ဒေါင်လိုက်ဗဟိုပြုရန်အလျားလိုက်နှင့်ဒေါင်လိုက်စင်တာကိုရရှိရန်အတွက် string ကိုတွက်ချက်ရန်။
ထင်မြင်ချက် | အဓိကအပြုအမူ | မှတ်သားရန်အရာ |
---|---|---|
PHP 5.x | ပုံသေ font font width, တည်ငြိမ်သော, | အဓိကပြောင်းလဲမှုမရှိပါ |
PHP 7.x | အခြေခံအားဖြင့်အပြောင်းအလဲမရှိပါ, အခြေခံပုံစံလိုအပ်ကြောင်း, GD စာကြည့်တိုက်ကိုညှိနှိုင်းဆောင်ရွက်သည် | အမှားအယွင်းများကိုရှောင်ရှားရန် GD စာကြည့်တိုက်ကိုအဆင့်မြှင့်တင်ပါ |
PHP 8.x | features features ကိုသဟဇာတစောင့်ရှောက်ရန်တိုးမြှင့်အမျိုးအစားစစ်ဆေးခြင်း | အဆိုပါ parameters တွေကိုကိန်းဖြစ်ရမည်, အမှားကပိုထင်ရှားပါတယ် |
ImageFontwidth () GD Image Processing အတွက်အခြေခံနှင့်ရိုးရှင်းသော function ကိုဖြစ်ပါတယ်။ ၎င်းသည်ထင်ပေါ်ကျော်ကြားမှုရှိပုံရသော်လည်း၎င်း၏ဆင်ခြင်တုံတရားသည် developer များကစာသားဆွဲခြင်းအကျိုးသက်ရောက်မှုကိုပိုမိုတိကျစွာထိန်းချုပ်ရန်ကူညီနိုင်သည်။
အကယ် . သင်အသုံးပြုစဉ်အတွင်းဗားရှင်းသဟဇာတကိစ္စရပ်များကိုသင်ကြုံတွေ့ရပါက,
// ဥပမာ URL အသုံးပြုမှု m66.net အစားထိုးဒိုမိန်းအမည်သရုပ်ပြ
$url = "https://m66.net/example/path";
echo "<a href=\"$url\">ဥပမာကိုရယူရန်ကိုနှိပ်ပါ</a>";