CSPromex
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.


Programadores dedicados a C sharp .Net, eres nuevo, experto o quieres aprender a programar en C Sharp, aquí encontraras todo lo que necesitas.
 
ÍndiceBuscarÚltimas imágenesChatRegistrarseConectarse
Conectarse
Nombre de Usuario:
Contraseña:
Entrar automáticamente en cada visita: 
:: Recuperar mi contraseña
Últimos temas
» Sockets Conexion,Envio y recepcion de datos (mini-chat Cliente-Servidor)
Programa de impresión complejo (multiples hojas). I_icon_minitimeSáb Sep 30, 2023 6:24 pm por EurekaMartin

» Graficos: Grafica circular
Programa de impresión complejo (multiples hojas). I_icon_minitimeMar Mar 05, 2019 4:58 pm por Luis Garcia

» Calendario hecho Manualmente
Programa de impresión complejo (multiples hojas). I_icon_minitimeMar Mar 05, 2019 3:52 pm por Luis Garcia

» Activar el protector de pantalla.
Programa de impresión complejo (multiples hojas). I_icon_minitimeMar Mar 05, 2019 3:12 pm por Luis Garcia

» Hacer backup de MySql desde C#
Programa de impresión complejo (multiples hojas). I_icon_minitimeMar Abr 18, 2017 10:04 pm por maurifl

» Sockets programa para Ciber Cafe (Cliente-Servidor)
Programa de impresión complejo (multiples hojas). I_icon_minitimeLun Ago 10, 2015 5:45 pm por artes

» Ayuda crear emoticones en un chat
Programa de impresión complejo (multiples hojas). I_icon_minitimeDom Jul 12, 2015 9:00 pm por yeco96

» Necesito ayuda para pasar datos a un Datagridview
Programa de impresión complejo (multiples hojas). I_icon_minitimeDom Jun 07, 2015 4:33 pm por rafaelfa

» Reproductor de música->Lista de reproducción (Guardar-Cargar)
Programa de impresión complejo (multiples hojas). I_icon_minitimeLun Jun 01, 2015 3:00 pm por kevin22

Buscar
 
 

Resultados por:
 
Rechercher Búsqueda avanzada
Síguenos:
Crear foro Crear foro Crear foro

 

 Programa de impresión complejo (multiples hojas).

Ir abajo 
2 participantes
AutorMensaje
Luis Garcia
STAFF TEAM
STAFF TEAM
Luis Garcia


Mensajes : 64
Puntos : 112

Programa de impresión complejo (multiples hojas). Empty
MensajeTema: Programa de impresión complejo (multiples hojas).   Programa de impresión complejo (multiples hojas). I_icon_minitimeMiér Mar 16, 2011 2:50 pm

[Tienes que estar registrado y conectado para ver esa imagen]

Hola, en este ejemplo utilizamos printpreview, un printDialog y de forma directa mediante un método, para realizar una impresión de forma compleja, es decir, solo imprimiendo el contenido de un ritchtextbox, la impresión puede ser de muchísimas hojas.

Empezamos agregando los "using" necesarios:

using System.Windows.Forms;
using System.Drawing.Printing;
using System.Drawing;

Dentro de la clase declaramos:

PrintDocument documento = new PrintDocument();//Documento a imprimir
int ItemCounter = 0;

Que es el documento que se imprimirá, un objeto de tipo "PrintDocument" o dicho en español documento a imprimir.

En el constructor agregamos:
Código:

 public Form1()
        {
            InitializeComponent();
            documento.PrintPage += new PrintPageEventHandler(documento_PrintPage);
        }

También insertamos en el evento Validated, para llevar un conteo de las paginas:

Código:

  void PrintPreviewControl_Validated(object sender, EventArgs e)
        {
            ItemCounter = 0;
        }

Agregamos 3 botones, en el primero utilizaremos un printpreview, en el segundo utilizaremos un PrintDialog y en el tercero imprimiremos con el metodo print del documento.

En el evento click del primer botón:

Código:


 PrintPreviewDialog VistaPrevia = new PrintPreviewDialog();
         
          VistaPrevia.Document = documento;
          VistaPrevia.PrintPreviewControl.Document = documento;
          VistaPrevia.PrintPreviewControl.Validated += new EventHandler(PrintPreviewControl_Validated);
          VistaPrevia.Show();


En evento click del segundo boton:
Código:


PrintDialog DialogoImprimir = new PrintDialog();
            DialogoImprimir.Document = documento;
            if (DialogoImprimir.ShowDialog() == DialogResult.OK) {
                DialogoImprimir.Document.Print();
              }

En evento click del tercer botón:
Código:

 documento.Print();


En evento PrintPage del documento a imprimir insertamos el siguiente código (Incluiré el evento para comodidad):
Código:

 void documento_PrintPage(object sender, PrintPageEventArgs e)
        {
         
//Para cancelar la impresión
float margenIzdo=e.MarginBounds.Left;
float margenSuperior=e.MarginBounds.Top;
float lineas=0, posicionY=0;
int Counter=0;
string lineaactual;

Font miFuente=new Font("Times New Roman",16,FontStyle.Regular);

lineas=e.MarginBounds.Height/miFuente.GetHeight(e.Graphics);

while (Counter < lineas && ItemCounter <= richTextBox1.Lines.Length - 1)
{
    lineaactual = richTextBox1.Lines[ItemCounter];
    posicionY = margenSuperior + Counter * miFuente.GetHeight(e.Graphics);

    e.Graphics.DrawString(lineaactual, miFuente, Brushes.Black, margenIzdo, posicionY);
    Counter += 1;
    ItemCounter += 1;

    if (!(ItemCounter == richTextBox1.Lines.Length))
    { e.HasMorePages = true;
    }
    else{ e.HasMorePages = false; }
}
e.Graphics.DrawString("\n\nVisitanos en C Sharp Programadores México para más códigos" + "\n\nhttp://www.facebook.com/group.php?gid=381514445922&ref=ts", miFuente, Brushes.Blue, margenIzdo, posicionY);         
}

Descargar: [Tienes que estar registrado y conectado para ver este vínculo]

CuteWriter

En caso de no contar con una impresora y para no gastar hojas, puedes utilizar este programa que en vez de imprimir en impresora lo hace sobre un archivo pdf.

[Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
angel.qwert
Novato
angel.qwert


Mensajes : 1
Puntos : 1

Programa de impresión complejo (multiples hojas). Empty
MensajeTema: Re: Programa de impresión complejo (multiples hojas).   Programa de impresión complejo (multiples hojas). I_icon_minitimeJue Nov 22, 2012 12:00 am

mm porfas vuelvelos a subir en otro servidor para mas facil...
te lo agaradeceria mucho
muy buen aporte pero quisiera verlo con mas explicacion
con el programa ya hecho porfas.. gracias...
Volver arriba Ir abajo
 
Programa de impresión complejo (multiples hojas).
Volver arriba 
Página 1 de 1.
 Temas similares
-
» Programa de impresión básico.
» Ejecutar un programa.
» Programa de un automata
» Ejecutar un programa con privilegios de administrador.
» Programa que resuelte ecuaciones cuadráticas

Permisos de este foro:No puedes responder a temas en este foro.
CSPromex :: PROGRAMACIÓN EN C# :: Código abierto-
Cambiar a: