Clique para saber mais...
  Home     Download     Produtos / Cursos     Revista     Vídeo Aulas     Fórum     Contato   Clique aqui para logar | 20 de Janeiro de 2026
  Login

Codinome
Senha
Salvar informações

 Esqueci minha senha
 Novo Cadastro

  Usuários
98 Usuários Online

  Revista ActiveDelphi
 Assine Já!
 Edições
 Sobre a Revista

  Conteúdo
 Apostilas
 Artigos
 Componentes
 Dicas
 News
 Programas / Exemplos
 Vídeo Aulas

  Serviços
 Active News
 Fórum
 Produtos / Cursos

  Outros
 Colunistas
 Contato
 Top 10

  Publicidade

  [Artigos]  [Básico] - Impressão com o Método Canvas - Pt. 2
Publicado por rboaro : Terça, Novembro 05, 2013 - 01:24 GMT-3 (578 leituras)
Comentários 1 Comentário   Enviar esta notícia a um amigo Enviar para um amigo   Versão para Impressão Versão para impressão
Misael Soler Dando sequência à série sobre o método Canvas no Delphi, hoje falarei um pouco mais sobre o código. No exemplo que vamos ver, desenvolvi um formulário que só possui as Querys, o rinterDialog e uma imagem, pois achei legal colocar uma logo marca no canto superior esquerdo.

Mas… antes de começar, direto nisto, vamos ver o que é possível fazer com o método Canvas:

O método Canvas serve para desenhar em cima de alguns objetivos. Pode-se utilizá-lo em Imagens do tipo Bitmap (e unicamente Bitmap, se tentarmos utilizar uma imagem do tipo JPEG com funções do Canvas o Delphi apresentará erro de tipo de arquivo), nos formulários, para desenhar no Form mesmo, e também podemos utilizar no Printer, neste último, faremos uma impressão mesmo.

O que faz o método Canvas e onde posso utiliza-lo? Este tipo de implementação pode ser feita tanto em um formulário que tenha dados, como por exemplo uma ficha, e depois podemos criar o botão “Imprimir” e desenvolver o relatório com o que acabou de ser preenchido. Isto é muito utilizado em sistemas que emitem Nota Fiscal, por exemplo. Também é possível, a título de sugestão, criar um segundo formulário, que só tenha o componente PrinterDialog e as Querys que você precisa para emitir o relatório.

Muito bem, agora que sabemos o que o método Canvas faz e onde podemos utiliza-lo, vamos ver suas principais funcionalidades:

Desenhado uma linha:
Form1.Canvas.MoveTo(X, Y); //Sendo X e Y valores inteiros e aqui, representados pelo começo da linha
Form1.Canvas.LineTo(X,Y) ;// Sendo X e Y valores inteiros e aqui representados pelo valor final da linha;

Temos algumas opções para o uso da linha, tais como:

Form1.Canvas.Pen.Width := 2; //Neste caso, quanto maior o número, mais grossa será a linha;
Form1.Canvas.Pen.Color := clRed; // Aqui, atribuo a cor vermelha para a linha; Lembre cl+cor em inglês para ter qualquer cor;
Form1.Canvas.Pen.Style := psSolid; //Este é default, mas temos vários estilos de linhas (tracejado) tais como: psDash, psDot, psDashDot e psDashDotDot;

Desenhando um Retângulo:
Form1.Canvas.Rectangle(10, 10, 10, 10); // procure pensar assim: os 2 primeiros números é o lugar de X e Y (respectivamente) que eu quero o retângulo seja desenhado; os 2 últimos valores são respectivamente, a largura e a altura do retângulo; O próprio Delphi explica de um jeito diferente, sendo o primeiro valor a posição de X para o canto superior esquerdo e o segundo valor, a posição de Y para o canto superior esquerdo; os próximos 2 valores são X e Y do canto inferior direito, mas procure pensar da forma como sugeri, os 2 primeiros valores são posições de X e Y na tela e os 2 últimos são largura e altura;

Todas as propriedades que foram utilizadas para formatar a linha também podem ser utilizadas para formatar o retângulo;

Desenhando uma Elipse:
Form1.Canvas.Elipse(10, 10, 10, 10); //Pense da mesma forma como o retângulo, não tem segredo.

Escrevendo em uma Imagem:
Pense desta forma: Altere a fonte e escreva; Altere a fonte e escreva; Claro, isto se você quiser letras diferentes.

Image1.Canvas.Font.Style := [fsBold]; //Atribui negrito à fonte, para fonte em itálico, digite fsItalic, para fonte normal, abra e feche o colchetes, para Sublinhado, digite fsUnderline, para taxado (com um risco cortando a palavra) digite fsStrikeOut, para mais de um atributo, coloque-os seguido de vírgula dentro dos colchetes;
Image1.Canvas.Font.Color := clGreen; // Coloca a cor verde na letra, mesma lógica de mudar a cor da linha;
Image1.Canvas.TextOut (10, 10, ‘Digite o texto aqui’); //Aqui, temos 3 parâmetros: A posição de X, a posição de Y e finalmente o texto que queremos escrever; Seguindo estas linhas de código, colocamos a cor verde em negrito, demos margem de 10 pixels em X e Y e escrevemos o texto “Digite o texto aqui”;

Fácil, não é? Agora já sabemos quais as principais funcionalidades do método Canvas, e onde podemos utiliza-lo. Ainda exitem outras diversas funções deste método de impressão, aqui procurei mostrar somente as principais. Na próxima atualização vamos ver como fazer de fato os relatórios utilizando este recurso.
Link Original do Artigo: http://torrestark.blogspot.com.br/2013/09/impressao-com-o-metodo-canvas-pt-2.html


Comentários Comentários
   Ordem:  
Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos.


por: gilsonnrodrigues (gilsonnr@hotmail.com) : Nov 06, 2013 - 08:38
(Informações sobre o membro | Enviar uma mensagem) http://
vale lembrar que TCANVAS não é um método, e sim, uma classe. claro que isso não influência na qualidade do artigo. Porém, endireitar a vereda, torna-se necessário, para que não leve à queda o que toscaneja.
  Edição 112

Revista ActiveDelphi

  50 Programas Fontes


  Produtos

Conheça Nossos Produtos

Copyright© 2001-2016 – Active Delphi – Todos os direitos reservados