首页 文章

开源解决方案,无需使用Office自动化即可将Office文档转换为PDF

提问于
浏览
4

我是否可以在ASP.Net应用程序中使用任何开源sdk将任何office文档转换为pdf . (我特别需要将DOCX转换为PDF,但希望能够转换Excel和powerpoint文件) .

我知道我可以使用下面显示的代码来使用Office自动化,但我不想使用Office自动化,因为它不推荐用于非交互式应用程序KB257757

我发现Aspose有一个可以用于此(付费解决方案)的组件,但我想知道是否有任何开源解决方案 .

//reference: Microsoft.Office.Interop.Word.dll
//using Word = Microsoft.Office.Interop.Word;
public static void Convert(string documentFilePath, string outputPath)
    {
        var ap = new Word.Application {Visible = false};

        var document = ap.Documents.Open(documentFilePath);

        document.ExportAsFixedFormat(outputPath,
                       WdExportFormat.wdExportFormatPDF,
                       OptimizeFor: WdExportOptimizeFor.wdExportOptimizeForPrint,
                       BitmapMissingFonts: true, DocStructureTags: false);

        document.Close();
    }

注意:我看到有人建议使用OpenXML . 但是OpenXML没有为您提供将Office文档转换为PDF文档的任何方法 .

2 回答

  • 0

    虽然它是一个单独的库,但您可以将NPoiiTextSharp库组合在一起来完成您的任务 . 两者都是他们流行且强大的Java同行的.Net端口 .

  • 0

    看看JODConverter . 这是免费的开源软件,可以根据您的文档合理地完成Doc-> PDF,DocX . 您可能希望查看ODFCoverter以获得一个很棒的DocX-> ODT路径,然后JODConverter可以执行ODT-> PDF部分 .

相关问题