2012-01-11 92 views
1

我需要將docx轉換爲服務器中的pdf文件。我已經看到PDFCreator會根據下面的鏈接(http://sourceforge.net/projects/pdfcreator/)。在c中使用openxml和pdfcreator將docx轉換爲pdf#

我需要下面列出一些這方面的建議:

  1. 我可以用PDF創建在服務器端。
  2. 沒有創建word對象,我可以通過使用pdfcreator API將docx轉換爲pdf與openxml。

請儘快給我回復。

+0

您需要將docx作爲實際文檔呈現。如果你不能使用Word,你可以嘗試OpenOffice?這不是自動化的輝煌,但它可以工作。或者可能會購買許多第三方組件來執行此操作。看到[這個老問題](http://stackoverflow.com/questions/3651880/save-open-xml-as-pdf) – Rup 2012-01-11 10:25:23

+0

我只需要只使用ms字。第三方工具在那裏,但成本。我們在我們的應用程序中使用了wordDocument.ExportAsFixedFormat(...),但需要Word對象(這不是Microsoft推薦的)。我看到了PDFCreator,是不是很好? – user1135690 2012-01-11 10:33:29

回答

1

我認爲你想在這裏做兩件不同的事情。 OpenXML與DOCX文件一起使用 - 在這種情況下Word不會以任何方式使用。 PDFCreator似乎假裝是一臺打印機,當Word「打印」它時,它會生成一個PDF文件。

因爲你說你想在服務器上將DOCX轉換爲PDF,我假設你不想使用Word。因此,如果您想要所有免費軟件,最好的辦法是使用OpenXML來讀取文件,然後致電iText來創建PDF。您的代碼基本上將從讀取OpenXML內容轉換爲iText。

請記住,這有很多複雜性。它不僅僅是從OpenXML中讀取一段文字,而是將它寫入iText。您必須將iText的所有段落和運行屬性以及任何應用的樣式,列表等傳遞給iText。單獨使用how to indent the first line of a paragraph的規則相當複雜。

如果您對商業軟件開放,有許多產品可以很容易地做到這一點。如果是這樣,請將其添加到您的問題中,我將列出這些(包括我的公司)。

+0

嗨 - [下面的答案](http://stackoverflow.com/a/9296000)是試圖回覆你; [用戶rosirosss](http://stackoverflow.com/users/1069326/rosirosss)希望聽到您的商業產品清單。謝謝! – Rup 2012-02-15 15:29:26

+0

@Rup - 我最喜歡的是www.windward.net(免責聲明 - 我是那裏的首席技術官)。其他的是DevExpress(有限但不貴),Crystal Reports(昂貴而複雜)和Sql Server Reporting Services(免費但是Sql Server的一部分,價格昂貴)。 – 2012-02-22 20:52:18

3

您可以使用docx4j.NET將docx轉換爲XSL FO,然後從那裏轉換爲PDF。或者,實際上,也適用於Apache FOP支持的其他任何輸出格式。

看到這個sample

docx4j.NET是docx4j的一個IKVM'd DLL,是ASL v2許可的開源項目。

+0

這很好,但適時複雜。需要將近10分鐘才能轉換。 – Liladhar 2015-07-16 09:04:37

+0

您的docx有多少頁?你在Visual Studio中調試嗎?這很慢.. – JasonPlutext 2015-07-16 10:17:18