使用 phpexcel 在所有打印页面中设置页脚


set footer in all printed pages using phpexcel

我想要实现的目标:

我目前正在使用 PHPExcel,我想在所有打印页面的所有右侧页脚中显示文件名和页码。

基本上格式应该是

filename.xlsx Page 1 / 2

其中filename.xlsx是文件名

1 是当前页码

2 是总页码

我尝试过的:

我尝试了以下代码:

$this->objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&R&F');
$this->objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&R&P');
$this->objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&R&N');

在打印预览中,我们看到有 5 张纸

当我们按下打印时,打印机只打印出4。

  • 第一页我们只看到文件名
  • 第二页我们只看到数字 4
  • 第三页我们只看到数字 5
  • 第四页我们只看到数字 4

该位置在所有页面中都是正确的,即右侧页脚。

值不是。

请指教。

如果您需要在所有页面上显示页脚,则需要保存奇数页脚和偶数页脚的值

$objPHPExcel->getActiveSheet()
    ->getHeaderFooter()->setOddFooter('&R&F Page &P / &N');
$objPHPExcel->getActiveSheet()
    ->getHeaderFooter()->setEvenFooter('&R&F Page &P / &N');

您可以执行以下操作,而不是复制页脚配置:

$objPHPExcel->getActiveSheet()
    ->getHeaderFooter()->setDifferentOddEven(false);
$objPHPExcel->getActiveSheet()
    ->getHeaderFooter()->setOddFooter('&R&F Page &P / &N');