imagedashedline

破線を描画する

説明

bool imagedashedline(
    GdImage $image,
    int $x1,
    int $y1,
    int $x2,
    int $y2,
    int $color
)

これは古い関数です。代わりに imagesetstyleimageline の組み合せを使用してください。

パラメータ

image

imagecreatetruecolorのような画像作成関数が返す GdImage オブジェクト。

x1

左上の x 座標。

y1

左上の y 座標 0。0 は画像の左上の角です。

x2

右下の x 座標。

y2

右下の y 座標。

color

塗りつぶし色。imagecolorallocate で作成された色識別子。

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.0.0 image は、 GdImage クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な gd resource が期待されていました。

例1 imagedashedline の例

<?php
// 100x100 の画像を作成します
$im = imagecreatetruecolor(100, 100);
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);

// 縦の破線を描画します
imagedashedline($im, 50, 25, 50, 75, $white);

// 画像を保存します
imagepng($im, './dashedline.png');
imagedestroy($im);
?>

上の例の出力は、 たとえば以下のようになります。

出力例 : imagedashedline()

例2 imagedashedline のもうひとつの使用法

<?php
// 100x100 の画像を作成します
$im = imagecreatetruecolor(100, 100);
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);

// 独自のスタイルの作成: 最初の 4 ピクセルを白色、
// 次の 4 ピクセルを透明とし、破線風の効果を作成します
$style = Array(
                $white, 
                $white, 
                $white, 
                $white, 
                IMG_COLOR_TRANSPARENT, 
                IMG_COLOR_TRANSPARENT, 
                IMG_COLOR_TRANSPARENT, 
                IMG_COLOR_TRANSPARENT
                );

imagesetstyle($im, $style);

// 破線を描画します
imageline($im, 50, 25, 50, 75, IMG_COLOR_STYLED);

// 画像を保存します
imagepng($im, './imageline.png');
imagedestroy($im);
?>

参考

  • imagesetstyle
  • imageline