如何在PHPExcel库中使用打印就绪功能

时间:2015-03-13 07:08:10

标签: php printing phpexcel

我正在使用PHPExcel库进行电子表格操作。我将应用打印就绪功能。这个功能是否存在?

1 个答案:

答案 0 :(得分:28)

如果您阅读documentation,特别是标题为" 设置Excel文件的打印机选项"的部分,那么有很多关于页面设置的信息用于印刷: -

方向和纸张尺寸:

$objPHPExcel->getActiveSheet()
    ->getPageSetup()
    ->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$objPHPExcel->getActiveSheet()
    ->getPageSetup()
    ->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);

页边距:

$objPHPExcel->getActiveSheet()
    ->getPageMargins()->setTop(1);
$objPHPExcel->getActiveSheet()
    ->getPageMargins()->setRight(0.75);
$objPHPExcel->getActiveSheet()
    ->getPageMargins()->setLeft(0.75);
$objPHPExcel->getActiveSheet()
    ->getPageMargins()->setBottom(1);

页眉和页脚:

$objPHPExcel->getActiveSheet()
    ->getHeaderFooter()
    ->setOddHeader('&C&HPlease treat this document as confidential!');
$objPHPExcel->getActiveSheet()
    ->getHeaderFooter()
    ->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . 

打印机分页符:

$objPHPExcel->getActiveSheet()
    ->setBreak( 'A10' , PHPExcel_Worksheet::BREAK_ROW );

显示网格线:

$objPHPExcel->getActiveSheet()
    ->setShowGridlines(true);

将行/列设置为在每页的顶部/左侧重复

$objPHPExcel->getActiveSheet()
    ->getPageSetup()
    ->setRowsToRepeatAtTopByStartAndEnd(1, 5);

设置打印区域:

$objPHPExcel->getActiveSheet()
    ->getPageSetup()
    ->setPrintArea('A1:E5,G4:M20');

我们编写文档,以便您不必提出类似这样的问题