PHP တွင်, isionecolorallallocatealpha () function ကိုဖန်တီးထားသောပုံရိပ်ကိုပွင့်လင်းမြင်သာမှုနှင့်အတူအရောင်သတ်မှတ်ရန်အသုံးပြုသည်။ အထူးသဖြင့် PNG ရုပ်ပုံများသို့မဟုတ် alpha chinnels များကိုထောက်ပံ့သော PNG ရုပ်ပုံများနှင့်အလုပ်လုပ်ရန်အတွက်ပွင့်လင်းမြင်သာသောရုပ်ပုံများကိုလုပ်ဆောင်ရန်အသုံးပြုလေ့ရှိသည်။
int imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha)
$ Image : Image image အရင်းအမြစ်, များသောအားဖြင့် imagecreate () သို့မဟုတ် imagecreatefeletefelet * () functions မှဖန်တီးထားသောပုံရိပ်။
$ အနီရောင် , $ အစိမ်းရောင် , $ အပြာရောင် - အရောင်၏အနီရောင်, အစိမ်းရောင်နှင့်အပြာရောင်အစိတ်အပိုင်းများကိုသတ်မှတ်သည်။ 0 မှ 255 အထိအထိရှိသည်။
$ alpha : 0 (လုံးဝ opaque) မှ 127 အထိ (လုံးဝပွင့်လင်းမြင်သာမှု) အထိ transparency တန်ဖိုး။ ပွင့်လင်းမြင်သာမှုအကျိုးသက်ရောက်မှုသည်အချို့သောပုံအမျိုးအစားများ (ဥပမာ PNG) တွင်သာပေါ်လာလိမ့်မည်။
ကျွန်ုပ်တို့သည်နောက်ခံပုံကိုပွင့်လင်းမြင်သာမှုရှိစေရန်နှင့်ပုံရိပ်ပေါ်ရှိပွင့်လင်းမြင်သာသောအရောင်များဖြင့်စတုဂံပုံဆွဲလိုသည်ဆိုပါစို့။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
<?php
// a 200x200 ရုပ်ပုံများ
$image = imagecreatetruecolor(200, 200);
// ပုံရိပ်အတွက်ပွင့်လင်းနောက်ခံကိုသတ်မှတ်ပါ
imagesavealpha($image, true);
$transparency = imagecolorallocatealpha($image, 0, 0, 0, 127);
imagefill($image, 0, 0, $transparency);
// ပုံအတွက် Translucent အနီရောင်ကိုသတ်မှတ်ပါ
$red = imagecolorallocatealpha($image, 255, 0, 0, 64);
// Translucent အနီရောင်စတုဂံဆွဲပါ
imagefilledrectangle($image, 50, 50, 150, 150, $red);
// output ကိုပုံ
header('Content-Type: image/png');
imagepng($image);
// ပုံရိပ်အရင်းအမြစ်များကိုဖျက်ဆီး
imagedestroy($image);
?>
Image Resource ကိုဖန်တီးပါ ။ ImagecreatetRuecolor () ကိုအသုံးပြုပါ။
Alpha channel အချက်အလက်အချက်အလက်များကိုသိမ်းဆည်းပါ ။ alpha channel ကိုသိမ်းဆည်းရန် imagesavealpha () ကိုသုံးပါ။ ဒီလိုမှမဟုတ်ရင်ပွင့်လင်းမြင်သာမှု setting ကိုမမှန်ကန်ပါလိမ့်မယ်။
ပွင့်လင်းမြင်သာသောနောက်ခံကိုသတ်မှတ်ပါ - Transparency Device (127 ) တွင် Transparency တန်ဖိုးဖြင့် Transparency Device () မှတဆင့်ကြည်လင်သောအရောင်တစ်ခုသတ်မှတ်ပါ, ၎င်းသည်လုံးဝပွင့်လင်းမြင်သာမှုရှိသည်။ ထို့နောက်ပုံရိပ်တစ်ခုလုံး၏နောက်ခံကိုပွင့်လင်းမြင်သာမှုအဖြစ်ဖြည့်ဆည်းရန် imageflem () ကိုသုံးပါ။
Translucive Red ကို Set Translucen Red ကို သုံး. alpha တန်ဖိုး 64 (တန်ဖိုးသေးငယ်လေလေ) alpha valule (တန်ဖိုးကိုပိုမိုမြင့်မားလေလေ)
စတုဂံတစ်ခုကိုပုံဖော်ပါ ။
Output image : ImagePng () ကိုသုံးပါ။ ပုံရိပ်ကို output လုပ်ပါ, content-type ကို image / PNG သို့သတ်မှတ်ပါ။
အရင်းအမြစ်များကိုဖျက်ဆီးခြင်း - ပုံရိပ်အရင်းအမြစ်များကို iceousestroy () နှင့်မှတ်ဉာဏ်ကိုအခမဲ့ဖယ်ရှားပါ။
Transparency ကို transparency ကိုရေးဆွဲရာတွင် isagecolorallocealpha ကို သုံး. () , ပုံသည် alpha channel (ဥပမာ PNG) ကိုထောက်ပံ့သောအမျိုးအစားဖြစ်ရမည်။ JPEG ပုံစံသည်ပွင့်လင်းမြင်သာမှုကိုမထောက်ခံပါ။
Transparency Effects သည် browser တွင်ပြသသောအခါ browser ၏ cache သို့မဟုတ် rendering settings များကြောင့်ထိခိုက်နိုင်သည်။
ပုံရိပ်အရွယ်အစား, ပွင့်လင်းမြင်သာမှုနှင့်အရောင်ရွေးချယ်ခြင်းသည်နောက်ဆုံးပုံရိပ်အကျိုးသက်ရောက်မှုများ၏လိုအပ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်ရန်သေချာပါစေ။
imagecolorallocatealpha () ကို သုံး. ပုံတစ်ခုလုံးကိုဖြည့်ပြီးပုံရိပ်တစ်ခုလုံးကိုဖြည့်စွက်ပြီးပုံတစ်ခုလုံးကိုဖြ ည့ ်စွက်နိုင်သည်။ ဥပမာအားဖြင့်:
$transparent = imagecolorallocatealpha($image, 0, 0, 0, 127);
imagefill($image, 0, 0, $transparent);
သင်သည် imagecolorallocatealpha () မှဖန်တီးထားသောအရောင်များကိုသင်သုံးနိုင်သည်။ ဥပမာအားဖြင့်:
$white = imagecolorallocatealpha($image, 255, 255, 255, 64);
imagestring($image, 5, 50, 50, 'Hello, World!', $white);
Imagecolorallocatealealpha ကို အသုံးပြုခြင်းအားဖြင့်သင်သည်ရုပ်ပုံများအတွက်ပွင့်လင်းမြင်သာမှုနှင့်ပွင့်လင်းမြင်သာမှုအမျိုးမျိုးကိုရရှိနိုင်သည်။ ၎င်းသည်ရေစာအမှတ်အသားများ, ပွင့်လင်းမြင်သာသော icon များသို့မဟုတ် semi-transparent သက်ရောက်မှုလိုအပ်သည့်အခြားပုံများဖန်တီးခြင်းအတွက်အလွန်အသုံးဝင်သည်။ ဤလုပ်ဆောင်မှုကိုကျွမ်းကျင်ခြင်းကသင့်အားရုပ်ပုံများကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်ရှိရန်သင့်အားခွင့်ပြုလိမ့်မည်။