Ola,
Verifique a funcao TextHeight do Canvas. No D5 tem um programa exemplo, em Demos\Ownerlst. Fernando Marcio wrote: > Ola Pessoal, > > Implementei impressao via Canvas em nosso sistema da seguinte maneira: > > Printer.Canvas.Font.Name := FontDialog.Font.Name; > Printer.Canvas.Font.Size := FontDialog.Font.Size; > Printer.Canvas.Font.Style := FontDialog.Font.Style; > Printer.Canvas.Font.Color := FontDialog.Font.Color; > > Printer.BeginDoc; > linhaatual := 5*Printer.Canvas.TextHeight('A'); > for j := 0 to memoImp.lines.count-1 do > begin > if (linhaatual + > trunc(1.1*Printer.Canvas.TextHeight('A'))) >= Printer.PageHeight then > begin > Printer.NewPage; > linhaatual := 20; > end; > Printer.Canvas.TextOut(20,linhaatual,memoImp.Lines[j]); > linhaatual := linhaatual + > trunc(1.1*Printer.Canvas.TextHeight('A')); > end; > Printer.EndDoc; > > Ate ai tudo bem, so tem um problema: > Como podem ver eu permito que o usuario escolha a fonte e o tamanho da mesma, > so que conforme o tamanho da fonte que ele escolhe o salto de página fica > incorreto. > Também tenho um parametro de impressao que inidica quantas linhas por pagina > ele pode imprimir. > Gostaria de, com base neste parametro de linhas por pagina, fazer com que o > canvas, respeitasse o salto de página, independente do tamanho da fonte! > > Espero ter me feito entender! > > Grato, > > Márcio > -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.298 / Virus Database: 265.6.9 - Release Date: 06/01/2005 -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html