PHPExcel,自动调整行高

时间:2015-10-16 08:55:25

标签: php phpexcel

我想用PHPExcel 1.8.0在生成的.xls上显示整个文本。目前,即使没有设置任何行高,单元格(实际上整行)也不会调整大小。

这里有一些截图:

What i got (generated)

What i would like (obtained on double clicking the "resize row height")

这是我的代码:

$this->xls->getActiveSheet()->getRowDimension($this->row)->setRowHeight(-1);

$this->xls->getActiveSheet()->getStyle("A".$this->row.":F".$this->row)->getAlignment()->setWrapText(true);

$this->xls->getActiveSheet()->getCell("A".$this->row)->setValue(APPLICATION_ACADEMY);
$this->xls->getActiveSheet()->getCell("B".$this->row)->setValue(date("d/m/Y"));
$this->xls->getActiveSheet()->getCell("C".$this->row)->setValue($fait['nature'] === null ? $fait['codeNature'] : $fait['nature']);
$this->xls->getActiveSheet()->getCell("D".$this->row)->setValue($fait['etablissement']);

我使用了我已经在堆栈上找到的东西(setTextWrap / setRowHeight(-1)),但它没有效果

有人有个主意吗?它甚至可能吗?感谢。

1 个答案:

答案 0 :(得分:4)

下面对我有用,但是对于单行:

$excel->getActiveSheet()->getRowDimension(1)->setRowHeight(-1);

要将所有行的高度更改为自动,您可以执行以下操作:

foreach($xls->getActiveSheet()->getRowDimensions() as $rd) { 
    $rd->setRowHeight(-1); 
}