လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Flip + compress + သိမ်းဆည်းခြင်း - ပြီးပြည့်စုံသောပုံရိပ်ထုတ်ယူခြင်း

Flip + compress + သိမ်းဆည်းခြင်း - ပြီးပြည့်စုံသောပုံရိပ်ထုတ်ယူခြင်း

M66 2025-05-17

နေ့စဉ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် Image procession သည်ပုံရိပ်လှန်ခြင်း (မှန်), compressed image size, compressed image size, saving optimized images စသည်တို့ကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။

ဤဆောင်းပါးသည် Php မှတစ်ဆင့်ချုံ့ခြင်းနှင့်ချွေတာခြင်းများကိုအပြည့်အဝနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးသည်သင့်ကိုအဆင့်ဆင့်တစ်ဆင့်ယူပါလိမ့်မည်။ သင်ပုံဖော်သည့် interface တစ်ခုတည်ဆောက်ခြင်းသို့မဟုတ်ရုပ်ပုံစီမံခန့်ခွဲမှုစနစ်တည်ဆောက်ခြင်းရှိမရှိ, ဤဆောင်းပါးသည်သင့်အားလက်တွေ့ကျကျရည်ညွှန်းကိုးကားနိုင်သည်။

1 ။ အဘိတ်: GD စာကြည့်တိုက်ကိုဖွင့်ထားရှိမရှိအတည်ပြုပါ

သင်၏ဆာဗာသည် GD စာကြည့်တိုက်ကိုဖွင့်ထားကြောင်းသေချာပါစေ။ GD စာကြည့်တိုက်ကို PHP တွင်ထောက်ပံ့သည်ကိုစစ်ဆေးပါ။

 <?php
if (extension_loaded('gd')) {
    echo "GD စာကြည့်တိုက်ကိုဖွင့်ထားသည်";
} else {
    echo "ကျေးဇူးပြု. install လုပ်ပါ GD စာကြည့်တိုက်";
}
?>

2 ။ ပုံကိုတင်ခြင်း

JPEG image ကိုပုံဖိုင်ကိုတင်ရန်ဥပမာတစ်ခုအဖြစ်အသုံးပြုကြပါစို့။

 <?php
$imagePath = 'uploads/sample.jpg';
$image = imagecreatefromjpeg($imagePath);
if (!$image) {
    die('ပုံကိုတင်ရန်မအောင်မြင်ပါ');
}
?>

3 ။ Flip (အလျားလိုက် / ဒေါင်လိုက်ထင်ဟပ်မှု)

အလျားလိုက် Flip (မှန်)

 <?php
function flipImageHorizontally($image) {
    $width = imagesx($image);
    $height = imagesy($image);
    $flipped = imagecreatetruecolor($width, $height);
    
    for ($x = 0; $x < $width; $x++) {
        imagecopy($flipped, $image, $width - $x - 1, 0, $x, 0, 1, $height);
    }
    return $flipped;
}

$image = flipImageHorizontally($image);
?>

ဒေါင်လိုက်လှန်

 <?php
function flipImageVertically($image) {
    $width = imagesx($image);
    $height = imagesy($image);
    $flipped = imagecreatetruecolor($width, $height);
    
    for ($y = 0; $y < $height; $y++) {
        imagecopy($flipped, $image, 0, $height - $y - 1, 0, $y, $width, 1);
    }
    return $flipped;
}

// $image = flipImageVertically($image); // ဒေါင်လိုက်လှန်လျှင် uncomment
?>

IV ။ ပုံချုံ့ခြင်း

Image Compression သည်များသောအားဖြင့်ကယ်တင်ခြင်းသို့ရောက်သောအခါပုံ၏အရည်အသွေးကိုညှိရန်ရည်ညွှန်းသည်။ JPEG ရုပ်ပုံများအတွက်ချွေတာမှုတွင်ချုံ့အရည်အသွေးကိုသတ်မှတ်နိုင်သည် (0-100):

 <?php
$compressedPath = 'uploads/compressed.jpg';
$quality = 75; // သေးငယ်တန်ဖိုး,compression ပိုမိုမြင့်မား,ပုံရိပ်အရည်အသွေးအနိမ့်

if (!imagejpeg($image, $compressedPath, $quality)) {
    die('ပုံကိုချုံ့ခြင်းနှင့်သိမ်းဆည်းရန်မအောင်မြင်ပါ');
}
?>

5 ။ Processed image link ကိုသိမ်းပြီးထုတ်လုပ်ပါ

အောင်မြင်သောချုံ့ခြင်းနှင့်ချွေတာခြင်းပြီးနောက်ပုံရိပ်လက်လှမ်းမီလင့်ခ်ကိုပေးနိုင်သည်။

 <?php
echo 'Image processing အောင်မြင်ခဲ့သည်,link ကိုသွားပါ:<a href="https://m66.net/uploads/compressed.jpg">ပုံကိုကြည့်ရန်နှိပ်ပါ</a>';
?>

6 ။ Encapsulations Code (ပူးတွဲပါ)

ပြန်လည်သုံးသပ်ခြင်းကိုတိုးတက်စေရန်လုပ်ငန်းစဉ်တစ်ခုလုံးကို function တစ်ခုထဲသို့သင်ခန်းစာယူနိုင်သည်။

 <?php
function processImage($inputPath, $outputPath, $flipType = 'horizontal', $quality = 80) {
    $image = imagecreatefromjpeg($inputPath);
    if (!$image) return false;

    if ($flipType === 'horizontal') {
        $image = flipImageHorizontally($image);
    } elseif ($flipType === 'vertical') {
        $image = flipImageVertically($image);
    }

    return imagejpeg($image, $outputPath, $quality);
}
?>

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

PHP ၏ GD စာကြည့်တိုက်မှတစ်ဆင့်ရုပ်ပုံများကိုအလွန်ပြောင်းလွယ်ပြင်လွယ်ဖြစ်လွယ်စေနိုင်သည်။

  • image files များကို load လုပ်ပါ။

  • Flip (အလျားလိုက် / ဒေါင်လိုက်);

  • ချုံ့ခြင်း,

  • output processing ရလဒ်များ။

ဤလုပ်ငန်းစဉ်သည် 0 က်ဘ် application အများစုအတွက်သင့်တော်သည်, အထူးသဖြင့်အသုံးပြုသူများကိုအသုံးပြုသူများကို upload လုပ်ပြီးနောက်အကောင်းဆုံးလုပ်ဆောင်ရန်လိုအပ်သည်။

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