Как обрезать ограничительную рамку PDF-документа с помощью PDFSharp? - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь обрезать PDF-документ с помощью. net и PDFSharp. Все мои документы имеют ширину 25 дюймов. Мне нужно разделить каждый на две страницы по 12,5 дюймов. Вот код, который у меня работает:

foreach (var page in pdfDoc.Pages)
{
    var h = page.Height.Point;
    var w = page.Width.Point;

    var leftRectangle = new PdfRectangle(new XPoint(0, 0), new XPoint(w / 2, h));
    page.MediaBox = leftRectangle;
    page.CropBox = leftRectangle;
    page.ArtBox = leftRectangle;
    page.BleedBox = leftRectangle;
    page.TrimBox = leftRectangle;
    targetDoc.AddPage(page);

    var rightRectangle = new PdfRectangle(new XPoint(w / 2, 0), new XPoint(w, h));
    page.MediaBox = rightRectangle;
    page.CropBox = rightRectangle;
    page.ArtBox = rightRectangle;
    page.BleedBox = rightRectangle;
    page.TrimBox = rightRectangle;
    targetDoc.AddPage(page);
}

Как видите, я дошел до точки, когда я пытался установить для каждого типа бокса. Это связано с тем, что, когда я загрузил документ в службу печати после изменения только CropBox, он все еще регистрировал каждую правую страницу как 25 ". Ни одно из этих полей не позволяет избежать проблемы. Я предполагаю в этот момент «ограничивающая рамка» не изменяется и, следовательно, на самом деле не обрезается, изменяется только отображение, поэтому оно выглядит правильно, когда я открываю его в Foxit Reader.

Это есть ли способ по-настоящему обрезать документ таким образом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...