/** * Render a badge. * * @param \AltThree\Badger\Badge $badge * * @return \AltThree\Badger\BadgeImage */ public function render(Badge $badge) { $subjectWidth = $this->stringWidth($badge->getSubject()); $statusWidth = $this->stringWidth($badge->getStatus()); $params = ['vendorWidth' => $subjectWidth, 'valueWidth' => $statusWidth, 'totalWidth' => $subjectWidth + $statusWidth, 'vendorColor' => $this->vendorColor, 'valueColor' => $badge->getHexColor(), 'vendor' => $badge->getSubject(), 'value' => $badge->getStatus(), 'vendorStartPosition' => round($subjectWidth / 2, 1) + 1, 'valueStartPosition' => $subjectWidth + round($statusWidth / 2, 1) - 1]; return $this->renderSvg($params, $badge->getFormat()); }
/** * Generates a badge from a string. * * Example: license-MIT-blue.svg * * @param string $string * * @return \AltThree\Badger\BadgeImage */ public function generateFromString($string) { $badge = Badge::fromString($string); return $this->getRendererForFormat($badge->getFormat())->render($badge); }