Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-10-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Casimiro Notevi. Sobre el rawmode:=true para enviar codigos a la impresora debe de estar asi sino no funciona, al menos en la parte del codigo de programa que saque de los foros. Sino lo pongo o lo dejo en false, a la hora de enviar los codigos a la impresora, se queja la aplicacion y dice que debe estar en rawmode:=true.

Delphius. Si, son dos cosas diferentes segun estoy viendo. Por un lado logo y ticket y por el otro la apertura. El problema surge, cuando cierro un begindoc..enddoc y vuelvo a abrir begindoc..enddoc para abrir el cajon. La verdad es que se tarda y no debiera ser asi. Se que alguien debe de haber implementado algo mas rapido para sus programas.

Todavia no he dado con ello, pero vere que hago para resolver.

pense que con printer.texout se podian mandar codigos a la impresora, pero no hacen nada .

Gracias a los dos. Os dire si he resuelto algo. .
Responder Con Cita
  #2  
Antiguo 31-10-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Perfecto amigos. Gracias.

Deje las dos partes:

Código Delphi [-]
procedure tfventas.imprimelinea;
const
  margin_left = 1;
  margin_top=70;

var
 i: Integer;
 MiMapadeBits : TBitMap;

begin

  MiMapadeBits := TBitMap.Create;
  { Creamos el objeto MiMapadeBits }
  MiMapadeBits.Width := PAGE.Width;   { Definimos su anchura }
  MiMapadeBits.Height := page.Height; { Definimos su altura }
  page.BorderStyle:=bsNone; { Definimos el estilo del borde a ninguno }
  page.PaintTo(MIMAPADEBITS.Canvas, 0, 0);
  page.BorderStyle:=bsSingle;
   with printer do
  try
  rawmode:=false;
    BeginDoc;
    Canvas.Font.Name := 'COURIER NEW';
    CANVAS.FONT.Style:=[FSbOLD];
    Canvas.Font.Size := 6;
    Canvas.Font.Color := clBlack;
    Canvas.CopyRect(Classes.Rect(1, 0, 365, 60),
    MiMapadeBits.Canvas, Classes.Rect(0, 0, MIMAPADEBITS.Width, mIMAPADEBITS.Height));
    for i := 0 to IMPRIMIR_ticket.Count - 1 do
     begin
    Canvas.TextOut(
      MARGIN_LEFT,
      MARGIN_TOP + i*printer.Canvas.TextHeight(imprimir_ticket.Strings[i]),
      imprimir_ticket.Strings[i]);
     end;
  finally
    EndDoc;
    mimapadebits.Free;
 with Printer do
  begin
    PRINTER.PrinterIndex := 0;
    RawMode := True;
  BeginDoc;
       printstring(#27+#112+#0+#25+#250+lineending);  //ABRE CAJON
      EndDoc;
  end;           
   end;
end;

En el primer BeginDoc, imprime el logo y el ticket, y en el segundo ya me abre el cajon. No hay tiempo de espera, asi que es transparente para el usuario.

Gracias.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Impresora NCR 7197 imprimir logo dfarias Impresión 1 28-06-2013 20:18:26
Imprimir en Tiqueteadora y Abrir Cajon Monedero subzero PHP 0 21-10-2011 22:08:35
Abrir Cajon Portamonedas desde Oki raorre Impresión 0 25-06-2007 12:27:24
abrir cajon de dinero serial Citlalli API de Windows 13 13-12-2006 10:08:41
Abrir cajon portamonedas marcial Varios 1 06-10-2004 17:58:12


La franja horaria es GMT +2. Ahora son las 05:53:00.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi