Ver Mensaje Individual
  #15 (permalink)  
Antiguo 16/09/2005, 20:23
huayayo
 
Fecha de Ingreso: abril-2004
Mensajes: 56
Antigüedad: 20 años
Puntos: 0
<?PHP
$base = "base.gif";

PASO 1:
$altura = 250;

$ratio = ($dimensiones[1] / $altura);
$anchura = round($dimensiones[0] / $ratio);
$image = imagecreatetruecolor($anchura,$altura); //crea la nueva imagen
$FFF = imagecolorallocate($image, 255,255,255);
imagefill($image, 0, 0, $FFF);
imagecopyresampled ($image, $img, 0, 0, 0, 0, $anchura, $altura, $dimensiones[0], $dimensiones[1]);//reescala
imagejpeg($image,"$dir$image_name", $c1);

PASO 2:
//Pega el resultado sobre la base
$img = $dir.$image_name;
$im1 = imagecreatefromjpeg($img);
$ancho = imagesx($im1);
$alto = imagesy($im1);

$xpos = (250 - $ancho) / 2;
$ypos = (250 - $alto) / 2;

$im2 = imagecreatefromgif($base);
$im2 = imagecreatetruecolor (250,250);
imagecopy ($im2, $im1,$xpos,$ypos,0, 0,$ancho,$alto);


imagejpeg($im2,"$dir$image_name",95);

PASO 3:
//Crea el watermark
$pos = explode("-",$pos); //posición horizontal y vertical del watermark:
$wmhorz = $pos[0];
$wmvert = $pos[1];

$logo = imagecreatefrompng($watermark);
$margen = 0; //distancia entre el watermark y la orilla
$logoW =imagesx($logo); //Anchura del logo
$logoH =imagesy($logo); //Altura del logo
$anchura = 250;
imagecopy($im2, $logo, 0, 0, 0, 0, 250, 250); //Pone el logo
imagejpeg($im2,"$dir$image_name", 95);


?>


LOGRE HACER LO QUE NECESITABA:

En el paso 1 reescala la imagen
En el paso 2 pega imagen redimensionada sobre otra que mide 250 x 250
En el paso 3 agrega la marca de agua

Supongamos que la imagen original mide 560px x 960px al redimensionarla queda de 130 x 250 pixeles, en el paso 2 toma esta imagen y la "pega" sobre otra 250 x 250 de fondo blanco (centrandola horizontal y verticalmente).

El problema es que todo el fondo queda de color azul, con otras fotos el fondo queda de color negro. ¿Porque pasa esto si la imagen "base" tiene el fondo blanco. (yo necesito que el fondo sea blanco).

PD: la imagen del parámetro $base es un gif de 250 x 250 de color blanco.

Porfavor ayudenme (Cluster, escoffie, o cualquiera) solo me falta esto para terminar
__________________
Si el mundo es redondo ¿por que le pusieron planeta?
Entonces si hubiese sido plano le hubisen puesto "redondeta"