2013-10-11 52 views
0

我正在画一些框到画布上,但似乎存在imagedashedline的问题。除线条不水平的情况外,虚线似乎不可见。关于什么是错的任何想法?PHP/GD imagedashedline隐形或未绘制

实施例代码

$width = 204; 
$height = 317; 

$canvas = imagecreate($width, $height); 

$white = imagecolorallocate($canvas, 255, 2555, 255); 
$black = imagecolorallocate($canvas, 0, 0, 0); 

$topLeft  = 2; 
$topRight = 2; 

$bottomLeft = $width-2; 
$bottomRight = $height-2; 

imagesetthickness($canvas, 1); 

// parallel line, solid 
imageline($canvas, 0, 101, 204, 101, $black); 

// parallel line, should be dashed, fail 
imagedashedline($canvas, 0, 121, 204, 121, $black); 

// parallel line should be dashed, works 
imagedashedline($canvas, 0, 0, 204, 305, $black); 

imagejpeg($canvas,'dashes.jpg'); 
imagedestroy($canvas) 

输出

Example output

回答

2

参见imagedashedline()注释。此外,它已过时,但您可以使用imagesetstyle()imageline()的组合。

+0

我甚至没有阅读过那些...... doh! – Fuzzy