လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> စိတ်ကူးယဉ်စာသား output ကို imagecolorallate () နှင့် တွဲဖက်. ဖန်တီးပါ။

စိတ်ကူးယဉ်စာသား output ကို imagecolorallate () နှင့် တွဲဖက်. ဖန်တီးပါ။

M66 2025-05-24

PHP တွင်ရုပ်ပုံများကိုထုတ်ယူသောအခါ, ရုပ်ပုံပေါ်တွင်စာသားကိုဆွဲရန်မကြာခဏလိုအပ်လေ့ရှိပြီးစာသား၏အနေအထားနှင့်အရောင်ကိုတိကျစွာထိန်းချုပ်ရန်လိုသည်။ ရုပ်ပုံထုတ်ယူခြင်းတွင်စာသားအရပိုမိုတိကျသောအပြင်အဆင်ကိုပိုမိုတွက်ချက်ရန်ပိုမိုတိကျသောအပြင်အဆင်ကိုအောင်မြင်ရန် EmagecolorallAnde ( ) နှင့်ပေါင်းစပ်သည့် ImageFontorallate ( ) function ကိုအသုံးပြုရမည်ကိုဤဆောင်းပါးသည်ဤဆောင်းပါးသည်စိတ်ကူးယဉ်ဆန်သောပုံစံကိုအသုံးပြုသည်။

1 ။ အခြေခံလုပ်ဆောင်ချက်များကိုနိဒါန်း

  • ImageFontwidth (INT $ font): Int

    ဤလုပ်ဆောင်ချက်သည် pixels တွင်သတ်မှတ်ထားသော built-in ဖောင့်၏ဇာတ်ကောင်အကျယ်ကိုပြန်ပို့သည်။ PHP built-in font နံပါတ်များသည် 1 မှ 5 အထိအကွာအဝေးနှင့်ကွဲပြားခြားနားသောဖောင့်အရွယ်အစားကွဲပြားခြားနားသော width နှင့်ကိုက်ညီ။

  • imagecoloranation (အရင်းအမြစ် $ image, int $ imple, int $ အစိမ်းရောင်, Int $ အပြာ, $ အပြာ): Int

    ပုံရိပ်အရင်းအမြစ်သို့အရောင်တစ်ခုသတ်မှတ်ပါ။ အရောင်တန်ဖိုးကို parametersk သုံးခုဖြင့်သတ်မှတ်ထားသည်။ နောက်ဆက်တွဲရေးဆွဲမှုအတွက်အသုံးပြုသောအရောင်၏အမှတ်အသားကိုပြန်ပို့သည်။

2 ။ ImageFontwidth ကို အဘယ်ကြောင့်အသုံးပြုရသနည်း။

စာသားဆွဲတဲ့အခါ, စင်တာ, align သို့မဟုတ် line break ဖို့အတွက်စာသားကသိမ်းပိုက်ထားတဲ့ width ကိုသိဖို့လိုတယ်။ ဘာဖြစ်လို့လဲဆိုတော့ function function () function ကို functring font width ကိုရေးဆွဲထားတာကြောင့်ဇာတ်ကောင်တစ်ခုစီရဲ့အကျယ်ကို imagefontwidth () ကိုရနိုင်ပြီးစာသားတစ်ခုလုံးရဲ့အကျယ်ရဖို့ string ရဲ့အရှည်ကိုမြှောက်လို့ရတယ်။

3 ။ နမူနာကုဒ်ရှင်းပြချက်

ဤတွင် PHP တွင်ရုပ်ပုံကိုမည်သို့ဖန်တီးရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုမှာရုပ်ပုံပေါ်ရှိအရောင်အမျိုးမျိုးကိုရေးရမည်, စာသားစင်တာတွင်စာသားအကျယ်ကို dynamally တွက်ချက်ပါ။

 <?php
// ပတ်တူဖန်တီးပါ,ကျယ်ဝန်းခြင်း300,မြင့်သော100,နောက်ခံအဖြူရောင်
$width = 300;
$height = 100;
$image = imagecreatetruecolor($width, $height);

// အဖြူရောင်နောက်ခံ
$white = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $white);

// စာလုံးအရွယ်အစားကိုရွေးချယ်ပါ,အကျယ်ည 1-5
$font = 5;

// 获取文本和计算ကျယ်ဝန်းခြင်း度
$text = "Hello, ရောင်စုံစာသား!";
$font_width = imagefontwidth($font);
$text_width = strlen($text) * $font_width;

// အရောင်များကိုသတ်မှတ်ပါ - နီသော
$red = imagecolorallocate($image, 255, 0, 0);

// ပတ်တူပေါ်တွင်စာသား၏အစတွက်ချက်မှုတွက်ချက်xညီညာစေ,စင်တာမျက်နှာပြင်
$x = ($width - $text_width) / 2;
$y = ($height - imagefontheight($font)) / 2;

// output စာသား
imagestring($image, $font, $x, $y, $text, $red);

// output ကိုပုံ
header('Content-Type: image/png');
imagepng($image);
imagedestroy($image);
?>

4 ။ ကုဒ်အသေးစိတ်

  • ဇာတ်ကောင်တစ် ဦး ချင်းစီ၏အကျယ်ကို imagefontwidth ($ font) ဖြင့်ရယူပါ။

  • စာသား၏အကျယ်ကိုရရန် string length ($ စာသား) ဖြင့်မြှောက်ပါ။

  • စာသားအကျယ်ကိုနုတ်ရန်ပတ်တူအဖုံးကို သုံး. အလျားလိုက်ဗဟိုပြုရန် 2 ကို 2 ပိုင်းခွဲပါ။

  • လိုအပ်သောအရောင်ကိုသတ်မှတ်ရန် isagecolorallallallation () ကို သုံးပါ, ဒီမှာအနီရောင်ဥပမာတစ်ခုရှိသည်။

  • စာသားကို iceringring () မှတဆင့်သတ်မှတ်ထားသောကိုသွဒီနိတ်များတွင်စာသားဆွဲပါ။

5 ။ စိတ်ကူးများကိုချဲ့ထွင်

  • ကွဲပြားခြားနားသောအရောင်များ၏စာသားမျိုးစုံကိုဆွဲယူရန်လိုအပ်ပါကအစိတ်အပိုင်းတစ်ခုစီ၏စာသားအကျယ်ကိုသင်ပထမ ဦး ဆုံးတွက်ချက်ပြီး၎င်းတို့ကိုအလှည့်ဆွဲနိုင်သည်။

  • ImageFonTheight () function ကိုအသုံးပြုခြင်း, ဒေါင်လိုက်ဗဟိုပြုအောင်မြင်နိုင်သည်။

  • ရှုပ်ထွေးသောစာသားအတွက် truetype font နှင့်ပေါင်းစပ် () imagettext () ကို သုံးရန်အကြံပြုသည်။ သို့သော် imagettfbobbox () သည်အကျယ်တွက်ချက်ရန်လိုအပ်သည်။

ဤနည်းလမ်းကို PHP Image Procession တွင်စာသားအကျယ်ကိုတွက်ချက်ခြင်းနှင့်အရောင်စာသားဆွဲခြင်း၏လုပ်ဆောင်မှုသည် PHP Image Procession တွင်အရောင်တင်ခြင်း၏လုပ်ဆောင်မှုကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်ပြီးစာသားနှင့်ဓာတ်ပုံများထုတ်လုပ်သည့်အခါတိကျသောအပြင်အဆင်ကိုလွယ်ကူချောမွေ့စေနိုင်သည်။