လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Php ၏ Impopenpolygon () function ကိုမည်သို့အသုံးပြုရမည်နည်း။

Php ၏ Impopenpolygon () function ကိုမည်သို့အသုံးပြုရမည်နည်း။

M66 2025-06-23

Image Processing တွင် Polygonal ဂရပ်ဖစ်မှ Shadowing သက်ရောက်မှုများထည့်သွင်းခြင်းသည်ဘုံလိုအပ်ချက်ဖြစ်သည်။ PHP သည် Polygons ကိုဆွဲရန်အသုံးပြုသည့်ရုပ်ပုံများကိုအသုံးပြုသော ဂရပ်ဖစ် ပြုပြင်ထုတ်လုပ်မှုဆိုင်ရာလုပ်ဆောင်ချက်များစွာစာကြည့်တိုက်စာကြည့်တိုက်တစ်ခုပေးသည်။ ရိုးရှင်းသောလှည့်ကွက်အချို့နှင့်အတူကျွန်ုပ်တို့သည်ကိန်းဂဏန်းသုံးခုကိုတိုးမြှင့်ပေးရန်ဤ polygonal ကိန်းဂဏန်းများကိုဤ poladow အကျိုးသက်ရောက်မှုများကိုထည့်သွင်းနိုင်သည်။

Imageopenpolygon () function ကဘာလဲ။

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

 imageopenpolygon($image, $points, $num_points, $color);
  • $ Image : Image image အရင်းအမြစ်။

  • $ ရမှတ်များ - Polygon ၏ Vertex ၏သွဒီနိတ်များပါ 0 င်သည့်ခင်းကျင်းမှု။

  • $ num_points : polygon ၏ဒေါဓိပ်မှုအရေအတွက်။

  • $ အရောင် : အနား၏အရောင်။

ဤလုပ်ဆောင်မှုနှင့်အတူပုံစံမျိုးစုံပုံစံများကိုရေးဆွဲနိုင်ပြီးဤအနားများတွင်အရိပ်အကျိုးသက်ရောက်မှုကိုထည့်သွင်းရန်,

အရိပ်အကျိုးသက်ရောက်မှုများကိုထည့်ရန်ခြေလှမ်းများ

  1. ပုံရိပ်အရင်းအမြစ်တစ်ခုကိုဖန်တီးခြင်း - ပထမအချက်မှာပုံကြမ်းအရင်းအမြစ်ကိုဖန်တီးရန်လိုအပ်သည်။

  2. Polygonons ကိုဆွဲပါ

  3. Draw Shadow : အရိပ်ကိုအနည်းငယ် offset လုပ်ပြီးအလင်းရင်းမြစ်တစ်ခု၏ရောင်ပြန်ဟပ်မှုနှင့်တူအောင်ပြုလုပ်ရန်အရိပ်နှင့်ဖြည့်ပါ။

  4. Merge layer : Visual Effects အတွက် Shadows နှင့် Polygonal ဂရပ်ဖစ်ပေါင်းစည်းခြင်း။

ဤလုပ်ငန်းစဉ်ကိုအကောင်အထည်ဖော်သည့်ကုဒ်နမူနာတစ်ခုမှာဤတွင်ဖြစ်သည်။

 <?php
// ပုံအရင်းအမြစ်များကိုဖန်တီးပါ
$image = imagecreatetruecolor(400, 400);

// အရောင်များကိုသတ်မှတ်ပါ
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
$shadowColor = imagecolorallocate($image, 100, 100, 100); // အရိပ်အရောင်

// နောက်ခံအရောင်ကိုဖြည့်ပါ
imagefill($image, 0, 0, $white);

// Polygon Vertices ကိုသတ်မှတ်ပါ
$points = [
    100, 100, // ဒေါင်လိုက်1
    200, 50,  // ဒေါင်လိုက်2
    300, 150, // ဒေါင်လိုက်3
    250, 250, // ဒေါင်လိုက်4
    150, 200  // ဒေါင်လိုက်5
];

// အရိပ်ကိုဆွဲပါ(သေးငယ်တဲ့အကွာအဝေးအားဖြင့် offset)
$shadowOffsetX = 10;
$shadowOffsetY = 10;
$shadowPoints = [];
foreach ($points as $key => $value) {
    if ($key % 2 == 0) {
        $shadowPoints[] = $value + $shadowOffsetX; // x ညှိနှိုင်းညှိနှိုင်း
    } else {
        $shadowPoints[] = $value + $shadowOffsetY; // y ညှိနှိုင်းညှိနှိုင်း
    }
}

// အရိပ်ကိုဆွဲပါ
imageopenpolygon($image, $shadowPoints, count($shadowPoints) / 2, $shadowColor);

// Polygons ဆွဲပါ
imageopenpolygon($image, $points, count($points) / 2, $black);

// browser မှ output ကိုပုံရိပ်
header("Content-Type: image/png");
imagepng($image);

// ပုံရိပ်အရင်းအမြစ်များကိုဖျက်ဆီး
imagedestroy($image);
?>

code parsing

  1. Image Resource တစ်ခုကိုဖန်တီးပါ ။ ကျွန်ုပ်တို့သည် ISESECreatetuecolor (ဖြူ, အနက်ရောင်နှင့်အရိပ်အရောင်များ) နှင့်သတ်မှတ်ထားသောအရောင်များကို အသုံးပြု. 400x400 ပုံသယံအရင်းအမြစ်တစ်ခုကိုဖန်တီးသည်။

  2. Polygon Vertices ကိုအဓိပ္ပါယ်ဖွင့်ဆိုချက် - $ မှတ် ခင်းတွင်သိမ်းဆည်းထားသော Vertex Coordinates နှင့်အတူငါးပွိုင့် polygon ကိုသတ်မှတ်သည်။

  3. အရိပ်ဆွဲခြင်း အရိပ် offset ကို $ Shadowoffsetsx နှင့် $ Shadowsoffsoffsy ကို ထိန်းချုပ်ထားသည်။

  4. Polygons များကိုဆွဲပါ

  5. Output image : နောက်ဆုံးအနေနဲ့ကျွန်တော်တို့ဟာ Generated Image ကို ImagePng () function ကိုဖြတ်ပြီး browser ကို output လုပ်တယ်။