<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.image.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'function.imagecopyresized.php',
    1 => 'imagecopyresized',
    2 => 'Copie et redimensionne une partie d\'une image',
  ),
  'up' => 
  array (
    0 => 'ref.image.php',
    1 => 'Fonctions GD et images',
  ),
  'prev' => 
  array (
    0 => 'function.imagecopyresampled.php',
    1 => 'imagecopyresampled',
  ),
  'next' => 
  array (
    0 => 'function.imagecreate.php',
    1 => 'imagecreate',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'reference/image/functions/imagecopyresized.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.imagecopyresized" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">imagecopyresized</h1>
  <p class="verinfo">(PHP 4, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">imagecopyresized</span> &mdash; <span class="dc-title">Copie et redimensionne une partie d&#039;une image</span></p>

 </div>
 <div class="refsect1 description" id="refsect1-function.imagecopyresized-description">
  <h3 class="title">Description</h3>
  <div class="methodsynopsis dc-description">
   <span class="modifier">function</span> <span class="methodname"><strong>imagecopyresized</strong></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="class.gdimage.php" class="type GdImage">GdImage</a></span> <code class="parameter">$dst_image</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="class.gdimage.php" class="type GdImage">GdImage</a></span> <code class="parameter">$src_image</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$dst_x</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$dst_y</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$src_x</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$src_y</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$dst_width</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$dst_height</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$src_width</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$src_height</code></span><br>): <span class="type"><a href="language.types.singleton.php" class="type true">true</a></span></div>

  <p class="para rdfs-comment">
   <span class="function"><strong>imagecopyresized()</strong></span> copie une partie rectangulaire d&#039;une image
   dans une autre image de destination. <code class="parameter">dst_image</code> est l&#039;image
   de destination, <code class="parameter">src_image</code> est l&#039;image source.
  </p>
  <p class="para">
   En d&#039;autres termes, <span class="function"><strong>imagecopyresized()</strong></span> prendra une
   zone rectangulaire de <code class="parameter">src_image</code> d&#039;une largeur de
   <code class="parameter">src_width</code> et d&#039;une hauteur <code class="parameter">src_height</code>
   à la position (<code class="parameter">src_x</code>,<code class="parameter">src_y</code>)
   et la placera dans une zone rectangulaire de <code class="parameter">dst_image</code>
   d&#039;une largeur de <code class="parameter">dst_width</code> et d&#039;une hauteur de
   <code class="parameter">dst_height</code> à la position
   (<code class="parameter">dst_x</code>,<code class="parameter">dst_y</code>).
  </p>
  <p class="para">
   Si les coordonnées et les dimensions de la source et de la destination
   diffèrent, un étirement ou un rétrécissement approprié du fragment
   d&#039;image sera effectué. Les coordonnées sont définies par rapport
   au coin supérieur gauche. Cette fonction peut être
   utilisée pour copier des régions à l&#039;intérieur
   d&#039;une même image (si <code class="parameter">dst_image</code> et
   <code class="parameter">src_image</code> sont identiques), mais si les
   régions se chevauchent, les résultats seront imprévisibles.
  </p>
 </div>

 <div class="refsect1 parameters" id="refsect1-function.imagecopyresized-parameters">
  <h3 class="title">Liste de paramètres</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">dst_image</code></dt>
     <dd>
      <p class="para">Ressource cible de l&#039;image.</p>
     </dd>
    
    
     <dt><code class="parameter">src_image</code></dt>
     <dd>
      <p class="para">Ressource source de l&#039;image.</p>
     </dd>
    
    
     <dt><code class="parameter">dst_x</code></dt>
     <dd>
      <p class="para">
       Coordonnée x du point de destination.
      </p>
     </dd>
    
    
     <dt><code class="parameter">dst_y</code></dt>
     <dd>
      <p class="para">
       Coordonnée y du point de destination.
      </p>
     </dd>
    
    
     <dt><code class="parameter">src_x</code></dt>
     <dd>
      <p class="para">
       Coordonnée x du point source.
      </p>
     </dd>
    
    
     <dt><code class="parameter">src_y</code></dt>
     <dd>
      <p class="para">
       Coordonnée y du point source.
      </p>
     </dd>
    
    
     <dt><code class="parameter">dst_width</code></dt>
     <dd>
      <p class="para">
       Largeur de la destination.
      </p>
     </dd>
    
    
     <dt><code class="parameter">dst_height</code></dt>
     <dd>
      <p class="para">
       Hauteur de la destination.
      </p>
     </dd>
    
    
     <dt><code class="parameter">src_width</code></dt>
     <dd>
      <p class="para">Largeur de la source.</p>
     </dd>
    
    
     <dt><code class="parameter">src_height</code></dt>
     <dd>
      <p class="para">Hauteur de la source.</p>
     </dd>
    
   </dl>
  </p>
 </div>

 <div class="refsect1 returnvalues" id="refsect1-function.imagecopyresized-returnvalues">
  <h3 class="title">Valeurs de retour</h3>
  <p class="para">
   Retourne toujours <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>.
  </p>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.imagecopyresized-changelog">
  <h3 class="title">Historique</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>Version</th>
      <th>Description</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td>8.0.0</td>
      <td>
       <code class="parameter">dst_image</code> et <code class="parameter">src_image</code>
       attendent désormais des instances de <span class="classname"><a href="class.gdimage.php" class="classname">GdImage</a></span> ;
       auparavant, des <span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span>s étaient attendues.
      </td>
     </tr>

    </tbody>
   
  </table>

 </div>


 <div class="refsect1 examples" id="refsect1-function.imagecopyresized-examples">
  <h3 class="title">Exemples</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Exemple #1 Redimensionnement d&#039;une image</strong></p>
    <div class="example-contents"><p>
     Cet exemple affichera l&#039;image redimensionnée à la moitié de sa taille d&#039;origine.
    </p></div>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// Fichier et nouvelle taille<br /></span><span style="color: #0000BB">$filename </span><span style="color: #007700">= </span><span style="color: #DD0000">'test.jpg'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$percent </span><span style="color: #007700">= </span><span style="color: #0000BB">0.5</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Content type<br /></span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">'Content-Type: image/jpeg'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Calcul des nouvelles dimensions<br /></span><span style="color: #007700">list(</span><span style="color: #0000BB">$width</span><span style="color: #007700">, </span><span style="color: #0000BB">$height</span><span style="color: #007700">) = </span><span style="color: #0000BB">getimagesize</span><span style="color: #007700">(</span><span style="color: #0000BB">$filename</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$newwidth </span><span style="color: #007700">= </span><span style="color: #0000BB">$width </span><span style="color: #007700">* </span><span style="color: #0000BB">$percent</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$newheight </span><span style="color: #007700">= </span><span style="color: #0000BB">$height </span><span style="color: #007700">* </span><span style="color: #0000BB">$percent</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Chargement<br /></span><span style="color: #0000BB">$thumb </span><span style="color: #007700">= </span><span style="color: #0000BB">imagecreatetruecolor</span><span style="color: #007700">(</span><span style="color: #0000BB">$newwidth</span><span style="color: #007700">, </span><span style="color: #0000BB">$newheight</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$source </span><span style="color: #007700">= </span><span style="color: #0000BB">imagecreatefromjpeg</span><span style="color: #007700">(</span><span style="color: #0000BB">$filename</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Redimensionnement<br /></span><span style="color: #0000BB">imagecopyresized</span><span style="color: #007700">(</span><span style="color: #0000BB">$thumb</span><span style="color: #007700">, </span><span style="color: #0000BB">$source</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">$newwidth</span><span style="color: #007700">, </span><span style="color: #0000BB">$newheight</span><span style="color: #007700">, </span><span style="color: #0000BB">$width</span><span style="color: #007700">, </span><span style="color: #0000BB">$height</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Affichage<br /></span><span style="color: #0000BB">imagejpeg</span><span style="color: #007700">(</span><span style="color: #0000BB">$thumb</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>Résultat de l&#039;exemple ci-dessus est similaire à :</p></div>
    <div class="mediaobject">
     
     <div class="imageobject">
      <img src="images/21009b70229598c6a80eef8b45bf282b-imagecopyresized.jpg" alt="Affichage de l'exemple : imagecopyresized()" width="47" height="25" />
     </div>
    </div>
    <div class="example-contents"><p>
     L&#039;image sera affichée à la moitié de sa taille, bien qu&#039;une
     meilleure qualité puisse être obtenue en utilisant
     <span class="function"><a href="function.imagecopyresampled.php" class="function">imagecopyresampled()</a></span>.
    </p></div>
   </div>
  </p>
 </div>

 <div class="refsect1 notes" id="refsect1-function.imagecopyresized-notes">
  <h3 class="title">Notes</h3>
  <blockquote class="note"><p><strong class="note">Note</strong>: 
   <p class="para">
    Il y a un problème dû aux limitations des images à palette
    (255 + 1 couleurs). Le rééchantillonnage ou le filtrage d&#039;une image
    nécessite généralement plus de 255 couleurs, une sorte d&#039;approximation
    est alors utilisée pour calculer le nouveau pixel rééchantillonné et sa
    couleur. Avec une image à palette, une tentative d&#039;allocation d&#039;une
    nouvelle couleur est effectuée et, en cas d&#039;échec, la couleur la plus
    proche (en théorie) est choisie. Ce n&#039;est pas toujours la couleur
    visuellement la plus proche. Cela peut produire un résultat étrange,
    comme des images blanches (ou visuellement blanches). Pour éviter ce
    problème, il faut utiliser une image TrueColor comme image de
    destination, telle qu&#039;une image créée par
    <span class="function"><a href="function.imagecreatetruecolor.php" class="function">imagecreatetruecolor()</a></span>.
   </p>
  </p></blockquote>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.imagecopyresized-seealso">
  <h3 class="title">Voir aussi</h3>
  <ul class="simplelist">
   <li><span class="function"><a href="function.imagecopyresampled.php" class="function" rel="rdfs-seeAlso">imagecopyresampled()</a> - Copie, redimensionne, r&eacute;&eacute;chantillonne une image</span></li>
   <li><span class="function"><a href="function.imagescale.php" class="function" rel="rdfs-seeAlso">imagescale()</a> - Met &agrave; l'&eacute;chelle une image en utilisant une hauteur et une largeur fournies</span></li>
   <li><span class="function"><a href="function.imagecrop.php" class="function" rel="rdfs-seeAlso">imagecrop()</a> - Recadre une image sur le rectangle donn&eacute;</span></li>
  </ul>
 </div>

</div><?php manual_footer($setup); ?>