Я пытаюсь сделать это изображение:GD Жеребьевка прямоугольник с радиусом
(без этих 2 черных треугольников на дне)
это 12x16 изображения. Мой код:
private function __draw_percent_bar()
{
if ($this->program_details['roi'] > 100) {
$this->program_details['roi'] = 100;
}
$this->__tmp_data['bar_image'] = imagecreatetruecolor(12, $this->program_details['roi']);
$this->__tmp_data['bar_bg'] = imagecolorallocate($this->__tmp_data['bar_image'], 136, 183, 5);
$this->__rounded_borders(12, $this->program_details['roi'], 12, $this->program_details['roi'], 3, $this->__tmp_data['bar_bg']);
}
private function __rounded_borders($x, $y, $cx, $cy, $rad, $col)
{
imagefilledrectangle($this->__tmp_data['bar_image'], $x, $y + $rad, $cx, $cy - $rad, $col);
imagefilledrectangle($this->__tmp_data['bar_image'], $x + $rad, $y, $cx - $rad, $cy, $col);
$dia = $rad * 2;
imagefilledellipse($this->__tmp_data['bar_image'], $x + $rad, $y + $rad, $rad * 2, $dia, $col);
imagefilledellipse($this->__tmp_data['bar_image'], $x + $rad, $cy - $rad, $rad * 2, $dia, $col);
imagefilledellipse($this->__tmp_data['bar_image'], $cx - $rad, $cy - $rad, $rad * 2, $dia, $col);
imagefilledellipse($this->__tmp_data['bar_image'], $cx - $rad, $y + $rad, $rad * 2, $dia, $col);
}
но вместо этого образа, он рисует мне это:
, что это проблема? с помощью этого учебника http://www.web-max.ca/PHP/misc_10.php он должен сделать идеальный округлый изображение ..
Im рад, что вы пытаетесь помочь, но я просто попытался нарисовать 12x100 прямоугольник, и я увидел, что это не нужно скругленные углы, это настолько маленькое изображение, которое, похоже, он имеет закругленные углы .. –
@ ArnasPečelis, код, который я дал выше работает сейчас;) –