လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP ၏ ImageColorallocealealpha function ကို အသုံးပြု. ပွင့်လင်းမြင်သာသောနောက်ခံဖြင့်ပုံတစ်ပုံမည်သို့ဖန်တီးရမည်နည်း။

PHP ၏ ImageColorallocealealpha function ကို အသုံးပြု. ပွင့်လင်းမြင်သာသောနောက်ခံဖြင့်ပုံတစ်ပုံမည်သို့ဖန်တီးရမည်နည်း။

M66 2025-05-22

PHP တွင် Transparent နောက်ခံဖြင့်ရုပ်ပုံများကို GD စာကြည့်တိုက် (ဂရပ်ဖစ်ဆွဲစာကြည့်တိုက်) တွင်အသုံးပြုလေ့ရှိသည်။ အဆိုပါ Imagecolorallocatealealealpha function သည် Transparent အရောင်များကိုပုံရိပ်တွေကိုသတ်မှတ်ပေးနိုင်သည့် GD စာကြည့်တိုက်တွင်အရေးကြီးသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ၎င်းကိုကျိုးကြောင်းဆီလျော်စွာအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ပုံရိပ်တွင်ပွင့်လင်းမြင်သာသောနောက်ခံတစ်ခုဖန်တီးနိုင်သည်သို့မဟုတ်ကွဲပြားခြားနားသောအမြင်အာရုံသက်ရောက်မှုများကိုဖန်တီးနိုင်သည်။ နောက်ခံပုံရိပ်တစ်ခုနှင့်ရုပ်ပုံတစ်ခုဖန်တီးရန်ဤလုပ်ဆောင်မှုကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ရှင်းပြပါမည်။

1 ။ ISESECOLORALOCALEALEALPHA ဆိုတာဘာလဲ။

အဆိုပါ Imagecolorallallocatealealealpha function ကို PHP ၏ GD စာကြည့်တိုက်တွင်အရောင်သတ်မှတ်ရန်နှင့်ထိုအရောင်၏ပွင့်လင်းမြင်သာမှုကိုသတ်မှတ်ရန်အသုံးပြုသည်။ Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 int imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha);
  • $ Image : အရောင်များကိုခွဲဝေရန်လိုအပ်သည့်ပုံရိပ်အရင်းအမြစ်။

  • $ အနီရောင် , $ အစိမ်းရောင် , $ အပြာရောင် - 0 မှ 255 အထိအရောင်၏ RGB အစိတ်အပိုင်း။

  • $ alpha : 0 မှ 127 အထိ transparency သည် 0 မှ 127 အထိရှိသည်, 0 မှ 127 အထိသည်လုံးဝမမြင်နိုင်နှင့် 127 ကိုဆိုလိုသည်။

2 ။ တစ်ပွင့်လင်းနောက်ခံနှင့်အတူပုံတစ်ပုံဖန်တီးပါ

ပထမ ဦး စွာပွင့်လင်းမြင်သာမှုကိုထောက်ပံ့သောပုံတစ်ပုံကိုဖန်တီးရန်လိုအပ်သည်။ ပုံတစ်ပုံကိုဖန်တီးသောအခါ trueecolor image ကိုထုတ်လုပ်ရန် imagecreatetrecolor function ကိုသုံးရန်လိုအပ်သည်။

 <?php
// a200x200ရုပ်ပုံများ
$image = imagecreatetruecolor(200, 200);

// Transparent နောက်ခံပုံရိပ်တွေကိုသတ်မှတ်ပါ
imagesavealpha($image, true); // ချန်လှပ်ထားalphaအတန်း
$transparent = imagecolorallocatealpha($image, 0, 0, 0, 127); // လုံးဝပွင့်လင်း set ကို
imagefill($image, 0, 0, $transparent); // ပုံရိပ်နောက်ခံကိုပွင့်လင်းမြင်သာစွာဖြည့်ပါ

// output ကိုပုံရိပ်ဖြစ်ပါတယ်PNGပမာဏ,browser မှသိမ်းဆည်းပါ
header('Content-Type: image/png');
imagepng($image);

// အရင်းအမြစ်များကိုသန့်ရှင်းရေး
imagedestroy($image);
?>

ဤဥပမာတွင် ImposecreatetuColor Office မှတဆင့် 200x200 pixel image ကိုဖန်တီးပြီးပုံရိပ်သည်ပွင့်လင်းမြင်သာမှုကိုအထောက်အကူပြုရန် Imonsavealpha ကို အသုံးပြုသည်။ ထို့နောက်ကျွန်ုပ်တို့သည် Emberecolorallocatealealealpha ကို လုံးဝပွင့်လင်းမြင်သာသောနောက်ခံကို အသုံးပြု. ပုံရိပ်တစ်ခုလုံး၏နောက်ခံကို image function function နှင့်ဖြည့်ပါ။

