Php OOP'a alışmaya çalışıyorum.
Amatör olarak bir resim sınıfı yazmaya çalıştım.Biraz amatör oldu.Kısıtlı özellikleri var.
Yorumlarınızı,önerilerinizi esirgemezseniz sevinirim.

Zamanla daha da geliştirmeye çalışacağım.

Kullanımı:
<?php
include("resimcik.sinif.php"); //sınıfımızı include ediyoruz.

$resim=new resimcik('havhav.jpg');
 /* resim yolunu ve adresini yazarak dosyamızı açıyoruz.isterseniz resimcik('yeni',300,400,'jpeg') yaparak 300 e 400 boyutlarında jpeg yeni bi 
dosya oluşturabilirsiniz.
*/

$resim->boyutlandir(600,700); //çok rahat bi şekilde resmimizi 600 e 700 olacak şekilde boyutlandırabiliriz.

$resim->yaziyaz("Havhav",10,70,"siyah",60,0); 
/* yaparak 10,70 kordinatında siyah yazıyla 60 px boyutunda 0 derece açıyla
 Havhav  yazdırabilirsiniz.İstseniz ek bir parametreyle fontunuzu da seçebilirsiniz.*/

$resim->saydamyazi("r10@Dualwarior",50,700,"mavi",60); 
/* yaparak 50,700 kordinatında mavi renkle %60 saydamlıkla r10@Dualwarior 
yazdırabilirsiniz.ek parametrelerle boyut,açı,font gibi özellikleri değiştirebilirsiniz.
*/

$resim->kordinatduzlemi();
/* yazdığımız zaman 30px kenardan boşluk bırakarak resim üzerinde çizgiler 
çizerek istediğiniz kordinatı rahatcana bulmanızı sağlar.Örnek resimden daha iyi anlayabilirsiniz. */

$resim->ekranaver();
/* yaptığınız zaman resmi ekrana bastırırsınız.
Eğer $resim->kaydet('isim.uzantı',kalite); yazarsanız resmi kaydedersiniz.
örnek: $resim->kaydet('havhavcik.jpg',100); yaparsanız resmi 100 kalitesiyle 
havhavcik.jpg olarak kaydedebilirsiniz.
*/
Bu şekilde kullanabilirsiniz ya da yeni bi resim oluşturup cizgiciz,boya gibi
fonksiyonları kullanıp resim yapabilirsiniz fakat o olayı daha tam geliştiremedim.

Anlatım kabataslak oldu ilerde güncelleyeceğim.

resimcik sınıfımız:
<?php
/*
Resimcik sınıfı 1.0.0
Yazar: Dualwarior
*/
class resimcik {
	
	public $fontyol="../dosyalar/font/";
	public $renkler=array("beyaz"=>array(255,255,255),"siyah"=>array(0,0,0),"kirmizi"=>array(255,0,0),"yesil"=>array(0,255,0),"mavi"=>array(0,0,255));
	
	
	function __construct($yol,$en=100,$boy=100,$uzn='jpeg') {
        
		if($yol=="yeni") {
		$this->resim=imagecreatetruecolor($en,$boy);
		
		$this->en=$en;
		$this->boy=$boy;
		
		$uzanti=$uzn;
		} else {
		$uzan=array("jpg"=>"jpeg","jpeg"=>"jpeg","gif"=>"gif","png"=>"png","JPG"=>"jpeg","JPEG"=>"jpeg","GIF"=>"gif","PNG"=>"png");	
		$bl=explode('.',$yol);
		$uzanti=$uzan[end($bl)] or die ("Dosya uzantısı alınamadı.");
		$resacfok='imagecreatefrom'.$uzanti;
		$this->resim=$resacfok($yol);
		
		$this->en=imagesx($this->resim);
		$this->boy=imagesy($this->resim);
		
		
		}
		
		$this->uzanti=$uzanti;
		

	}
	
	function renk($renk,$k=0,$y=0,$m=0) {
		if($renk=="yeni") {
			return imagecolorallocate($this->resim,$k,$y,$m);
		}else {
			return imagecolorallocate($this->resim,$this->renkler[$renk][0],$this->renkler[$renk][1],$this->renkler[$renk][2]); 
		}
	
	}
	
