<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/imagick.examples.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'imagick.examples-1.php',
    1 => 'Uso b&aacute;sico',
    2 => 'Uso b&aacute;sico',
  ),
  'up' => 
  array (
    0 => 'imagick.examples.php',
    1 => 'Ejemplos',
  ),
  'prev' => 
  array (
    0 => 'imagick.examples.php',
    1 => 'Ejemplos',
  ),
  'next' => 
  array (
    0 => 'class.imagick.php',
    1 => 'Imagick',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/imagick/examples.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="imagick.examples-1" class="section">
  <h2 class="title">Uso básico</h2>
  <p class="para">
   Imagick hace que la manipulación de imágenes en PHP sea extremadamente sencilla a través
   de una interfaz OO. Aquí está un ejemplo breve de cómo hacer una miniatura:
   <div class="example" id="example-1">
    <p><strong>Ejemplo #1 Crear una miniatura con Imagick</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br />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: #0000BB">$imagen </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">(</span><span style="color: #DD0000">'imagen.jpg'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Si se proporciona 0 como parámetro de ancho o alto,<br />// se mantiene la proporción de aspecto<br /></span><span style="color: #0000BB">$imagen</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">thumbnailImage</span><span style="color: #007700">(</span><span style="color: #0000BB">100</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br />echo </span><span style="color: #0000BB">$imagen</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>

  <p class="para">
   Al usar SPL y otras características OO soportadas en Imagick, puede ser sencillo
   redimensionar todos los archivos de un directorio (útil para la redimensión por lotes de
   muchas imágenes de cámara digital para que sean visibles desde una web). Aquí usamos redimensión,
   ya que queremos mantener cierta meta-información:
   <div class="example" id="example-2">
    <p><strong>Ejemplo #2 Hacer una miniatura de todos los archivos JPG de un directorio</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br />$imágenes </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">(</span><span style="color: #0000BB">glob</span><span style="color: #007700">(</span><span style="color: #DD0000">'imagenes/*.JPG'</span><span style="color: #007700">));<br /><br />foreach(</span><span style="color: #0000BB">$imágenes </span><span style="color: #007700">as </span><span style="color: #0000BB">$imagen</span><span style="color: #007700">) {<br /><br />    </span><span style="color: #FF8000">// Proporcionar 0 fuerza a thumbnailImage a mantener la proporción de aspecto<br />    </span><span style="color: #0000BB">$imagen</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">thumbnailImage</span><span style="color: #007700">(</span><span style="color: #0000BB">1024</span><span style="color: #007700">,</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br />}<br /><br /></span><span style="color: #0000BB">$imágenes</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">writeImages</span><span style="color: #007700">();<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
  <p class="para">
   Este es un ejemplo de crear un reflejo de una imagen.
   El reflejo se crea volteando la imagen y poniendo una capa de gradiente sobre ella.
   Ambas, la imagen original y el reflejo, están sobrepuestas en un lienzo.
   <div class="example" id="example-3">
    <p><strong>Ejemplo #3 Crear un reflejo de una imagen</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* Leer la imagen */<br /></span><span style="color: #0000BB">$im </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">(</span><span style="color: #DD0000">"test.png"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Miniaturizar la imagen */<br /></span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">thumbnailImage</span><span style="color: #007700">(</span><span style="color: #0000BB">200</span><span style="color: #007700">, </span><span style="color: #0000BB">null</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Crear un borde para la imagen */<br /></span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">borderImage</span><span style="color: #007700">(new </span><span style="color: #0000BB">ImagickPixel</span><span style="color: #007700">(</span><span style="color: #DD0000">"white"</span><span style="color: #007700">), </span><span style="color: #0000BB">5</span><span style="color: #007700">, </span><span style="color: #0000BB">5</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Clonar la imagen y voltearla */<br /></span><span style="color: #0000BB">$reflejo </span><span style="color: #007700">= </span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">clone</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$reflejo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">flipImage</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">/* Crear un gradiente. Será sobrepuesto en el reflejo */<br /></span><span style="color: #0000BB">$gradiente </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">/* El gradiente necesita ser más grande que la imagen y los bordes */<br /></span><span style="color: #0000BB">$gradiente</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newPseudoImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$reflejo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getImageWidth</span><span style="color: #007700">() + </span><span style="color: #0000BB">10</span><span style="color: #007700">, </span><span style="color: #0000BB">$reflejo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getImageHeight</span><span style="color: #007700">() + </span><span style="color: #0000BB">10</span><span style="color: #007700">, </span><span style="color: #DD0000">"gradient:transparent-black"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Componer el gradiente con el reflejo */<br /></span><span style="color: #0000BB">$reflejo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">compositeImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$gradiente</span><span style="color: #007700">, </span><span style="color: #0000BB">imagick</span><span style="color: #007700">::</span><span style="color: #0000BB">COMPOSITE_OVER</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">);<br /><br /></span><span style="color: #FF8000">/* Añadir algo de opacidad. Requiere ImageMagick 6.2.9 o superior */<br /></span><span style="color: #0000BB">$reflejo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setImageOpacity</span><span style="color: #007700">( </span><span style="color: #0000BB">0.3 </span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Crear un lienzo vacío */<br /></span><span style="color: #0000BB">$lienzo </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">/* El lienzo necesita ser más grande para mantener ambas imágenes */<br /></span><span style="color: #0000BB">$ancho </span><span style="color: #007700">= </span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getImageWidth</span><span style="color: #007700">() + </span><span style="color: #0000BB">40</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$alto </span><span style="color: #007700">= (</span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getImageHeight</span><span style="color: #007700">() * </span><span style="color: #0000BB">2</span><span style="color: #007700">) + </span><span style="color: #0000BB">30</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$ancho</span><span style="color: #007700">, </span><span style="color: #0000BB">$alto</span><span style="color: #007700">, new </span><span style="color: #0000BB">ImagickPixel</span><span style="color: #007700">(</span><span style="color: #DD0000">"black"</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setImageFormat</span><span style="color: #007700">(</span><span style="color: #DD0000">"png"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Componer la imagen original y el reflejo sobre el lienzo */<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">compositeImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$im</span><span style="color: #007700">, </span><span style="color: #0000BB">imagick</span><span style="color: #007700">::</span><span style="color: #0000BB">COMPOSITE_OVER</span><span style="color: #007700">, </span><span style="color: #0000BB">20</span><span style="color: #007700">, </span><span style="color: #0000BB">10</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">compositeImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$reflejo</span><span style="color: #007700">, </span><span style="color: #0000BB">imagick</span><span style="color: #007700">::</span><span style="color: #0000BB">COMPOSITE_OVER</span><span style="color: #007700">, </span><span style="color: #0000BB">20</span><span style="color: #007700">, </span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getImageHeight</span><span style="color: #007700">() + </span><span style="color: #0000BB">10</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Imprimir la imagen */<br /></span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">"Content-Type: image/png"</span><span style="color: #007700">);<br />echo </span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>Resultado del ejemplo anterior es similar a:</p></div>
    <div class="mediaobject">
     
     <div class="imageobject">
      <img src="images/c0d23d2d6769e53e24a1b3136c064577-hello_world_reflection.png" alt="Salida del ejemplo : Crear un reflejo de una imagen" width="250" height="130" />
     </div>
    </div>
   </div>
  </p>
  <p class="para">
   Este ejemplo ilustra cómo usar patrones de relleno durante el dibujo.
   <div class="example" id="example-4">
    <p><strong>Ejemplo #4 Rellenar un texto con un gradiente</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br /></span><span style="color: #FF8000">/* Crear un nuevo objeto imagick */<br /></span><span style="color: #0000BB">$im </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">/* Crear una nueva imagen. Será usada como patrón de relleno */<br /></span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newPseudoImage</span><span style="color: #007700">(</span><span style="color: #0000BB">50</span><span style="color: #007700">, </span><span style="color: #0000BB">50</span><span style="color: #007700">, </span><span style="color: #DD0000">"gradient:red-black"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Crear un objeto imagickdraw */<br /></span><span style="color: #0000BB">$dibujo </span><span style="color: #007700">= new </span><span style="color: #0000BB">ImagickDraw</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">/* Iniciar un nuevo patrón llamado "gradient" */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">pushPattern</span><span style="color: #007700">(</span><span style="color: #DD0000">'gradient'</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">50</span><span style="color: #007700">, </span><span style="color: #0000BB">50</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Componer el gradiente con el patrón */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">composite</span><span style="color: #007700">(</span><span style="color: #0000BB">Imagick</span><span style="color: #007700">::</span><span style="color: #0000BB">COMPOSITE_OVER</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">50</span><span style="color: #007700">, </span><span style="color: #0000BB">50</span><span style="color: #007700">, </span><span style="color: #0000BB">$im</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Cerrar el patrón */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">popPattern</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">/* Usar el patrón llamado "gradient" como el relleno */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFillPatternURL</span><span style="color: #007700">(</span><span style="color: #DD0000">'#gradient'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Establecer el tamaño de fuente a 52 */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFontSize</span><span style="color: #007700">(</span><span style="color: #0000BB">52</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Anotar algo de texto */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">annotation</span><span style="color: #007700">(</span><span style="color: #0000BB">20</span><span style="color: #007700">, </span><span style="color: #0000BB">50</span><span style="color: #007700">, </span><span style="color: #DD0000">"Hello World!"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Crear un nuevo lienzo y una imagen blanca */<br /></span><span style="color: #0000BB">$lienzo </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newImage</span><span style="color: #007700">(</span><span style="color: #0000BB">350</span><span style="color: #007700">, </span><span style="color: #0000BB">70</span><span style="color: #007700">, </span><span style="color: #DD0000">"white"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Dibujar el objeto ImagickDraw sobre el lienzo */<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">drawImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Borde negro de 1px alrededor de la imagen */<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">borderImage</span><span style="color: #007700">(</span><span style="color: #DD0000">'black'</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Establecer el formato a PNG */<br /></span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setImageFormat</span><span style="color: #007700">(</span><span style="color: #DD0000">'png'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Imprimir la imagen */<br /></span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">"Content-Type: image/png"</span><span style="color: #007700">);<br />echo </span><span style="color: #0000BB">$lienzo</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>Resultado del ejemplo anterior es similar a:</p></div>
    <div class="mediaobject">
     
     <div class="imageobject">
      <img src="images/c0d23d2d6769e53e24a1b3136c064577-hello_world.png" alt="Salida del ejemplo : Rellenar texto con gradiente" width="352" height="72" />
     </div>
    </div>
   </div>
  </p>
  <p class="para">
   Trabajar con imágenes GIF animadas
   <div class="example" id="example-5">
    <p><strong>Ejemplo #5 Leer una imágen GIF y redimensionar todos los fotogramas</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br /></span><span style="color: #FF8000">/* Crear un nuevo objeto imagick y leer el GIF */<br /></span><span style="color: #0000BB">$im </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">(</span><span style="color: #DD0000">"ejemplo.gif"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Redimensionar todos los fotogramas */<br /></span><span style="color: #007700">foreach (</span><span style="color: #0000BB">$im </span><span style="color: #007700">as </span><span style="color: #0000BB">$fotograma</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">/* Fotogramas de 50x50 */<br /> </span><span style="color: #0000BB">$fotograma</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">thumbnailImage</span><span style="color: #007700">(</span><span style="color: #0000BB">50</span><span style="color: #007700">, </span><span style="color: #0000BB">50</span><span style="color: #007700">);<br /><br /> </span><span style="color: #FF8000">/* Establecer el lienzo virtual para corregir el tamaño */<br /> </span><span style="color: #0000BB">$fotograma</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setImagePage</span><span style="color: #007700">(</span><span style="color: #0000BB">50</span><span style="color: #007700">, </span><span style="color: #0000BB">50</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">);<br />}<br /><br /></span><span style="color: #FF8000">/* Observe: writeImages en vez de writeImage */<br /></span><span style="color: #0000BB">$im</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">writeImages</span><span style="color: #007700">(</span><span style="color: #DD0000">"example_small.gif"</span><span style="color: #007700">, </span><span style="color: #0000BB">true</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
  <p class="para">
   Trabajar con primitivas de elipse y tipos de letra personalizados
   <div class="example" id="example-6">
    <p><strong>Ejemplo #6 Crear un logo de PHP</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* Establecer el ancho y alto en proporción al logo genuino de PHP */<br /></span><span style="color: #0000BB">$ancho </span><span style="color: #007700">= </span><span style="color: #0000BB">400</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$alto </span><span style="color: #007700">= </span><span style="color: #0000BB">210</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* Crear un objeto Imagick con lienzo transparente */<br /></span><span style="color: #0000BB">$img </span><span style="color: #007700">= new </span><span style="color: #0000BB">Imagick</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$img</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$ancho</span><span style="color: #007700">, </span><span style="color: #0000BB">$alto</span><span style="color: #007700">, new </span><span style="color: #0000BB">ImagickPixel</span><span style="color: #007700">(</span><span style="color: #DD0000">'transparent'</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">/* Nueva instancia de ImagickDraw para dibujar la elipse */<br /></span><span style="color: #0000BB">$dibujo </span><span style="color: #007700">= new </span><span style="color: #0000BB">ImagickDraw</span><span style="color: #007700">();<br /></span><span style="color: #FF8000">/* Establecer el color de relleno púrpura para la elipse */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFillColor</span><span style="color: #007700">(</span><span style="color: #DD0000">'#777bb4'</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Establecer las dimensiones de la elipse */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">ellipse</span><span style="color: #007700">(</span><span style="color: #0000BB">$ancho </span><span style="color: #007700">/ </span><span style="color: #0000BB">2</span><span style="color: #007700">, </span><span style="color: #0000BB">$alto </span><span style="color: #007700">/ </span><span style="color: #0000BB">2</span><span style="color: #007700">, </span><span style="color: #0000BB">$ancho </span><span style="color: #007700">/ </span><span style="color: #0000BB">2</span><span style="color: #007700">, </span><span style="color: #0000BB">$alto </span><span style="color: #007700">/ </span><span style="color: #0000BB">2</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">360</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Dibujar la elipse en el lienzo */<br /></span><span style="color: #0000BB">$img</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">drawImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Restablecer el color de relleno de púrpura a negro para el texto (nota: estamos reutilizando el objeto ImagickDraw) */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFillColor</span><span style="color: #007700">(</span><span style="color: #DD0000">'black'</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Establecer el borde del contorno al color blanco */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setStrokeColor</span><span style="color: #007700">(</span><span style="color: #DD0000">'white'</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Establecer el grosor del borde del contorno */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setStrokeWidth</span><span style="color: #007700">(</span><span style="color: #0000BB">2</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Establecer el interletraje («kerning») del tipo de letra (un valor negativo significa que las letras están más juntas entre ellas) */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setTextKerning</span><span style="color: #007700">(-</span><span style="color: #0000BB">8</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Establecer el tamaño del tipo de letra usado para el logo de PHP */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFont</span><span style="color: #007700">(</span><span style="color: #DD0000">'Handel Gothic.ttf'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFontSize</span><span style="color: #007700">(</span><span style="color: #0000BB">150</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Centrar el texto horizontal y verticalmente */<br /></span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setGravity</span><span style="color: #007700">(</span><span style="color: #0000BB">Imagick</span><span style="color: #007700">::</span><span style="color: #0000BB">GRAVITY_CENTER</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Añadir en el centro "php" con el índice Y de -10 al lienzo (dentro de la elipse) */<br /></span><span style="color: #0000BB">$img</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">annotateImage</span><span style="color: #007700">(</span><span style="color: #0000BB">$dibujo</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, -</span><span style="color: #0000BB">10</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #DD0000">'php'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$img</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setImageFormat</span><span style="color: #007700">(</span><span style="color: #DD0000">'png'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Establecer la cabecera apropiada para PNG y generar la imagen */<br /></span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">'Content-Type: image/png'</span><span style="color: #007700">);<br />echo </span><span style="color: #0000BB">$img</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>Resultado del ejemplo anterior es similar a:</p></div>
    <div class="mediaobject">
     
     <div class="imageobject">
      <img src="images/c0d23d2d6769e53e24a1b3136c064577-php_logo.png" alt="Salida del ejemplo: Crear el logo de PHP con Imagick" width="300" height="180" />
     </div>
    </div>
   </div>
  </p>
 </div><?php manual_footer($setup); ?>