C#/VB.NET: Stampa documenti Word

2023-07-31 07:15:20

La stampa di documenti Word è un'abilità fondamentale che ti consente di convertire il tuo testo digitale in copie fisiche. Sia che tu abbia bisogno di creare copie cartacee di rapporti, curriculum, saggi o qualsiasi altro materiale scritto, capire come stampare documenti Word in modo efficiente può farti risparmiare tempo e garantire risultati dall'aspetto professionale. In questo articolo imparerai come stampare un documento Word con le impostazioni di stampa specificate in C# e VB.NET utilizzando Spire.Doc for .NET.

Installa Spire.Doc for .NET

Per cominciare, è necessario aggiungere i file DLL inclusi nel pacchetto Spire.Doc for .NET come riferimenti nel progetto .NET. I file DLL possono essere scaricati da questo link o installato tramite NuGet.

PM> Install-Package Spire.Doc

Stampa documenti Word in C#, VB.NET

Con l'aiuto della classe PrintDocument, i programmatori possono inviare un documento Word a una stampante specifica e specificare le impostazioni di stampa come l'intervallo di pagine, il numero di copie, la stampa fronte/retro e il formato della carta. I passaggi dettagliati per stampare un documento Word utilizzando Spire.Doc for NET sono i seguenti.

  • Creare un oggetto documento.
  • Carica un documento Word usando il metodo Document.LoadFromFile().
  • Ottenere l'oggetto PrintDocument tramite la proprietà Document.PrintDocument.
  • Specificare il nome della stampante tramite la proprietà PrintDocument.PrinterSettings.PrinterName.
  • Specificare l'intervallo di pagine da stampare tramite la proprietà PrintDocument.PrinterSettings.PrinterName.
  • Impostare il numero di copie da stampare tramite la proprietà PrintDocument.PrinterSettings.Copies.
  • Stampare il documento utilizzando il metodo 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();
            }
        }
    }

Stampa silenziosamente documenti Word in C#, VB.NET

La stampa silenziosa è un metodo di stampa che non mostra alcun processo o stato di stampa. Per abilitare la stampa silenziosa, impostare il controller di stampa su StandardPrintController. Di seguito sono riportati i passaggi dettagliati.

  • Creare un oggetto documento.
  • Carica un documento Word usando il metodo Document.LoadFromFile().
  • Ottenere l'oggetto PrintDocument tramite la proprietà Document.PrintDocument.
  • Specificare il nome della stampante tramite la proprietà PrintDocument.PrinterSettings.PrinterName.
  • Impostare il controller di stampa su StandardPrintController tramite la proprietà PrintDocument.PrintController.
  • Stampare il documento utilizzando il metodo 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();
            }
        }
    }

Stampa da Word a PDF in C#, VB.NET

Oltre a stampare documenti Word con una stampante fisica, puoi anche stampare documenti con stampanti virtuali, come Microsoft Print to PDF e Microsoft XPS Document Writer. Di seguito sono riportati i passaggi per stampare da Word a PDF utilizzando Spire.Doc for .NET.

  • Creare un oggetto documento.
  • Carica un documento Word usando il metodo Document.LoadFromFile().
  • Ottenere l'oggetto PrintDocument tramite la proprietà Document.PrintDocument.
  • Specificare il nome della stampante come "Microsoft Print to PDF" tramite la proprietà PrintDocument.PrinterSettings.PrinterName.
  • Specificare il percorso e il nome del file di output tramite la proprietà PrintDocument.PrinterSettings.PrintFileName.
  • Stampare il documento utilizzando il metodo 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();
            }
        }
    }

Stampa Word su carta di dimensioni personalizzate in C#, VB.NET

L'impostazione del formato carta è necessaria quando è necessario garantire che l'output stampato soddisfi requisiti di formato specifici o si adatti a uno scopo particolare. Di seguito sono riportati i passaggi per stampare Word su un cercapersone di dimensioni personalizzate utilizzando Spire.Doc for .NET.

  • Creare un oggetto documento.
  • Carica un documento Word usando il metodo Document.LoadFromFile().
  • Ottenere l'oggetto PrintDocument tramite la proprietà Document.PrintDocument.
  • Specificare il nome della stampante tramite la proprietà PrintDocument.PrinterSettings.PrinterName.
  • Specificare il formato carta tramite la proprietà PrintDocument.DefaultPageSettings.PaperSize.
  • Stampare il documento utilizzando il metodo 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();
            }
        }
    }

Stampa più pagine su un foglio in C#, VB.NET

La stampa di più pagine su un singolo foglio di carta può aiutare a risparmiare carta e creare manuali o opuscoli compatti. I passaggi per stampare più pagine su un foglio sono i seguenti.

  • Creare un oggetto documento.
  • Carica un documento Word usando il metodo Document.LoadFromFile().
  • Ottenere l'oggetto PrintDocument tramite la proprietà Document.PrintDocument.
  • Specificare il nome della stampante tramite la proprietà PrintDocument.PrinterSettings.PrinterName.
  • Specificare il numero di pagine da stampare su una pagina e stampare il documento utilizzando il metodo Doucment.PrintMultipageToOneSheet().

Nota: questa funzionalità NON è applicabile a .NET Framework 5.0 o versioni successive.

  • 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);
            }
        }
    }

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni delle funzioni, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche