PHP တွင်ရုပ်ပုံများကိုပြုပြင်သည့်အခါရုပ်ပုံများကိုဖန်တီးရန်နှင့်ပြုပြင်ရန် GD စာကြည့်တိုက်ကိုမကြာခဏအသုံးပြုလေ့ရှိသည်။ GD စာကြည့်တိုက်သည်ရုပ်ပုံများကိုအရောင်, ပွင့်လင်းမြင်သာမှု, ဂရပ်ဖစ်စသည်တို့ကိုသတ်မှတ်ရန်ခွင့်ပြုသည့်လုပ်ဆောင်ချက်များစွာကိုပေးသည်။ Imagecolorallocatealpha () နှင့် Imagesavealpha () သည်အလွန်အရေးကြီးသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ အထူးသဖြင့်ပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများဖြင့်ရုပ်ပုံများကိုကိုင်တွယ်ဖြေရှင်းရန်လိုအပ်သည်။
Imagecolorallocatealpha () ပုံရိပ်တစ်ခုအတွက်အရောင်များကိုသတ်မှတ်လေ့ရှိတယ်။ ၎င်း၏ရည်ရွယ်ချက်မှာရုပ်ပုံသို့အရောင်ကိုသတ်မှတ်ရန်နှင့်ထိုအရောင်၏ပွင့်လင်းမြင်သာမှုကိုသတ်မှတ်ရန်ခွင့်ပြုရန်ဖြစ်သည်။ ဤလုပ်ဆောင်ချက်၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha): int
$ Image : ပုံရိပ်အရင်းအမြစ်ကိုပစ်မှတ်ထားသည်။
$ အနီရောင် - အရောင်အနီရောင်အစိတ်အပိုင်း (0-255) ။
$ အစိမ်းရောင် - အရောင်၏အစိမ်းရောင်အစိတ်အပိုင်း (0-255) ။
$ အပြာ - အရောင်၏အပြာရောင်အစိတ်အပိုင်း (0-255) ။
$ alpha : အရောင်ပွင့်လင်းမြင်သာမှု (0 ငလျင်လှုပ်ခြင်းသည်လုံးဝပွင့်လင်းမြင်သာမှုရှိပါသည်။ )
ISEACOLORALOCATEALEALEALPHA ကိုအသုံးပြုခြင်း () သည်ပွင့်လင်းမြင်သာမှုနှင့်အတူအရောင်ကိုဖန်တီးနိုင်သည်။ PNG ကဲ့သို့သောပွင့်လင်းမြင်သာသောပုံစံများနှင့်ဆက်ဆံရာတွင်အလွန်အသုံးဝင်သည်။
Imagesavealpha () သည် PHP ရုပ်ပုံများကို Transparency Information ကိုကယ်တင်ရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ သင်သည်ပုံတစ်ပုံတွင်ပွင့်လင်းမြင်သာမှုကိုအသုံးပြုသောအခါပွင့်လင်းမြင်သာမှုကိုချွေတာစေရန်သင် Imagavealpha () ကိုခေါ်ရမည်။ ဒီလိုမှမဟုတ်ရင်ပွင့်လင်းမြင်သာမှုအကျိုးသက်ရောက်မှုဆုံးရှုံးသွားလိမ့်မည်။
Imagesavealpha () ၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
imagesavealpha(resource $image, bool $saveflag): bool
$ Image : ပုံရိပ်အရင်းအမြစ်ကိုပစ်မှတ်ထားသည်။
$ saveflag : မှန် လျှင် transparency ကိုဖွင့်ပါလိမ့်မည်။ မှားယွင်းသော လျှင်, disable ။
ISEECOLORALOCATEALEALEALEPLA ကိုအသုံးပြုသောအခါရုပ်ပုံများကိုပွင့်လင်းမြင်သာမှုရှိသည့်အရောင်ကိုသတ်မှတ်သည်။ သို့သော် ImagesAvealpha () ကို မခေါ်ပါ။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်အရောင်အသွေးစုံညီအစည်းအဝေးကိုသတ်မှတ်လျှင်ပင်ပုံသည်ဤပွင့်လင်းမြင်သာမှုဆိုင်ရာအချက်အလက်များမပါ 0 င်ပါ။
ရိုးရှင်းသောဥပမာတစ်ခုအနေဖြင့်သင်သည် PNG ပုံကို ဖန်တီး. ISECOLORALOCATEALEALPHA ကို အသုံးပြု. TRIENTUCTULT နောက်ခံအရောင်ကိုသတ်မှတ်ပါ။ ImagesAvealpha () ကိုပုံမသိမ်းဆည်းခင်မခေါ်ပါကသိမ်းဆည်းထားသောရုပ်ပုံသည်ရှင်းလင်းပြတ်သားသောနောက်ခံကိုပြသနိုင်ပြီးပွင့်လင်းမြင်သာမှုအကျိုးသက်ရောက်မှုလုံးဝပျောက်ဆုံးသွားနိုင်သည်။ ဘာဖြစ်လို့လဲဆိုတော့ပွင့်လင်းမြင်သာမှုမရှိတဲ့အတွက် transparency ကိုချွေတာလို့မရဘူး။
isagecolorallocatealpha () imagesavealpha () ကို မှန်ကန်စွာမည်သို့အသုံးပြုရမည်ကိုပြသသောရိုးရှင်းသော PHP ဥပမာတစ်ခုမှာ -
<?php
// အလွတ်ပုံရိပ်အရင်းအမြစ်တစ်ခုဖန်တီးပါ,အရွယ်အစားဖြစ်ပါတယ် 200x200 pixels
$image = imagecreatetruecolor(200, 200);
// ပုံရိပ်ကိုပွင့်လင်းမြင်သာမှုသတင်းအချက်အလက်ကိုကယ်တင်ရန်ခွင့်ပြုသည်
imagesavealpha($image, true);
// တစ် ဦး translucent အရောင် assign(နီသော,ပွင့်လင်းမြင်သာမှု 50%)
$color = imagecolorallocatealpha($image, 255, 0, 0, 64);
// နောက်ခံဖြည့်ရန်ဤအရောင်ကိုသုံးပါ
imagefill($image, 0, 0, $color);
// ပုံကိုသိမ်းဆည်းပါ PNG ပမာဏ,ပွင့်လင်းနေပါ
imagepng($image, 'output.png');
// အရင်းအမြစ်များကိုအခမဲ့
imagedestroy($image);
?>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် imageavealpha ကို အသုံးပြု. ပွ င့်လင်းမြင်သာမှုကိုသိမ်းဆည်းထားပြီး, ImagesAvealpha ကို မခေါ်ဘဲသိမ်းဆည်းထားသောပုံသည်၎င်း၏ပွင့်လင်းမြင်သာမှုအကျိုးသက်ရောက်မှုကိုဆုံးရှုံးလိမ့်မည်။
Transparent အရောင်များကို isagecolorallocatealealpha () () ကိုတိုင်းတာသည့်အခါ, အကယ်. ဤအဆင့်ကိုလျစ်လျူရှုပါကပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုသည်အကျိုးသက်ရောက်ခြင်းနှင့်ပုံ၏ပွင့်လင်းမြင်သာသော area ရိယာကိုဖွင့်လှစ်လိမ့်မည်။ ဤလုပ်ဆောင်ချက်နှစ်ခုကိုမှန်ကန်စွာအသုံးပြုခြင်းအားဖြင့်ပုံရိပ်ထုတ်ပေးစဉ်အတွင်းပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများကိုချောချောမွေ့မွေ့အောင်မြင်နိုင်သည်။