2013-10-24 8 views
6

Jetzt verwenden wir OpenXML, um Daten aus der Datenbank zu lesen und doc zu generieren. Aber die letzte Voraussetzung ist, ein pdf zu sein. Ich will also wissen, wie man .docx in C# zu pdf konvertiert. Könnte jemand um Hilfe bitten? Oder geben Sie einige Informationen an.Konvertieren von .docx zu .pdf in C#

+0

I Aspose.Words verwenden um dies zu tun. Es ist eine reine .NET-Bibliothek und hat ziemlich gute Rendering-Kompatibilität. Office-Automatisierung funktioniert möglicherweise, ist jedoch langsam, kann jedoch in einer vollständig automatisierten Umgebung nicht verwendet werden, da sie zufällige Fenster öffnen kann, in denen nach Eingaben gefragt wird. –

+0

Meine Lieblingslösung besteht darin, eine HTML-Datei zu generieren und den Benutzer in das gewünschte Format drucken zu lassen. Vorteile a) keine spezielle Software benötigt und b) der Druckcode ist für Sie gemacht. Natürlich können wir den gestellten Anforderungen helfen, aber der HTML-Vorschlag kommt oft gut mit dem Management zurecht. – Gusdor

+0

Wenn die Endgültige Anforderung pdf ist, warum sollte docx dann erstellt werden? Können Sie nicht direkt Datenbankwerte zum Erstellen von PDF-Dateien lesen? – Coder

Antwort

6

nehmen Sie könnten Lösungen in diesem Link können: http://www.codeproject.com/Questions/346784/How-to-convert-word-document-to-pdf-in-Csharp

ich dies unter Lösungen als erste empfehlen:

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

Funktioniert sicherlich gut, erfordert aber, Word installiert zu haben. – AFract

+1

Obwohl dies funktioniert, empfiehlt Microsoft nicht, dies auf den Servern zu haben. Auch wie AFRACT sagte, erfordert es MS-Office auf dem Computer installiert werden, die zusätzliche Lizenz benötigt. – SpaceApple

-3

Sie einen Blick auf Bibliotheken wie iTextSharp

+6

iTextSharp kann docx nicht direkt in PDF konvertieren, es erstellt PDF von Grund auf oder kopiert vorhandene PDF-Seiten. – Coder