基于Microsoft Word模板生成PDF文档

我需要一个Word文档,这是一个类别的模板…收集用户输入以填充该模板中的特定字段..然后生成一个PDF文件,其中包括已完成的模板以及一些其他文档类型。 有没有人对组件有一个很好的建议来实现这个目标? 优选地,不需要在Web服务器上安装Microsoft Office。

尝试.net的Aspose Words。 从他们的网站:“Aspose.Words使.NET和Java应用程序能够在不使用Microsoft Word的情况下读取,修改和编写Word®文档。” 使用Aspose Word和Aspose PDF可以输出到PDF。

您不想做的一件事是在生产服务器上安装MS Word。 加载这些对象是SLOW和EATS内存。 除非您还在服务器上安装MS Word,否则您将无法使用CutePDF Writer。 Yeck。

是否有理由使用Word? 如果您从带有表单字段的PDF开始,您可以允许用户填写字段,或者使用iTextSharp的PDF压模以编程方式进行编程。

如果需要以编程方式使用MSOffice 2000/2003组件,则可以尝试使用Office Web Components。 它们确实需要安装在服务器上,但.NET和Com应用程序可以使用它们与office文件类型进行交互。 更多信息请访问http://en.wikipedia.org/wiki/Office_Web_Components

如果你在办公室CD上挖掘,你应该找到你的版本的OWC安装程序。 我没有和2007年合作,但我认为有类似的东西可用。

iTextSharp和OWC是免费的,请查看许可以获取更多详细信息。

嗯……您可以以创造性的方式使用CutePDF打印机来解决这个问题。 从本质上讲,它需要通过标准打印驱动程序提供的任何内容 ,并从中生成PDF。 免费。

尝试使用Apache POI API填充字段。 它可以进入Word文档并访问其元素。

至于Word – > PDF步骤,我还建议您评估Aspose解决方案。 它甚至可以执行这两个步骤。 然而,它不是免费的。

我对“doc模板”+合并到pdf解决方案的第一个想法是从开放式办公室格式开始。 – odt文件(打开文档模板)是基于xml的 – 所以你甚至可以使用perl来进行合并,然后调用writer的doc 2 pdf(我不知道他们是否有API,但是可以找到更少的比一天 – 即使必须检查来源。)

并将“word”点转换为writer odt文件只是OoWriter中的“文件另存为”操作。

如果您使用Aspose.Words,那么您的输入文档/模板可以是几种支持的格式之一,包括DOC,DOCX。

然后,您可以通过多种方式将数据插入到文档中。 您可以在文档中使用书签,只需设置文本即可。 或者更好地使用我们提供的报告引擎。 它允许使用标准MS Word MERGEFIELD字段,并添加重复区域甚至嵌套的function。 例如,您可以在MS Word中设计发票(带有父/子数据)模板,然后在一行代码中从.NET DataSet填充。

此外,您只需要Aspose.Words来生成PDF(一年前您需要Aspose.Words和Aspose.Pdf)。 您还可以轻松地将完全相同的文档保存为DOC,DOC,DOCX和其他一些格式。

我在Aspose.Words开发团队。

看看Muhimbi PDF Converter Web Services 。 它作为服务在Windows上运行,但可以从任何非Windows Web服务环境(包括Java和.NET)访问。

虽然这种解决方案要求MS-Office安装在服务器上(不一定与您的应用程序相同),但它非常强大并且提供了完美的转换保真度。

要生成或修改MS-Word文件,我建议使用免费的Open XML SDK for Microsoft Office 。 Eric White维护着一个非常好的博客 。

免责声明,我参与了这个产品。 话虽如此,它的效果很好。