Обрезка страниц PDF программно на C#
Contents
[
Hide
]
Получение свойств страницы
Каждая страница в файле PDF имеет ряд свойств, таких как ширина, высота, поля для обрезки, поля для кадрирования и поля для обрезки окончательного размера. Aspose.PDF позволяет получить доступ к этим свойствам.
- Media box: Media box — это самая большая область страницы. Она соответствует размеру страницы (например, A4, A5, US Letter и т.д.), выбранному при печати документа в PostScript или PDF. Другими словами, media box определяет физический размер носителя, на котором отображается или печатается документ PDF.
- Bleed box: Если документ содержит поле для обрезки, в PDF также будет bleed box. Поле для обрезки — это количество цвета (или изображения), выходящее за край страницы. Оно используется для того, чтобы убедиться, что когда документ печатается и обрезается до нужного размера (“подрезается”), краска доходит до края страницы. Даже если страница подрезана немного не по меткам обреза - на странице не появятся белые края.
- Trim box: Trim box указывает окончательный размер документа после печати и обрезки.
- Art box: Art box — это область, нарисованная вокруг фактического содержимого страниц в ваших документах.
- Art box: Art box - это рамка, нарисованная вокруг фактического содержимого страниц в ваших документах.
- Crop box: Crop box - это размер “страницы”, в котором ваш PDF-документ отображается в Adobe Acrobat. В обычном режиме в Adobe Acrobat отображается только содержимое crop box. Для подробного описания этих свойств читайте спецификацию Adobe.Pdf, особенно 10.10.1 Границы страниц.
- Page.Rect: пересечение (обычно видимый прямоугольник) MediaBox и DropBox. Ниже приведена иллюстрация этих свойств. Для получения дополнительной информации, пожалуйста, посетите эту страницу.
Ниже приведен код, также работающий с библиотекой Aspose.PDF.Drawing.
Ниже приведен пример кода, показывающий, как обрезать страницу:
public static void CropPagesPDF()
{
var pdfDocument1 = new Aspose.Pdf.Document("crop_page.pdf");
Console.WriteLine(pdfDocument1.Pages[1].CropBox);
Console.WriteLine(pdfDocument1.Pages[1].TrimBox);
Console.WriteLine(pdfDocument1.Pages[1].ArtBox);
Console.WriteLine(pdfDocument1.Pages[1].BleedBox);
Console.WriteLine(pdfDocument1.Pages[1].MediaBox);
// Создать новый прямоугольник Box
var newBox = new Rectangle(200, 220, 2170, 1520);
pdfDocument1.Pages[1].CropBox = newBox;
pdfDocument1.Pages[1].TrimBox = newBox;
pdfDocument1.Pages[1].ArtBox = newBox;
pdfDocument1.Pages[1].BleedBox = newBox;
pdfDocument1.Save("crop_page_modified.pdf");
}
В этом примере мы использовали образец файла здесь. Изначально наша страница выглядит как показано на Рисунке 1.
После изменения страница будет выглядеть как Рисунок 2.