嗨stackoverflow社区,在out项目中,我们正在寻找第三方.dll,它能够将不同的文件格式转换为PDF,如下所示 .
.doc,.docx为PDF
.xls,.xlsx为PDF
.ppt,.pptx为PDF
HTML到PDF
图像(.jpg,.jpeg,.tiff,.png等)到PDF
.MPP到PDF
合并PDF文件 .
请推荐一些产品?提及开源/免费/封闭源dll . 谢谢 .
还可以查看iText:
http://itextpdf.com/index.php
由于它可以与XML一起使用,因此您应该能够使用Office 2007来实现它
http://www.4guysfromrolla.com/articles/030211-1.aspx
我认为这可以满足您的要求 . 我确实使用该工具将Word转换为PDF,但有时候使用其他程序时,转换后发现我的文件无序真的很烦人,我的经验就是这个工具,convert PDF to Word文件非常好 .
4 HTML to PDF wkhtmltopdf - http://code.google.com/p/wkhtmltopdf/
我有一个解决方案
试试这个..
您必须在C#中编写自己的PDF库 .
我建议使用免费的PDFsharp
http://www.pdfsharp.net/
尝试使用其他格式
http://www.codeproject.com/KB/files/generatepdf.aspx
只要安装了PDF打印机(PDFCreator是免费的),您就应该能够以编程方式打印所有这些文档 . PDFCreator可以选择以特定模式自动保存文档(无需在每个打印操作上输入文件名) .
如果沿着这条路走下去,PrintDocument类应该会有所帮助 .
这个问题是almost identical to this one . 所以我在下面重复了我的回复 .
无耻的插件,我在这个产品上工作,但尝试PDF转换服务 . 可扩展,可靠,针对服务器使用进行了优化,始终添加新格式(请参阅新的DXF和DWG支持),支持水印,PDF安全等 . 具有基于Web服务的界面,因此适用于C#,Java和许多其他平台 . 代码示例在这里 .
我认为Aspose库能够转换所有这些格式 . 不是很便宜,但我经历的质量很好 .
虽然以下建议不是DLL,但也可以执行命令行实用程序 .
对于合并pdf文件,您可以使用pdf toolkit . 它是免费的(GPLv2) .
pdftk *.pdf cat output combined.pdf
另一种来自pdfjam的 pdfjoin 命令,它将多个PDF文件的页面组合成一个文件 . 然而,pdfjam依赖于工作的乳胶环境(并且在我的系统上从texlive包安装),因此可能更难以开始工作 . 它被许可为公共域(一堆其他许可证) .
pdfjoin
7 回答
还可以查看iText:
http://itextpdf.com/index.php
由于它可以与XML一起使用,因此您应该能够使用Office 2007来实现它
http://www.4guysfromrolla.com/articles/030211-1.aspx
我认为这可以满足您的要求 . 我确实使用该工具将Word转换为PDF,但有时候使用其他程序时,转换后发现我的文件无序真的很烦人,我的经验就是这个工具,convert PDF to Word文件非常好 .
4 HTML to PDF wkhtmltopdf - http://code.google.com/p/wkhtmltopdf/
我有一个解决方案
试试这个..
您必须在C#中编写自己的PDF库 .
我建议使用免费的PDFsharp
http://www.pdfsharp.net/
尝试使用其他格式
http://www.codeproject.com/KB/files/generatepdf.aspx
只要安装了PDF打印机(PDFCreator是免费的),您就应该能够以编程方式打印所有这些文档 . PDFCreator可以选择以特定模式自动保存文档(无需在每个打印操作上输入文件名) .
如果沿着这条路走下去,PrintDocument类应该会有所帮助 .
这个问题是almost identical to this one . 所以我在下面重复了我的回复 .
我认为Aspose库能够转换所有这些格式 . 不是很便宜,但我经历的质量很好 .
虽然以下建议不是DLL,但也可以执行命令行实用程序 .
对于合并pdf文件,您可以使用pdf toolkit . 它是免费的(GPLv2) .
另一种来自pdfjam的
pdfjoin
命令,它将多个PDF文件的页面组合成一个文件 . 然而,pdfjam依赖于工作的乳胶环境(并且在我的系统上从texlive包安装),因此可能更难以开始工作 . 它被许可为公共域(一堆其他许可证) .