2012-06-12 39 views
5

que necesito su ayudaPHP Combinar 2 Imágenes (inserción en la cara a una imagen)

Tengo dos imágenes,
1. http://i.imgur.com/pyWGk.jpg (imagen de la cara, tipo: jpeg)
2. http://i.imgur.com/LYk07.png (imagen Marco, con agujero en la cara, tipo: png)

Quiero imagen de la cara insertar una imagen marco en

probé este script

<?php 
$image = imagecreatefromjpeg('face.jpg'); 
$frame = imagecreatefrompng('ironman.png'); 

$iw = imagesx($image); 
$ih = imagesy($image); 

$fw = imagesx($frame); 
$fh = imagesy($frame); 

imagealphablending($frame, true); 
imagesavealpha($frame, true); 
imagecopy($image, $frame, 0, 0, 0, 0, $fw, $fh); 

header('Content-Type: image/jpeg'); 
imagejpeg($image); 

imagedestroy($image); 
imagedestroy($frame); 
?> 

El problema son:
resolución de imagen resultado de no hace lo mismo con resolución de imagen del marco de, y
Cómo cambiar la posición de la imagen de la cara, por lo que la imagen de la cara puede derecho en el hoyo imagen Marco en

+0

Esta pregunta es demasiado amplia y muestra una falta de lectura de documentación. Desafortunadamente no tengo suficientes votos :). – kapa

+0

Hola usuario1450710, ¿encontró la solución para esta tarea? –

Respuesta

0

Puede escalar imágenes para obtener las mismas resoluciones. Aquí está el código de ejemplo para el escalado:

function scale($scale){ 
    //you can get image width and height from image info 
    $width = $image_width * $scale/100; 
    $height = $image_height * $scale/100; 

    $scaled_image = imagecreatetruecolor($width, $height); 
    imagecopyresampled($scaled_image, $old_image, 0, 0, 0, 0, $width, $height, $image_width, $image_height); 
} 

Para cambiar la posición de la cara de puede establecer los parámetros que desee en función imagecopy. Tendrá que configurar dst_x y dst_y.

Cuestiones relacionadas