လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> image filter function နှင့်ပေါင်းစပ်အသုံးပြုသောအခါ sequence ကိုပြ problem နာ

image filter function နှင့်ပေါင်းစပ်အသုံးပြုသောအခါ sequence ကိုပြ problem နာ

M66 2025-05-31

Image Procession အတွက် PHP ကိုအသုံးပြုသောအခါ GD စာကြည့်တိုက်သည် developer များခေါ်ဆိုရန်အတွက်လုပ်ဆောင်ချက်များအတွက်စည်းစိမ်ဥစ်စာများကိုထောက်ပံ့ပေးသည်။ ၎င်းတို့အနက် ImageanTias () သည်ပုံသဏ္ဌာန်များ၏ချောမွေ့မှုကိုတိုးတက်စေရန်အရေးကြီးသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ သို့သော်အမှန်တကယ်စီမံကိန်းများအနေဖြင့် icageantialias () ကို အထီးကျန်ခြင်းတွင်အသုံးမပြုပါ ဒါကြောင့်ဒီကိစ္စမှာ function call ရဲ့အစဉ်အဆက်က image output ကိုအကျိုးသက်ရောက်မှုကိုအကျိုးသက်ရောက်မလား။ အဖြေကဟုတ်တယ်။

ဤဆောင်းပါးသည် ImageanTialias ( Imagesmooth () , imagecopyresampled () စသဖြင့်) အခြား filter function များနှင့်အတူအကောင်းဆုံးပုံရိပ်ထုတ်ယူမှုအကျိုးသက်ရောက်မှုကိုရရှိရန် Call Outhorate ကိုအောင်မြင်ရန်မည်သို့ကျိုးကြောင်းဆီလျော်စွာစီစဉ်ရမည်ကိုလေ့လာလိမ့်မည်။

1 ။ function ကို function ကိုနှင့် ImageanTialias function ကို၏အသုံးပြုမှု

Imageantialias (အရင်းအမြစ် $ image, bool $ enable): Bool
ဤလုပ်ဆောင်မှုသည် anti-aliasing antiasing function ကိုဖွင့်ရန်သို့မဟုတ်ပိတ်ထားရန်အသုံးပြုသည်။

 $image = imagecreatetruecolor(300, 200);
imageantialias($image, true); // anti-aliasing ကိုဖွင့်ပါ

မှတ်စု: ImageanTias () သည် စိတ်ကူးယဉ် () , imagelinegon () စသည်ဖြင့်အချို့သောပုံဆွဲခြင်းလုပ်ငန်းများအတွက်သာတရားဝင်သည်။

2 ။ Image Filter function ကိုပုံffileter၏ function ကို

ပုံ flock, contrast, ဆန့်ကျင်ဘက်ညှိနှိုင်းမှု, ထက်မြက်သောညှိနှိုင်းမှု, မီးခိုးရောင်,

 imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR);

3 ။ ခေါ်ဆိုမှုအမိန့်၏ပုံရိပ်ထုတ်ယူခြင်းအပေါ်သက်ရောက်မှု

3.1 Imageantialias ကိုပထမဆုံးခေါ်ဆိုပါ, ထို့နောက်ဂရပ်ဖစ်များကိုဆွဲပါ

ဒါကအကြံပြုထားတဲ့ချဉ်းကပ်မှုပါ။ အကယ်. သင်သည်ဂရပ်တစ်ခုကိုဆွဲရန်နှင့် eniasing anti-sexts ကိုအသုံးပြုရန်လိုအပ်ပါက, သင်သည် Imageantialias () ကို ဦး စွာဖွင့်ပြီးပုံဆွဲ function ကိုခေါ်ပါ။

 $image = imagecreatetruecolor(300, 200);
imageantialias($image, true);
imageline($image, 0, 0, 300, 200, imagecolorallocate($image, 255, 0, 0));

ဤအမိန့်သည်လိုင်းများချောချောမွေ့မွေ့အနားများရှိသည်ကိုသေချာစေသည်။

3.2 ပုံfegfileterကိုပုံဆွဲပြီးနောက်နေရာချသင့်သည်

စစ် function ကိုလက်ရှိပုံရိပ်အကြောင်းအရာအပေါ်လုပ်ဆောင်သည်။ ထို့ကြောင့်ပုံဆွဲခြင်းပြီးဆုံးပြီးနောက် ImageFileter () ကို ခေါ်သင့်သည်။ သို့မဟုတ်ပါကအလယ်အလတ်ပုံဆွဲခြင်းလုပ်ငန်းစဉ်အပေါ်မမျှော်လင့်သောသက်ရောက်မှုရှိနိုင်သည်။

 // မှန်ကန်သောအမိန့်
