2013-10-24 14 views
6

Ora stiamo usando OpenXML per leggere i dati dal database e generare documenti. Ma il requisito finale è di essere un pdf. Quindi voglio sapere come convertire .docx in pdf in C#. Qualcuno potrebbe essere d'aiuto? O fornire alcune informazioni.Come convertire .docx in .pdf in C#

+0

che uso Aspose.Words per fare questo. È una libreria .NET pura e ha una compatibilità di rendering abbastanza decente. Office Automation potrebbe funzionare ma è lento ma non è utilizzabile in un ambiente completamente automatizzato in quanto può apparire finestre casuali per chiedere input. –

+0

La mia soluzione preferita è generare un file HTML e lasciare che l'utente stampi in qualsiasi formato. Vantaggi a) nessun software speciale necessario e b) il codice di stampa è fatto per voi. Ovviamente, possiamo aiutare i requisiti che ci vengono dati, ma il suggerimento HTML spesso va benissimo con la gestione. – Gusdor

+0

Se il requisito finale è pdf, allora perché creare docx? Non puoi leggere direttamente i valori del database per creare pdf? – Coder

risposta

6

È possibile controllare le soluzioni a questo link: http://www.codeproject.com/Questions/346784/How-to-convert-word-document-to-pdf-in-Csharp

Mi consiglia di utilizzare questo fra le soluzioni come il primo:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using Microsoft.Office.Interop.Word; 

public partial class Default2 : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     Microsoft.Office.Interop.Word.Application appWord = new Microsoft.Office.Interop.Word.Application(); 
     wordDocument = appWord.Documents.Open(@"D:\desktop\xxxxxx.docx"); 
     wordDocument.ExportAsFixedFormat(@"D:\desktop\DocTo.pdf", WdExportFormat.wdExportFormatPDF); 
    } 

    public Microsoft.Office.Interop.Word.Document wordDocument { get; set; } 
} 
+0

Funziona sicuramente bene, ma richiede l'installazione di Word. – AFract

+1

Anche se questo funziona, Microsoft non consiglia di farlo sedere sui server. Inoltre, come ha detto AFract, è necessario installare MS Office sul computer che richiede licenze aggiuntive. – SpaceApple

-3

Si potrebbe dare un'occhiata a come le biblioteche iTextSharp

+6

iTextSharp non può convertire direttamente docx in pdf, crea pdf da zero o copia le pagine pdf esistenti. – Coder