C#/VB.NET: Imprimir documentos de Word

2023-07-31 07:17:36

Imprimir documentos de Word es una habilidad fundamental que le permite convertir su texto digital en copias físicas. Ya sea que necesite crear copias impresas de informes, currículos, ensayos o cualquier otro material escrito, comprender cómo imprimir documentos de Word de manera eficiente puede ahorrar tiempo y garantizar resultados de aspecto profesional. En este artículo, aprenderá a imprimir un documento de Word con la configuración de impresión especificada en C# y VB.NET utilizando Spire.Doc for .NET.

Instalar Spire.Doc for .NET

Para empezar, debe agregar los archivos DLL incluidos en el paquete Spire.Doc for .NET como referencias en su proyecto .NET. Los archivos DLL se pueden descargar desde este enlace o instalar a través de NuGet.

PM> Install-Package Spire.Doc

Imprimir documentos de Word en C#, VB.NET

Con la ayuda de la clase PrintDocument, los programadores pueden enviar un documento de Word a una impresora específica y especificar la configuración de impresión, como el rango de páginas, el número de copias, la impresión dúplex y el tamaño del papel. Los pasos detallados para imprimir un documento de Word usando Spire.Doc for NET son los siguientes.

  • Cree un objeto Documento.
  • Cargue un documento de Word utilizando el método Document.LoadFromFile().
  • Obtenga el objeto PrintDocument a través de la propiedad Document.PrintDocument.
  • Especifique el nombre de la impresora a través de la propiedad PrintDocument.PrinterSettings.PrinterName.
  • Especifique el rango de páginas para imprimir a través de la propiedad PrintDocument.PrinterSettings.PrinterName.
  • Establezca el número de copias para imprimir a través de la propiedad PrintDocument.PrinterSettings.Copies.
  • Imprima el documento utilizando el método PrintDocument.Print().
  • C#
  • VB.NET
using Spire.Doc;
    using System.Drawing.Printing;
    
    namespace PrintWordDocument
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\Users\Administrator\Desktop\input.docx");
    
                //Get the PrintDocument object
                PrintDocument printDoc = doc.PrintDocument;
    
                //Specify the printer name
                printDoc.PrinterSettings.PrinterName = "NPI7FE2DF (HP Color LaserJet MFP M281fdw)";
    
                //Specify the range of pages to print
                printDoc.PrinterSettings.FromPage = 1;
                printDoc.PrinterSettings.ToPage = 10;
    
                //Set the number of copies to print
                printDoc.PrinterSettings.Copies = 1;
    
                //Print the document
                printDoc.Print();
            }
        }
    }

Imprima silenciosamente documentos de Word en C#, VB.NET

La impresión silenciosa es un método de impresión que no muestra ningún proceso o estado de impresión. Para habilitar la impresión silenciosa, establezca el controlador de impresión en StandardPrintController. Los siguientes son los pasos detallados.

  • Cree un objeto Documento.
  • Cargue un documento de Word utilizando el método Document.LoadFromFile().
  • Obtenga el objeto PrintDocument a través de la propiedad Document.PrintDocument.
  • Especifique el nombre de la impresora a través de la propiedad PrintDocument.PrinterSettings.PrinterName.
  • Establezca el controlador de impresión en StandardPrintController a través de la propiedad PrintDocument.PrintController.
  • Imprima el documento utilizando el método PrintDocument.Print().
  • C#
  • VB.NET
using Spire.Doc;
    using System.Drawing.Printing;
    
    namespace SilentlyPrintWord
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\Users\Administrator\Desktop\input.docx");
    
                //Get the PrintDocument object
                PrintDocument printDoc = doc.PrintDocument;
    
                //Specify the printer name
                printDoc.PrinterSettings.PrinterName = "NPI7FE2DF (HP Color LaserJet MFP M281fdw)";
    
                //Specify the print controller to StandardPrintController
                printDoc.PrintController = new StandardPrintController();
    
                //Print the document
                printDoc.Print();
            }
        }
    }

Imprimir Word a PDF en C#, VB.NET

