လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> စတုရန်းပုံရိပ်ကိုသီးနှံသုံးစွဲရန် PHP ၏ Imagecrop function ကိုမည်သို့အသုံးပြုရမည်နည်း။ ခြေလှမ်းများနှင့်ဥပမာရှင်းလင်းချက်

စတုရန်းပုံရိပ်ကိုသီးနှံသုံးစွဲရန် PHP ၏ Imagecrop function ကိုမည်သို့အသုံးပြုရမည်နည်း။ ခြေလှမ်းများနှင့်ဥပမာရှင်းလင်းချက်

gitbox 2025-06-09

စတုရန်းပုံရိပ်ကိုသီးနှံသုံးစွဲရန် PHP ၏ Imagecrop function ကိုမည်သို့အသုံးပြုရမည်နည်း။ ခြေလှမ်းများနှင့်ဥပမာရှင်းလင်းချက်

ပုံရိပ်တွေသည် PHP ကိုအသုံးပြုသည့်အခါ PHP ကိုအသုံးပြုသောအခါ PHP ကိုအသုံးပြုသောအခါဘုံလုပ်ငန်းများအနက်မှတစ်ခုဖြစ်သည်။ PHP သည် Imagecrop function ကိုပုံများကိုသီးနှံများကိုသုံးရန်အသုံးပြုနိုင်သည့်ပုံရိပ်ထုတ်ယူမှုလုပ်ငန်းများကိုထောက်ပံ့ပေးသည်။ ဒီဆောင်းပါးမှာစတုရန်းပုံရိပ်ကိုသီးအောင်လုပ်ဖို့ ISEACROP function ကိုဘယ်လိုသုံးရမလဲဆိုတာကိုအာရုံစိုက်ပါလိမ့်မယ်။ ကျွန်ုပ်တို့သည်လုပ်ငန်းစဉ်တစ်ခုလုံးကိုသတ်သတ်မှတ်မှတ်ကုဒ်များဥပမာများဖြင့်ပြသပါမည်။

1 ။ ပြင်ဆင်မှု

ပထမ ဦး စွာသင်၏ဆာဗာတွင် GD စာ ကြည့် တိုက်တပ်ဆင်ထားကြောင်းသေချာပါစေ, GD စာကြည့်တိုက်ကို install လုပ်ထားမလားဆိုတာမသေချာဘူးဆိုရင်, အောက်ပါ command နဲ့စစ်ဆေးလို့ရတယ်။

 php -m | grep gd

အကယ်. output တွင် gd တွင်ပါ 0 င်ပါက GD စာကြည့်တိုက်ကိုတပ်ဆင်ထားသည်။ ဒီလိုမှမဟုတ်ရင်သင် install လုပ်ဖို့လိုတယ်။

2 ။ Image အရင်းအမြစ်များကိုရယူပါ

သီးနှံများကိုမစတင်မှီကျွန်ုပ်တို့သည်ပုံကိုအရင်တင်ရန်လိုအပ်သည်။ ပုံမှန်အားဖြင့်ပုံရိပ်အရင်းအမြစ်များသည်သင်၏ပုံရိပ်ပုံစံပေါ် မူတည်. စိတ်ကူးစိတ် 0 င်စားမှုလွဲ မှု , ဥပမာအားဖြင့်, သင်သည် JPEG Image ကိုတင်လိုပါကအောက်ပါကုဒ်ကိုသုံးနိုင်သည်။

 $image = imagecreatefromjpeg('your-image.jpg');

၎င်းသည်နောက်ဆက်တွဲအပြောင်းအလဲအတွက်ကျွန်ုပ်တို့အသုံးပြုနိုင်သည့်ပုံရိပ်အရင်းအမြစ်ကိုပြန်ပို့လိမ့်မည်။

3 ။ cropped area ရိယာတွက်ချက်

ပုံကိုစတုရန်းတစ်လုံးထဲထည့်ရန်ကျွန်ုပ်တို့သည်စတုရန်း area ရိယာကိုပထမဆုံးတွက်ချက်ရန်လိုအပ်သည်။ ပုံ၏အကျယ်နှင့်အမြင့်အားဖြင့်စတုရန်း၏သီးနှံ area ရိယာကိုဆုံးဖြတ်နိုင်သည်။ အကယ်. ပုံအနိမ့်အမြင့်သည်အမြင့်ထက်ကြီးပါကပုံ၏အကျယ်မှအမြင့်နှင့်အတူတူပင်ပုံသဏ္ဌာန်ကိုရွေးပြီးအပြန်အလှန်အားဖြင့် vice vice ။ ဤသည်ဖြတ် area ရိယာတစ်စတုရန်းကြောင်းသေချာသည်။

coopped area ရိယာ၏သွဒီနိတ်များနှင့်ရှုထောင့်များကိုရယူရန်အောက်ပါကုဒ်ကိုသုံးနိုင်သည်။

 $width = imagesx($image);  // ပုံ၏အကျယ်ကိုရယူပါ
$height = imagesy($image); // ပုံ၏အမြင့်ကိုရယူပါ

$minDimension = min($width, $height);  // သေးငယ်တဲ့အကျယ်နှင့်အမြင့်ကိုစတုရန်း၏ဘေးထွက်အရှည်အဖြစ်ရွေးချယ်ပါ

// ကောက်ပဲသီးနှံများ၏အစကိုသွဒီနိတ်တွက်ချက်
$startX = ($width - $minDimension) / 2;
$startY = ($height - $minDimension) / 2;

