imagecopyresampled
imagecreate
GD and Image Functions
PHP Manual

# imagecopyresized

(PHP 4, PHP 5)

imagecopyresized — Copia y redimensiona parte de una imagen

### Descripción

bool imagecopyresized ( resource `$dst_im` , resource `$src_im` , int `$dstX` , int `$dstY` , int `$srcX` , int `$srcY` , int `$dstW` , int `$dstH` , int `$srcW` , int `$srcH` )

imagecopyresized() copia una porción rectangular de una imagen hacia otra imagen. `dst_im` es la imagen de destino, `src_im` es el identificador de la imagen origen. Si la altura y anchura de las coordenadas de origen y destino difieren se realizará un estrechamiento o un estiramiento apropiado del fragmento de la imagen. Las coordenadas van localizadas sobre la esquina superior izquierda. Esta función se puede usar para copiar regiones dentro de la misma imagen (si `dst_im` es igual que `src_im` ) pero si las regiones se solapan los resultados seran impredecibles.

> Note: Existe un problema debido a las limitaciones de las imagenes con paleta de colores (255+1 colores). La acción de volver a muestrear o filtrar una imagen, normalmente requiere de más de 255 colores, con los que se usa una aproximación para calcular el nuevo pixel muestreado y su color.
> En las imagenes con paleta de color, se trata de obtener el nuevo color, o el color calculado más próximo en caso de error. Sin embargo, este nuevo color no siempre es el que visualmente es mas semejante. De esta forma, se pueden producir resultados extraños como imagenes vacías.
> Para solventar este problema, se recomienda usar imagenes de color real como imagen destino, que se pueden obtener por ejemplo mediante la función imagecreatetruecolor().

### Ejemplos

Example #1 Redimensionar una imagen

Este ejemplo muestra una imagen a la mitad de su tamaño real.

`<?php
// Variables que indican el archivo de la imagen y el nuevo tamano
$filename = 'test.jpg';
$percent = 0.5;
// Content-type para el navegador
header('Content-type: image/jpeg');
// Se obtienen las nuevas dimensiones
list($width, $height) = getimagesize($filename);
$newwidth = $width * $percent;
$newheight = $height * $percent;
// Cargar la imagen
$thumb = imagecreate($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
// Redimensionar
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
// Mostrar la nueva imagen
imagejpeg($thumb);
?>`

La imagen se muestra a la mitad de su tamaño original, aunque se puede obtener mejor calidad si se emplea la función imagecopyresampled().

### Ver también

imagecopyresampled()

imagecopyresampled
imagecreate
GD and Image Functions
PHP Manual