1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-26 08:22:08 +01:00
Files
archived-doc-es/reference/image/functions/imagecopyresized.xml
Pedro Antonio Gil Rodríguez 09d66981d3 Correcciones menores (cambio de solapar por traslapar)
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@337177 c90b9560-bf6c-de11-be94-00142212c4b1
2015-07-16 20:35:12 +00:00

228 lines
7.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: ba0bcff13f816b9fc30d7e6ff334313e3dd7cde1 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<refentry xml:id="function.imagecopyresized" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>imagecopyresized</refname>
<refpurpose>Copia y cambia el tamaño de parte de una imagen</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>imagecopyresized</methodname>
<methodparam><type>resource</type><parameter>dst_image</parameter></methodparam>
<methodparam><type>resource</type><parameter>src_image</parameter></methodparam>
<methodparam><type>int</type><parameter>dst_x</parameter></methodparam>
<methodparam><type>int</type><parameter>dst_y</parameter></methodparam>
<methodparam><type>int</type><parameter>src_x</parameter></methodparam>
<methodparam><type>int</type><parameter>src_y</parameter></methodparam>
<methodparam><type>int</type><parameter>dst_w</parameter></methodparam>
<methodparam><type>int</type><parameter>dst_h</parameter></methodparam>
<methodparam><type>int</type><parameter>src_w</parameter></methodparam>
<methodparam><type>int</type><parameter>src_h</parameter></methodparam>
</methodsynopsis>
<para>
<function>imagecopyresized</function> copia una porción
de una imagen a otra imagen.
<parameter>dst_image</parameter> es la imagen de destino,
<parameter>src_image</parameter> es el identificador de la imagen de origen.
</para>
<para>
En otras palabras, <function>imagecopyresized</function> tomará un
área rectangular de <parameter>src_image</parameter> de ancho
<parameter>src_w</parameter> y alto <parameter>src_h</parameter> en la
posición (<parameter>src_x</parameter>,<parameter>src_y</parameter>)
y la colocará en un área rectangular de <parameter>dst_image</parameter>
de ancho <parameter>dst_w</parameter> y alto <parameter>dst_h</parameter>
en la posición (<parameter>dst_x</parameter>,<parameter>dst_y</parameter>).
</para>
<para>
Si las coordenadas de origen y destino y los anchos y altos
difieren, se llevará a cabo la ampliación o reducción apropiadas del fragmento
de la imagen. Las coodernadas se refiren a la esquina superior
izquierda. Esta función se puede usar para copiar regiones dentro de la
misma imagen (si <parameter>dst_image</parameter> es el mismo que
<parameter>src_image</parameter>) pero si las regiones se traslapan el
resultado será impredecible.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>dst_image</parameter></term>
<listitem>
<para>&gd.image.destination;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>src_image</parameter></term>
<listitem>
<para>&gd.image.source;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>dst_x</parameter></term>
<listitem>
<para>
Coordenada x del punto de destino.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>dst_y</parameter></term>
<listitem>
<para>
Coordenada y del punto de destino.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>src_x</parameter></term>
<listitem>
<para>
Coordenada x del punto de origen.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>src_y</parameter></term>
<listitem>
<para>
Coordenada y del punto de origen.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>dst_w</parameter></term>
<listitem>
<para>
Ancho del destino.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>dst_h</parameter></term>
<listitem>
<para>
Alto del destino.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>src_w</parameter></term>
<listitem>
<para>&gd.source.width;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>src_h</parameter></term>
<listitem>
<para>&gd.source.height;</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Cambiar el tamaño de una imagen</title>
<para>
Este ejemplo mostrará la imagen a mitad de tamaño.
</para>
<programlisting role="php">
<![CDATA[
<?php
// Fichero y nuevo tamaño
$nombre_fichero = 'prueba.jpg';
$porcentaje = 0.5;
// Tipo de contenido
header('Content-Type: image/jpeg');
// Obtener los nuevos tamaños
list($ancho, $alto) = getimagesize($nombre_fichero);
$nuevo_ancho = $ancho * $porcentaje;
$nuevo_alto = $alto * $porcentaje;
// Cargar
$thumb = imagecreatetruecolor($nuevo_ancho, $nuevo_alto);
$origen = imagecreatefromjpeg($nombre_fichero);
// Cambiar el tamaño
imagecopyresized($thumb, $origen, 0, 0, 0, 0, $nuevo_ancho, $nuevo_alto, $ancho, $alto);
// Imprimir
imagejpeg($thumb);
?>
]]>
</programlisting>
&example.outputs.similar;
<mediaobject>
<alt>Salida del ejemplo : Cambiar el tamaño de una imagen</alt>
<imageobject>
<imagedata fileref="en/reference/image/figures/imagecopyresized.jpg"/>
</imageobject>
</mediaobject>
<para>
La imagen se imprimirá a mitad de tamaño, aunque se puede
obtener una mejor calidad usando <function>imagecopyresampled</function>.
</para>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Hay un problema debido a las limitaciones de la imagen de paleta (255+1 colores).
Redimensionar o filtrar una imagen normalmente necesita más de 255 colores, por lo que se usa
un tipo de aproximación para calcular el nuevo píxel redimensionado y su color.
Con una imagen de paleta se trata de asignar un color nuevo, y si falló,
se escoge el color computado más próximo (en teoría). Éste no es
siempre el color visual más próximo. Puede producir un resultado extraño, como
imágenes en blanco (o visualmente en blaco). Para evitar este problema, por favor use una
imagen de color verdadero como imagen de destino, como una creada por
<function>imagecreatetruecolor</function>.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<function>imagecopyresampled</function>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->