Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/06/2012, 15:53
ieperezm
 
Fecha de Ingreso: abril-2011
Mensajes: 3
Antigüedad: 13 años, 1 mes
Puntos: 0
Imprimir Ticket php_printer

Les cuento el caso que tengo; una pequeña red window, quiere gestionar la impresion de ticket de su punto de venta , sin necesidad de elegir la impresora (lo comun que sale cuando usas window.print de java script).

Bueno logre imprimir con la dll de php_printer.dll , ojo que tienen que descargarla para php 5.3.0 no saben lo dificil que me fue conseguirla ya que las que circulan por la red son para php 4 y no funcionaba.

En fin logre imprimir una pequeña prueba con este codigo:

Código PHP:
<?php

$printer 
"HP Photosmart D110 series"

if(
$ph printer_open($printer))



printer_start_doc($ph"testfile.txt");
printer_start_page($ph);

$font printer_create_font("Arial",72,48,400,false,falsefalse,0);
printer_select_font($ph$font);

$text1"producto: computadora personal notex12563 cancelado...";
$text2"observacion: puede ser muy largooooooooooooooooooooooo";

//$text2=wordwrap($text1, 8, "\n", true);

printer_draw_text($ph$text11010);
printer_draw_text($ph$text210110);

printer_delete_font($font);

printer_end_page($ph);
printer_end_doc($ph);
printer_close($ph);


else 
"Couldn't connect..."

?>

Como sabran un ticket tiene un ancho de 8 a cm y si el texto es muy grande lo corta, tienen alguna idea de como abordar la impresion de un ticked con un formato dado (cabecera ,detalle,footer), porque si se dan cuenta printer_draw_text pinta el texto pero en base a una cordenada lo cual es muy engorroso de manejar cuando el texto es muy largo.

Probe con wordwrap($text1, 8, "\n", true) para poner el separador de salto de linea pero ni asi.

Lo raro es que probe con un txt y lo mande a imprimir y la tiketera acomodo el texto al papel configurado (es decir ticket).

Por favor ya estoy a un paso de resolver este tema lo que mas me demoro fue realizar la impresion, a ver si me dan una mano.Muchas gracias de antemano.