Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
optometrists
/
cache
/
cache
/
cache
/
cache
/
cache
/
cache
/
.wp-cli
/
wp-content
/
plugins
/
wp-phpmyadmin-extension
/
lib
/
phpMyAdmin
/
vendor
/
bacon
/
bacon-qr-code
/
src
/
Renderer
/
RendererStyle
:
RendererStyle.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php declare(strict_types = 1); namespace BaconQrCode\Renderer\RendererStyle; use BaconQrCode\Renderer\Eye\EyeInterface; use BaconQrCode\Renderer\Eye\ModuleEye; use BaconQrCode\Renderer\Module\ModuleInterface; use BaconQrCode\Renderer\Module\SquareModule; final class RendererStyle { /** * @var int */ private $size; /** * @var int */ private $margin; /** * @var ModuleInterface */ private $module; /** * @var EyeInterface|null */ private $eye; /** * @var Fill */ private $fill; public function __construct( int $size, int $margin = 4, ?ModuleInterface $module = null, ?EyeInterface $eye = null, ?Fill $fill = null ) { $this->margin = $margin; $this->size = $size; $this->module = $module ?: SquareModule::instance(); $this->eye = $eye ?: new ModuleEye($this->module); $this->fill = $fill ?: Fill::default(); } public function withSize(int $size) : self { $style = clone $this; $style->size = $size; return $style; } public function withMargin(int $margin) : self { $style = clone $this; $style->margin = $margin; return $style; } public function getSize() : int { return $this->size; } public function getMargin() : int { return $this->margin; } public function getModule() : ModuleInterface { return $this->module; } public function getEye() : EyeInterface { return $this->eye; } public function getFill() : Fill { return $this->fill; } }