2013-10-24 42 views
6

今、OpenXMLを使用してデータベースからデータを読み取り、docを生成しています。しかし、最終的な要件はpdfです。ですから、C#では.docxをpdfに変換する方法を知りたいです。誰でも助けてくれましたか?または、いくつかの情報を提供する。C言語で.docxを.pdfに変換する方法

+0

私はAspose.Wordsではを使用これをする。これは純粋な.NETライブラリであり、レンダリングの互換性はかなり良いです。 Officeオートメーションは機能するかもしれませんが、遅いですが、完全に自動化された環境では使用できません。入力を要求するランダムなウィンドウが表示される可能性があります。 –

+0

私のお気に入りの解決策は、HTMLファイルを生成して、ユーザーが好きな書式で印刷できるようにすることです。利点a)特別なソフトウェアは必要ありません。b)印刷コードがあなたのために行われます。明らかに、われわれは私たちに与えられた要件を助けることができるが、HTMLの提案はしばしば経営者にとってうまくいく。 – Gusdor

+0

最終的な要件がpdfの場合、なぜdocxを作成するのですか? pdfを作成するためのデータベース値を直接読み取ることはできませんか? – Coder

答えて

6

のようなライブラリを見てみることができます。このリンクで解決策を確認することができます。http://www.codeproject.com/Questions/346784/How-to-convert-word-document-to-pdf-in-Csharp

私が最初のように解決策の中で、これを使用することをお勧めします:

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

確かにうまくいきますが、Wordをインストールする必要があります。 – AFract

+1

これは機能しますが、サーバー上にこの座席を置くことはお勧めしません。また、AFractが言ったように、追加のライセンスが必要なコンピュータにMSオフィスをインストールする必要があります。 – SpaceApple

-3

あなたはiTextSharp

+6

iTextSharpはdocxをpdfに直接変換することはできません。最初からpdfを作成するか、既存のpdfページをコピーします。 – Coder

関連する問題