Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel PHPSReadSheet无法设置工作表边距_Excel_Laravel_Phpspreadsheet - Fatal编程技术网

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);})