PHP | Función ImagickDraw pathMoveToAbsolute()

La función ImagickDraw::pathMoveToAbsolute() es una función incorporada en PHP que se usa para iniciar una nueva subruta en la coordenada dada usando coordenadas absolutas. El punto actual se convierte entonces en la coordenada especificada. Esta función se utiliza para establecer las coordenadas iniciales antes de empezar a dibujar nada.

Sintaxis:

bool ImagickDraw::pathMoveToAbsolute( float $x, float $y )

Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:

  • $x: Especifica la coordenada x.
  • $y: Especifica la coordenada y.

Valor de retorno: esta función devuelve VERDADERO en caso de éxito.

Excepciones: esta función lanza ImagickException en caso de error.

Los siguientes programas ilustran la función ImagickDraw::pathMoveToAbsolute() en PHP:
Programa 1:

<?php
  
// Create a new imagick object
$imagick = new Imagick();
  
// Create a image on imagick object
$imagick->newImage(800, 250, 'white');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
// Set the stroke width
$draw->setStrokeWidth(30);
  
$draw->pathStart();
  
// Setting the stating point to (400, 40)
$draw->pathMoveToAbsolute(400, 40);
  
// Setting the end point to (500, 40)
$draw->pathLineToHorizontalAbsolute(500);
$draw->pathFinish();
  
// Render the draw commands
$imagick->drawImage($draw);
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>

Producción:

Programa 2:

<?php
  
// Create a new imagick object
$imagick = new Imagick();
   
// Create a image on imagick object
$imagick->newImage(800, 250, 'white');
   
// Create a new ImagickDraw object
$draw = new ImagickDraw();
   
$color = ['blue', 'red', 'green'];
   
// Set the stroke width
$draw->setStrokeWidth(5);
   
// Draw lines
for ($x = 0; $x < 20; $x++) {
    $draw->setStrokeColor($color[$x % 3]);
    $draw->pathStart();
    // Moving to next vertical line
    $draw->pathMoveToAbsolute($x * 40, 0);
    $draw->pathLineToVerticalRelative(800);
    $draw->pathFinish();
}
for ($x = 0; $x < 20; $x++) {
    $draw->setStrokeColor($color[$x % 3]);
    $draw->pathStart();
    // Moving to next horizontal line
    $draw->pathMoveToAbsolute(0, $x * 40);
    $draw->pathLineToHorizontalRelative(800);
    $draw->pathFinish();
   
}
   
// Render the draw commands
$imagick->drawImage($draw);
   
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>

Producción:

Referencia: https://www.php.net/manual/en/imagickdraw.pathmovetoabsolute.php

Publicación traducida automáticamente

Artículo escrito por gurrrung y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *