lostyazilim
tr.link

Resim Boyutlandırma Sorunu

2 Mesajlar 1.035 Okunma
acebozum
tr.link

El Paso El Paso WM Aracı Kullanıcı
  • Üyelik 17.03.2014
  • Yaş/Cinsiyet 37 / E
  • Meslek C++ Developer
  • Konum Ankara
  • Ad Soyad M** Ö**
  • Mesajlar 17
  • Beğeniler 0 / 2
  • Ticaret 0, (%0)
Merhaba arkadaşlar. Birkaç saattir uğraşıyorum ama çözemedim sorunu yardımcı olursanız sevinirim. Şimdi bir scriptim var ve slider.php den upload edilen bütün dosyalar aynı boyutta sunucuya yükleniyor. Haliyle anasayfada ki sliderda kötü görünüm oluşuyor. Bunu düzenlemek için bir tane SimpleImage.php buldum içinde classları olan. Ama kendi slider.php dosyama entegre edemedim yardımcı olursanız çok sevineceğim.

SimpleImage.php

/*
* File: SimpleImage.php
* Author: Simon Jarvis
*/

class SimpleImage {

var $image;
var $image_type;

function load($filename) {

$image_info = getimagesize($filename);
$this->image_type = $image_info[2];
if( $this->image_type == IMAGETYPE_JPEG ) {

$this->image = imagecreatefromjpeg($filename);
} elseif( $this->image_type == IMAGETYPE_GIF ) {

$this->image = imagecreatefromgif($filename);
} elseif( $this->image_type == IMAGETYPE_PNG ) {

$this->image = imagecreatefrompng($filename);
}
}
function save($filename, $image_type=IMAGETYPE_JPEG, $compression=75, $permissions=null) {

if( $image_type == IMAGETYPE_JPEG ) {
imagejpeg($this->image,$filename,$compression);
} elseif( $image_type == IMAGETYPE_GIF ) {

imagegif($this->image,$filename);
} elseif( $image_type == IMAGETYPE_PNG ) {

imagepng($this->image,$filename);
}
if( $permissions != null) {

chmod($filename,$permissions);
}
}
function output($image_type=IMAGETYPE_JPEG) {

if( $image_type == IMAGETYPE_JPEG ) {
imagejpeg($this->image);
} elseif( $image_type == IMAGETYPE_GIF ) {

imagegif($this->image);
} elseif( $image_type == IMAGETYPE_PNG ) {

imagepng($this->image);
}
}
function getWidth() {

return imagesx($this->image);
}
function getHeight() {

return imagesy($this->image);
}
function resizeToHeight($height) {

$ratio = $height / $this->getHeight();
$width = $this->getWidth() * $ratio;
$this->resize($width,$height);
}

function resizeToWidth($width) {
$ratio = $width / $this->getWidth();
$height = $this->getheight() * $ratio;
$this->resize($width,$height);
}

function scale($scale) {
$width = $this->getWidth() * $scale/100;
$height = $this->getheight() * $scale/100;
$this->resize($width,$height);
}

function resize($width,$height) {
$new_image = imagecreatetruecolor($width, $height);
imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
$this->image = $new_image;
}

}
?>


Slider.php
include('inc/ayar.php');
include('inc/kontrol.php');
include('SimpleImage.php');

?>





<script></script>
Yönetim Paneli




include('inc/ust.php');
include('inc/altmenu.php');
?>



include('inc/sol.php');
?>



SLİDER RESMİ EKLE


foreach($_POST AS $key => $value) {
${$key} = $value;
}

if(($_GET[ekle]==ekle)){
$pos = strpos($_FILES['resimx']['name'],"php");
$pos2 = strpos($_FILES['resimx']['name'],"php3");
$pos3 = strpos($_FILES['resimx']['name'],"exe");
$pos4 = strpos($_FILES['resimx']['name'],"asp");
$pos5 = strpos($_FILES['resimx']['name'],"php4");
if (($pos !== false) or ($pos2 !== false) or ($pos3 !== false) or ($pos4 !== false) or ($pos5 !== false)) {
echo '
Hatalı bir dosya yüklediniz.
';
}
else {
if ($_FILES['resimx']['type'] != "image/gif" &&
$_FILES['resimx']['type'] != "image/jpeg" &&
$_FILES['resimx']['type'] != "image/pjpeg" &&
$_FILES['resimx']['type'] != "image/png"){
echo '
Dosya formatınız yanlış
';
} else {
if($_FILES['resimx']['type'] == "image/gif") $uzanti=".gif";
elseif($_FILES['resimx']['type'] == "image/jpeg") $uzanti=".jpeg";
elseif($_FILES['resimx']['type'] == "image/pjpeg") $uzanti=".jpg";
elseif($_FILES['resimx']['type'] == "image/png") $uzanti=".png";
$resim=$_FILES['resimx']['name'];
$uzanti=substr_replace($resim,"",0,-3);
$isim=md5(rand(9,99999));
$yeniisim=$isim.".".$uzanti;
$resim=$yeniisim;
$image->load($yeniisim);
$image->resize(760,298);
$image->save($yeniisim);
move_uploaded_file($_FILES['resimx']['tmp_name'], "../slider/".$yeniisim);

$ekle=mysql_query("INSERT INTO slider (anasayfa,altsayfa,resim_slider) "."VALUES('$anasayfa','$altsayfa','$resim')");

echo '
Slider Resmi Yüklendi.
';
}
}
}
}
?>


Slider Resim Ekle
:








include('inc/foother.php');
?>



Şimdiden çok teşekkür ederim. Kolay gelsin.
 

 

elektronikssl
webimgo

Jengawer Jengawer Tıp Öğrencisi E-Mail Onaysız
  • Üyelik 20.07.2013
  • Yaş/Cinsiyet 37 / E
  • Meslek Tıp Öğrencisi
  • Konum Ankara
  • Ad Soyad A** A**
  • Mesajlar 256
  • Beğeniler 107 / 74
  • Ticaret 20, (%100)

$resim= new SimpleImage("resim.jpg");
$resim -> best_fit(genişlik, yükseklik)->save("resim.jpg");


Yukarıdaki gibi önce class'ı resim.jpg ile çağırırsın. Sonra genişlik ve yükseklik yazan yerlere istediğin değerleri yazarsın. En son resim.jpg olarak kaydedersin.
 

 

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al