MigraDOC 和 pdfSharp,中心动态文本

MigraDOC and pdfSharp, center dynamic text

我一直在寻找创建文档 (PDF) 的解决方案,以便我可以计算输入字段: PDF 内容应如下所示

(所有pdf内容需要居中)

Header


Field1 : not dynamic (needs to be centered)


Field2 : UserName (dynamic- needs to be appended in the center of the paragraph) - since each user has a different name length

所以我的问题是,pdfSharp 或 migraDoc 是否有一种方法或其他方法可以将文本居中对齐(这意味着它会进行一些计算 - 确定字体系列、字体大小并发挥魔力,以便在最后标记的文本居中)? 如果是的话,方法是什么,因为我已经搜索了 migraDoc 和 pdfSharp 文档,但找不到类似的东西。

如果这种方法不存在,有人试过吗?与它一起工作?有什么建议我怎样才能实现这种行为?也许可以从中寻找一些来源。 谢谢

Sample 1 shows with a lot of code example how to create a pdf and use almost all functionality that Migradoc offers. Sample 2 详细展示了如何创建表格,您可能对页面内容的布局感兴趣。

对齐 (center/left/right) 通常是通过这样设置 Format.Alignment 属性 来完成的:

Paragraph par = new Paragraph();

par.Format.Alignment = ParagraphAlignment.Center;

内容居中的文档的简短版本为:

// first you need a document
Document MigraDokument  = new Document();

// each document needs at least one section
Section section = MigraDokument.AddSection();
section.PageSetup.PageFormat = PageFormat.A4;

// and then you add paragraphs to the section
Paragraph par = section.AddParagraph();
// and set the alignment as you wish
par.Format.Alignment = ParagraphAlignment.Center;

// now just fill it with content and set the rest of the parameters...
par.AddText("text");