Image Processing တွင် Polygonal ဂရပ်ဖစ်မှ Shadowing သက်ရောက်မှုများထည့်သွင်းခြင်းသည်ဘုံလိုအပ်ချက်ဖြစ်သည်။ PHP သည် Polygons ကိုဆွဲရန်အသုံးပြုသည့်ရုပ်ပုံများကိုအသုံးပြုသော ဂရပ်ဖစ် ပြုပြင်ထုတ်လုပ်မှုဆိုင်ရာလုပ်ဆောင်ချက်များစွာစာကြည့်တိုက်စာကြည့်တိုက်တစ်ခုပေးသည်။ ရိုးရှင်းသောလှည့်ကွက်အချို့နှင့်အတူကျွန်ုပ်တို့သည်ကိန်းဂဏန်းသုံးခုကိုတိုးမြှင့်ပေးရန်ဤ polygonal ကိန်းဂဏန်းများကိုဤ poladow အကျိုးသက်ရောက်မှုများကိုထည့်သွင်းနိုင်သည်။
PHP တွင် Imageopenpolygon () function ကိုအသုံးပြုသည်။ ဤလုပ်ဆောင်ချက်သည်သင့်အား Polygon ၏ဒေါင်လိုက်များကိုသတ်မှတ်ပြီးပုံရိပ်အရင်းအမြစ်ပေါ်ဆွဲဆောင်ရန်သင့်အားခွင့်ပြုသည်။ ၎င်း၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
imageopenpolygon($image, $points, $num_points, $color);
$ Image : Image image အရင်းအမြစ်။
$ ရမှတ်များ - Polygon ၏ Vertex ၏သွဒီနိတ်များပါ 0 င်သည့်ခင်းကျင်းမှု။
$ num_points : polygon ၏ဒေါဓိပ်မှုအရေအတွက်။
$ အရောင် : အနား၏အရောင်။
ဤလုပ်ဆောင်မှုနှင့်အတူပုံစံမျိုးစုံပုံစံများကိုရေးဆွဲနိုင်ပြီးဤအနားများတွင်အရိပ်အကျိုးသက်ရောက်မှုကိုထည့်သွင်းရန်,
ပုံရိပ်အရင်းအမြစ်တစ်ခုကိုဖန်တီးခြင်း - ပထမအချက်မှာပုံကြမ်းအရင်းအမြစ်ကိုဖန်တီးရန်လိုအပ်သည်။
Polygonons ကိုဆွဲပါ ။
Draw Shadow : အရိပ်ကိုအနည်းငယ် offset လုပ်ပြီးအလင်းရင်းမြစ်တစ်ခု၏ရောင်ပြန်ဟပ်မှုနှင့်တူအောင်ပြုလုပ်ရန်အရိပ်နှင့်ဖြည့်ပါ။
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);
?>
Image Resource တစ်ခုကိုဖန်တီးပါ ။ ကျွန်ုပ်တို့သည် ISESECreatetuecolor (ဖြူ, အနက်ရောင်နှင့်အရိပ်အရောင်များ) နှင့်သတ်မှတ်ထားသောအရောင်များကို အသုံးပြု. 400x400 ပုံသယံအရင်းအမြစ်တစ်ခုကိုဖန်တီးသည်။
Polygon Vertices ကိုအဓိပ္ပါယ်ဖွင့်ဆိုချက် - $ မှတ် ခင်းတွင်သိမ်းဆည်းထားသော Vertex Coordinates နှင့်အတူငါးပွိုင့် polygon ကိုသတ်မှတ်သည်။
အရိပ်ဆွဲခြင်း အရိပ် offset ကို $ Shadowoffsetsx နှင့် $ Shadowsoffsoffsy ကို ထိန်းချုပ်ထားသည်။
Polygons များကိုဆွဲပါ ။
Output image : နောက်ဆုံးအနေနဲ့ကျွန်တော်တို့ဟာ Generated Image ကို ImagePng () function ကိုဖြတ်ပြီး browser ကို output လုပ်တယ်။