လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ImageFontwidth မသုံးမီလူသိများသောဖောင့်နံပါတ် ()

ImageFontwidth မသုံးမီလူသိများသောဖောင့်နံပါတ် ()

M66 2025-05-28

ImageFontwidth () PHP ၏ GD စာကြည့်တိုက်ကိုပုံရိပ်ထုတ်ပေးရန် PHP ၏ GD စာကြည့်တိုက်ကိုအသုံးပြုသောအခါအတော်လေးရိုးရှင်းသော်လည်းအလွန်လက်တွေ့လုပ်ဆောင်ချက်ဖြစ်သည်။ ၎င်း၏ function ကိုသတ်မှတ်ထားသောစာလုံးအရေအတွက်နှင့်သက်ဆိုင်သောဖောင့်၏အကျယ်ကိုပြန်ပို့ရန်ဖြစ်သည်။ သို့သော် developer များစွာသည်ဖောင့်နံပါတ်များ၏အမှန်တကယ်အရေးပါမှုနှင့်၎င်းကိုအသုံးမပြုမီရုပ်ပုံအပြင်အဆင်အပေါ်သက်ရောက်မှုများကိုအမှန်တကယ်နားမလည်ကြပါ။ ဤဆောင်းပါးသည် ImageFontwidth () မခေါ်မီသင်သိထားရမည့်အဓိကဗဟုသုတအမှတ်များကိုလေ့လာရန်ဤဆောင်းပါးသည်လေ့လာလိမ့်မည်။

1 ။ မူရင်းနံပါတ်နှင့်အဓိပ္ပါယ်ဖွင့်ဆိုချက်

GD စာကြည့်တိုက်တွင်စာလုံးအားလုံးသည်လွတ်လပ်စွာရွေးချယ်ခြင်းမဟုတ်ပါ။ PHP သည် 1 မှ 5 အထိရေတွက်ထားသော built-in fonts များကိုကြိုတင်သတ်မှတ်ထားသောဖောင့်များကိုသတ်မှတ်ပေးသည်။ နံပါတ်တစ်ခုစီသည်မတူကွဲပြားသောအရွယ်အစားအမျိုးမျိုးနှင့်ကိုက်ညီသည်။

ဖောင့်နံပါတ် font width font အမြင့်
1 6 pixels 8 pixels
2 8 pixels 12 pixels
သုံး 10 pixels 16 pixels
4 12 pixels 16 pixels
5 12 pixels 24 pixels

These numbers are the basis for using functions such as imagestring() , imagestringup() , imagechar(), etc., that is, the parameters you must pass in when calling imagefontwidth() or imagefontheight() .

2 ။ ImageFontwidth ၏အခြေခံအသုံးပြုမှု ()

imagefontwidth () ၏ syntax သည်အလွန်ရိုးရှင်းပါသည်။

 $width = imagefontwidth($font);

အထက်တွင်ဖော်ပြခဲ့သောစာလုံး အရေအတွက်ကို မည်သည့်နေရာတွင်ရှိသည်။ ဤလုပ်ဆောင်ချက်သည်ဖောင့်၏ဇာတ်ကောင်တစ်ခုစီ၏အကျယ် (pixels) အကျယ်ကိုပြန်ပို့သည်။ ပုံတွင်စာသား၏စာသား၏အတိအကျနှင့်ချည်နှောင်ထားသောသေတ္တာကိုတွက်ချက်သောအခါ၎င်းသည်အလွန်အရေးကြီးသည်။

ဥပမာအားဖြင့်, သင်သည် font နံပါတ် 3 ကို သုံး. "ဟဲလို" ထုတ်လုပ်လိုသည်ဆိုပါစို့။

 $font = 3;
$text = "Hello";
$textWidth = imagefontwidth($font) * strlen($text);

ဤစာသားကို output လုပ်ရန်အတွက်လိုအပ်သော width သည် 10 * 5 = 50 pixels ဖြစ်သည်ကိုသင်သိနိုင်သည်။

3 ။ ပုံခြေနှင့်အတူသုံးပါ ()

Font Width ကိုသင်နားလည်ပြီးသည်နှင့်စာသားကိုပုံရိပ်တွင်ပိုမိုတိကျစွာဆွဲနိုင်သည်။

 $img = imagecreate(200, 50);
$bg = imagecolorallocate($img, 255, 255, 255);
$color = imagecolorallocate($img, 0, 0, 0);

$text = "Welcome!";
$font = 4;
$x = (200 - imagefontwidth($font) * strlen($text)) / 2;
$y = (50 - imagefontheight($font)) / 2;

imagestring($img, $font, $x, $y, $text, $color);

header("Content-Type: image/png");
imagepng($img);
imagedestroy($img);

