我正在尝试为所有页面创建一个包含页眉和页脚的docx文档。 对于标题,我希望图像能够满足所有标题。如下图所示: 对于页脚我希望它在左侧和右侧我希望有页面的编号。如下图所示:
我现在拥有的是:
using (var docx = DocX.Create(filename))
{
docx.AddHeaders();
docx.AddFooters();
var headerDefault = docx.Headers.odd;
var footerDefault = docx.Footers.odd;
Novacode.Paragraph hp = headerDefault.InsertParagraph();
Novacode.Paragraph fp = footerDefault.InsertParagraph();
Novacode.Image logoHeader = docx.AddImage(System.Web.HttpContext.Current.Server.MapPath("/Images/jpg/header_pdf.jpg"));
Novacode.Image logoFooter = docx.AddImage(System.Web.HttpContext.Current.Server.MapPath("/Images/jpg/footer_pdf.jpg"));
hp.AppendPicture(logoHeader.CreatePicture());
fp.AppendPicture(logoFooter.CreatePicture());
问题是页眉和页脚都获得了文档其余部分的边距,即使我做了
docx.MarginTop = 0F;
docx.MarginRight = 0F;
docx.MarginBottom = 0F;
docx.MarginLeft = 0F;
标题上仍有一个上边距,页脚上有一个下边距。
有没有人有解决方案?感谢
答案 0 :(得分:0)
最新答案,但可能对某人有用-我遇到了同样的问题。问题在这里:
Novacode.Paragraph hp = headerDefault.InsertParagraph();
Novacode.Paragraph fp = footerDefault.InsertParagraph();
页眉和页脚已经有一段,您应该得到它:
Novacode.Paragraph hp = headerDefault.Paragraphs.First();
因此出现了边距,因为有两个段落,其中一个是空的,但是有新的行符号。