none
Imprimir en Asp Net Mvc RRS feed

  • Pregunta

  • Hola a todos:

    Mi consulta es la siguiente: Tengo una accion en el controlador, por el cual al ingresar en el link, ordeno al sistema a que imprima un archivo de texto que se guarda en el escritorio, pero al mandar a imprimir la impresion me sale en blanco El codigo que implemente esta en C#  y lo copie de la pagina siguiente https://msdn.microsoft.com/es-es/library/aa287530%28v=vs.71%29.aspx , si alguien pudiera ayudarme se lo agradeceria. Les muestro el codigo:

    //Controlador

            System.IO.StreamReader fileToPrint;
            System.Drawing.Font printFont;

            private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
            {
                
                float yPos = 0f;
                int count = 0;
                float leftMargin = e.MarginBounds.Left;
                float topMargin = e.MarginBounds.Top;
                string line = null;
                float linesPerPage = e.MarginBounds.Height / printFont.GetHeight(e.Graphics);
                while (count < linesPerPage)
                {
                    line = fileToPrint.ReadLine();
                    if (line == null)
                    {
                        break;
                    }
                    yPos = topMargin + count * printFont.GetHeight(e.Graphics);
                    e.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, new StringFormat());
                    count++;
                }
                if (line != null)
                {
                    e.HasMorePages = true;
                }
            }

            public ActionResult Button()
            {
                string printPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                fileToPrint = new System.IO.StreamReader(printPath + @"\Prueba.txt");
                printFont = new System.Drawing.Font("Arial", 10);
                printDocument1.Print();
                fileToPrint.Close();
                return View("Sistema");
            }

    Mi archivo de texto por el momento es(tengo este texto simple porque es de prueba), este es el contenido:

    Informe N-

    Como ven super simple y de una sola linea. Si alguien pudiera echarme una mano se lo agradeceria


    Juan Lobos

    • Cambiado Karen Malagón lunes, 20 de abril de 2015 19:15 ASP.NET MVC issue
    viernes, 17 de abril de 2015 0:33

Todas las respuestas

  • hola

    pero entiendo los conceptos de un desarrollo web, no? digo sabes que ese codigo que has escrito ejecuta del lado del servidor mientras que el archivo esta en la pc del cliente, accedo directo no vas a tener cuando publiques el sitio en el IIS o en un hosting

    la impresora va tener que estar conectada la servidor, porque es desde alli donde imprimes, no desde el cliente.

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 17 de abril de 2015 1:28
  • Hola Leandro:

    Como tu dices, es codigo de servidor, ya que lo que hace el sistema es que lea un archivo.txt que se encuentra en el mismo servidor y luego por la impresora predeterminada que esta instalada en el servidor, manda a imprimir, hasta el momento hace todo, o sea resulta, pero el problema es que las impresiones salen en blanco y no se a que se debe eso, siendo que el archivo txt tiene contenido


    Juan Lobos

    viernes, 17 de abril de 2015 12:39