phpoffice Spreadsheet 表格自适应 头部失效

foreach ($sheet->getColumnIterator() as $column) {
$sheet->getColumnDimension($column->getColumnIndex())->setAutoSize(true);
}

使用如下代码使表格自适应之后还是有问题,就是标题栏没有自适应

phpoffice Spreadsheet  表格自适应 头部失效

如截图 内容虽然自适应了 但是标题栏红框部分没有自适应 有没有办法解决的?

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 13

$spreadsheet->getActiveSheet()->getColumnDimension(‘A’)->setAutoSize(true); 试试? getColumnIndex 这个是索引

1年前 评论
test2018 (楼主) 1年前

可以强制设置宽度

1年前 评论
test2018 (楼主) 1年前
bishi123 (作者) 1年前

中文内容自适应存在问题,你试一下用英文应该可以自适应。猜测可能是按字符串长度自动适应的!

1年前 评论

中文的存在问题。

1年前 评论

可以 先设置好一个excel 打开来修改 另存一份

1年前 评论

公司叫我弄一个特么复杂的excel 样式 我直接弄成 excel模板 然后填充数据就好

file

1年前 评论
test2018 (楼主) 1年前

在实际项目中使用

$spreadsheet->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);//自动适应

无法生效,未找到原因。

我实际还是使用

$spreadsheet->getActiveSheet()->getColumnDimension('D')->setWidth(12, 'pt');

来完成自适应列宽的需求。 建议每次都去计算列宽(根据字符的数量),最终列宽将会变成设置后最大的列宽。

1年前 评论
test2018

估计就是中文问题 我换 xlswriter 了

1年前 评论

用设置单元格的属性给设置下看看,让单元格内容自适应,伸开标题头

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!