Que tal a Todos, Saludos.
Estoy utilizando TDosPrn para imprimir ticket de venta
pero quiero ponerle un c贸digo de barras al final
Estoy tratando con la BarLib pero no logro hacerlo
Alguien que me pueda ayudar ?
Saludos.
Que tal a Todos, Saludos.
Estoy utilizando TDosPrn para imprimir ticket de venta
pero quiero ponerle un c贸digo de barras al final
Estoy tratando con la BarLib pero no logro hacerlo
Alguien que me pueda ayudar ?
Saludos.
#include "FiveWin.ch"
/*
pruebas de impresora TM-T88III
IMPRESORA TERMICA DE TKS
01/08/2010
*/
//----------------------------------------------------------------------------//
Function PrueT88()
Local nRow:=1, nCol:=0
MsgInfo('Verifique el Estado de la Impresora','!!! ATENCION !!!')
oPrn:=TDosPrn():New("lpt1")
oPrn:StartPage() // optional
oPrn:Say( nRow, nCol, replicate('-',42) )
nRow ++
oPrn:Say( nRow, nCol , "COMIENZO DEL REPORTE" )
nRow ++
oPrn:Say( nRow, nCol, replicate('-',42) )
nRow ++
oPrn:Say( nRow, nCol , "-Linea de Texto de 42 Caracteres de Ancho-" )
nRow ++
oPrn:Say( nRow, nCol , "-Linea de Texto de 42 Caracteres de Ancho-" )
nRow ++
oPrn:Say( nRow, nCol , "-Linea de Texto de 42 Caracteres de Ancho-" )
nRow ++
oPrn:Say( nRow, nCol , "-Linea de Texto de 42 Caracteres de Ancho-" )
nRow ++
oPrn:Say( nRow, nCol , "-Linea de Texto de 42 Caracteres de Ancho-" )
nRow ++
oPrn:Say( nRow, nCol , "-Linea de Texto de 42 Caracteres de Ancho-" )
nRow ++
oPrn:Say( nRow, nCol, replicate('-',42) )
nRow ++
oPrn:Say( nRow, nCol , "FIN DEL REPORTE" )
nRow ++
oPrn:Say( nRow, nCol, replicate('-',42) )
nRow ++
// esto es para c贸digos de barras
//s贸lo se pueden imprimir hasta 13 caracteres
//s贸lo funciona desde la Columna 0, si es mayor a 0 no imprime nada
cCadena:="0123456789012"
//oPrn:Say( nRow, nCol, chr(29) + chr(104) + chr(120) ) ///chr(104) + chr(120) donde 120 define el alto del codigo de barras Valores Admitidos minimo 50 maximo 120
//oPrn:Say( nRow, nCol, chr(29) + chr(72) + chr(0) ) ///indicacion de impresion de codigo de barra
//oPrn:Say( nRow, nCol, chr(29) + chr(107) + Chr(72) + Chr(LEN( AllTrim( cCadena ) )) + AllTrim( cCadena ) + Chr(0) ) //impresion directa
oPrn:Say( nRow, nCol, chr(29) + chr(104) + chr(50) )
oPrn:Say( nRow, nCol, chr(29) + chr(72) + chr(0) )
oPrn:Say( nRow, nCol, chr(29) + chr(107) + Chr(72) + Chr(LEN( AllTrim( cCadena ) )) + AllTrim( cCadena ) + Chr(0) )
oPrn:Say( nRow, nCol, replicate(' ',21-(len(alltrim(cCadena))/2) ) + AllTrim( cCadena ) + replicate(' ',21-(len(alltrim(cCadena))/2) ) )
nRow ++
cCadena:="ABCDEFGHIJKLM"
oPrn:Say( nRow, nCol, chr(29) + chr(104) + chr(50) )
oPrn:Say( nRow, nCol, chr(29) + chr(72) + chr(0) )
oPrn:Say( nRow, nCol, chr(29) + chr(107) + Chr(72) + Chr(LEN( AllTrim( cCadena ) )) + AllTrim( cCadena ) + Chr(0) )
oPrn:Say( nRow, nCol, replicate(' ',21-(len(alltrim(cCadena))/2) ) + AllTrim( cCadena ) + replicate(' ',21-(len(alltrim(cCadena))/2) ) )
nRow ++
//esto es para el corte automatico del papel
//separo 5 filas que es la distancia entre la ultima impresion y la linea de corte
oPrn:Say( nRow, nCol, ' ' )
nRow ++
oPrn:Say( nRow, nCol, ' ' )
nRow ++
oPrn:Say( nRow, nCol, ' ' )
nRow ++
oPrn:Say( nRow, nCol, ' ' )
nRow ++
oPrn:Say( nRow, nCol, ' ' )
nRow ++
oPrn:Endpage()
//este es el grupo de comandos especificos para corte de papel
oprn:Startpage()
oprn:command("27","64" )
oprn:command("27","105" ) //corte total
oprn:command("18" )
oprn:Endpage()
oPrn:End()
//hasta aca el corte automaticoasi lo hago yo
uso impresoras termicas con tdosprn y va de maravillas
cualquier cosa a tus ordenes
Gracias Amigo, lo probare y te comento como va.
Amigo, quedo de 10, funciona muy bien.
Gracias.