0
POS 프린터에서 용지 상태를 얻는 방법을 찾으려고합니다. GS a, GS r 시퀀스를 사용할 것이라고 생각하지만 프린터에서 정보를 반환하는 방법을 이해할 수 없습니다. 나는 리눅스를 사용하고 있는데, POS 프린터는 상태 정보를 어디에서 구할 수 있습니까?POS 프린터에서 상태를 얻는 방법
POS 프린터에서 용지 상태를 얻는 방법을 찾으려고합니다. GS a, GS r 시퀀스를 사용할 것이라고 생각하지만 프린터에서 정보를 반환하는 방법을 이해할 수 없습니다. 나는 리눅스를 사용하고 있는데, POS 프린터는 상태 정보를 어디에서 구할 수 있습니까?POS 프린터에서 상태를 얻는 방법
나는 마침내 여기, 내가 리눅스 박스에 PHP를 사용하여 ... 내 문제를 해결하는 코드입니다, 누군가가 도움을 희망했습니다
<?php
$device="/dev/usb/lp0";
$printer=fopen($device, 'w');
//La sequenza di ESCAPE DLE EOT n consente
//la trasmissione in realtime
//dello status
//n=1: printer status
//n=2: printer offline status
//n=3: error status
//n=4: paper roll sensor status
//Per n=4 i bits valorizzati sono:
//BIT Off/On Dec Desc
//0 Off 0 not used, fixed to Off
//1 On 2 not used, fixed to On
//2,3 Off 0 Paper adequate
//2,3 On 12 Paper near end detected
//4 On 16 Not used, fixed to On
//5,6 Off 0 Paper present
//5,6 Off 96 Paper roll end
//7 Off 0 Not used, fixed to Off
fwrite($printer,kbyte(16).kbyte(4).kbyte(4));
//fwrite($printer,kbyte(29).kbyte(73).kbyte(69));
fclose($printer);
$r_printer=fopen($device, 'r');
$ret=fgets($r_printer);
fclose($r_printer);
$bit_val=ord($ret[0]);
print "Retval=".$bit_val;
if(($bit_val & 12) || ($bit_val & 96))
print "******Out of paper******\n";
else
print "---Paper ok\n";
function kbyte($num) {
return pack('C', $num);
}
?>
당신이 당신의 질문에 대한 더 많은 컨텍스트를 제공시겠습니까? –