Advertisement
Flavio1234

Impressões usando uma impressora

Sep 17th, 2020
1,303
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.74 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.Drawing.Printing;
  11.  
  12. namespace Impressao1
  13. {
  14.     public partial class Form1 : Form
  15.     {
  16.  
  17.         int largura;
  18.         int altura;
  19.  
  20.         Font letra;
  21.         SolidBrush cor;
  22.         int y = 50;
  23.         //int num_frases = 1;
  24.         //int pagina = 0;
  25.  
  26.         //int paginas_criadas;
  27.  
  28.         public Form1()
  29.         {
  30.             InitializeComponent();
  31.         }
  32.  
  33.         private void Form1_Load(object sender, EventArgs e)
  34.         {
  35.  
  36.         }
  37.  
  38.  
  39.         private void button1_Click(object sender, EventArgs e)
  40.         {
  41.  
  42.             //preparar a impressão
  43.             largura = documento.DefaultPageSettings.Bounds.Width;
  44.             altura = documento.DefaultPageSettings.Bounds.Height;
  45.  
  46.             letra = new Font("Arial", 40, FontStyle.Regular, GraphicsUnit.Pixel);
  47.             cor = new SolidBrush(Color.Black);
  48.  
  49.             documento.DefaultPageSettings.Landscape = true;
  50.             y = 100;
  51.  
  52.             caixa_visualização.Document = documento;
  53.             caixa_visualização.ShowDialog();
  54.  
  55.  
  56.             //dá a instrução para iniciar a impressão
  57.  
  58.             //lista.Items.Add(documento.DefaultPageSettings.Bounds.X.ToString());
  59.             //lista.Items.Add(documento.DefaultPageSettings.Bounds.Y.ToString());
  60.             //lista.Items.Add(documento.DefaultPageSettings.Bounds.Width.ToString());
  61.             //lista.Items.Add(documento.DefaultPageSettings.Bounds.Height.ToString());
  62.  
  63.          
  64.  
  65.  
  66.             //y = 50;
  67.             //num_frases = 1;
  68.             //pagina = 0;
  69.  
  70.  
  71.             ////abrir o quadro de configuração da impressora
  72.             //if (caixa_Setup.ShowDialog() == DialogResult.Cancel)
  73.             //    return;
  74.             //else
  75.             //    documento.PrinterSettings = caixa_Setup.PrinterSettings;
  76.  
  77.  
  78.  
  79.             //documento.Print();
  80.  
  81.             //paginas_criadas = 0;
  82.             //visualizar.Document = documento;
  83.             //visualizar.InvalidatePreview();
  84.  
  85.             //caixa para ver a lista que ia ser imprimida
  86.          
  87.         }
  88.  
  89.         private void documento_PrintPage(object sender, PrintPageEventArgs e)
  90.         {
  91.             string frase = " Esta frase serve para testes.";
  92.             SizeF dimensao = e.Graphics.MeasureString(frase, letra);
  93.  
  94.             e.Graphics.DrawString(frase, letra, cor, new Point(100, y));
  95.             y += Convert.ToInt16(dimensao.Height + 5);
  96.  
  97.             e.Graphics.DrawString(frase, letra, cor, new Point(100, y));
  98.             y += Convert.ToInt16(dimensao.Height + 5);
  99.  
  100.             e.Graphics.DrawString(frase, letra, cor, new Point(100, y));
  101.             y += Convert.ToInt16(dimensao.Height + 5);
  102.  
  103.             e.Graphics.DrawString(frase, letra, cor, new Point(100, y));
  104.             y += Convert.ToInt16(dimensao.Height + 5);
  105.  
  106.             e.Graphics.DrawString(frase, letra, cor, new Point(100, y));
  107.            
  108.  
  109.             //Desenhar a linha
  110.             e.Graphics.DrawLine(new Pen(Color.Red, 2), new Point(100 + (int)dimensao.Width, 100), new Point(100 + (int)dimensao.Width, y + (int)dimensao.Height));
  111.  
  112.  
  113.             //imprimir os dados no documento
  114.             //while (num_frases <= 100)
  115.             //{
  116.             //    e.Graphics.DrawString("Frase numero " + num_frases.ToString(), letra, cor, new Point(50, y));
  117.             //    y += 30;
  118.             //    num_frases++;
  119.  
  120.             //    //se o documento chegou no fundo da folha
  121.             //    if (y >= altura - 50)
  122.             //    {
  123.             //        //mudar de pagina
  124.             //        y = 50;
  125.             //        e.HasMorePages = true;
  126.             //        paginas_criadas++;
  127.             //        break;
  128.             //    }
  129.             //}
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.             ////imprima os dados no documento
  137.             //string texto = "Esta é a primeira frase impresa no c#.";
  138.             //Font letra = new Font("Arial", 14, FontStyle.Bold, GraphicsUnit.Pixel);
  139.             //SolidBrush cor = new SolidBrush(Color.Purple);
  140.             //Point ponto = new Point(100, 100);
  141.             //Rectangle rect = new Rectangle(0, 100, largura, 30);
  142.             //StringFormat alinhamento = new StringFormat();
  143.             //alinhamento.Alignment = StringAlignment.Center;
  144.             //alinhamento.LineAlignment = StringAlignment.Center;
  145.  
  146.             //List<string> lista = new List<string>(){
  147.             //    "frase numero1",
  148.             //    "frase numero2",
  149.             //    "frase numero3",
  150.             //    "frase numero4",
  151.             //    "frase numero5",
  152.             //    "frase numero6"
  153.             //};
  154.  
  155.             //instrução para imprimir o texto na folha
  156.         //    e.Graphics.DrawString(texto.ToUpper(), letra, cor, rect, alinhamento);
  157.  
  158.         //    //presentar frase
  159.         //    int y = 140;
  160.         //    foreach (string frase in lista)
  161.         //    {
  162.         //        e.Graphics.DrawString(frase, letra, cor, new Point(100, y));
  163.         //        y += 40;
  164.         //    }
  165.  
  166.         //    y += 50;
  167.         //    alinhamento.Alignment = StringAlignment.Near;
  168.         //    alinhamento.LineAlignment = StringAlignment.Near;
  169.         //    string texto1 = "Este texto vai ser apresentado dentro de uma caixa de texto com o mesmo sendo formado. Este texto vai ser apresentado dentro de uma caixa de texto com o mesmo sendo formado. Este texto vai ser apresentado dentro de uma caixa de texto com o mesmo sendo formado. Este texto vai ser apresentado dentro de uma caixa de texto com o mesmo sendo formado.Este texto vai ser apresentado dentro de uma caixa de texto com o mesmo sendo formado. Este texto vai ser apresentado dentro de uma caixa de texto com o mesmo sendo formado.";
  170.         //    e.Graphics.DrawString(texto1,letra,cor, new Rectangle(100, y, 600, 200), alinhamento);
  171.         //    e.Graphics.DrawRectangle(new Pen(Color.Red, 2), new Rectangle(100, y, 600, 200));
  172.  
  173.         }
  174.  
  175.         private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
  176.         {
  177.  
  178.         }
  179.  
  180.         private void button2_Click(object sender, EventArgs e)
  181.         {
  182.              //avança a paiga a apresentar  
  183.             //if (pagina == paginas_criadas) return;
  184.             //pagina++;
  185.             //visualizar.StartPage = pagina;
  186.         }
  187.  
  188.         private void visualizar_Click(object sender, EventArgs e)
  189.         {
  190.  
  191.         }
  192.  
  193.         private void button2_Click_1(object sender, EventArgs e)
  194.         {
  195.             //retrocede a paiga a apresentar
  196.             //if (pagina == 0) return;
  197.             //pagina--;
  198.             //visualizar.StartPage = pagina;
  199.  
  200.         }
  201.  
  202.      
  203.     }
  204. }
  205.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement