• 12-05-2013, 23:13:02
    #1
    Arkadaşlar merhaba, php de imagecreate fonksiyonu ile resim kırpma üstüne yazı yazma vs yapabiliyoruz. Bide şunu yapabiliyor muyuz: elimde texture deposu var, bende bunları görüntülrmrk için html ve jquery kullanarak basit kullanışlı bir uygulama hazırladım, seçtiğim texture'ı arkaplanda görebiliyorum anında. Bide hanüz tasarım aşamasında iken seçtiğim texture'ı kullanmak için örnek; 1100x700 px boyutunda bir arkplan lazım. Seçtiğim texture'ı kullanarak bu büyüklükte bir resmi nasıl oluşturabilirim?
  • 14-05-2013, 10:49:27
    #2
    Arkadaşalr hadi ama kimse bilmiyormu ?
  • 14-05-2013, 11:17:16
    #3
    Üyeliği durduruldu
    Bahsettiğini tam olarak anlamadım sanırım.

    Zaten seçilen texture ı arka plan yapabiliyorsan, tek sorun boyutu mu?

    background-repeat:repeat ?
  • 14-05-2013, 12:13:54
    #4
    owl1989 adlı üyeden alıntı: mesajı görüntüle
    Bahsettiğini tam olarak anlamadım sanırım.

    Zaten seçilen texture ı arka plan yapabiliyorsan, tek sorun boyutu mu?

    background-repeat:repeat ?
    Ben onun için demedim. Henüz tasarım aşamasında iken seçtiğim texture'ı kullanmak istedim tasarım için bana 1100x700 px boyutunda bir arkplan resmi lazım ben bu texture'ı kullanarak bu boydaki bir arkplanı oluşturabilmem için normalde yanyana kopyalamama lazım; ama ben bunu istemiyorum yolu belli olan texture'ı kullanarak php ile resim olauşturmak. Umarım anlatabilmişimdir ki zaten bunu il mesajdada söylemiştim
  • 14-05-2013, 15:58:03
    #5
    Üyeliği durduruldu
    bulutto adlı üyeden alıntı: mesajı görüntüle
    Ben onun için demedim. Henüz tasarım aşamasında iken seçtiğim texture'ı kullanmak istedim tasarım için bana 1100x700 px boyutunda bir arkplan resmi lazım ben bu texture'ı kullanarak bu boydaki bir arkplanı oluşturabilmem için normalde yanyana kopyalamama lazım; ama ben bunu istemiyorum yolu belli olan texture'ı kullanarak php ile resim olauşturmak. Umarım anlatabilmişimdir ki zaten bunu il mesajdada söylemiştim
    Evet şimdi anladım imagecreate() olayından bahsediyosun sanırım. istersen buraya bi bak. ben de akşam notlarıma bakar, bir şey bulursam paylaşırım.
  • 14-05-2013, 16:53:44
    #6
    İlgilendiğin için teşekkürler ben buldum sonunda Aşağıdaki uygulama ile hallettim, herkese kolay gelsin.

    <?php
    	if(!isset($_GET['imageName']) or !isset($_GET['imageType'])  or !isset($_GET['width']) or !isset($_GET['height'])){
    		echo 'Bu sayfayı görüntüleyemezsiniz.';
    		exit();
    	}
    	
    	header("Content-Type: image/".$_GET['imageType']);
    	function imagefillfromfile($image, $width, $height) {
            $imageWidth = imagesx($image);
            $imageHeight = imagesy($image);
            $newImage = imagecreatetruecolor($width, $height);
    
            imagesavealpha($newImage, true);
    	    imagealphablending($newImage, false);
            
            for ($imageX = 0; $imageX < $width; $imageX += $imageWidth) {
                for ($imageY = 0; $imageY < $height; $imageY += $imageHeight) {
                    imagecopy($newImage, $image, $imageX, $imageY, 0, 0, $imageWidth, $imageHeight);
                }
            }
            
            return($newImage);
            imagedestroy($newImage);
        }
    	
    	switch($_GET['imageType']) {
    		case 'png': 
    			$pattern = imagecreatefrompng($_GET['imageName']);
    			$image = imagefillfromfile($pattern, $_GET['width'], $_GET['height']);
    			imagepng($image);
    		break;
    		case 'jpg': 
    			$pattern = imagecreatefromjpeg($_GET['imageName']);
    			$image = imagefillfromfile($pattern, $_GET['width'], $_GET['height']);
    			imagejpeg($image);
    		break;
    		case 'gif': 
    			$pattern = imagecreatefromgif($_GET['imageName']);
    			$image = imagefillfromfile($pattern, $_GET['width'], $_GET['height']);
    			imagegif($image);
    		break;
    	}
        imagedestroy($image);
        imagedestroy($pattern);
    ?>
    Edit: koda aşağıdkai 2 satır eklendi bu sayede transparan resimler elde edebiliyoruz.