Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-01-2005
e_god e_god is offline
Registrado
 
Registrado: may 2003
Posts: 4
Poder: 0
e_god Va por buen camino
impresion directa a impresora

Buen dia, ¿alguien me puede ayudar, necesito enviar un texto directo a la impresora, sin generar el reporte por report builder?

Para imprimir formatos de correo en una impresora de agujas.


edgar
Responder Con Cita
  #2  
Antiguo 12-01-2005
Coco Coco is offline
Miembro
 
Registrado: jul 2004
Ubicación: Argentina
Posts: 83
Poder: 20
Coco Va por buen camino
a ver si te sirve algo asi?

Código:
 procedure TForm1.Button1Click(Sender: TObject);
 var
     t:TextFile;
      i: integer;
 begin
 AssignPrn(t);
 rewrite(t);
 try
    Printer.Canvas.Font:= Memo1.Font;
    for i:= 0 to Memo1.Lines.Count-1 do
       writeln(t,memo1.lines[i]);
 finally
    CloseFile(t);
 end;
 end;

Saludos

Última edición por marcoszorrilla fecha: 12-01-2005 a las 17:28:01. Razón: Poner etiquetas code
Responder Con Cita
  #3  
Antiguo 12-01-2005
lento manu lento manu is offline
Miembro
 
Registrado: oct 2004
Posts: 29
Poder: 0
lento manu Va por buen camino
imprimir matricial

Yo utilizo un ejemplo de Marco Cantu para generar listado HTML, solo q escribo texto ascii tal como lo interpreta la impresora tipo "Propinter". Se basa en una Unit derivada de TStingList, tal q así:
Código Delphi [-]
unit StrPrn;
interface
uses
Classes, DB, Dialogs, Variants;
const
//IBMpropinter
//estos caracteres deben verse con el editor Charset OEM-charset
Defecto = '';
Comprimir = '';
Super = '';
IniResaltar ='E';
FinResaltar = 'F';
RayaH = 'Ä';
RayaV = '³';
Cruce = 'Å';
CruceIda='´';
CruceDcha='Ã';
AnglIzdaSup= 'Ú';
AnglIzdaInf= 'À';
AnglDchaSup= '¿';
AnglDchaInf= 'Ù';
RDblH ='º';
RDblV = 'Í';
CruceDbl='Î';
SaltoPagina = ' ';
Aowner = 'PROPIETARIO, S.L. C.I.F.: ES-B-79774645';
noOwner= ' ';
//pagina
LineasPagina = 62;
LastDetalle = 54; //53
type
TStrPrn = class (TStringList)
public
//todas las q necesites:
Asrc, Apath, TipoListado: string;
Linea, pagina, NoDoc, Unidades: integer;
Final, FinDetalle: boolean;
importe: Currency;
 
//Generar los procedimientos q vayas a usar:
procedure Cabecera (nArray:integer; Sigla, Marca, Temporada: string; Sujeto, Data: TDataSet);
procedure DetailCabecera(Repre, Marca:string;DatSujeto: TDataset);
procedure Pics(nArray: integer; Data: TDataSet);
procedure Cerrar(const Nominal:string);
procedure Detalles (Data: TDataSet);
Procedure SubDetail(SubData: TDataset);
Procedure NewPage ;
Procedure SetPagina;
procedure Rellenar (lineas:integer);
private
aSigla: String[1];
Tabla: TDataSet;
procedure AddTableContents (Data: TDataSet);
end;
implementation
uses
SysUtils;....
Es muy útil, y el texto lo muestro antes en formato Oem. Pero ántes te lo has de currar bien el formato y todo eso. Para nviar a PRN (también guardar TXT) así:

Memo1.Lines.SaveToFile('lpt1:');

pero si no hay impresora LPT1 se produce un error aunque lo intentes capturar con un try ... except.
De este modo imprimes al modo dos con las letras por defecto de la PRN, es más rápido y los calcos son los de siempre.

Aquí en el foro, he visto otros métodos muy interesantes, por ejemplo en el componente Norma19. Este es método es ya un componente y genera un listado ascii igualmente. Al ser un componente, me parece más interesante, pero bastante más complejo de entender.

Si necesitas mas detalles, te puedo enviar al mail un pas completo.

Última edición por lento manu fecha: 13-01-2005 a las 00:23:03. Razón: Reformar étiquetas Código
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 10:31:38.


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