Excel PHPSReadSheet无法设置工作表边距
嗨,我有一个小问题,这个插件,这是代码,使一个错误Excel PHPSReadSheet无法设置工作表边距,excel,laravel,phpspreadsheet,Excel,Laravel,Phpspreadsheet,嗨,我有一个小问题,这个插件,这是代码,使一个错误 Sheet::macro('setPageMargins', function (Sheet $sheet, float $top = 1, float $right = 0.75, float $bottom = 1, float $left = 0.75) { $sheet->getDelegate()->getPageMargins()->setTop($top); $sheet->getDeleg
Sheet::macro('setPageMargins', function (Sheet $sheet, float $top = 1, float $right = 0.75, float $bottom = 1, float $left = 0.75) {
$sheet->getDelegate()->getPageMargins()->setTop($top);
$sheet->getDelegate()->getPageMargins()->setRight($right);
$sheet->getDelegate()->getPageMargins()->setLeft($left);
$sheet->getDelegate()->getPageMargins()->setBottom($bottom);
});
这里是错误
参数1传递给
PhpOffice\PhpSpreadsheet\Worksheet\Worksheet::setPageMargins()必须为
PhpOffice\PhpSpreadsheet\Worksheet\PageMargins、float的实例
给定
我只是使用maatwebsite\Excel
,以使用Laravel 5.7的方式,遵循这个文档
问题是如何设定保证金?因为我认为文档是错误的,请帮助我认为您应该:
// Create a page margins object.
$pageMargins = new \PhpOffice\PhpSpreadsheet\Worksheet\PageMargins();
$pageMargins->setTop(1);
$pageMargins->setRight(0.75);
$pageMargins->setBottom(1);
$pageMargins->setLeft(0.75);
Sheet::macro('setPageMargins', function($sheet, $pageMargins));
根据代码,它表示公共函数setPageMargins(PageMargins$pValue)
()
你的
::macro
调用setPageMargins
函数,尽管这种模式让我感到困惑(它似乎是一些Maatwebsite\Excel
的东西)。你能发布你试图使用的整个源代码吗?是的,宏函数来自Maatwebsite\Excel
,我会在导出中调用类似的东西,$event->sheet->mergeCells('S1:S4')代码>。这样的事情会被称为。宏函数将是Sheet::macro('mergeCells',function(Sheet$Sheet,string$cellRange){$Sheet->getDelegate()->mergeCells($cellRange);})代码>