PHP Direct Printing Printer Dot Matrix (LX-300)

Tidak diragukan lagi, direct printing masih menjadi andalan untuk urusan cetak-mencetak, terutama untuk program/aplikasi POS. Karena aplikasi ini membutuhkan kecepatan dalam melakukan cetak dokumen/struk.

Barusan ngoprek dan eksperimen dengan VB.Net untuk cetak langsung ke printer dot matrix tanpa spooling. Dan ternyata caranya hanya dengan meng-copy file temporary ke path printer (yang sudah disharing).

Bermodalkan teknik tersebut, saya coba terapkan di PHP dengan teknik yang sama dan berhasil.

Mudah-mudahan bermanfaat bagi teman-teman disini.


<?php
$tmpdir = sys_get_temp_dir();   # ambil direktori temporary untuk simpan file.
$file =  tempnam($tmpdir, 'ctk');  # nama file temporary yang akan dicetak
$handle = fopen($file, 'w');
$condensed = Chr(27) . Chr(33) . Chr(4);
$bold1 = Chr(27) . Chr(69);
$bold0 = Chr(27) . Chr(70);
$initialized = chr(27).chr(64);
$condensed1 = chr(15);
$condensed0 = chr(18);
$Data  = $initialized;
$Data .= $condensed1;
$Data .= "==========================\n";
$Data .= "|     ".$bold1."OFIDZ MAJEZTY".$bold0."      |\n";
$Data .= "==========================\n";
$Data .= "Ofidz Majezty is here\n";
$Data .= "We Love PHP Indonesia\n";
$Data .= "We Love PHP Indonesia\n";
$Data .= "We Love PHP Indonesia\n";
$Data .= "We Love PHP Indonesia\n";
$Data .= "We Love PHP Indonesia\n";
$Data .= "--------------------------\n";
fwrite($handle, $Data);
fclose($handle);
copy($file, "//localhost/xprinter");  # Lakukan cetak
unlink($file);
?>

Jangan lupa Printer yang akan digunakan untuk men-cetak di sharing terlebih dahulu. Ganti ‘localhost’ menjadi IP komputer dimana printer yang tadi disharing berada. “xprinter” adalah nama sharing printer.
Saya belum mencoba di jaringan LAN, baru dioba di localhost.
Untuk Escape Code akan saya posting dikemudian hari.

Advertisement
    • Ofidz Al-akadarnya
    • February 7th, 2012

    Udah ane coba di jaringan LAN dan jaringan VPN.
    Hasilnya memuaskan.. :D

  1. gan mantap habis…
    tp gimana ngeset jenis font dan sizenya sebelum cetak?

      • Ofidz Al-akadarnya
      • February 2nd, 2012

      Belum sempat saya bikin artikel nya mas.
      Tapi coba searching di google menggunakan kata kunci “epson lx esc code”.
      Atau langsung ke link berikut

    • DN
    • January 19th, 2012

    kereeen mas gan..
    tpi wktu itu pernah lihat klo php yang report langsung pilih printer gitu mas..

    apa beda sistemnya mas

      • Ofidz Al-akadarnya
      • January 19th, 2012

      Maksud lu gimana Yan?
      Kalo dari kompie klien nggak bisa direct printing Yan, harus di share dulu. SO lakukan cetaknya di server menuju kompie klien. Dikasih parameter setting lah.

  1. January 23rd, 2012
    Trackback from : Homepage

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 74 other followers