C# 使用带有PDFSharp和/或MigraDoc的PDF模板

C# 使用带有PDFSharp和/或MigraDoc的PDF模板,c#,pdf-generation,pdfsharp,migradoc,C#,Pdf Generation,Pdfsharp,Migradoc,我想知道是否有可能让我们的创意部门为我们的客户设计一个好看的PDF模板,例如一个花哨的信头,然后提供给我,这样我就可以使用PDFSharp或MigraDoc将各种类型的内容注入体内 目前,我们在渲染过程中生成页眉和页脚内容,效果很好,但正如您所想象的,在本质上是2D图形环境中,任何非平凡的布局和样式都非常复杂 因此产生了这样的想法:这些工具中的一个是否能够获取预先存在的PDF,让我访问各种对象,并允许我替换某些文本占位符,或者以更智能的方式操作PDF“DOM” 类似于使用电子表格(二进制和XML

我想知道是否有可能让我们的创意部门为我们的客户设计一个好看的PDF模板,例如一个花哨的信头,然后提供给我,这样我就可以使用PDFSharp或MigraDoc将各种类型的内容注入体内

目前,我们在渲染过程中生成页眉和页脚内容,效果很好,但正如您所想象的,在本质上是2D图形环境中,任何非平凡的布局和样式都非常复杂

因此产生了这样的想法:这些工具中的一个是否能够获取预先存在的PDF,让我访问各种对象,并允许我替换某些文本占位符,或者以更智能的方式操作PDF“DOM”


类似于使用电子表格(二进制和XML版本)或OpenXML等的东西。

我们要做的是:取一个现有的PDF页面,在新PDF页面的底部(Z轴)绘制它,然后使用MigraDoc向页面添加其他内容

PDFsharp也可用于在顶部绘制


模板PDF页面与客户公司设计的信头一样使用,最终文档将根据需要具有尽可能多的页面。

为什么不将HTML转换为PDF?使用razor作为视图引擎。您可以使用Rotativa来实现这一点,甚至可以将其作为服务(),而无需安装/配置/使用任何图形库。我没有使用过PDFSharp或MigraDoc,但我使用过ItextSharp和adobe livecycle designer做过类似的事情。使用livecycle designer,我们将创建可编辑pdf的字段命名,然后使用ItextSharp以编程方式填充这些字段。以下链接将帮助您开始使用itextsharp: