လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Transparent Mask Overlay ကိုအကောင်အထည်ဖော်ရန် ISEACOLORALOCATELOCALELE () ကိုသုံးပါ

Transparent Mask Overlay ကိုအကောင်အထည်ဖော်ရန် ISEACOLORALOCATELOCALELE () ကိုသုံးပါ

M66 2025-05-23

PHP တွင် Imagecoloralletocatealpha () function သည်အလွန်အသုံးဝင်သော image processing function တစ်ခုဖြစ်သည်။ ၎င်းသည်ပွင့်လင်းမြင်သာမှုရှိသည့်အရောင်အသွေးစုံလင်သောအရောင်အသွေးစုံလင်မှုကိုသတ်မှတ်ရန်ခွင့်ပြုသည်။ ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးများနှင့် imagecolorallalletocpha ကို ပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးများကိုကျော်လွှားနိုင်ပြီးရုပ်ပုံများ၏အကျိုးသက်ရောက်မှုကိုကျွန်ုပ်တို့ရရှိနိုင်ပါသည်။ ဤဆောင်းပါးသည်ဤအကျိုးသက်ရောက်မှုကိုရရှိရန်ဤလုပ်ဆောင်မှုကိုမည်သို့အသုံးပြုရမည်ကိုပြပါလိမ့်မည်။

1 ။ ImageColorallocatealpha () function ကိုခြုံငုံသုံးသပ်ချက်

Imagecolorallocatealpha () သည် PHP ရှိ GD စာကြည့်တိုက်၏အစိတ်အပိုင်းတစ်ခုဖြစ်ပြီးပုံရိပ်များကိုပွင့်လင်းမြင်သာမှုနှင့်အရောင်အဖြစ်သတ်မှတ်သည်။ ဤလုပ်ဆောင်မှု၏ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -

 int imagecolorallocatealpha ( resource $image , int $red , int $green , int $blue , int $alpha )
  • $ Image : ပုံရိပ်အရင်းအမြစ်ကိုပစ်မှတ်ထားသည်။

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

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

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

ကျွန်ုပ်တို့သည်ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးကို ဖန်တီး. ၎င်းကိုအောက်ပါအဆင့်များ၌ရှိပြီးသားပုံရိပ်တစ်ခုသို့ overlay လုပ်နိုင်သည် -

  1. ပုံကြူးအရင်းအမြစ်တစ်ခုဖန်တီးပါ ။ ကျွန်ုပ်တို့သည်ပုံရိပ်အရင်းအမြစ်အရင်းအမြစ်ကိုဖန်တီးရန် ISESECREATETRUECOUCOUCOROR () သို့မဟုတ်အခြားဆက်စပ်လုပ်ဆောင်ချက်များကိုအသုံးပြုရန်လိုအပ်သည်။

  2. အရောင်များကိုပုံရိပ်တွေကိုသတ်မှတ်ပါ - transparency နဲ့အရောင်တွေကိုအရောင်ပြောင်းရန် isagecolorallocatealpha () ကိုသုံးပါ။

  3. ပုံရိပ် Mask ကိုရေးဆွဲပါ

  4. Output image : Transparency Information ကိုကယ်တင်ခြင်းသို့ရောက်ရန်ပုံရိပ်ကို output လုပ်ရန် imagepng () isionjpeg () ကိုသုံးပါ။

3 ။ Code ဥပမာ

ဤနေရာတွင်ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးကိုပုံပေါ်သို့မည်သို့ထပ်တူပြုရန်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
// ပုံရိပ်အရင်းအမြစ်တစ်ခုဖန်တီးပါ
$width = 500;
$height = 500;
$image = imagecreatetruecolor($width, $height);

// ပွင့်လင်းအရောင်များကိုခွင့်ပြုထားသည်
imagesavealpha($image, true);
$transparent = imagecolorallocatealpha($image, 0, 0, 0, 127); // လုံးဝပွင့်လင်း

// နောက်ခံကိုပွင့်လင်းမြင်သာစွာဖြည့်ပါ
imagefill($image, 0, 0, $transparent);

// နောက်ခံပုံကိုတင်ခြင်း
$background = imagecreatefrompng('background.png');
imagecopy($image, $background, 0, 0, 0, 0, $width, $height);

// ပွင့်လင်းမျက်နှာဖုံးတစ်ခုဖန်တီးပါ
$overlay = imagecolorallocatealpha($image, 255, 0, 0, 50); // နီသော,တစ်စိတ်တစ်ပိုင်းပွင့်လင်း

// ပုံပေါ်ရှိပွင့်လင်းသောမျက်နှာဖုံးကိုဆွဲပါ
imagefilledrectangle($image, 100, 100, 400, 400, $overlay);

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

// အရင်းအမြစ်များကိုအခမဲ့
imagedestroy($image);
imagedestroy($background);
?>

4 ။ code ခွဲခြမ်းစိတ်ဖြာ

  • ပထမ ဦး စွာ 500x500 ကွက်လပ်ကိုဖန်တီးပြီးပွင့်လင်းမြင်သာသောရုပ်သံလိုင်း Imagesavealpha () ကို ဖွင့်ပါ။

  • ထို့နောက်ပုံရိပ်အတွက်လုံးဝပွင့်လင်းသောနောက်ခံကိုဖန်တီးရန် ISEACOLOROLOCALEALEALEALE () ကိုသုံးပါ။

  • Imagecreatfrmpifmmng () မှတဆင့်နောက်ခံပုံကိုတင်ပါ။ ၎င်းကိုကျွန်ုပ်တို့ဖန်တီးထားသောပုံသို့ကူးယူပါ။

  • နောက်ခံပုံပုံရိပ်ကိုထပ်ခါထပ်ခါရေးရန် imagefreedededflemangle () ကို အသုံးပြု. စတုဂံနယ်မြေတစ်ခုကိုကျွန်ုပ်တို့ဖန်တီးပြီး image ရိယာကို အသုံးပြု. စတုဂံ area ရိယာကိုဆွဲယူပါ။

  • နောက်ဆုံးအနေနဲ့ပုံရိပ်ကို isionpng () မှတဆင့်ထုတ်လွှင့်ပြီးအရင်းအမြစ်များကိုသန့်ရှင်းရေးလုပ်ပါ။

5 ။ ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးများအသုံးပြုခြင်း၏လက်တွေ့ကျသောလျှောက်လွှာ

ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးများကိုများသောအားဖြင့်ရုပ်ပုံများပေါင်းစပ်ခြင်းနှင့်အထူးအကျိုးသက်ရောက်မှုများဒီဇိုင်းကဲ့သို့သောမြင်ကွင်းများတွင်အသုံးပြုသည်။ ဘုံ applications များပါဝင်သည်:

  • logo overlay : အခြားရုပ်ပုံများပေါ်ရှိပွင့်လင်းမြင်သာသောနောက်ခံဖြင့်လိုဂိုတစ်ခုကိုထပ်လိုက်ပါ။

  • Watermark Effect : ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးကိုပုံသို့ 0 င်ပြီးပွင့်လင်းမြင်သာသောရေစာထည့်ပါ။

  • Dynamic Effects - Gradient ကိုဖန်တီးရန်ပွင့်လင်းမြင်သာသောမျက်နှာဖုံးများကိုသုံးပါ။

Imagecolorallocatealpha () အခြား GD လုပ်ဆောင်ချက်များကိုပေါင်းစပ်ခြင်းဖြင့်ပိုမိုပုံရိပ်အကျိုးသက်ရောက်မှုများကိုရရှိနိုင်ပါသည်။

အကျဉ်းချုပ်

PHP ၏ Imagecolorallochole () function မှတဆင့်ကျွန်ုပ်တို့သည် Transparent Mask Overlay ကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ ၎င်းသည်အထူးသဖြင့်ပွင့်လင်းမြင်သာမှုထိန်းချုပ်ရန်လိုအပ်သည့်အခြေအနေများအတွက်ပုံရိပ်ထုတ်ယူခြင်းအတွက်စွမ်းရည်မြှင့်တင်မှုများအတွက်စွမ်းဆောင်နိုင်စွမ်းရှိသောစွမ်းရည်များကိုပေးသည်။ ဤဥပမာတွင်နည်းလမ်းဖြင့်နည်းလမ်းဖြင့်သင်၏ပုံရိပ်ကိုပွင့်လင်းမြင်သာသောသက်ရောက်မှုများထည့်ရန်ဤလုပ်ဆောင်မှုကိုမည်သို့အသုံးပြုရမည်ကိုအလျင်အမြန်လေ့လာနိုင်သည်။