gpt4 book ai didi

php - 无法正确设置 set PrintArea

转载 作者:行者123 更新时间:2023-12-05 04:05:28 28 4
gpt4 key购买 nike

我正在使用 phpspreadsheet v1.3.1。

我正在构建一个 excel 文件(下载)并且一切正常。唯一的问题是定义 setPrintArea... 它总是将标准 PrintArea 返回到 excel 中。基本上,我构建了 excel 行并在定义了 printArea 之后......我之前也尝试过但没有成功。

$spreadsheet = IOFactory::load("template.xlsx");
$worksheet = $spreadsheet->getActiveSheet();

foreach ($rows AS $k => $v ) {
$worksheet->getCell('F' . ($k + 3))->setValue($v);
$worksheet->getCell('G' . ($k + 3))->setValue($v);
}

$worksheet->getPageSetup()->setPrintArea('A1:AG58');

...

header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="' . $filename . '"');
header('Cache-Control: max-age=0');
$writer = IOFactory::createWriter($spreadsheet, 'Xls');
$writer->save('php://output'); //-- force download version

该区域有 58 行,但我无法将该区域设置为“AG”单元格...基本上,我想将我所有的 excel 打印在一页而不是 8。

谢谢!

最佳答案

setPrintArea() 定义要打印的内容,但不定义打印方式。要让所有列 A->AG 和 58 行显示在一个页面上,您可以使用:

$worksheet->getPageSetup()->setFitToPage(true);

或按一维限制

$worksheet->getPageSetup()->setFitToWidth(1);
$worksheet->getPageSetup()->setFitToHeight(0);

https://phpspreadsheet.readthedocs.io/en/develop/topics/recipes/#setting-printer-options-for-excel-files

关于php - 无法正确设置 set PrintArea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51088437/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com