Server IP : 13.213.54.232 / Your IP : 216.73.217.11 Web Server : Apache/2.4.52 (Ubuntu) System : Linux ip-172-31-17-110 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.1.33-67+ubuntu22.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/phpmyadmin/vendor/bacon/bacon-qr-code/src/BaconQrCode/Renderer/Image/ |
Upload File : |
<?php /** * BaconQrCode * * @link http://github.com/Bacon/BaconQrCode For the canonical source repository * @copyright 2013 Ben 'DASPRiD' Scholzen * @license http://opensource.org/licenses/BSD-2-Clause Simplified BSD License */ namespace BaconQrCode\Renderer\Image; use BaconQrCode\Exception; use BaconQrCode\Renderer\Color\ColorInterface; /** * PNG backend. */ class Png extends AbstractRenderer { /** * Image resource used when drawing. * * @var resource */ protected $image; /** * Colors used for drawing. * * @var array */ protected $colors = array(); /** * init(): defined by RendererInterface. * * @see ImageRendererInterface::init() * @return void */ public function init() { $this->image = imagecreatetruecolor($this->finalWidth, $this->finalHeight); } /** * addColor(): defined by RendererInterface. * * @see ImageRendererInterface::addColor() * @param string $id * @param ColorInterface $color * @return void * @throws Exception\RuntimeException */ public function addColor($id, ColorInterface $color) { if ($this->image === null) { throw new Exception\RuntimeException('Colors can only be added after init'); } $color = $color->toRgb(); $this->colors[$id] = imagecolorallocate( $this->image, $color->getRed(), $color->getGreen(), $color->getBlue() ); } /** * drawBackground(): defined by RendererInterface. * * @see ImageRendererInterface::drawBackground() * @param string $colorId * @return void */ public function drawBackground($colorId) { imagefill($this->image, 0, 0, $this->colors[$colorId]); } /** * drawBlock(): defined by RendererInterface. * * @see ImageRendererInterface::drawBlock() * @param integer $x * @param integer $y * @param string $colorId * @return void */ public function drawBlock($x, $y, $colorId) { imagefilledrectangle( $this->image, $x, $y, $x + $this->blockSize - 1, $y + $this->blockSize - 1, $this->colors[$colorId] ); } /** * getByteStream(): defined by RendererInterface. * * @see ImageRendererInterface::getByteStream() * @return string */ public function getByteStream() { ob_start(); imagepng($this->image); return ob_get_clean(); } }