• 15-08-2024, 22:27:27
    #1
    mümkünse verdiğim herhangi bir boyuttaki resmi,
    250*150 boyut oranına göre ve en boy oranını bozmadan küçültmesini istiyorum. web de bunu yapan site var mı?
    mesela 500*100 resim varsa bunu 250*50 şeklinde, 250*300 resim varsa 125*150 şeklinde çıktı verecek.
    basit bir script ile çözülebilir mi? sayfayı web alanında php olarak ta ekleyebilirim. dosya aç şeklinde alan olsun
    resmi seçeyim ve bana mini boyutu kaydet şekinde versin
    ücretli script teklifleri geldiği için konuyu revize etmek istiyorum.
    daha basit olacağını hayal etmiştim. o zaman işimi daha kolaylaştırmalı
    eğer mümkünse bir kelime arayayım. Google görsellerde
    mesela barış Manço. gelen resimlerden birisini seçeyim ve onun istediğim oranlarda çıktısını istediğim klasör e kaydedeyim.
    hem dosya aç hem de google search imkanı var mı?
  • 15-08-2024, 22:29:27
    #2
    Regnos.com
    . Özel script isterseniz 1000tl yapabilirim.
  • 15-08-2024, 22:29:58
    #3
    Sıfırdan 2 saatte teslim 1000 TL
  • 16-08-2024, 01:45:43
    #4
    disdr_hakanunal adlı üyeden alıntı: mesajı görüntüle
    mümkünse verdiğim herhangi bir boyuttaki resmi,
    250*150 boyut oranına göre ve en boy oranını bozmadan küçültmesini istiyorum. web de bunu yapan site var mı?
    mesela 500*100 resim varsa bunu 250*50 şeklinde, 250*300 resim varsa 125*150 şeklinde çıktı verecek.
    basit bir script ile çözülebilir mi? sayfayı web alanında php olarak ta ekleyebilirim. dosya aç şeklinde alan olsun
    resmi seçeyim ve bana mini boyutu kaydet şekinde versin
    ücretli script teklifleri geldiği için konuyu revize etmek istiyorum.
    daha basit olacağını hayal etmiştim. o zaman işimi daha kolaylaştırmalı
    eğer mümkünse bir kelime arayayım. Google görsellerde
    mesela barış Manço. gelen resimlerden birisini seçeyim ve onun istediğim oranlarda çıktısını istediğim klasör e kaydedeyim.
    hem dosya aç hem de google search imkanı var mı?


    Merhaba
    Resim seçerek dediğiniz boyutlarda yeniden boyutlandırmak için kodu aşağıda paylaşıyorum. Kendi projem için yapmıştım bir zaman.

    Verdiğim kodu örneğin resize.php olarak kaydedin.
    Bir tane de uploads klasör oluşturun.

    PNG, Jpg, Jpeg, Webp resimler 250 x 150 ye boyutlandıracak ve oranları bozmayacak.
    Umarım işinize yarar. Güle güle kullanın.

    Daha fazla özellik isterseniz ücretli destek olabilirim.


    <?php
    // Boyutlandırma fonksiyonu
    function resizeImage($source, $destination, $final_width, $final_height) {
        // Resmin orijinal boyutlarını öğren
        list($width, $height, $type) = getimagesize($source);
    
        // Oranı hesapla
        $aspect_ratio = $width / $height;
        $new_width = $final_width;
        $new_height = $final_height;
    
        if ($final_width / $final_height > $aspect_ratio) {
            // Boyutları orantılı küçültme
            $new_width = (int) ($final_height * $aspect_ratio);
        } else {
            $new_height = (int) ($final_width / $aspect_ratio);
        }
    
        // Yeni bir resim oluştur
        $image_p = imagecreatetruecolor($final_width, $final_height);
    
        // Arka plan rengini ayarla (beyaz olarak)
        $background_color = imagecolorallocate($image_p, 255, 255, 255);
        imagefill($image_p, 0, 0, $background_color);
    
        // Resmi oluştur
        switch ($type) {
            case IMAGETYPE_JPEG:
                $image = imagecreatefromjpeg($source);
                break;
            case IMAGETYPE_PNG:
                $image = imagecreatefrompng($source);
                break;
            case IMAGETYPE_WEBP:
                $image = imagecreatefromwebp($source);
                break;
            default:
                throw new Exception('Desteklenmeyen resim türü.');
        }
    
        // Resmi boyutlandır ve ortala
        $src_x = ($new_width - $final_width) / 2;
        $src_y = ($new_height - $final_height) / 2;
    
        imagecopyresampled($image_p, $image, ($final_width - $new_width) / 2, ($final_height - $new_height) / 2, 0, 0, $new_width, $new_height, $width, $height);
    
        // Yeni resmi kaydet
        switch ($type) {
            case IMAGETYPE_JPEG:
                imagejpeg($image_p, $destination, 100);
                break;
            case IMAGETYPE_PNG:
                imagepng($image_p, $destination);
                break;
            case IMAGETYPE_WEBP:
                imagewebp($image_p, $destination);
                break;
        }
    
        // Hafızayı temizle
        imagedestroy($image_p);
        imagedestroy($image);
    }
    
    // Dosya Yükleme İşlemi
    if (isset($_FILES['uploadedFile'])) {
        $target_dir = "uploads/";
        if (!is_dir($target_dir)) {
            mkdir($target_dir, 0777, true); // uploads dizinini oluştur ve yazılabilir yap
        }
        $target_file = $target_dir . basename($_FILES["uploadedFile"]["name"]);
        
        // Dosyayı yükle
        if (move_uploaded_file($_FILES["uploadedFile"]["tmp_name"], $target_file)) {
            echo "Dosya başarıyla yüklendi: " . basename($_FILES["uploadedFile"]["name"]);
    
            // Boyutlandırma işlemi (250x150 boyutlarına göre)
            $resized_file = $target_dir . "resized_" . basename($_FILES["uploadedFile"]["name"]);
            try {
                resizeImage($target_file, $resized_file, 250, 150);
                echo "Resim başarıyla boyutlandırıldı: " . $resized_file;
            } catch (Exception $e) {
                echo "Hata: " . $e->getMessage();
            }
        } else {
            echo "Dosya yüklenirken bir hata oluştu.";
        }
    }
    
    ?>
    
    <!DOCTYPE html>
    <html lang="tr">
    <head>
        <meta charset="UTF-8">
        <title>Resim Yükle ve Boyutlandır</title>
    </head>
    <body>
        <h2>Resim Yükle ve 250x150 Boyutlarında Boyutlandır</h2>
        <form action="" method="post" enctype="multipart/form-data">
            <input type="file" name="uploadedFile">
            <input type="submit" value="Resmi Yükle ve Boyutlandır">
        </form>
    </body>
    </html>
    • disdr_hakanunal
    disdr_hakanunal bunu beğendi.
    1 kişi bunu beğendi.
  • 16-08-2024, 07:59:27
    #5
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Merhaba
    Resim seçerek dediğiniz boyutlarda yeniden boyutlandırmak için kodu aşağıda paylaşıyorum. Kendi projem için yapmıştım bir zaman.

    Verdiğim kodu örneğin resize.php olarak kaydedin.
    Bir tane de uploads klasör oluşturun.

    PNG, Jpg, Jpeg, Webp resimler 250 x 150 ye boyutlandıracak ve oranları bozmayacak.
    Umarım işinize yarar. Güle güle kullanın.

    Daha fazla özellik isterseniz ücretli destek olabilirim.


    <?php
    // Boyutlandırma fonksiyonu
    function resizeImage($source, $destination, $final_width, $final_height) {
        // Resmin orijinal boyutlarını öğren
        list($width, $height, $type) = getimagesize($source);
    
        // Oranı hesapla
        $aspect_ratio = $width / $height;
        $new_width = $final_width;
        $new_height = $final_height;
    
        if ($final_width / $final_height > $aspect_ratio) {
            // Boyutları orantılı küçültme
            $new_width = (int) ($final_height * $aspect_ratio);
        } else {
            $new_height = (int) ($final_width / $aspect_ratio);
        }
    
        // Yeni bir resim oluştur
        $image_p = imagecreatetruecolor($final_width, $final_height);
    
        // Arka plan rengini ayarla (beyaz olarak)
        $background_color = imagecolorallocate($image_p, 255, 255, 255);
        imagefill($image_p, 0, 0, $background_color);
    
        // Resmi oluştur
        switch ($type) {
            case IMAGETYPE_JPEG:
                $image = imagecreatefromjpeg($source);
                break;
            case IMAGETYPE_PNG:
                $image = imagecreatefrompng($source);
                break;
            case IMAGETYPE_WEBP:
                $image = imagecreatefromwebp($source);
                break;
            default:
                throw new Exception('Desteklenmeyen resim türü.');
        }
    
        // Resmi boyutlandır ve ortala
        $src_x = ($new_width - $final_width) / 2;
        $src_y = ($new_height - $final_height) / 2;
    
        imagecopyresampled($image_p, $image, ($final_width - $new_width) / 2, ($final_height - $new_height) / 2, 0, 0, $new_width, $new_height, $width, $height);
    
        // Yeni resmi kaydet
        switch ($type) {
            case IMAGETYPE_JPEG:
                imagejpeg($image_p, $destination, 100);
                break;
            case IMAGETYPE_PNG:
                imagepng($image_p, $destination);
                break;
            case IMAGETYPE_WEBP:
                imagewebp($image_p, $destination);
                break;
        }
    
        // Hafızayı temizle
        imagedestroy($image_p);
        imagedestroy($image);
    }
    
    // Dosya Yükleme İşlemi
    if (isset($_FILES['uploadedFile'])) {
        $target_dir = "uploads/";
        if (!is_dir($target_dir)) {
            mkdir($target_dir, 0777, true); // uploads dizinini oluştur ve yazılabilir yap
        }
        $target_file = $target_dir . basename($_FILES["uploadedFile"]["name"]);
        
        // Dosyayı yükle
        if (move_uploaded_file($_FILES["uploadedFile"]["tmp_name"], $target_file)) {
            echo "Dosya başarıyla yüklendi: " . basename($_FILES["uploadedFile"]["name"]);
    
            // Boyutlandırma işlemi (250x150 boyutlarına göre)
            $resized_file = $target_dir . "resized_" . basename($_FILES["uploadedFile"]["name"]);
            try {
                resizeImage($target_file, $resized_file, 250, 150);
                echo "Resim başarıyla boyutlandırıldı: " . $resized_file;
            } catch (Exception $e) {
                echo "Hata: " . $e->getMessage();
            }
        } else {
            echo "Dosya yüklenirken bir hata oluştu.";
        }
    }
    
    ?>
    
    <!DOCTYPE html>
    <html lang="tr">
    <head>
        <meta charset="UTF-8">
        <title>Resim Yükle ve Boyutlandır</title>
    </head>
    <body>
        <h2>Resim Yükle ve 250x150 Boyutlarında Boyutlandır</h2>
        <form action="" method="post" enctype="multipart/form-data">
            <input type="file" name="uploadedFile">
            <input type="submit" value="Resmi Yükle ve Boyutlandır">
        </form>
    </body>
    </html>
    teşekkür ederim hocam