Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-02-2010
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 22
erickperez6 Va por buen camino
impresion de ticket, canvas o assingfile LPT?

necesito imprimir ticket de punto de ventas en impresoras de papel muy ajutado tamano (76mm de ancho creo) y de modo continuo (el alto de la hoja depende de la cantidad de lineas a imprimirse por cada ticket, las cuales nunca sera un numero fijo establecido). Los modelos de la impresora puede varias por clientes, es decir que la impresion del ticket no debe de dar inconvenientes al cambiar de modelos de impresoras. He buscado en los hilos anteriores del foro y por lo que observo lo mas recomendable es imprimir directamente en el impresor por medio de canvas o con el assignfile indicandole en que puerto deseo imprimir. Veo que algunas personas utilizan los dos metodos a la vez (no se porque lo hacen) y otras una de las dos.

Mi pregunta es, cual es la diferencia significativa de un medoto y el otro, cual se le puede sacar mas ventaja?

gracias de antemano
Responder Con Cita
  #2  
Antiguo 21-02-2010
Avatar de heroe
heroe heroe is offline
Miembro
 
Registrado: may 2006
Ubicación: Cartago, Costa Rica
Posts: 45
Poder: 0
heroe Va por buen camino
Prefiero LPT

En lo personal uso LPT, me da excelentes resultados.

un ejemplo

Código Delphi [-]
var
  Archivo: TextFile;
begin
  AssignFile(Archivo, 'LPT3');
  Rewrite(Archivo);
  Writeln(Archivo, 'Esto es una prueba');
  CloseFile(Archivo);
end.

Nota: Las computadoras modernas ya no traen los puertos paralelo ni serial.
Así debes compralos por aparte e instalarlos. Si es así, usa el puerto LPT3.
Responder Con Cita
  #3  
Antiguo 22-02-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.309
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
¿Has probado a utilizar un Richedit (PlainText=True) para la impresión?

Lo digo porque este componente posee el método de Print. Bastaría con volcar el texto sobre el componente, teniendo en cuenta que no sobrepase el ancho de tu ticket y lanzar la impresión.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 22-02-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.072
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Lo de usar el RichEdit lo hago muy a menudo, es cómodo y no hay que preocuparse de canvas, puertos, etc.
Responder Con Cita
  #5  
Antiguo 22-02-2010
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 22
erickperez6 Va por buen camino
me agrada mucho la idea del richedit, es mas practico, pero me surge la duda de que si deseo en algun momento determinado enviarle secuencias de escape al richedit para lograr que el impresor realice ciertas operaciones especiales (como activar negritas y otros) si lo podre hacer.
Responder Con Cita
  #6  
Antiguo 22-02-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.309
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por erickperez6 Ver Mensaje
me agrada mucho la idea del richedit, es mas practico, pero me surge la duda de que si deseo en algun momento determinado enviarle secuencias de escape al richedit para lograr que el impresor realice ciertas operaciones especiales (como activar negritas y otros) si lo podre hacer.
No se si podrás mezclar ambas cosas y tampoco sé si te hará falta.
¿Si necesitas negritas, porqué no las añades al RichEdit?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 03-03-2010
Avatar de erickahr
erickahr erickahr is offline
Miembro
 
Registrado: feb 2010
Posts: 94
Poder: 15
erickahr Va por buen camino
Question

Cita:
Empezado por Neftali Ver Mensaje
No se si podrás mezclar ambas cosas y tampoco sé si te hará falta.
¿Si necesitas negritas, porqué no las añades al RichEdit?
Neftalí, estoy tratando de hacer lo mismo que el tocayo (la persona que inicio el hilo se llama erick y yo tambien), el hecho de volcar el ticket sobre el RichEdit quiero que sea transparente al usuario, por lo tanto necesito dar formato desde codigo, como puedo aplicar estilos desde codigo, y otra duda, con este metodo puedo imprimir desde red, compartiendo la impresora?, gracias de antemano SALUDOS!!!.
__________________
Nadie puede separar su fe de sus actos, o sus creencias de sus afanes
Responder Con Cita
  #8  
