Barcode Generator PHP dengan Codeigniter

Membuat barcode tidak sesulit yang disangka. Banyak library dan orang-orang baik hati ternyata yang rajin bagi-bagi kodenya :).

Untuk membuat barcode pada php dengan codeigniter, saya menggunakan barcode generator di link ini (http://www.barcodephp.com/en/download).

Setelah di download, paste aja folder “class” ke folder library codeigniter:

../application/libraries/barcodegen

“barcodegen” itu folder “class” yang saya download dan ganti di link diatas. Jangan lupa menyisipkan folder “font” juga ke folder libraries untuk setting font generate barcode nya.

Penerapan di controller seperti kode dibawah ini.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
private function _generate_barcode($sparepart_code, $barcode_type, $scale=6, $fontsize=18, $thickness=30,$dpi=72) {
    // CREATE BARCODE GENERATOR
    // Including all required classes
    require_once( APPPATH . 'libraries/barcodegen/BCGFontFile.php');
    require_once( APPPATH . 'libraries/barcodegen/BCGColor.php');
    require_once( APPPATH . 'libraries/barcodegen/BCGDrawing.php');

    // Including the barcode technology
    // Ini bisa diganti-ganti mau yang 39, ato 128, dll, liat di folder barcodegen
    require_once( APPPATH . 'libraries/barcodegen/BCGcode39.barcode.php');

    // Loading Font
    // kalo mau ganti font, jangan lupa tambahin dulu ke folder font, baru loadnya di sini
    $font = new BCGFontFile(APPPATH . 'libraries/font/Arial.ttf', $fontsize);
   
    // Text apa yang mau dijadiin barcode, biasanya kode produk
    $text = $sparepart_code;

    // The arguments are R, G, B for color.
    $color_black = new BCGColor(0, 0, 0);
    $color_white = new BCGColor(255, 255, 255);

    $drawException = null;
    try {
        $code = new BCGcode39(); // kalo pake yg code39, klo yg lain mesti disesuaikan
        $code->setScale($scale); // Resolution
        $code->setThickness($thickness); // Thickness
        $code->setForegroundColor($color_black); // Color of bars
        $code->setBackgroundColor($color_white); // Color of spaces
        $code->setFont($font); // Font (or 0)
        $code->parse($text); // Text
    } catch(Exception $exception) {
        $drawException = $exception;
    }

    /* Here is the list of the arguments
    1 - Filename (empty : display on screen)
    2 - Background color */

    $drawing = new BCGDrawing('', $color_white);
    if($drawException) {
        $drawing->drawException($drawException);
    } else {
        $drawing->setDPI($dpi);
        $drawing->setBarcode($code);
        $drawing->draw();
    }
    // ini cuma labeling dari sisi aplikasi saya, penamaan file menjadi png barcode.
    $filename_img_barcode = $sparepart_code .'_'.$barcode_type.'.png';
    // folder untuk menyimpan barcode
    $drawing->setFilename( FCPATH . UPLOAD_REAL_PATH .'barcode/'. $filename_img_barcode);
    // proses penyimpanan barcode hasil generate
    $drawing->finish(BCGDrawing::IMG_FORMAT_PNG);

    return $filename_img_barcode;
}

Cara pakainya gimane? tinggal panggil fungsi nya aja dengan parameter utama text yang mau digenerate barcode.
Dari sini, jadi deh generate barcode php dengan codeigniter.

Selamat berkoding ria… 🙂

Note:
Contoh artikel ini ada pada aplikasi bengkel yang saya buat. Untuk melihat contoh penggunaan ini pada POS aplikasi bengkel. Berikut adalah video nya 🙂

3 comments

    1. @dimas: ga ngerti maksute apa ya mas? mungkin label kode atau nama part/barang nya ya? biasanya saya buat terpisah. Saya buat barcode image nya, lalu saya create pdf bersama image dan penambahan label lainnya. Maaf baru bales

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: