我在谈论PdfSharp . 纵向方向适用于边距或没有边距 . 但是在横向方向的情况下,一旦我使用TrimMargins设置任何边距,页面截断在右侧 . 我在pdfSharp的示例代码上尝试了同样的事情并且遇到了同样的问题!!
看看以下代码的pdf渲染效果很好
page = document.AddPage();
page.Size = PdfSharp.PageSize.A4;
page.Orientation = PageOrientation.Landscape;
gfx = XGraphics.FromPdfPage(page);
gfx.DrawString("A4 (landscape)", font,XBrushes.DarkRed, new XRect(0, 0, page.Width, page.Height),XStringFormats.Center);
但是对于下面的代码,pdf没有很好地渲染,在右侧截断
page = document.AddPage();
page.TrimMargins.Top = 5;
page.TrimMargins.Right = 5;
page.TrimMargins.Bottom = 5;
page.TrimMargins.Left = 5;
page.Size = PdfSharp.PageSize.A4;
page.Orientation = PageOrientation.Landscape;
gfx = XGraphics.FromPdfPage(page);
gfx.DrawString("A4 (landscape)", font,XBrushes.DarkRed, new XRect(0, 0, page.Width, page.Height),XStringFormats.Center);
有什么想法吗?谢谢
2 回答
可能是PDFsharp中的错误 .
要解决此问题,请不要将方向设置为横向,而是在创建页面时交换宽度和高度 .
边距的默认单位是Points . 得到例如毫米相反,你可以写:
是的,这是PdfSharp的错误
我们可以设置边缘,如下面的方向