PHP Conference Nagoya 2025

ImagickDraw::point

(PECL imagick 2, PECL imagick 3)

ImagickDraw::pointBir nokta çizer

Açıklama

public ImagickDraw::point(float $x, float $y): bool
Uyarı

Bu işlev hala belgelendirilmemiştir; sadece bağımsız değişken listesi mevcuttur.

Geçerli vurgu rengini ve vurgu kalınlığını kullanarak koordinatları belirtilen noktayı çizer.

Bağımsız Değişkenler

x

Noktanın X konumu.

y

Noktanın Y konumu.

Dönen Değerler

Hiçbir değer dönmez.

Örnekler

Örnek 1 - ImagickDraw::point() örneği

<?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();
}

?>

add a note

User Contributed Notes 2 notes

up
0
Brian
11 years ago
This no longer uses the fill color. It now uses the stroke color, consistent with the documentation.
up
0
spz
15 years ago
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);
?>
To Top