• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • ImagickDraw::point()

    (PECL imagick 2.0.0)

    Draws a point

    说明

    ImagickDraw::point(float $x,float $y): bool
    Warning

    本函数还未编写文档,仅有参数列表。

    Draws a point using the current stroke color and stroke thickness at the specified coordinates.

    参数

    $x

    point's x coordinate

    $y

    point's y coordinate

    返回值

    没有返回值。

    范例

    Example #1 ImagickDraw::point()

    <?php
    function point($fillColor, $backgroundColor) {
        $draw = new \ImagickDraw();
        $draw->setFillColor($fillColor);
        for ($x = 0; $x < 10000; $x++) {
            $draw->point(rand(0, 500), rand(0, 500));
        }
        $imagick = new \Imagick();
        $imagick->newImage(500, 500, $backgroundColor);
        $imagick->setImageFormat("png");
        $imagick->drawImage($draw);
        header("Content-Type: image/png");
        echo $imagick->getImageBlob();
    }
    ?>
    
    This no longer uses the fill color. It now uses the stroke color, consistent with the documentation.
    point($x, $y) uses the FillColor of ImagickDraw! This actually took quite a while, till I found out that it's falsely documented on these pages. So to draw single pixels, do it like this:
    <?php
    $image = new Imagick();
    $draw = new ImagickDraw();
    $pixel = new ImagickPixel('red');
    $image->newImage(10, 10, 'transparent', 'gif');
    // Here comes the magick:
    $pixel->setColor($_POST[$i."x".$j]);
    $draw->setFillColor($pixel);
    $draw->point($i,$j);
    $image->drawImage($draw);
    $image->writeImages($path, true);
    ?>