4 ။ ImageCrop ကိုအသုံးပြုပြီးပုံကိုဖြတ်ပါ

ယခုကျွန်ုပ်တို့သည်သီးနှံ area ရိယာ၏အနေအထားနှင့်အရွယ်အစားကိုကျွန်ုပ်တို့သိရှိထားသည့်အတွက်ကျွန်ုပ်တို့သည် clip သို့ isaxecrop function ကိုသုံးနိုင်သည်။ Imagecrop သည် သီးနှံကဏ် area ၏အကျယ်များ, သွဒီနိတ်စသည်ဖြင့်သတင်းအချက်အလက်များပါ 0 င်သော Imagecrop Object တစ်ခုလိုအပ်သည်။

Imagecrop ကို အသုံးပြု. ပုံတစ်ပုံကိုမည်သို့သီးနှံများအတွက် Code ကိုဤတွင်ဖော်ပြထားသည်။

 $cropRect = [
    'x' => $startX,
    'y' => $startY,
    'width' => $minDimension,
    'height' => $minDimension
];

$croppedImage = imagecrop($image, $cropRect);

5 ။ cropped ပုံရိပ် output ကို

သီးနှံဖြည့်စွက်ပြီးပါကကျွန်ုပ်တို့သည် impagejpeg (JPEG format များအဘို့အ JPEG Formages အတွက်) သို့မဟုတ် Impegpng (PNG Formages Images အတွက်) သို့မဟုတ် Impegpng မှတဆင့်ဖြတ်တောက်ထားသောပုံရိပ်ကိုထုတ်ယူနိုင်သည်။ အကယ်. သင်သည်ပုံရိပ်ကို browser (browser သို့တိုက်ရိုက်ထုတ်ယူလိုပါကဤအရာကိုသင်လုပ်နိုင်သည်။

 header('Content-Type: image/jpeg');
imagejpeg($croppedImage);

အကယ်. သင်သည် cropped image ကိုဆာဗာသို့သိမ်းဆည်းလိုပါကဖိုင်လမ်းကြောင်းကိုသင်သတ်မှတ်နိုင်သည်။

 imagejpeg($croppedImage, 'cropped-image.jpg');

6 ။ အရင်းအမြစ်များကိုရှင်းလင်းပါ

နောက်ဆုံးအနေဖြင့်မှတ်ဥာဏ်ယိုစိမ့်မှုများကိုကာကွယ်ရန်ပုံကြမ်းအရင်းအမြစ်များကိုလွှတ်ပေးရန်သတိရပါ။

 imagedestroy($image);
imagedestroy($croppedImage);

ကုဒ်ကိုအပြည့်အဝ

 <?php
// ဓာတ်ပုံများတင်နေသည်
$image = imagecreatefromjpeg('your-image.jpg');

// ပုံ၏အကျယ်ကိုရယူပါ和高度
$width = imagesx($image);
$height = imagesy($image);

// cropped area ရိယာ၏အရွယ်အစားတွက်ချက်
$minDimension = min($width, $height);

// အဆိုပါ clipping area ရိယာ၏ starting ကိုသွဒီနိတ်တွက်ချက်
$startX = ($width - $minDimension) / 2;
$startY = ($height - $minDimension) / 2;

// သီးနှံ area ရိယာကိုသတ်မှတ်ပါ
$cropRect = [
    'x' => $startX,
    'y' => $startY,
    'width' => $minDimension,
    'height' => $minDimension
];

// သီးနှံဓာတ်ပုံများ
$croppedImage = imagecrop($image, $cropRect);

// popput popped popped
header('Content-Type: image/jpeg');
imagejpeg($croppedImage);

// အရင်းအမြစ်များကိုသန့်ရှင်းရေး
imagedestroy($image);
imagedestroy($croppedImage);
?>

7 ။ နိဂုံးချုပ်

အထက်ပါအဆင့်များမှတစ်ဆင့် PHP ၏ isafecrop function ကို အသုံးပြု. ပုံကိုအလွယ်တကူဖြတ်တောက်နိုင်သည်။ ပုံတစ်ပုံကိုဖြတ်တောက်ချိန်တွင်သီးနှံပုံရိပ်သည်စတုရန်းဖြစ်ကြောင်းသေချာစေရန်မူလပုံအရွယ်အစားပေါ် မူတည်. သီးနှံများကိုတွက်ချက်ရန်လိုအပ်သည်။ ဤနည်းအားဖြင့် PHP သည်ကျွန်ုပ်တို့ကိုရိုးရှင်းသောနှင့်အင်အားကြီးမားသောပုံရိပ်ပြုပြင်ခြင်းစွမ်းရည်များကိုထောက်ပံ့ပေးသည်။

အကယ်. သင်သည်ဤကဲ့သို့သောပုံရိပ်ကိုထပ်မံအလုပ်လုပ်ရန်လိုအပ်ပါက GD စာကြည့်တိုက်မှပေးသောအခြားလုပ်ဆောင်မှုများကိုဆက်လက်အသုံးပြုနိုင်သည်။ ဤသင်ခန်းစာသည် PHP နှင့်မည်သည့်ပုံရိပ်များကိုမည်သို့သီးနှံများကိုမည်သို့ကောက်ယူရမည်ကိုနားလည်ရန်ကူညီလိမ့်မည်ဟုမျှော်လင့်ပါသည်။