Our social:

Latest Post

Tampilkan postingan dengan label dot matrix. Tampilkan semua postingan
Tampilkan postingan dengan label dot matrix. Tampilkan semua postingan

Jumat, 01 April 2016

PHP direct printing to DOT MATRIX printer

Direct printing is still the mainstay for print-scoring affair, especially for programs / POS applications. Because this application requires speed in doing print document .

Sewaktu bermigrasi ke pemrograman  berbasis Web yang paling saya takutkan adalah mendapat project yang mengharuskan  mencetak dalam bentuk STRUK. ternyata benar saya mendapat project  program SPP di salah satu sekolah yang mengharuskan mencetak kedalam struk. Awalnya saya membuatnya dengan Fpdf tetapi ternyata hasil print  jadi kacau dan tidak bisa dibaca.
dan  akhirnya bisa juga mencetak  langung ke printer dari scrip PHP.Ada beberapa tahan supaya kita bisa cetak langsung ke printer.  
1. Sharing dahulu printernya
    misal nama printer LX-300 kemudian sharing dengan nama EPSONLX.
2Catat IP Address komputer yang terhubung ke printer 
3. Buat perintah seperti dibawah ini  dan simpan di web server misal dengan nama cetak.php:

INI AKAN DI CETAK\n"; $Data .= "INI AKAN DI CETAK\n"; $Data .= "INI AKAN DI CETAK\n"; $Data .= "INI AKAN DI CETAK\n"; $Data .= "We Love PHP Indonesia\n"; $Data .= "--------------------------\n"; fwrite($handle, $Data); fclose($handle); copy($file, "//192.168.1.1/EPSONLX"); # Lakukan cetak unlink($file); ?>

4. Coba panggil file php dari browser, maka printer akan langsung mencetak.dan berhenti  ketika script selesai di cetak. Hal ini berbeda jika kita mengunakan pdf yang  akan terus  menggulung kertas  sampai satu lembar.
KETERANGAN PROGRAM:
- mula-mula membuat file temporary
- mengisi file dangan $data.
- copy $data ke alamat printer yang di sharing untuk di cetak


direct print php

Setelah hasil uji coba xampp untuk windows dari versi 1.6.3, 1.6.4, 1.6.8, 1.7.1, 1.7.3, 1.7.4, 1.7.7, sepertinya yang versi 1.7.3 mempunyai banyak bug karena program-program web saya jadi kacau ketika dibuka pada browser, padahal versi php 5.2 yg ada di xampp 1.7.3 tersebut sama dengan versi sebelumnya (xampp 1.7.1 juga menggunakan php versi 5.2) dan extension php_printer.dll perlu ditambahkan sendiri pada xampp versi 1.7.1 keatas, letakkan pada direktori xampp\php\ext. xampp 1.7.1 kebawah sudah diikut sertakan extension php_printer.dll, hanya saja secara default statusnya masih disable, kita perlu mengaktifkannya dengan merubah konfigurasi pada file php.ini yang terletak difolder xampp\php. hilangkan tanda ; didepan tulisan extension=php_printer.dll. kemudian restartlah service apache pada xampp. extension ini hanya support sampai xampp 1.7.4 karena belum ada pengembangan lagi sejak 2010. untuk versi xampp 1.7.7 belum tersedia update extension php_printer.

ekstensi php_printer.dll merupakan modul php agar kita dapat mencetak langsung ke printer (direct printing) untuk program-program berbasis web yang membutuhkan nota ataupun laporan maka diperlukan cara mencetak yang lebih cepat, karena umumnya programmer php akan menggunakan 2 untuk mencetak data dengan php, antara lain:
1. menggunakan fungsi javascript print.window()
2. mencetak teks dalam bentuk PDF yang dimuat dalam browser lalu diprint.

jika ekstensi sudah dipasang silahkan coba mencetak langsung dengan printer anda. berikut script untuk testing cetak langsung menggunakan ekstensi php_printer.dll. simpan dengan nama testprinter.php dan taruh difolder htdocs pada xampp

$lipsum = 'Eh, ini adalah testing aplikasi cetak teks langsung ke printer dengan PHP lhoo....'; /* contoh text */
$printer = printer_open("Canon iP2700 series");  /* tulis dan buka koneksi ke printer */  
printer_write($printer, $lipsum); /* write the text to the print job */ 
printer_close($printer);  /* close the connection */
?>

untuk mencetak data secara langsung ke printer pada linux bisa menggunakan CUPS dan jika anda ingin melakukan direct printing ke printer dot matrix berikut cara yang dijelaskan di mocopat.wordpress.com. disitu dijelaskan cara mencetak nota langsung ke printer dot matrix tanpa menggunakan fungsi javascript print.window(), dirubah ke bentuk pdf, ataupun extension php_printer.dll

saya sendiri menggunakan xampp versi 1.7.4, perbedaanya dari versi sebelumnya adalah pada xampp 1.7.4 sudah menggunakan php versi 5.3, jika ada semacam error saat membuka xampp control panel itu merupakan sebuah bug saja dan kasus yang saya temukan bug tersebut terjadi saat kita menginstall xampp 1.7.4 pada windows 7 64bit, sebenarnya bug tersebut tidak mengganggu fungsi-fungsi dari xampp itu sendiri. jika kalian menemukan bug yang sama dengan tulisan

XAMPP Component Status Check failure [3].
Current directory: C:\xampp
Run this program only from your XAMPP root directory.

langkah untuk memperbaikinya adalah buka dan edit registry windows dengan cara ketikan regedit pada kotak dialog run, kemudian arahkan ke HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\xampp. rubah isi Install_Dir, yang semula c:\xampp menjadi c:\\xampp (double backslash)

berikut extensi php_printer.dll untuk php versi 5.3 pada xampp 1.7.4, download php_printer-svn20100319-5.3-vc6-x86.zip