mirror of
https://gitlab.com/signalytic/client-external/streamline/streamline-emr.git
synced 2026-09-12 11:11:31 +00:00
The official image from streamline does not currently work for the arm64 platform. As a temporary measure, the source code and docker build scripts have been lifted from the official images and are used to build locally. Some additional modifications are made to reduce overall image size, these are documented in docker/README.md
252 lines
7.9 KiB
Markdown
252 lines
7.9 KiB
Markdown
[](https://packagist.org/packages/milon/barcode) [](https://packagist.org/packages/milon/barcode) [](https://packagist.org/packages/milon/barcode)
|
|
|
|
This is a barcode generation package inspired by <https://github.com/tecnickcom/TCPDF>. Actually, I use that package's underline classes for generating barcodes. This package is just a wrapper of that package and adds compatibility with Laravel 5.
|
|
|
|
I used the following classes of that package.
|
|
|
|
- src/Milon/Barcode/Datamatrix.php (include/barcodes/datamatrix.php)
|
|
- src/Milon/Barcode/DNS1D.php (tcpdf_barcodes_1d.php)
|
|
- src/Milon/Barcode/DNS2D.php (tcpdf_barcodes_2d.php)
|
|
- src/Milon/Barcode/PDF417.php (include/barcodes/pdf417.php)
|
|
- src/Milon/Barcode/QRcode.php (include/barcodes/qrcode.php)
|
|
|
|
[Read More on TCPDF website](http://www.tcpdf.org)
|
|
|
|
# This package is compatible with Laravel `4.*` , `5.*`, `6.*`, `7.*`, `8.*`, `9.*` and `10.*`
|
|
|
|
This package relies on [php-gd](http://php.net/manual/en/book.image.php) extension. So, make sure it is installed on your machine.
|
|
|
|
## Installation
|
|
|
|
Begin by installing this package through Composer. Just run following command to terminal-
|
|
|
|
```shell script
|
|
composer require milon/barcode
|
|
```
|
|
|
|
You can also edit your project's `composer.json` file to require `milon/barcode`.
|
|
|
|
```json
|
|
"require": {
|
|
"milon/barcode": "^9.0"
|
|
}
|
|
```
|
|
|
|
For Laravel 8.* use this-
|
|
|
|
```json
|
|
"require": {
|
|
"milon/barcode": "^8.0"
|
|
}
|
|
```
|
|
|
|
For Laravel 7.* use this-
|
|
|
|
```json
|
|
"require": {
|
|
"milon/barcode": "^7.0"
|
|
}
|
|
```
|
|
|
|
For Laravel 6.* use this-
|
|
|
|
```json
|
|
"require": {
|
|
"milon/barcode": "^6.0"
|
|
}
|
|
```
|
|
|
|
For Laravel 5.0 and 5.1 use this-
|
|
|
|
```json
|
|
"require": {
|
|
"milon/barcode": "^5.1"
|
|
}
|
|
```
|
|
|
|
For Laravel 4.0, 4.1 and 4.2 use this-
|
|
|
|
```json
|
|
"require": {
|
|
"milon/barcode": "^4.2"
|
|
}
|
|
```
|
|
|
|
Next, update Composer from the Terminal:
|
|
|
|
```shell script
|
|
composer update
|
|
```
|
|
|
|
Once this operation completes, the final step is to add the service provider. Open `config/app.php`, and add a new item to the providers array.
|
|
|
|
```php
|
|
'providers' => [
|
|
// ...
|
|
Milon\Barcode\BarcodeServiceProvider::class,
|
|
]
|
|
```
|
|
|
|
For version 4.* add these lines on `app/config/app.php` file-
|
|
|
|
```php
|
|
'providers' => array(
|
|
// ...
|
|
'Milon\Barcode\BarcodeServiceProvider',
|
|
)
|
|
```
|
|
|
|
If you want to change Bar-code's settings (Store Path etc.), you need to publish its config file(s). For that you need to run in the terminal-
|
|
|
|
```shell script
|
|
# Laravel 5.x
|
|
php artisan vendor:publish
|
|
|
|
# Laravel 4.x
|
|
php artisan config:publish milon/barcode
|
|
```
|
|
|
|
Make sure you have write permission to the storage path. By default it sets to `/storage` folder.
|
|
|
|
Now add the alias.
|
|
|
|
```php
|
|
'aliases' => [
|
|
// ...
|
|
'DNS1D' => Milon\Barcode\Facades\DNS1DFacade::class,
|
|
'DNS2D' => Milon\Barcode\Facades\DNS2DFacade::class,
|
|
]
|
|
```
|
|
|
|
For version 4.2 alias will be like this-
|
|
|
|
```php
|
|
'aliases' => array(
|
|
// ...
|
|
'DNS1D' => 'Milon\Barcode\Facades\DNS1DFacade',
|
|
'DNS2D' => 'Milon\Barcode\Facades\DNS2DFacade',
|
|
)
|
|
```
|
|
|
|
Bar-code generator like Qr Code, PDF417, C39, C39+, C39E, C39E+, C93, S25, S25+, I25, I25+, C128, C128A, C128B, C128C, 2-Digits UPC-Based Extention, 5-Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI (Variation of Plessey code)
|
|
|
|
generator in html, png embedded base64 code and SVG canvas
|
|
|
|
```php
|
|
echo DNS1D::getBarcodeSVG('4445645656', 'PHARMA2T');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PHARMA2T');
|
|
echo '<img src="data:image/png,' . DNS1D::getBarcodePNG('4', 'C39+') . '" alt="barcode" />';
|
|
echo DNS1D::getBarcodePNGPath('4445645656', 'PHARMA2T');
|
|
echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG('4', 'C39+') . '" alt="barcode" />';
|
|
```
|
|
|
|
```php
|
|
echo DNS1D::getBarcodeSVG('4445645656', 'C39');
|
|
echo DNS2D::getBarcodeHTML('4445645656', 'QRCODE');
|
|
echo DNS2D::getBarcodePNGPath('4445645656', 'PDF417');
|
|
echo DNS2D::getBarcodeSVG('4445645656', 'DATAMATRIX');
|
|
echo '<img src="data:image/png;base64,' . DNS2D::getBarcodePNG('4', 'PDF417') . '" alt="barcode" />';
|
|
```
|
|
|
|
## Width and Height example
|
|
|
|
```php
|
|
echo DNS1D::getBarcodeSVG('4445645656', 'PHARMA2T',3,33);
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PHARMA2T',3,33);
|
|
echo '<img src="' . DNS1D::getBarcodePNG('4', 'C39+',3,33) . '" alt="barcode" />';
|
|
echo DNS1D::getBarcodePNGPath('4445645656', 'PHARMA2T',3,33);
|
|
echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG('4', 'C39+',3,33) . '" alt="barcode" />';
|
|
```
|
|
|
|
## Color
|
|
|
|
```php
|
|
echo DNS1D::getBarcodeSVG('4445645656', 'PHARMA2T',3,33,'green');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PHARMA2T',3,33,'green');
|
|
echo '<img src="' . DNS1D::getBarcodePNG('4', 'C39+',3,33,array(1,1,1)) . '" alt="barcode" />';
|
|
echo DNS1D::getBarcodePNGPath('4445645656', 'PHARMA2T',3,33,array(255,255,0));
|
|
echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG('4', 'C39+',3,33,array(1,1,1)) . '" alt="barcode" />';
|
|
```
|
|
|
|
## Show Text
|
|
|
|
```php
|
|
echo DNS1D::getBarcodeSVG('4445645656', 'PHARMA2T',3,33,'green', true);
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PHARMA2T',3,33,'green', true);
|
|
echo '<img src="' . DNS1D::getBarcodePNG('4', 'C39+',3,33,array(1,1,1), true) . '" alt="barcode" />';
|
|
echo DNS1D::getBarcodePNGPath('4445645656', 'PHARMA2T',3,33,array(255,255,0), true);
|
|
echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG('4', 'C39+',3,33,array(1,1,1), true) . '" alt="barcode" />';
|
|
```
|
|
|
|
## 2D Barcodes
|
|
|
|
```php
|
|
echo DNS2D::getBarcodeHTML('4445645656', 'QRCODE');
|
|
echo DNS2D::getBarcodePNGPath('4445645656', 'PDF417');
|
|
echo DNS2D::getBarcodeSVG('4445645656', 'DATAMATRIX');
|
|
```
|
|
|
|
## 1D Barcodes
|
|
|
|
```php
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C39');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C39+');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C39E');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C39E+');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C93');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'S25');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'S25+');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'I25');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'I25+');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C128');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C128A');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C128B');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'C128C');
|
|
echo DNS1D::getBarcodeHTML('44455656', 'EAN2');
|
|
echo DNS1D::getBarcodeHTML('4445656', 'EAN5');
|
|
echo DNS1D::getBarcodeHTML('4445', 'EAN8');
|
|
echo DNS1D::getBarcodeHTML('4445', 'EAN13');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'UPCA');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'UPCE');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'MSI');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'MSI+');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'POSTNET');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PLANET');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'RMS4CC');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'KIX');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'IMB');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'CODABAR');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'CODE11');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PHARMA');
|
|
echo DNS1D::getBarcodeHTML('4445645656', 'PHARMA2T');
|
|
```
|
|
|
|
# Running without Laravel
|
|
|
|
You can use this library without using Laravel.
|
|
|
|
Example:
|
|
|
|
```php
|
|
use \Milon\Barcode\DNS1D;
|
|
|
|
$d = new DNS1D();
|
|
$d->setStorPath(__DIR__.'/cache/');
|
|
echo $d->getBarcodeHTML('9780691147727', 'EAN13');
|
|
```
|
|
|
|
## License
|
|
|
|
This package is published under `GNU LGPLv3` license and copyright to [Nuruzzaman Milon](http://milon.im). Original Barcode generation classes were written by Nicola Asuni. The license agreement is on project's root.
|
|
|
|
### [Buy me a coffee ☕](https://paypal.me/tomilon?locale.x=en_US)
|
|
|
|
License: GNU LGPLv3<br>
|
|
Package Author: [Nuruzzaman Milon](http://milon.im)<br>
|
|
Original Barcode Class Author: [Nicola Asuni](http://www.tcpdf.org)<br>
|
|
Package Copyright: Nuruzzaman Milon<br>
|
|
Barcode Generation Class Copyright:<br>
|
|
Nicola Asuni<br>
|
|
Tecnick.com LTD<br>
|
|
www.tecnick.com
|