ဒီကုဒ်စင်တာများ "ကြိုဆိုပါတယ်!" 200x50 အဖြူပုံရိပ်တွင်။

4 ။ အမှန်တကယ်ကိစ္စ - အတည်ပြုကုဒ်၏ပုံရိပ်အကျယ်ကိုတွက်ချက်ပါ

ရိုးရှင်းသောအတည်ပြုကုဒ်ကိုတည်ဆောက်ရာတွင်အောက်ပါယုတ္တိဗေဒကိုမှန်ကန်သောအကျယ်ပုံရိပ်များဖန်တီးရန်အောက်ပါယုတ္တိဗေဒကိုရေးနိုင်သည်။

 $code = "ABCD";
$font = 5;
$width = imagefontwidth($font) * strlen($code);
$height = imagefontheight($font);
$image = imagecreate($width + 20, $height + 10); // အဖြူရောင်အာကာသအပို

ဤနည်းအားဖြင့်သင်သည်စာသားသို့မဟုတ်အလွန်အကျွံရုပ်ပုံများကိုအလွန်အကျွံအသုံးပြုခြင်းကိုရှောင်ကြဉ်ရန်မတူညီသောအရှည်ဆုံး၏အတည်ပြုချက်ကုဒ်အရပုံရိပ်အရွယ်အစားကိုအလိုအလျောက်ညှိနိုင်သည်။

5 ။ မှတ်စုဖို့အရာ

  1. imagefontwidth () built-in fonts နှင့်သာအလုပ်လုပ်သည် (နံပါတ် 1 မှ 5) နှင့်သာအလုပ်လုပ်သည်

  2. အကယ်. တရားမ 0 င်ဖောင့်နံပါတ်မပြည့်မီလျှင် function ကို မှားယွင်းစွာ ပြန်ပို့သည်။

  3. အချို့သောဖောင့်များ (ထိုကဲ့သို့သောနံပါတ်များ 4 နှင့် 5 စသည့်) တွင် တူညီသောအကျယ်အဝန်းရှိသည်။ သို့သော်ကွဲပြားခြားနားသောအမြင့်များရှိသည်

6 ။ dynamically link အတွက်စာသားအရှည်တွက်ချက်

စာသားနှင့်အတူ dynamic ပုံသဏ္ဌာန် links ထုတ်လုပ်လျှင်:

 $url = "https://m66.net/generate-image.php?text=HelloWorld";

ဆာဗာဘက်တွင်တိကျသောပုံရိပ်မျိုးဆက်များကိုလွယ်ကူချောမွေ့စေရန်ဤစာသား၏ pixels သည်ပုံတွင်မည်မျှကြာသည်ကိုကြိုတင်သိလိုသည်။ ဤအချိန်တွင် imagefontwidth () ပေါင်းစပ်မှုကိုအသုံးပြုနိုင်သည်။

 $font = 2;
$text = "HelloWorld";
$width = imagefontwidth($font) * strlen($text);
// တက် setting အတွက်အသုံးပြုနိုင်ပါသည် canvas သို့မဟုတ် parameter သည်စိစစ်အတည်ပြု

ဤ application အမျိုးအစားသည်ပုံရိပ်လက်မှတ်ထုတ်လုပ်ခြင်းနှင့် link sink image tagence ကဲ့သို့သောစနစ်များတွင်အလွန်အသုံးများသည်။

အကျဉ်းချုပ်

အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဖောင့်အရေအတွက်နှင့် imagefontwidth ၏အဓိပ္ပာယ်ကိုလျစ်လျူရှုခြင်းနှင့် imagefontwidth ၏အဓိပ္ပါယ်ကိုလျစ်လျူရှုခြင်းသည်စာသားပြသသည့်အနေအထားနှင့်ရှုပ်ထွေးစွာပြ problems နာများကို offsetting လုပ်ခြင်းကဲ့သို့သောပြ problems နာများကိုဖြစ်ပေါ်စေတတ်သည်။ PHP ၏ built-in font in ယန္တရားကိုနားလည်ခြင်းသည် GD Image Processing Mastering တွင်အရေးကြီးသောခြေလှမ်းတစ်ခုဖြစ်သည်။ font width ကိုတိတိကျကျတွက်ချက်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်စာသားများကိုပိုမိုလှပစွာလှပစွာပြသခြင်းမပြုနိုင်သော်လည်းပုံရိပ်မျိုးဆက်စနစ်ကိုလည်းတည်ဆောက်နိုင်သည်။

ဤအခြေခံများကိုကျွမ်းကျင်စွာပြုလုပ်နိုင်ခြင်းအားဖြင့်သင်၏ PHP Image processing sketing sketing spax သည်အဆင့်အသစ်တစ်ခုပြုလုပ်လိမ့်မည်။