使用 PHP 裁剪 PDF 页面
Contents
[
Hide
]
获取页面属性
PDF 文件中的每一页都有许多属性,例如宽度、高度、出血框、裁剪框和修整框。Aspose.PDF for PHP via Java 允许您访问这些属性。
- 媒体框:媒体框是最大的页面框。它对应于打印到 PostScript 或 PDF 时选择的页面大小(例如 A4、A5、美国信纸等)。换句话说,媒体框决定了显示或打印 PDF 文档的介质的物理大小。
- 出血框:如果文档有出血,PDF 也会有一个出血框。 出血是指超出页面边缘的颜色(或艺术作品)的量。它用于确保当文档被打印并切割到指定尺寸(“修边”)时,墨水会一直延伸到页面边缘。即使页面被错误地裁剪——稍微切偏了裁剪标记——页面上也不会出现白边。
- 裁切框:裁切框表示文档打印和裁切后的最终尺寸。
- 艺术框:艺术框是围绕文档中页面实际内容绘制的框。当在其他应用程序中导入 PDF 文档时使用此页面框。
- 裁剪框:裁剪框是您的 PDF 文档在 Adobe Acrobat 中显示的“页面”大小。在正常视图中,Adobe Acrobat 只显示裁剪框的内容。有关这些属性的详细说明,请阅读 Adobe.Pdf 规范,特别是 10.10.1 页边界。
- 页面矩形:媒体框和下拉框的交集(通常为可见矩形)。 下面的图片说明了这些属性。
有关详细信息,请访问此页面。
下面的代码片段展示了如何裁剪页面:
// 打开文档
$document = new Document($inputFile);
$page = $document->getPages()->get_Item(1);
$responseData = $page->getCropBox() . PHP_EOL;
$responseData = $responseData . $page->getTrimBox() . PHP_EOL;
$responseData = $responseData . $page->getArtBox() . PHP_EOL;
$responseData = $responseData . $page->getBleedBox() . PHP_EOL;
$responseData = $responseData . $page->getMediaBox() . PHP_EOL;
// 创建新的 Box 矩形
$newBox = new Rectangle(200, 220, 2170, 1520);
$page->setCropBox($newBox);
$page->setTrimBox($newBox);
$page->setArtBox($newBox);
$page->setBleedBox($newBox);
// 保存输出文档
$document->save($outputFile);
$document->close();
在这个例子中,我们使用了一个示例文件这里。 最初,我们的页面如图1所示。
更改后,页面将如图2所示。