печать — PHP Direct Print в клиентской системе

Я хочу печатать квитанции напрямую (конечно же, без вывода сообщений) на соответствующие матричные принтеры, подключенные к клиентским системам в локальном wamp-приложении. Хотя я преуспел в этом, используя jsprintsetup в Mozilla. Но скорость принтера стала проблемой всегда.

Через несколько дней я смог отправить задания печати напрямую из приложения php без каких-либо задержек, и принтер превосходно реагирует на локальный сервер, а также на клиентские системы. Но я протестировал это приложение в сети домена Windows, и в реальном случае не будет никакой сети домена, и приложение требует, чтобы это было сделано в любой локальной сети с доменом или без него. Я не уверен, но никакая доменная сеть не может быть проблемой.

И настоящая испорченная вещь есть;

Локальный сервер печатает квитанции. Без вопросов! С клиента Мы можем отправить задание на печать на принтер, подключенный к локальному серверу. Наивысшее!

Но не получая подключение принтера к принтеру, подключенному к клиентской системе ни от клиента, ни от сервера.

Предупреждение Php: («Предупреждение: fopen (\ 192.168.1.13 \ TVS MSP 250 Star): не удалось открыть поток: отказано в доступе в D: \ wamp»)

Примечание: я выполнил весь путь, чтобы сделать это, включая установку php_printer.dll, поделился папками wamp и www с полными разрешениями, использовал «\\ systemname \ printername» и много других вещей, чтобы проверить, подойдет ли это .. Но нет Помогите..

Пожалуйста, помогите мне..

Вот мой код;

$bold1 = Chr(27) . Chr(69); // semi em. bold
$bold0 = Chr(27) . Chr(70); // ""$initialized = chr(27).chr(79);
$initialized = chr(27).chr(64); // initialize printer
$initialized .= chr(27).chr(51).chr(40); //Select 6 lines per inch Line Spacing
$initialized .= chr(10).chr(12).chr(15).chr(50).chr(20); // Draft, Font, Pitch
$initialized .= chr(27).chr(79); // Cancel Skip Perforation
$initialized .= chr(27).chr(106).chr(108); // Reverse Line Feed
$condensed0 = chr(18);

$initialized .= chr(27).chr(97).chr(0); //justify left
$initialized .= chr(27).chr(37).chr(0); // Selects normal character set

$initialized .= chr(27).chr(67).chr(15); // Page Length
$initialized .= chr(27).chr(67).chr(5);
$initialized .= chr(13);
$data  = $initialized;
$data .= chr(27).chr(79); // Cancel Skip Perforation
$data .= chr(27).chr(120).chr(48); // Select Draft Mode
$data .= chr(27).chr(97).chr(0); // Justify Center
//$data .= chr(14); // Double Width For One Line
//$condensed1 = chr(15);

$data .= $bold1."           HEADER      ".$bold0."\n";
$data .= chr(10);
$data .= "           "SUB HEADER"   "."\n";
//$data .= chr(10);
$data .= "             "."BASE LINE".""."\n";
//$data .= chr(10);
$data .= "   "."\n";
$data .= "Date: ".$time."       "."\n";

$data .= "|----------------------------------------------------------|\n";

$data .= "Thank You! Print Testing Successfull"."\n";

$data .= "|----------------------------------------------------------|\n";
$data .= chr(27).chr(102).chr(49);
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";
$data .= " \n";

$fop = fopen($printer, "RAW");

if (!$fop){
echo 'Selected Printer: '.$printer;
print "<br/>";
print "<img src=\"$image2\" width=\"16px\" height=\"15px\"\ align=\"absmiddle\"/>";
print " ";
echo  'Sorry! Could Not Connect To The Selected Printer';
print "<br/>";
}
else
{
print "<br/>";
print "<img src=\"$image\" width=\"16px\" height=\"15px\"\ align=\"absmiddle\"/>";
print " ";
echo  'Printer Connected Successfully';
}
$data .= "\x00\x1Bi\x00";

if (!fwrite($fop,$data)){
print "<img src=\"$image2\" width=\"16px\" height=\"15px\"\ align=\"absmiddle\"/>";
print " ";
echo 'Printing Failed!';
print "<br/>";
}
else
{
print "<br/>";
print "<img src=\"$image\" width=\"16px\" height=\"15px\"\ align=\"absmiddle\"/>";
print " ";
echo 'Printing Succeeded!';
print "<br/>";
}

0

Решение

Может быть, вы уже решили проблему, но это может помочь другим с подобной проблемой.

Если вы хотите, чтобы клиент печатал на клиентском принтере, то почему бы не установить веб-сервер и php на клиентском компьютере и позволить клиентскому компьютеру запускать код php, который печатается локально.

Вы передаете данные с веб-сайта сервера на локальный метод POST или аналогичный.

0

Другие решения

Других решений пока нет …