您好,当页眉、页脚的内容高度超过页面设置上、下页边距时,显示正文区域的高度变小,这时如何获取当前正文内容与上、下的边距呢?
如图:
通过 PageSetup.HeaderDistance 取到的值是页眉距页面顶端的距离,我想获取的是正文与页面顶端的距(见第2张图)
@cqhg90258 在这种情况下,您可以使用 TopMargin 或 BottomMargin。例如
Document doc = new Document("input.docx");
doc.FirstSection.PageSetup.TopMargin = 100;
doc.FirstSection.PageSetup.BottomMargin = 100;
doc.Save("output.docx");
我是想获取section.PageSetup.TopMargin的值,不是设置TopMargin的值,我发现页眉内容高度增加后获取到的section.PageSetup.TopMargin值没有发生任何变化呢
@cqhg90258 感谢您的说明。在这种情况下,您可以使用 LayoutEnumerator:
Document doc = new Document("input.docx");
LayoutCollector layoutCollector = new LayoutCollector(doc);
// 获取正文中的第一段。
Paragraph firstParagraph = doc.FirstSection.Body.FirstParagraph;
LayoutEnumerator layoutEnumerator = new LayoutEnumerator(doc);
layoutEnumerator.Current = layoutCollector.GetEntity(firstParagraph);
// 获取段落的顶部位置。
double paraTopPosition = layoutEnumerator.Rectangle.Top;
Console.WriteLine("从页面顶部到第一段的距离:" + paraTopPosition);
谢谢!!!我想要的就是这效果
1 Like