C# 将修剪/放气标记添加到PDF-PDFsharp
我正在尝试使用添加到PDF 我可以设置PDF的左上角,但是所有其他角都不显示,C# 将修剪/放气标记添加到PDF-PDFsharp,c#,pdf,pdfsharp,C#,Pdf,Pdfsharp,我正在尝试使用添加到PDF 我可以设置PDF的左上角,但是所有其他角都不显示, 我正在做的是将xGraphics.DrawLine设置为左上角的位置,为左上角和左上角底部添加出血标记,然后旋转PDF的页面,以便可以使用相同的xGraphics.DrawLine位置,因此如果PDF的页面大小不同,我希望是因为它位于左上角,它将始终具有正确的出血标记位置。下面是我创建的方法以及结果。我还尝试使用XGraphics XGraphics=XGraphics.FromPdfPagePdfPageIn fo
我正在做的是将xGraphics.DrawLine设置为左上角的位置,为左上角和左上角底部添加出血标记,然后旋转PDF的页面,以便可以使用相同的xGraphics.DrawLine位置,因此如果PDF的页面大小不同,我希望是因为它位于左上角,它将始终具有正确的出血标记位置。下面是我创建的方法以及结果。我还尝试使用XGraphics XGraphics=XGraphics.FromPdfPagePdfPageIn for int I=1;iAFAIK您必须在更改页面旋转后创建一个新的XGraphics对象 你要画四个角,每个角一个。但是,如果坐标随页面旋转,那么代码将在同一位置绘制四个角度 停止旋转页面,分别绘制四个角度
顺便说一句:调用Save仅在稍后调用Restore时才有意义。据我所知,在代码中调用Save没有任何视觉效果。最好放下那条线。我希望我可以旋转它,因为我在获得所有其他角时遇到了困难,但是感谢你清理了这条线,因为它不会像我预期的那样工作。
/// <summary>
/// Add Bleed To PDF.
/// </summary>
/// <param name="pdfDocument"></param>
static void AddBleed(ref PdfDocument pdfDocument)
{
// Check The Pdf Has Been Loaded Into Memory.
if (pdfDocument.PageCount > 0)
{
// Create Pen.
XPen xPen = new XPen(XColors.Gray, 3);
const float TRIM_MARK_LEN = 30;
// Start Looping The Pdf's Pages
foreach (PdfPage pdfPage in pdfDocument.Pages)
{
using (XGraphics xGraphics = XGraphics.FromPdfPage(pdfPage))
{
// A Page Has 4 Sides.
for (int i = 1; i <= 4; i++)
{
// Top Left.
xGraphics.DrawLine(xPen, TRIM_MARK_LEN, TRIM_MARK_LEN - 10, TRIM_MARK_LEN, -10);
// Bottom Top Left.
xGraphics.DrawLine(xPen, 0, TRIM_MARK_LEN, TRIM_MARK_LEN - 10, TRIM_MARK_LEN);
// Rotate The Pdf Page.
xGraphics.PdfPage.Rotate = xGraphics.PdfPage.Rotate + 90;
// Save The Graphics.
xGraphics.Save();
}
}
}
}
}