for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Graze\CiffRenderer\Parser\FieldParser;
use Graze\CiffRenderer\Parser\FieldParser\FieldParserFixedText;
use Graze\CiffRenderer\Parser\FieldParser\FieldParserInterface;
use Graze\CiffRenderer\BarcodeGenerator\BarcodeGeneratorFactory;
class FieldParserBarcode extends FieldParserFixedText implements FieldParserInterface
{
/**
* @var BarcodeGeneratorFactory
*/
private $barcodeGeneratorFactory;
* @param BarcodeGeneratorFactory $barcodeGeneratorFactory
public function __construct(BarcodeGeneratorFactory $barcodeGeneratorFactory)
$this->barcodeGeneratorFactory = $barcodeGeneratorFactory;
}
* @return float
public function getFontSize()
return (float) $this->xmlField->Barcode->HR->HRFont->Pitch;
* @return bool
public function getIsInverse()
return (bool) (string) $this->xmlField->Inverse;
* Generate a barcode string.
*
* @return string
public function getText()
$data = parent::getText();
$barcodeGenerator = $this->barcodeGeneratorFactory->getGenerator($this->xmlField->Barcode->Type);
return $barcodeGenerator->generate($data);
* @return FieldParserInterface
public static function factory()
$barcodeGeneratorFactory = new BarcodeGeneratorFactory();
return new static(
$barcodeGeneratorFactory
);