This may be an error in the code。对于左侧和中间,他使用局部变量,但是对于右侧,他使用不存在的属性。
protected function generateTitle()
{
//spacing may have changed since earlier
//use top margin or grid top y, whichever less
$highestElement = ($this->top_margin < $this->y_axis_y2) ? $this->top_margin : $this->y_axis_y2;
$textVertPos = ($highestElement / 2) - (self::TITLE_CHAR_HEIGHT / 2); //centered
$titleLength = strlen($this->title_text);
if ($this->bool_title_center) {
$title_x = ($this->width / 2) - (($titleLength * self::TITLE_CHAR_WIDTH) / 2);
$title_y = $textVertPos;
} elseif ($this->bool_title_left) {
$title_x = $this->y_axis_x1;
$title_y = $textVertPos;
} elseif ($this->bool_title_right) {
$this->title_x = $this->x_axis_x2 - ($titleLength * self::TITLE_CHAR_WIDTH);
$this->title_y = $textVertPos;
}
imagestring($this->image, 2, $title_x , $title_y , $this->title_text, $this->title_color);
}尝试将对本地副本的$this->title_x和$this->title_y的引用更改为$title_x和$title_y,并查看其工作原理:
} elseif ($this->bool_title_right) {
$title_x = $this->x_axis_x2 - ($titleLength * self::TITLE_CHAR_WIDTH);
$title_y = $textVertPos;
}