PHP | Función ImagickDraw pathCurveToSmoothRelative()

La función ImagickDraw::pathCurveToSmoothRelative() es una función incorporada en PHP que se usa para dibujar una curva Bezier cúbica desde el punto actual hasta (x,y) usando coordenadas relativas.

Sintaxis:

bool ImagickDraw::pathCurveToSmoothRelative( float $x2, float $y2, float $x, float $y )

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

  • $x2: Especifica la coordenada x del segundo punto de control.
  • $y2: Especifica la coordenada y del segundo punto de control.
  • $x: Especifica la coordenada x del punto final.
  • $y: Especifica la coordenada y del punto final.

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

Programa 1:

<?php
  
// Create a new imagick object
$imagick = new Imagick();
   
// Create a image on imagick object
$imagick->newImage(800, 250, 'skyblue');
   
// Create a new ImagickDraw object
$draw = new ImagickDraw();
   
// Set the fill color
$draw->setFillColor('skyblue');
  
// Set the stroke color
$draw->setStrokeColor('black');
  
// Set the stroke width
$draw->setStrokeWidth(5);
   
// Draw a painting
$draw->pathStart();
$draw->pathMoveToRelative(335, 70);
$draw->pathCurveToSmoothRelative(50, -50, 60, 20);
$draw->pathCurveToSmoothRelative(50, -50, 60, 20);
$draw->pathMoveToRelative(50, 50);
$draw->pathCurveToSmoothRelative(50, -50, 60, 20);
$draw->pathCurveToSmoothRelative(50, -50, 60, 20);
$draw->pathMoveToRelative(-500, 0);
$draw->pathCurveToSmoothRelative(50, -50, 60, 20);
$draw->pathCurveToSmoothRelative(50, -50, 60, 20);
$draw->pathFinish();
  
// Set the fill color
$draw->setFillColor('yellow');
  
// Draw a circle
$draw->circle(20, 20, 100, 20);
  
// Set the stroke width
$draw->setStrokeWidth(1);
  
// Set the fond size
$draw->setFontSize(40);
  
// Set the fill color
$draw->setFillColor('yellow');
  
// Annotate the text
$draw->annotation(500, 40, 'Summer Vibes');
  
// 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, 'cyan');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
$draw->setFillColor('purple');
  
// Set the stroke color
$draw->setStrokeColor('blue');
  
// Set the stroke width
$draw->setStrokeWidth(15);
  
// Draw curves to Quadratic Bezier Relative (with pathClose())
$draw->pathStart();
$draw->pathCurveToSmoothRelative(-200, 250, 1900, 1250);
$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.pathcurvetosmoothrelative.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 *