A new version of this library that gives a better way to add new types and new options to the renderers. Instead of rendering the barcode inside the renderers, I have split the code in 2 pieces: the barcode translators (calculating the bars and spaces) and the renderers that can turn it into an image.
The renderers are now more flexibel in the options it can have. We can now add margin for example, or generate a text below the barcode.
// Make Barcode object of Code128 encoding.
$barcode = (new Picqer\Barcode\Types\TypeCode128())->getBarcode('081231723897');
// Output the barcode as HTML in the browser with a HTML Renderer
echo (new Picqer\Barcode\Renderers\HtmlRenderer())->render($barcode);
Options can be given as separate calls to the renderer, like this:
echo (new Picqer\Barcode\Renderers\HtmlRenderer())->setForegroundColor('#eee')->render($barcode);
That keeps simple usages as clean as possible, while also making room for new options.
Backwards compatible
The old 'generators' will work the same and are helpers to get the new types and renderers. So it is save to use this new version with your old usage of this library.
A new version of this library that gives a better way to add new types and new options to the renderers. Instead of rendering the barcode inside the renderers, I have split the code in 2 pieces: the barcode translators (calculating the bars and spaces) and the renderers that can turn it into an image.
The renderers are now more flexibel in the options it can have. We can now add margin for example, or generate a text below the barcode.
Options can be given as separate calls to the renderer, like this:
That keeps simple usages as clean as possible, while also making room for new options.
Backwards compatible
The old 'generators' will work the same and are helpers to get the new types and renderers. So it is save to use this new version with your old usage of this library.