合并单元格上的PHPExcel行自动高度w / wrapText

问题描述 投票:6回答:2

有没有一种在PHP Excel中设置行自动高度的好方法?到目前为止,我已经看到你可以使用一个固定的高度,你可以指定你想要行的高度。我还看到如果你没有使用合并的单元格,你可以使用autoheight。

PHPExcel - dynamic row height for merged cells

How to set auto height in phpexcel?

这两个问题提出了类似的问题,但都没有得到回答。我考虑过的一个解决方案是计算单元格中的单词数,并根据该单元格和列跨度进行换行。然而,这可能会打开一堆蠕虫。

php phpexcel
2个回答
1
投票

你也可以这样做

  1. 合并所需的单元格,例如:A7:C7
  2. 将其上下文复制到一个单元格,例如Z7
  3. 将合并单元格的宽度设置为Z7
  4. 将自动换行文本应用于Z7
  5. 使Z7不可见

0
投票

您可以使用以下代码执行此操作:

$width=84;
$height=20;
$text="abcde...";
$excel->getActiveSheet()->getRowDimension(1)->setRowHeight(ceil(strlen($text)/$width)*$height);

代码中的“高度”是单元格中的文本行,而不是整个单元格。

© www.soinside.com 2019 - 2024. All rights reserved.