3 ။ ပွင့်လင်းနောက်ခံပေါ်တွင်ဂရပ်ဖစ်ဆွဲပါ

ရုပ်ပုံများပေါ်တွင်ရုပ်ပုံများနှင့်စာသားများကိုကျော်ပွင့်လင်းမြင်သာသောနောက်ခံဖြင့်ပုံဆွဲသည့်အခါပွင့်လင်းမြင်သာသောနောက်ခံကို overwrite မဟုတ်။ ပုံရိပ်၏အစိတ်အပိုင်းများကိုအရောင်များကို သတ်မှတ်. ၎င်းတို့ကိုဆွဲရန် စိတ်ကူးကြည့် ComeColoralealealpha ကို ဆက်လက်အသုံးပြုနိုင်သည်။

ဥပမာအားဖြင့်, အောက်ပါကုဒ်ဥပမာသည်ပွင့်လင်းမြင်သာသောနောက်ခံပေါ်တွင်အနီရောင်စတုဂံပုံဆွဲသည်။

 <?php
// ပုံတစ်ပုံကိုဖန်တီးပြီးပွင့်လင်းသောနောက်ခံတစ်ခုသတ်မှတ်ပါ
$image = imagecreatetruecolor(400, 400);
imagesavealpha($image, true); // ချန်လှပ်ထားalphaအတန်း
$transparent = imagecolorallocatealpha($image, 0, 0, 0, 127); // ပွင့်လင်းနောက်ခံ set
imagefill($image, 0, 0, $transparent);

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

// ပွင့်လင်းသောနောက်ခံပေါ်တွင်အနီရောင်စတုဂံကိုဆွဲပါ
imagefilledrectangle($image, 50, 50, 350, 350, $red);

// output ကိုပုံရိပ်ဖြစ်ပါတယ်PNGပမာဏ
header('Content-Type: image/png');
imagepng($image);

// အရင်းအမြစ်များကိုသန့်ရှင်းရေး
imagedestroy($image);
?>

ဤဥပမာတွင်ပွင့်လင်းမြင်သာသောနောက်ခံပေါ်တွင်အနီရောင်စတုဂံပုံတစ်စင်းကိုစတုဂံပုံပေါ်ရှိအနီရောင်စတုဂံတစ်ခုကိုဆွဲယူသည်။

4 ။ ပွင့်လင်းသောနောက်ခံ သုံး. PNG format ကိုသိမ်းဆည်းပါ

ပုံ၏ပွင့်လင်းမြင်သာသောနောက်ခံကိုကယ်တင်ခြင်းသို့ရောက်ရန်ပုံသည် PNG format ဖြင့်ထုတ်လုပ်ခြင်းသို့မဟုတ်သိမ်းဆည်းထားရမည်။ PNG format သည်ပွင့်လင်းမြင်သာမှုကိုထောက်ပံ့သည်။ JPEG format မပါဘူး။ ထို့ကြောင့်, ပွင့်လင်းမြင်သာသောနောက်ခံကိုထိန်းသိမ်းလိုပါက PNG format ကိုသေချာစွာအသုံးပြုပါ။

 imagepng($image, 'path_to_save_image.png');

5 ။ အကျဉ်းချုပ်

PHP တွင်ပွင့်လင်းမြင်သာသောနောက်ခံနှင့်ရုပ်ပုံများကိုဖန်တီးရန်ကျွန်ုပ်တို့အား imagecolorallalapalpha function သည်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ImagecreatetRuecolor , ImagesaveAnealpha စသည်ဖြင့်လုပ်ဆောင်မှုများကိုပေါင်းစပ်ခြင်းဖြင့်ကျွန်ုပ်တို့သည် transparency effects နှင့်ရုပ်ပုံများကိုအလွယ်တကူထုတ်လုပ်နိုင်ပြီးဝက်ဘ်ဆိုက်ဒီဇိုင်း, အိုင်ကွန်မျိုးဆက်သို့မဟုတ်နောက်ခံလိုအပ်သည့်မည်သည့်မြင်ကွင်းကိုမဆိုအသုံးပြုနိုင်သည်။

ဤဆောင်းပါးသည် PHP တွင် isonecolorallocealealpha ကို အသုံးပြု. ပွင့်လင်းမြင်သာသောနောက်ခံနှင့်ရုပ်ပုံများကိုမည်သို့ဖန်တီးရမည်ကိုနားလည်ရန်ကူညီပေးပါ။


သင့်တွင်မေးခွန်းများရှိပါကသို့မဟုတ်သာဓကများလိုအပ်ပါကအခမဲ့မေးမြန်းပါ။