我已经在谷歌上阅读了几个例子,但我找不到类似我的问题。
要设置我使用的单元格高度:
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(-1);
这会将单元格高度设置为" auto"。
我想文本/数据会决定它的高度?!
我尝试了几个值,如:4,10等。
奇怪的是,只有没有任何文字的单元格才会改变高度。
我在想:文字/字体是否有保证金最高值?
我看不到任何类型的高度限制,因此不应该是概率。
CODE
//Set font Size
$objPHPExcel->getActiveSheet()->getStyle("A1:I".$highestRow)->getFont()->setSize(4);
//Set Row size
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(6);
示例
我希望单元格高度与文本一样高!
答案 0 :(得分:0)
行高限制实际为409.50(546像素),这是OfficeOpenXML(xlsx)格式的MS Excel限制。简单来说,PHPExcel并没有强制执行它。
如果您查看一些示例(例如01Simple.php
),您会看到第8行和第10行自动设置的高度。在您的情况下,看起来好像有了换行符您在单元格中设置的文字之前的字符,因此它们会跨越2行,并且自动高度会相应地设置自身。
答案 1 :(得分:0)
为了解决我的问题,我必须在我设置单元格值的循环中设置每一行高度。
//Loop out data into cells (create excel)
while($value = $stmt->fetch()){
//Set start Column
$column = "A";
//Set row height
$objPHPExcel->getActiveSheet()->getRowDimension($row)->setRowHeight(6);
//Set cell values
$objPHPExcel->getActiveSheet()->SetCellValue($column++.$row, $value['value']);