လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Transparency ကိုမမှန်ကန်ကြောင်းဖြစ်ပေါ်စေသည့် Imonsavealpha () ကိုသတ်မှတ်ရန်မေ့သွားတယ်

Transparency ကိုမမှန်ကန်ကြောင်းဖြစ်ပေါ်စေသည့် Imonsavealpha () ကိုသတ်မှတ်ရန်မေ့သွားတယ်

M66 2025-05-30

PHP တွင်ရုပ်ပုံများကိုပြုပြင်သည့်အခါရုပ်ပုံများကိုဖန်တီးရန်နှင့်ပြုပြင်ရန် GD စာကြည့်တိုက်ကိုမကြာခဏအသုံးပြုလေ့ရှိသည်။ GD စာကြည့်တိုက်သည်ရုပ်ပုံများကိုအရောင်, ပွင့်လင်းမြင်သာမှု, ဂရပ်ဖစ်စသည်တို့ကိုသတ်မှတ်ရန်ခွင့်ပြုသည့်လုပ်ဆောင်ချက်များစွာကိုပေးသည်။ Imagecolorallocatealpha () နှင့် Imagesavealpha () သည်အလွန်အရေးကြီးသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ အထူးသဖြင့်ပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများဖြင့်ရုပ်ပုံများကိုကိုင်တွယ်ဖြေရှင်းရန်လိုအပ်သည်။

Imagecolorallocatealealpha ၏အခန်းကဏ် (()

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 ၏အခန်းကဏ်။

Imagesavealpha () သည် PHP ရုပ်ပုံများကို Transparency Information ကိုကယ်တင်ရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ သင်သည်ပုံတစ်ပုံတွင်ပွင့်လင်းမြင်သာမှုကိုအသုံးပြုသောအခါပွင့်လင်းမြင်သာမှုကိုချွေတာစေရန်သင် Imagavealpha () ကိုခေါ်ရမည်။ ဒီလိုမှမဟုတ်ရင်ပွင့်လင်းမြင်သာမှုအကျိုးသက်ရောက်မှုဆုံးရှုံးသွားလိမ့်မည်။

Imagesavealpha () ၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 imagesavealpha(resource $image, bool $saveflag): bool
  • $ Image : ပုံရိပ်အရင်းအမြစ်ကိုပစ်မှတ်ထားသည်။

  • $ saveflag : မှန် လျှင် transparency ကိုဖွင့်ပါလိမ့်မည်။ မှားယွင်းသော လျှင်, disable ။

Imagesavealpha () ကိုခေါ်ရန်မေ့ခြင်းသည်အဘယ်ကြောင့်ပွင့်လင်းမြင်သာမှုအကျိုးသက်ရောက်မှုကိုပျက်ပြားစေသနည်း။

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 ရိယာကိုဖွင့်လှစ်လိမ့်မည်။ ဤလုပ်ဆောင်ချက်နှစ်ခုကိုမှန်ကန်စွာအသုံးပြုခြင်းအားဖြင့်ပုံရိပ်ထုတ်ပေးစဉ်အတွင်းပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများကိုချောချောမွေ့မွေ့အောင်မြင်နိုင်သည်။