PHP | Función ImagickDraw pathFinish()

La función ImagickDraw::pathFinish() es una función incorporada en PHP que se usa para terminar la ruta actual. Esto es necesario cuando se van a dibujar varias rutas en la imagen.

Sintaxis:

bool ImagickDraw::pathFinish( void )

Parámetros: Esta función no acepta ningún parámetro.

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::pathFinish() en PHP:

Programa 1:

<?php
  
// Create a new imagick object
$imagick = new Imagick();
  
// Create a image on imagick object
$imagick->newImage(800, 250, '#1a65f0');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
$draw->setFillColor('#2fceeb');
  
// Set the stroke color
$draw->setStrokeColor('black');
  
// Set the stroke width
$draw->setStrokeWidth(15);
  
// Create a path
$draw->pathStart();
$draw->pathMoveToAbsolute(50, 50);
$draw->pathLineToAbsolute(100, 50);
$draw->pathLineToRelative(0, 50);
$draw->pathLineToHorizontalRelative(-50);
$draw->pathFinish();
  
// Create another path
$draw->pathStart();
$draw->pathMoveToAbsolute(50, 50);
$draw->pathMoveToRelative(300, 0);
$draw->pathLineToRelative(50, 0);
$draw->pathLineToVerticalRelative(50);
$draw->pathLineToHorizontalAbsolute(350);
$draw->pathclose();
$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, '#1a65f0');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
$draw->setFillColor('red');
  
// Set the stroke color
$draw->setStrokeColor('black');
  
// Set the stroke width
$draw->setStrokeWidth(1);
  
// Create a path
$draw->pathStart();
$draw->pathMoveToAbsolute(50, 50);
$draw->pathLineToAbsolute(100, 150);
$draw->pathLineToRelative(0, 50);
$draw->pathLineToHorizontalRelative(-50);
$draw->pathFinish();
  
$x = 0;
for ($x; $x < 10; $x++) {
  
    // Create another path
    $draw->pathStart();
    $draw->pathMoveToAbsolute(50, 150);
    $draw->pathMoveToRelative($x * 100, 0);
    $draw->pathLineToRelative(50, 0);
    $draw->pathLineToVerticalRelative(50);
    $draw->pathLineToHorizontalAbsolute(350);
    $draw->pathclose();
    $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.pathfinish.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 *