如何用FPDI部分导入PDF页面?仅导入下半页是否可行?
用FPDI导入PDF页面的指定区域(如下半部分)
可以通过FPDI实现仅导入PDF页面的指定区域,核心是利用useImportedPage()方法的可选参数定义裁剪范围,无需修改原PDF文件。
实现代码示例
$pdf = new Fpdi; $pageNo = 1; // 目标页码 $pageId = $pdf->ImportPage($pageNo); // 获取原页面的尺寸信息 $templateSize = $pdf->getTemplateSize($pageId); $origWidth = $templateSize['width']; $origHeight = $templateSize['height']; $pdf->AddPage('P', "Letter"); // 导入页面下半部分:起始y坐标设为页面高度的一半,高度取原页面的1/2 $pdf->useImportedPage( $pageId, 0, // 导入区域的x起始坐标(页面左侧) $origHeight / 2, // 导入区域的y起始坐标(页面中间,对应下半部分顶部) $origWidth, // 导入区域的宽度(与原页面一致) $origHeight / 2 // 导入区域的高度(原页面的一半) ); // 输出处理后的PDF $pdf->Output('cropped_output.pdf', 'I');
参数说明
useImportedPage()方法的后4个可选参数用于控制导入区域:
- 第2个参数:导入区域相对于新页面的x偏移量
- 第3个参数:导入区域相对于新页面的y偏移量
- 第4个参数:导入区域的宽度
- 第5个参数:导入区域的高度
调整这些参数,就能灵活裁剪并导入PDF页面的任意区域(比如右半部分、左上角区域等)。
内容的提问来源于stack exchange,提问作者user19804739
相关产品推荐
相关产品推荐

