C# Word in PDF - DOC in PDF

La conversione da Word a PDF è una pratica comune in questi giorni ed è preferibile prima di condividere i documenti. MS Word fornisce una funzionalità incorporata per salvare documenti Word come PDF, tuttavia, potrebbe esserci un caso in cui si desidera convertire un documento Word in PDF a livello di codice, ad esempio nelle applicazioni Web, o potrebbe essere necessario eseguire conversioni batch da Word a PDF senza installare MS Office. Quindi, in questo articolo, imparerai come convertire Word in PDF usando C# in .NET o .NET Core framework.

Scenari di conversione da Word a PDF C#

In questo articolo imparerai come:

Convertitore da C# Word a PDF

Aspose.Words for .NET è una potente API per la creazione e la manipolazione dei formati di documenti Word più diffusi. L’API fornisce anche un modo semplice per convertire documenti Word in PDF con un alto grado di fedeltà. Pertanto, per la conversione da Word a PDF in C#, aggiungeremo prima un riferimento a Aspose.Words per .NET DLL nel progetto o lo installeremo utilizzando uno dei metodi seguenti.

Utilizzo di Gestione pacchetti NuGet

  • Crea/apri il progetto in Visual Studio.
  • Vai a Gestione pacchetti NuGet e cerca Aspose.Words.
  • Installa Aspose.Words per .NET.
Converti Word in PDF C# .NET

Utilizzo della Console di gestione dei pacchetti

PM> Install-Package Aspose.Words

Conversione da Word semplice a PDF C#

Per convertire un documento Word in PDF, dovrai invocare il metodo Document.Save() e specificare il nome del file di output con estensione “.pdf”. L’esempio di codice seguente mostra come convertire Word in PDF in C#.

// Carica il documento dal disco.
Document doc = new Document("word.doc");
// Salva come PDF
doc.Save("output.pdf");

Documento Word

C# Converti Word in PDF

PDF convertito

Da Word a PDF a livello di codice in C#

Converti le pagine selezionate di Word in PDF in C#

Puoi anche personalizzare la conversione da Word a PDF specificando l’intervallo di pagine che desideri ottenere nel documento PDF risultante. Puoi convertire le prime N pagine o definire un intervallo di pagine specificando l’indice della pagina iniziale. L’esempio di codice seguente mostra come convertire 3 pagine a partire dalla seconda pagina del documento Word in PDF in C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Converti 3 pagine a partire dall'indice 1 dove 0 è l'indice della prima pagina 
options.PageIndex = 1;
options.PageCount = 3;
// Salva Word come PDF
doc.Save("output.pdf", options);

Converti Word in PDF con un particolare standard PDF in C#

I documenti PDF possono essere conformi a diversi standard PDF come PDF 1.7, PDF 1.5, PDF/A-1a, ecc. In base a ciò, Aspose.Words per .NET consente di specificare il livello di conformità PDF nella conversione da Word a PDF. È possibile specificare il livello di conformità utilizzando PdfCompliance enum. L’esempio di codice seguente mostra come impostare il livello di conformità in Word in conversione PDF in C#.

Document doc = new Document("word.docx");
// Imposta la conformità PDFSaveOption su PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Converti Word in PDF
doc.Save("output.pdf", options);

Converti Word in PDF con compressione di testo/immagine in C#

Il formato PDF supporta la compressione di testo e immagini per ridurre le dimensioni del documento. Poiché un documento PDF potrebbe essere di dimensioni ingombranti, la compressione del suo contenuto semplifica il caricamento, la condivisione, la stampa, ecc. La compressione di testo e immagini può essere applicata anche nella conversione da Word a PDF utilizzando Aspose.Words per .NET.

Opzioni di compressione del testo

Le seguenti opzioni di compressione del testo sono disponibili in PdfTextCompression enum.

  • None: salvataggio del PDF senza compressione del testo.
  • Flate: salvataggio di PDF con compressione flate (ZIP).

Compressione dell’immagine

Le seguenti opzioni di compressione dell’immagine sono disponibili in PdfImageCompression enum.

  • Auto: l’API seleziona automaticamente la compressione più appropriata per ogni immagine nel documento.
  • Jpeg: compressione in immagini JPEG (non supporta la trasparenza).

L’esempio di codice seguente mostra come convertire Word in PDF con la compressione di testo e immagini in C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Compressione di testo e immagini
options.TextCompression = PdfTextCompression.Flate;
options.ImageCompression = PdfImageCompression.Auto;
// Salva Word come PDF
doc.Save("output.pdf", options);

Conversione da C# a PDF con firma digitale

Puoi anche applicare una firma digitale al PDF di output mentre esegui la conversione da Word a PDF. La classe CertificateHolder consente di specificare il certificato digitale e la password. La classe PdfDigitalSignatureDetails consente di fornire i dettagli della firma digitale come titolare del certificato, motivo, posizione e data/ora. L’esempio di codice seguente mostra come convertire Word in PDF con una firma digitale in C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Dettagli firme digitali
CertificateHolder certHolder = CertificateHolder.Create("signature.pfx", "12345");
options.DigitalSignatureDetails = new PdfDigitalSignatureDetails(certHolder, "reason", "location", DateTime.Now);
// Salva Word come PDF
doc.Save("output.pdf", options);

Converti Word in PDF con la qualità JPEG desiderata in C#

È inoltre possibile specificare la qualità JPEG desiderata che si desidera ottenere nel documento PDF convertito utilizzando la proprietà PdfSaveOptions.JpegQuality. Il valore di JpegQuality può variare da 0 a 100 dove 0 indica la qualità peggiore ma la compressione massima e 100 indica la qualità migliore ma la compressione minima.

L’esempio di codice seguente mostra come impostare la qualità JPEG durante la conversione di Word in PDF in C#.

Document doc = new Document("word.docx");
// Imposta la qualità JPEG
PdfSaveOptions options = new PdfSaveOptions();
options.JpegQuality = 100;
// Converti Word in PDF
doc.Save("output.pdf", options);

Conclusione

In questo articolo, hai imparato come convertire documenti Word in PDF in C# con varie opzioni. Visita la documentazione di Aspose.Words per .NET per vedere il set completo di funzionalità offerte dall’API. Per qualsiasi domanda o domanda, contattaci tramite il nostro forum.

articoli Correlati