PHP သည်ကြွယ်ဝသောပုံရိပ်ထုတ်ယူမှုလုပ်ငန်းများကိုထောက်ပံ့ပေးသည် ။ ဤလုပ်ဆောင်မှုသည်သင့်အားပုံသို့အရောင်များကိုသတ်မှတ်ရန်နှင့် alpha channel ကိုသတ်မှတ်ရန် Alpha channel ကိုသတ်မှတ်ရန် Alpha channel ကိုသတ်မှတ်ရန်,
အရောင်များ ကို အရောင်များသတ်မှတ်ရန်နှင့် alpha channel value ကိုသတ်မှတ်ရန်အသုံးပြုသည်။ ဤလုပ်ဆောင်မှုသည် PNG သို့မဟုတ် GIF ပုံစံများကို png သို့မဟုတ် gIF ပုံစံများကိုကိုင်တွယ်ရန်အကောင်းဆုံးဖြစ်သည်။ alpha value ကိုမှန်ကန်စွာသတ်မှတ်ခြင်းအားဖြင့်သင်သည် gradient ကိုနှင့်ပွင့်လင်းမြင်သာသောအကျိုးဆက်များကိုရရှိနိုင်သည်။
imagecolorallocatealpha($image, $red, $green, $blue, $alpha);
$ Image : Image image အရင်းအမြစ်။
$ အနီရောင် - အနီရောင်ရုပ်သံလိုင်းတန်ဖိုး (0-255) ။
$ အစိမ်းရောင် - အစိမ်းရောင်ချန်နယ်တန်ဖိုး (0-255) ။
$ အပြာ : အပြာရောင်ရုပ်သံလိုင်းတန်ဖိုး (0-255) ။
$ alpha : Transparency Value (0 လုံးလုံးဝ opaque နှင့် 127 လုံးသည်လုံးဝပွင့်လင်းမြင်သာမှုရှိပါသည်။ )
Alpha Blending သည်အလွှာမျိုးစုံ၏ပုံရိပ်များကိုပုံတစ်ပုံသို့ရောစပ်ခြင်းလုပ်ငန်းစဉ်ဖြစ်သည်။ အလွှာတစ်ခုစီ၏ပွင့်လင်းမြင်သာမှုကိုထိန်းချုပ်ခြင်းအားဖြင့်အောက်ပိုင်းပုံကိုအထက်ပုံမှတစ်ဆင့်ပြသနိုင်သည်။ PHP တွင်ကျွန်ုပ်တို့သည်အလွှာတစ်ခုစီ၏ပွင့်လင်းမြင်သာမှုကို စိတ်ကူးယဉ်ဆန်ဆန်ကို အသုံးပြု. ပေါင်းစပ်ပြီးပေါင်းစပ်နိုင်သည်။
နောက်ခံပုံနှင့်ရှေ့ပုံရုပ်ပုံများတွင်ပုံနှစ်ပုံသာရှိသည်ဆိုပါစို့။ ဤတွင်ဤအကျိုးသက်ရောက်မှုကိုရရှိရန် PHP ကုဒ်သည် PHP ကုဒ်ဖြစ်သည်။
<?php
// နောက်ခံပုံကိုဖန်တီးပါ
$background = imagecreatefrompng('background.png'); // ကျေးဇူးပြုပြီးလမ်းကြောင်းမှန်ပေါ်ကိုအစားထိုးပါ
imagesavealpha($background, true); // သိုထား alpha အတန်း
// foreground ပုံရိပ်ကိုဖန်တီးပါ
$foreground = imagecreatefrompng('foreground.png'); // ကျေးဇူးပြုပြီးလမ်းကြောင်းမှန်ပေါ်ကိုအစားထိုးပါ
imagesavealpha($foreground, true); // သိုထား alpha အတန်း
// foreground ပုံရိပ်၏အရွယ်အစားကိုရယူပါ
$fg_width = imagesx($foreground);
$fg_height = imagesy($foreground);
// foreground ပုံ၏တည်နေရာကိုသတ်မှတ်ပါ
$x = 50; // X ညီညာစေ
$y = 50; // Y ညီညာစေ
// နောက်ခံပုံတွင် foreground image ကို overlay
imagecopy($background, $foreground, $x, $y, 0, 0, $fg_width, $fg_height);
// ပွင့်လင်းမြင်သာမှုနှင့်အတူအရောင်ဖန်တီးပါ
$transparent_color = imagecolorallocatealpha($background, 255, 255, 255, 64); // 64 ပွင့်လင်းမြင်သာမှုကိုကိုယ်စားပြုတယ်
// ပွင့်လင်းအကြောင်းအရာအချို့ဆွဲပါ(ဥပမာအားဖြင့်:နောက်ခံပေါ်တွင်အချို့သောအရောင်များထည့်ပါ)
imagefilledrectangle($background, 100, 100, 200, 200, $transparent_color);
// output ကိုပုံ
header('Content-Type: image/png');
imagepng($background);
// အရင်းအမြစ်များကိုအခမဲ့
imagedestroy($background);
imagedestroy($foreground);
?>
ပုံများတင်ခြင်း - နောက်ခံပုံပုံရိပ်နှင့်ရှေ့ပုံရိပ်ကိုအသီးသီးဖွင့်ရန် ISECECREATEFFETFETFINGFNEMPNEMPRETFNETFINGRETFINTFETFNEMFNATION function ကိုကျွန်ုပ်တို့အသုံးပြုသည်။ ပုံနှစ်ခုစလုံးသည် PNG format နှင့် PNG format ဖြင့်ပြုလုပ်ရန်လိုအပ်သည်။
Transparency ကိုစောင့်ရှောက်လော့ ။ ရုပ်ပုံသည် alpha channel အချက်အလက်များကိုသိမ်းဆည်းရန် Imagesavealpha function ကိုခေါ်ပါ။
ရောနှောထားသောရုပ်ပုံ - foreground image ကိုနောက်ခံပုံပုံရိပ်ကို နောက်ခံပုံ ၏သတ်မှတ်ထားသောအနေအထားတွင် paste လုပ်ပါ။ ၎င်းသည်အလွှာမျိုးစုံကိုဖန်တီးရန်ခွင့်ပြုသည်။
ပွင့်လင်းမြင်သာသောအရောင်များကိုဖန်တီးပါ ။ The Imagecolorallochoceealealealpha function ကိုပွင့်လင်းမြင်သာမှုနှင့်အရောင်များဖန်တီးရန်အသုံးပြုသည်။
Output image : ImagePng ကို သုံးပါ။
Imagecolorallallocatealealpha function သည်သင့်အားပုံရိပ်ရှိအရောင်များကိုပွင့်လင်းမြင်သာမှုရှိစေရန်ခွင့်ပြုသည်။ ၎င်းသည်ရေစာများ, ရုပ်ပုံများပေါင်းစပ်ခြင်း, သို့မဟုတ်အခြားပုံရိပ်အကျိုးသက်ရောက်မှုများရရှိခြင်း, ဒီဆောင်းပါးက alpha blending နည်းပညာကိုပိုမိုနားလည်သဘောပေါက်ခြင်းနှင့်အသုံးပြုမှုကိုပိုမိုနားလည်ပြီးသုံးရန်ကူညီနိုင်လိမ့်မည်ဟုမျှော်လင့်ပါ။
သင့်တွင်မေးခွန်းများရှိပါကသို့မဟုတ်နောက်ထပ်အကူအညီလိုအပ်ပါကကျွန်ုပ်အားဆက်သွယ်ပါ။