在 ASP.NET 中將 MS Word 文件轉換為 PDF
已經提出了類似的問題,但與我的完全不同,所以就這樣吧。
我們在 ASP.NET Web 伺服器上有一組 Microsoft Word 文件,其中包含合併欄位,其值是作為使用者表單送出的結果而填寫的。欄位合併後,伺服器必須將文件轉換為 PDF 並將其流式傳輸到瀏覽器。我們的第一個想法是使用 Visual Studio Tools for Office API;但是,我們遇到了來自 Microsoft 的警告:
Microsoft 目前不推薦也不支持任何無人值守、非互動式客戶端應用程序或組件(包括 ASP、ASP.NET、DCOM 和 NT 服務)的 Microsoft Office 應用程序自動化,因為 Office 可能表現出不穩定的行為和/或在此環境中執行 Office 時出現死鎖。
看起來可以使用Open XML SDK完成欄位操作,但是在不打開 Word 的情況下將 Word 2007 文件轉換為 PDF 的最佳方法是什麼?最佳解決方案應該是低成本、可擴展、記憶體佔用少、易於部署並具有 .NET API。
它不完全是開源的,但 Aspose 有幾個產品可以做到這一點,
Aspose.Pdf.Kit 是一個非圖形 PDF® 文件操作組件,它使 .NET 和 Java 開發人員能夠管理現有的 PDF 文件以及管理嵌入在 PDF 文件中的表單域。Aspose.Pdf 非常適合創建新的 PDF 文件;但是,開發人員通常需要編輯已經存在的 PDF 文件。Aspose.Pdf.Kit 允許他們這樣做。Aspose.Pdf.Kit 允許開發人員創建功能強大的應用程序,用於將數據直接合併到 PDF 文件以及更新和管理 PDF 文件。Aspose.Pdf.Kit 是一款出色的產品,可以與我們的其他 PDF 產品配合使用。
Aspose.Pdf 是一個非圖形 PDF® 文件報告組件,它使 .NET 或 Java 應用程序無需使用 Adobe Acrobat® 從頭開始創建 PDF 文件。Aspose.Pdf 的價格非常實惠,並提供了豐富的強大功能,包括:壓縮、表格、圖形、圖像、超連結、安全性和自定義字型。Aspose.Pdf 支持通過 API、XML 模板和 XSL-FO 文件創建 PDF 文件。Aspose.Pdf 非常易於使用,並提供了 14 個用 C# 和 Visual Basic 編寫的全功能展示。
查看API和展示。您可以免費下載 DLL 進行試用。我以前都用過,效果很好。
還有iTextSharp,它是 iText 的 C# 埠,一個 Java PDF 轉換器。我聽說有些人嘗試它的結果好壞參半。
問題是“MS Word Documents to PDF in ASP.NET”所以我很困惑為什麼上面推薦 Aspose.Pdf 和 Aspose.Pdf.Kit。您需要使用Aspose.Words,因為它是支持 Microsoft Word 文件到 PDF 轉換的組件。