Antiguo 04-03-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.309
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por erickahr Ver Mensaje
...el hecho de volcar el ticket sobre el RichEdit quiero que sea transparente al usuario, por lo tanto necesito dar formato desde codigo, como puedo aplicar estilos desde codigo...

Si revisas la ayuda del RichEdit hay varios ejemplos.
Te puedo mostrar algun trozo de código que tengo por aquí para que veas por donde van los tiros:

Código Delphi [-]
    // Color del texto seleccionado
    with reDocumentacion.SelAttributes do begin
      CurrText.Color := ColorDialog.Color;
    end;

  // Numeración
  with reDocumentacion.Paragraph do begin
    // No activada ?
    if (Numbering = nsNone) then begin
      Numbering := nsBullet;
    end
    else begin
      Numbering := nsNone;
    end;
    tbBullets.Down := Boolean(Ord(Numbering));
  end;

  // Alineación
  with reDocumentacion.Paragraph do begin
    // No activada ?
    if (Alignment <> taCenter) then begin
      Alignment := taCenter;
    end;
    tbLeft.Down := (Alignment = taCenter);
  end;

También te puede servir de mucha ayuda la demo que viene con Delphi de un editor de texto que trabaja con RichEdit. Puede ver ahí el código necesario para modificar estilos, coloración, fuentes,...


Cita:
Empezado por erickahr Ver Mensaje
...con este metodo puedo imprimir desde red, compartiendo la impresora?
No debería existir problema si tienes acceso a la impresora. El hecho de que sea local o compartida en red, debería ser transparente para el programa.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #9  
Antiguo 04-03-2010
Avatar de Softweb
Softweb Softweb is offline
Miembro
 
Registrado: ago 2008
Posts: 46
Poder: 0
Softweb Va por buen camino
Hola a todos.

Perdonar pero estoy leyendo mucho en vuestras respuestas lo de imprimir en una impresora de tikes con el richedit, que yo sepa en la actualidad el 90% de estas son matriciales y térmicas comandadas por codes o lo que es lo mismo por códigos de los caracteres a imprimir.

Para lo cual o usas un control especifico que tenga en cuenta el tipo de letra, tamaño, ancho de los caracteres y color, o lo haces a pelo abriendo el puerto.

Saludos
Responder Con Cita
  #10  
Antiguo 04-03-2010
Avatar de erickahr
erickahr erickahr is offline
Miembro
 
Registrado: feb 2010
Posts: 94
Poder: 15
erickahr Va por buen camino
Lightbulb Gracias Neftalí

Muchisimas gracias por tu respuesta, creeme que me sirvio de mucho, y estoy poniendo en practica el codigo que muestras, ademas de checar las demo, ya probe la impresion en red y funciona sin problemas, una vez mas Gracias!!!


Cita:
Empezado por Softweb Ver Mensaje
Hola a todos.

Para lo cual o usas un control especifico que tenga en cuenta el tipo de letra, tamaño, ancho de los caracteres y color, o lo haces a pelo abriendo el puerto.

Saludos
Si, tengo impresoras termicas, y asi lo manejo, mediante LPT1 y codigos de escape, pero al tener mas de una terminal en una sucursal me da problemas, porque tengo que usar un multiplexor (para dos computadoras a una sola impresora) y si son mas maquinas, simplemente no puedo imprimir.

Imprimiendo desde un RichEdit, funciona como cualquier impresora de Windows, y no te casas con una marca en especifico (ya que en algunos casos los codigos de escape varian en base a modelos y marcas), ni con un puerto, (ya que es un poco dificil encontrar el LPT en las maquinas recientes), pero tu observacion es muy util para alguin que se encuentre con problemas similares y entre aki.

Gracias!!!
__________________
Nadie puede separar su fe de sus actos, o sus creencias de sus afanes
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
Impresion de Ticket betto Impresión 8 17-12-2008 17:32:45
Impresion de Ticket look Impresión 12 11-12-2008 15:45:53
impresion ticket en XP rebollo75 Impresión 2 04-11-2004 13:19:37
Impresion de logotipo ticket luiguiray Impresión 2 25-08-2004 00:44:54
Impresiòn de un ticket trex2000 Impresión 4 06-08-2004 17:05:45


La franja horaria es GMT +2. Ahora son las 09:48:33.


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