လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Alpha တန်ဖိုးများနှင့်ပွင့်လင်းသောအလွှာများကိုမည်သို့ဖန်တီးရမည်နည်း

Alpha တန်ဖိုးများနှင့်ပွင့်လင်းသောအလွှာများကိုမည်သို့ဖန်တီးရမည်နည်း

M66 2025-06-05

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

1 ။ ImageColorallocatealpha function ကိုမိတ်ဆက်

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

 int imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha)
  • $ Image : များသောအားဖြင့် imageecreate သို့မဟုတ် imagecreaterecolorcolor မှဖန်တီးသော image image အရင်းအမြစ်။

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

  • $ alpha : Transparency, တန်ဖိုး 0 မှ 127 အထိ transparency ။ 0 သည်လုံးဝ opaque ကိုဆိုလိုသည်, 127 သည်လုံးဝပွင့်လင်းသည်ဟုဆိုလိုသည်။

2 ။ ပွင့်လင်းအကျိုးသက်ရောက်မှုများနှင့်အတူအလွှာတစ်ခုဖန်တီးပါ

PHP တွင်ပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများဖြင့်အလွှာတစ်ခုကိုဖန်တီးရန်ကျွန်ုပ်တို့သည်ပုံရိပ်အရင်းအမြစ်တစ်ခုကိုဖန်တီးရန်နှင့် Imagecolorallocatealealpha ကို ပုံရိပ်သို့ 0 င်ရန်အသုံးပြုသည်။ ထို့နောက်ကျွန်ုပ်တို့သည်ထိုအရောင်နှင့်ဂရပ်ဆွဲပြီးသိမ်းဆည်းခြင်းသို့မဟုတ်ထုတ်ယူခြင်းသို့မဟုတ် output လုပ်ပါလိမ့်မည်။

နမူနာကုဒ်

 <?php
// a 200x200 image အရင်းအမြစ်များ
$image = imagecreatetruecolor(200, 200);

// ပုံရိပ်ကိုပွင့်လင်းအရောင်သတ်မှတ်ပါ(နီသော,50%ပွင့်လင်းတင်)
$color = imagecolorallocatealpha($image, 255, 0, 0, 64);

// ပုံရိပ်၏ပွင့်လင်းနောက်ခံထားပါ
imagealphablending($image, false);
imagesavealpha($image, true);

// Translucent စတုဂံဆွဲပါ
imagefilledrectangle($image, 50, 50, 150, 150, $color);

// output ကိုပုံရိပ်ဖြစ်ပါတယ် PNG ပမာဏ,နှင့်ပွင့်လင်းစောင့်ရှောက်လော့
header('Content-Type: image/png');
imagepng($image);

// ပုံရိပ်အရင်းအမြစ်များကိုလွှတ်ပါ
imagedestroy($image);
?>

Code ဖော်ပြချက်:

  1. ImagecreatetRuecolor (200, 200) - 200x200 pixels ၏စစ်မှန်သောအရောင်ပုံရိပ်အရင်းအမြစ်ကိုဖန်တီးပါ။

  2. Imagecolorallocatealealpha ($ Image, 255, 0. , 0, 64) - image image သို့အရောင်ပြောင်းပါ (RGB: 255, 0, 0) နှင့် RGB Pransparency ( Alpha Parameter) သည် 64 ဖြစ်သည်။

  3. imagealealphableending ($ Image, False) - Transparent အကျိုးသက်ရောက်မှုကိုမှန်ကန်စွာပြသနိုင်အောင် Image Blending Mode ကို disable လုပ်ပါ။

  4. Imagesavealpha ($ Image, True) : Transparency Information ကိုသိမ်းပါ။

  5. Idefeflemangle ($ Image, 50, 50, 150, 150, 150, 150, 150, 150)) - ပုံပေါ်ရှိစတုဂံပုံကိုဆွဲပါ။

  6. ImagePng ($ Image) - ပုံရိပ်ကိုထုတ်ယူပြီးပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုကိုထိန်းသိမ်းထားသည်။

3 ။ ပွင့်လင်းမြင်သာမှုနှင့်ပုံရိပ်ပေါင်းစပ်

ပွင့်လင်းမြင်သာမှု၏တန်ဖိုးများသည် 0 မှ 127 အထိအထိ 0 မှ 127 အထိရှိသည်။ ပုံတစ်ပုံတွင်ပွင့်လင်းမြင်သာမှုကိုညှိခြင်းဖြင့်ကွဲပြားခြားနားသောသက်ရောက်မှုများရရှိနိုင်ပါသည်။ ဥပမာအားဖြင့်ပိုမိုမြင့်မားသောပွင့်လင်းမြင်သာမှုကိုအသုံးပြုခြင်းသည်ရုပ်ပုံကိုပိုမိုပါးလွှာခြင်းသို့မဟုတ်နောက်ခံနှင့်ရောနှောနေနိုင်သည်။

4 ။ ISESECOLORALOCATEALEALPA ကိုအသုံးပြု။ မှတ်စုများ

  • image format - ပွင့်လင်းမြင်သာမှုရှိစေရန်အတွက် PNG သို့မဟုတ် GIF ပုံစံရှိပုံများကိုများသောအားဖြင့်လိုအပ်သည်။

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

5 ။ နိဂုံးချုပ်

Imagecolorallocatealealpha function ကိုအသုံးပြုခြင်းအားဖြင့် PHP ရှိရုပ်ပုံများအတွက်ပွင့်လင်းမြင်သာမှုရှိလာပြီးပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများဖြင့်အလွှာများကိုဖန်တီးနိုင်သည်။ ၎င်းသည်ပြောင်းလဲနေသောရုပ်ပုံများ, အိုင်ကွန်များ, အမှတ်တံဆိပ်များသို့မဟုတ်ရေစာများစသည့် application scarios ကိုထုတ်လုပ်ရန်အလွန်အသုံးဝင်သည်။

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