Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #8  
Antiguo 06-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Lucas.

A ver si de este modo te resulta más sencillo:
Código Delphi [-]
...
uses Printers;

function LinesDown(ACanvas: TCanvas; const Lineas: Integer): Integer;
begin
  ACanvas.TextOut(Printer.PageWidth div 15, Lineas*Printer.PageHeight div 50,'');
  Result:= Lineas
end;

procedure PrintLineAt(ACanvas:TCanvas; const X: Integer; var Y: Integer;
  const Str: string);
begin
  ACanvas.TextOut(ACanvas.TextWidth('O')*X, Y* Printer.PageHeight div 50, Str);
  Inc(Y)
end;

procedure PrintLine(ACanvas: TCanvas; const X:Integer; var Y: Integer;
  const Str: string);
begin
  Acanvas.TextOut(X, Y * Printer.PageHeight div 50, Str);
  Inc(Y)
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: Integer;
  nLin: Integer;
  s: string;
begin
  with TPrinter.Create do
  try
    x := Printer.PageWidth div 15;
    y := Printer.PageHeight div 50;
    nLin:= 1;
    BeginDoc;
    Canvas.Font.Name:= 'Times new Roman';
    Canvas.Font.Color:= clBlack;
    Canvas.Font.Height:= Printer.PageHeight div 60;
    PrintLine(Canvas,(Printer.PageWidth-Canvas.TextWidth(s)) div 2, nLin, 'El titulo del documento');
    nLin:= LinesDown(Canvas, 3); // TRES LINEAS ABAJO
    PrintLine(Canvas, x, nLin, 'Fecha: '+Label10.Caption+'     Nº: '+  Label11.Caption);
    ClientDataSet.First;
    while not ClientDataSet.Eof do
    begin
      s:= ClientDataSet.FieldByName('Name').AsString +' '+
          ClientDataSet.FieldByName('Capital').AsString;
      PrintLine(Canvas,Printer.PageWidth div 15, nLin, s);
      ClientDataSet.Next;
    end;
    PrintLineAt(Canvas, 10, nLin, 'Total: '+ Edit3.Text);  // 10 A LA DERECHA
    PrintLine(Canvas, x, nLin,'ETIQUETA1: ' + Edit1.Text + '  ETIQUETA2: ' + Edit2.Text);
    EndDoc;
  finally
    Free;
  end;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 


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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Imprimir directamente con fastReport 4 David Impresión 1 17-04-2009 15:34:15
Imprimir directamente a un puerto COM krlosrp Varios 1 20-08-2007 19:07:55
Imprimir directamente en LPT1 con VB.net cocomo .NET 1 27-05-2007 23:09:24
Imprimir directamente Alexander Impresión 5 07-07-2006 06:31:26
Imprimir directamente en Rave5? danytorres Impresión 1 08-10-2003 00:41:28


La franja horaria es GMT +2. Ahora son las 11:57:49.


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