NOTA: La informacion la saque de toda parte asi que es un codigo Mixtura (Me refiero que ES CODIGO sacado de varios source)
TRATAMIENTO DE LA IMAGEN
Primero tenemos que aprender a tratar a la imagen con esta pagina lo que hacemos es redimensionar el tamaño y ajustarlo.
Nombre de la pagina img.inc.php
Código
<?php //TRATAMIENTO DE IMAGENES //==================================== class somaImagen{ var $imagen_recurso; var $imagen_salida; var $imagen_recurso_ancho; var $imagen_salida_ancho; var $imagen_recurso_alto; var $imagen_salida_alto; var $imagen_recurso_desde_x = 0; var $imagen_salida_desde_x = 0; var $imagen_recurso_desde_y = 0; var $imagen_salida_desde_y = 0; var $escala; var $imagen_imprimible; var $rango_menor = 1; var $rango_mayor = 1000; function validarMedida($valor){ if ($valor>=($this->rango_menor) and $valor<$this->rango_mayor){ return $valor; }else{ if($valor <= ($this->rango_menor-1) ){return ($this->rango_menor); } if($valor>= $this->rango_mayor ){return $this->rango_mayor ; } } } function crearImagen($imagen){ $this->imagen_recurso = $imagen; } function crearSalida($ancho,$alto){ $this->imagen_salida_ancho = $ancho; $this->imagen_salida_alto = $alto; $this->imagen_imprimible = imagecreatetruecolor($this->imagen_salida_ancho,$this->imagen_salida_alto); $this->imagen_imprimible, $this->imagen_salida, $this->imagen_recurso_desde_x, $this->imagen_recurso_desde_y, $this->imagen_salida_desde_x, $this->imagen_salida_desde_y, $this->imagen_salida_ancho, $this->imagen_salida_alto, $this->imagen_recurso_ancho, $this->imagen_recurso_alto ); } function Cuadro($lados,$imagen){ $lados=$this->validarMedida($lados); $this->crearImagen($imagen); if ( $this->imagen_recurso_ancho>= $this->imagen_recurso_alto ) {$this->escala=$lados/$this->imagen_recurso_ancho;} else {$this->escala=$lados/$this->imagen_recurso_alto;} $this->crearSalida($this->imagen_recurso_ancho * $this->escala , $this->imagen_recurso_alto * $this->escala); } function AnchoMax($ancho,$imagen){ $ancho=$this->validarMedida($ancho); $this->crearImagen($imagen); $this->escala=$ancho/$this->imagen_recurso_ancho; $this->crearSalida($this->imagen_recurso_ancho * $this->escala , $this->imagen_recurso_alto * $this->escala); } function AltoMax($alto,$imagen){ $alto=$this->validarMedida($alto); $this->crearImagen($imagen); $this->escala=$alto/$this->imagen_recurso_alto; $this->crearSalida($this->imagen_recurso_ancho * $this->escala , $this->imagen_recurso_alto * $this->escala); } function Encuadrar($medida,$imagen,$alineacion){ $medida=$this->validarMedida($medida); $this->crearImagen($imagen); if ( $this->imagen_recurso_ancho <= $this->imagen_recurso_alto ){ $this->escala = $this->imagen_salida_ancho/$this->imagen_recurso_ancho; if($alineacion!=0){ if($alineacion==1){ $this->imagen_salida_desde_y=($this->imagen_recurso_alto-$this->imagen_recurso_ancho); } if($alineacion==2){ $this->imagen_salida_desde_y=($this->imagen_recurso_alto-$this->imagen_recurso_ancho)/2; } } $this->imagen_recurso_alto = $this->imagen_recurso_ancho; }else { $this->escala = $this->imagen_salida_alto/$this->imagen_recurso_alto; if($alineacion!=0){ if($alineacion==1){ $this->imagen_salida_desde_x=($this->imagen_recurso_ancho-$this->imagen_recurso_alto); } if($alineacion==2){ $this->imagen_salida_desde_x=($this->imagen_recurso_ancho-$this->imagen_recurso_alto)/2; } } $this->imagen_recurso_ancho = $this->imagen_recurso_alto; } $this->crearSalida($medida,$medida); } } ?>