我是从C#生成PDF的新手,而且我使用的是MigraDoc。我已经尝试将页边距设置为0,但似乎仍然存在保证金。
这是代码
Document document = new Document();
document.DefaultPageSetup.TopMargin = 0;
Section section = document.AddSection();
section.PageSetup.PageWidth = "21.7cm";
section.PageSetup.PageHeight = "9cm";
section.PageSetup.TopMargin = "0cm";
section.PageSetup.LeftMargin = "0cm";
MigraDoc.DocumentObjectModel.Shapes.Image image2 = section.Headers.Primary.AddImage("D:\\output\\sky-690293_640.jpg");
image2.Height = "9cm";
image2.LockAspectRatio = true;
image2.Top = 0;
image2.Left = 0;
image2.WrapFormat.Style = WrapStyle.Through;但是,在顶部仍有一定的差距。
发布于 2020-05-12 07:49:32
将图像添加到标头中-而TopMargin与标头的内容无关。
或者将图像添加到文档正文中,TopMargin就会应用-或者设置PageSetup的HeaderDistance属性。
和BTW:永远不要像在第二行代码中那样修改DefaultPageSetup。
更新:您可以将图像放置在绝对位置--在您的情况下是(0,0)。这将适用于标题中的图像以及正文中的图像,并且独立于边距设置。
如果您想尝试绝对定位,可以启动未经测试的代码:
image2.RelativeHorizontal = RelativeHorizontal.Page;
image2.RelativeVertical = RelativeVertical.Page;
image2.WrapFormat.Style = WrapStyle.Through;https://stackoverflow.com/questions/61746070
复制相似问题