$image = imagecreatetruecolor(300, 200);
imageantialias($image, true);
imagerectangle($image, 50, 50, 250, 150, imagecolorallocate($image, 0, 255, 0));
imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR);

အကယ်. filter function ကိုပုံဆွဲခြင်းမပြုမီဟုခေါ်သည်ဆိုပါက၎င်းသည်ပုံအလွတ်တစ်ခုဖြစ်လိမ့်မည်။

3.3 စကေး function ကို imagecopyresampled

ImagEnopyresMpled () ပုံရိပ် pixel အချက်အလက်များကိုပြန်လည်ထူထောင်နိုင်လိမ့်မည်။ ထို့ကြောင့်၎င်း၏ခေါ်ဆိုမှုမှာလည်းအရေးကြီးသည်။ များသောအားဖြင့်အကြံပြုသည် -

  • အကယ်. သင် zoomed image ကိုစစ်ထုတ်လိုပါကပထမအကြိမ်စစ်ဆေးပြီးစစ်ထုတ်သင့်သည်။

  • အကယ် . သင်သည်ရှုပ်ထွေးမှုမရှိမီရှုပ်ထွေးသောပုံဆွဲပါက,

 $src = imagecreatefromjpeg('https://m66.net/images/sample.jpg');
$dst = imagecreatetruecolor(100, 100);

imagecopyresampled($dst, $src, 0, 0, 0, 0, 100, 100, imagesx($src), imagesy($src));
imagefilter($dst, IMG_FILTER_CONTRAST, -10);

4 ။ ပြည့်စုံကြောင်းခေါ်ဆိုမှုခေါ်ဆိုမှုအမိန့်

ဤတွင်အကြံပြုထားသောပုံရိပ်ထုတ်ယူခြင်းစီးဆင်းမှု

 $image = imagecreatetruecolor(300, 200);

// 1. ဆန့်ကျင် aliasing ကို enable
imageantialias($image, true);

// 2. ကားပုံ
imageline($image, 0, 0, 300, 200, imagecolorallocate($image, 0, 0, 255));
imageellipse($image, 150, 100, 200, 100, imagecolorallocate($image, 255, 0, 0));

// 3. apply filter များ
imagefilter($image, IMG_FILTER_SMOOTH, 6);

// 4. ချဲ့သို့မဟုတ်သိမ်းဆည်းပါ
$thumb = imagecreatetruecolor(150, 100);
imagecopyresampled($thumb, $image, 0, 0, 0, 0, 150, 100, 300, 200);
imagejpeg($thumb, '/var/www/html/output.jpg');

5 ။ အကျဉ်းချုပ်

  • ImageanTias () ပုံဆွဲ function ကိုမတိုင်မီခေါ်ခံရဖို့လိုအပ်ပါတယ်;

  • ImageFileter () ပုံဆွဲပြီးနောက်အသုံးပြုသင့်သည်။

  • ImagecOcopyresMpled () ပြုပြင်ထုတ်လုပ်မှုအားလုံးပြီးဆုံးပြီးနောက်အသုံးပြုသင့်သည်။

  • Image Procession ၏ခေါ်ဆိုမှု၏အမိန့်သည်နောက်ဆုံးပေါ် output ၏အရည်အသွေးကိုတိုက်ရိုက်ဆုံးဖြတ်သည်။

Image Procession လုပ်ဆောင်ချက်များလုပ်ဆောင်ချက်များနှင့်ကျိုးကြောင်းဆီလျော်သောစီစဉ်ထားသည့်ခေါ်ဆိုမှုများသည် PHP image processing ၏အရည်အသွေးနှင့်စွမ်းဆောင်ရည်ကိုထိထိရောက်ရောက်တိုးတက်အောင်ပြုလုပ်နိုင်သည်။ ရှုပ်ထွေးသောပုံလှုပ်ရှားမှုများအတွက်စာသား ပုံဆွဲ ခြင်းလုပ်ငန်းများကိုပိုမိုကွဲပြားခြားနားသောသက်ရောက်မှုများရရှိရန်အတွက်စာသားပုံဆွဲခြင်းလုပ်ငန်းများကိုပေါင်းစပ်စဉ်းစားနိုင်သည်။

အကယ်. သင်၏ဖြန့်ကျက်မှုဝန်းကျင်တွင်ပုံရိပ်ပြုပြင်ခြင်းအရည်အသွေးကိုသင်ကြုံတွေ့ရပါကသင်၏ function call order ကိုပြန်လည်သုံးသပ်နိုင်ပါက,