Además de imprimir documentos de Word con una impresora física, también puede imprimir documentos con impresoras virtuales, como Microsoft Print to PDF y Microsoft XPS Document Writer. Los siguientes son los pasos para imprimir Word a PDF utilizando Spire.Doc for .NET.

  • Cree un objeto Documento.
  • Cargue un documento de Word utilizando el método Document.LoadFromFile().
  • Obtenga el objeto PrintDocument a través de la propiedad Document.PrintDocument.
  • Especifique el nombre de la impresora como "Microsoft Print to PDF" a través de la propiedad PrintDocument.PrinterSettings.PrinterName.
  • Especifique la ruta y el nombre del archivo de salida a través de la propiedad PrintDocument.PrinterSettings.PrintFileName.
  • Imprima el documento utilizando el método PrintDocument.Print().
  • C#
  • VB.NET
using Spire.Doc;
    using System.Drawing.Printing;
    
    namespace PrintWordToPdf
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\Users\Administrator\Desktop\input.docx");
    
                //Get the PrintDocument object
                PrintDocument printDoc = doc.PrintDocument;
    
                //Print the document to file
                printDoc.PrinterSettings.PrintToFile = true;
    
                //Specify the printer name
                printDoc.PrinterSettings.PrinterName = "Microsoft Print to PDF";
    
                //Specify the output file path and name
                printDoc.PrinterSettings.PrintFileName = @"C:\Users\Administrator\Desktop\ToPDF.pdf";
    
                //Print the document
                printDoc.Print();
            }
        }
    }

Imprima Word en un papel de tamaño personalizado en C#, VB.NET

La configuración del tamaño del papel es necesaria cuando necesita asegurarse de que la salida impresa cumpla con los requisitos de tamaño específicos o se adapte a un propósito particular. Los siguientes son los pasos para imprimir Word en un buscapersonas de tamaño personalizado utilizando Spire.Doc for .NET.

  • Cree un objeto Documento.
  • Cargue un documento de Word utilizando el método Document.LoadFromFile().
  • Obtenga el objeto PrintDocument a través de la propiedad Document.PrintDocument.
  • Especifique el nombre de la impresora a través de la propiedad PrintDocument.PrinterSettings.PrinterName.
  • Especifique el tamaño del papel a través de la propiedad PrintDocument.DefaultPageSettings.PaperSize.
  • Imprima el documento utilizando el método PrintDocument.Print().
  • C#
  • VB.NET
using Spire.Doc;
    using System.Drawing.Printing;
    
    namespace PrintOnCustomSizedPaper
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\Users\Administrator\Desktop\input.docx");
    
                //Get the PrintDocument object
                PrintDocument printDoc = doc.PrintDocument;
    
                //Specify the printer name
                printDoc.PrinterSettings.PrinterName = "NPI7FE2DF(HP Color LaserJet MFP M281fdw)";
    
                //Specify the paper size
                printDoc.DefaultPageSettings.PaperSize = new PaperSize("custom", 500, 800);
    
                //Print the document
                printDoc.Print();
            }
        }
    }

Imprima varias páginas en una hoja en C#, VB.NET

La impresión de varias páginas en una sola hoja de papel puede ayudar a ahorrar papel y crear manuales o cuadernillos compactos. Los pasos para imprimir varias páginas en una hoja son los siguientes.

  • Cree un objeto Documento.
  • Cargue un documento de Word utilizando el método Document.LoadFromFile().
  • Obtenga el objeto PrintDocument a través de la propiedad Document.PrintDocument.
  • Especifique el nombre de la impresora a través de la propiedad PrintDocument.PrinterSettings.PrinterName.
  • Especifique el número de páginas que se imprimirán en una página e imprima el documento utilizando el método Doucment.PrintMultipageToOneSheet().

Nota: esta función NO se aplica a .NET Framework 5.0 o superior.

  • C#
  • VB.NET
using Spire.Doc;
    using Spire.Doc.Printing;
    using System.Drawing.Printing;
    
    namespace PrintMultiplePagesOnOneSheet
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Instantiate an instance of the Document class
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\\Users\\Administrator\\Desktop\\input.docx");
    
                //Get the PrintDocument object
                PrintDocument printDoc = doc.PrintDocument;
    
                //Enable single-sided printing
                printDoc.PrinterSettings.Duplex = Duplex.Simplex;
    
                //Specify the number of pages to be printed on one page and print the document
                doc.PrintMultipageToOneSheet(PagesPreSheet.TwoPages, false);
            }
        }
    }

Solicitar una Licencia Temporal

Si desea eliminar el mensaje de evaluación de los documentos generados o deshacerse de las limitaciones de la función, por favor solicitar una licencia de prueba de 30 días para ti.

Ver también