	function renk2($renk2,$kir,$yes,$mav,$sayd) {
		if($renk2=="yeni") {
			return imagecolorallocatealpha($this->resim,$kir,$yes,$mav,$sayd);
		}else {
			return imagecolorallocatealpha($this->resim,$this->renkler[$renk2][0],$this->renkler[$renk2][1],$this->renkler[$renk2][2],$sayd);
		}
		
	}
	
	function yaziyaz($metin,$l,$z,$renk,$boyut=15,$aci=0,$font='arial.ttf',$k=0,$y=0,$m=0) {
		$renk=$this->renk($renk,$k,$y,$m);
		imagettftext($this->resim,$boyut,$aci,$l,$z,$renk,$this->fontyol.$font,$metin);
	}
	
	function saydamyazi ($metin,$g,$g2,$sydmrenk,$sydmlik=30,$boyut=80,$aci=45,$font='arial.ttf',$kirm=0,$yesi=0,$mavi=0) {
		$renkx=$this->renk2($sydmrenk,$kirm,$yesi,$mavi,$sydmlik);
		imagettftext($this->resim,$boyut,$aci,$g,$g2,$renkx,$this->fontyol.$font,$metin);
		
	}
	
	function boya($renk,$xx=0,$yy=0,$k=0,$y=0,$m=0) {
		$brenk=$this->renk($renk,$k,$y,$m);
		imagefill($this->resim,$xx,$yy,$brenk);
	}
	
	function cizgiciz($xx1,$yy1,$xx2,$yy2,$renk,$k=0,$y=0,$m=0) {
		$renk=$this->renk($renk,$k,$y,$m);
		imageline($this->resim,$xx1,$yy1,$xx2,$yy2,$renk);
	 	
	}
	
	function kordinatduzlemi() {
		$enn=30;
		$boyy=30;
		
		$em=imagesx($this->resim)+$enn;
		$by=imagesy($this->resim)+$boyy;
		$dualwarior=imagecreatetruecolor($em,$by);
		imagecopy($dualwarior,$this->resim,$enn,$boyy,0,0,imagesx($this->resim),imagesy($this->resim));
		unset($this->resim);
		$this->resim=$dualwarior;
		imagechar($this->resim,0,20,20,'0',$this->renk("beyaz"));
		$ensay=floor(($em)/20);
		$boysay=floor(($by)/20);
		$crp=20;
		for($vv=0; $vv<$ensay; $vv++) {
			imagestring($this->resim,0,46+($vv*$crp),5,($vv+1)*$crp,$this->renk("beyaz"));
			$this->cizgiciz($crp+$enn+($vv*$crp),15,$crp+$enn+($vv*$crp),$by,"beyaz");
		}
		
		for($bb=0; $bb<$boysay;$bb++) {
			imagestring($this->resim,0,5,46+($crp*$bb),($bb+1)*$crp,$this->renk("beyaz"));
			$this->cizgiciz(23,49+($bb*$crp),$em,49+($bb*$crp),"beyaz");
		}
		
	}
	
	function boyutlandir($en,$boy) {
		$resim2=imagecreatetruecolor($en,$boy);
		imagecopyresized($resim2,$this->resim,0,0,0,0,$en,$boy,$this->en,$this->boy);
		
		unset($this->resim);
		
		$this->resim=$resim2;
	}
	
	function ekranaver() {
		header("Content-type:image/$this->uzanti");
		$resbasfok='image'.$this->uzanti;
		$resbasfok($this->resim);
		
	}
	
	function kaydet($isim,$kalite=100) {
		$reskayfok='image'.$this->uzanti;
		$reskayfok($this->resim,$isim,$kalite);
	}
	
	function __destruct() {
		imagedestroy($this->resim);
	}
	
}
Not:Şimdilik siyah,beyaz,kirmizi,yesil,mavi olmak üzere 5 renk vardır.Eğer başka renk kullancaksanız renk yerine yeni yazıp kullancağınız fonksiyona rgb olarak 3 tane ek parametreyle renginizi tanımlayabilirsiniz.

Not2: public $fontyol="/font/";
Yazı yazdırmak için bu satırı düzenleyerek font yolunu belirmeniz ve bu yola kullancağınız fontu koymanız gereklidir.Varsayılan font, arial.ttf dir.Denetim->Yazı tipleri klasöründen alabilirsiniz.

Yukarıda örnek kullanımını verdiğim kısmın çıktısı şu şekildedir:



Lütfen kaynak belirmeden yayımlamayınız.