Generar codigo de barra en Laravel
- Keli Zorrilla
- 21 sept 2016
- 2 Min. de lectura

Hoy les voy a mostrar como generar código de barra en Laravel 5.2. Para esto necesitamos instalar en nuestro proyecto el paquete barcode. En github el usuario Milon tiene su documentación y allí podemos ver mas: https://github.com/milon/barcode
Primero ejecutamos en nuestra terminal el siguiente comando:
composer require milon/barcode
o sino lo colocamos directamente en el archivo composer.json:
"require": {
... "milon/barcode": "^5.2"
}
Para laravel 5.0 y 5.1
"require": {
... "milon/barcode": "^5.1"
}
Para laravel 4.0, 4.1 y 4.2
"require": {
... "milon/barcode": "^4.2"
}
y luego ejecutamos un composer update
Una vez terminado esto, lo agregamos a los prodiver. En el archivo config/app.php
'providers' => [
... Milon\Barcode\BarcodeServiceProvider::class, ...
]
y agreamos los alias
'aliases' => [ ...
'DNS1D' => Milon\Barcode\Facades\DNS1DFacade::class,
'DNS2D' => Milon\Barcode\Facades\DNS2DFacade::class,
]
guardamos el archivo y ahora si podemos generar los códigos de barra que necesitemos. Para esto agregamos en el controlador el tipo de código de barra que queremos generar, puede ser el DNS1D o el DNS2D, lo agregamos así:
use \Milon\Barcode\DNS1D; use \Milon\Barcode\DNS2D;
y dentro de la función creamos una variable para indicar si vamos a trabajar con el DNS1D o el DNS2D, en mi caso yo trabajare con el DNS1D:
$barra = new DNS1D();
esta variable la vamos a retornar en la vista en donde queremos mostrar el código de barra
return view('productos.read', compact('barra');
En la vista lo lamamos de esta manera:
<?php echo DNS1D::getBarcodeHTML("4445", "EAN13");?>
en donde 4445 es el numero que se va a trasformar en el codigo de barra y EAN13 es el formato (si queremos otro formato lo podemos ver en la pagina que di arriba de github).
También podemos generar estos códigos de barra a través de una consulta, es el mismo procedimiento solo que en donde esta el numero 4445, colocaremos el campo que queremos mostrar, ejemplo:
<?php echo DNS1D::getBarcodeHTML("$listado->codigo_barra", "EAN13");?>
y si lo vamos a imprimir, ya no seria con getBarcodeHTML sino con getBarcodeSVG
Esto es todo, cualquier pregunta o duda por favor dejármela en la pagina inicial.
Comments