PHPExcel:打印页边距和打印自动调整似乎不起作用

PHPExcel:打印页边距和打印自动调整似乎不起作用,php,phpexcel,Php,Phpexcel,我按照这个顺序依次调用这3个函数 public function setPrintFitToWidth() { $this->sheet->getPageSetup()->setFitToWidth(1); } public function setPrintArea($cell_area) { $this->sheet->getPageSetup()->setPrintArea($cell_area); } public fun

我按照这个顺序依次调用这3个函数

public function setPrintFitToWidth()
{
    $this->sheet->getPageSetup()->setFitToWidth(1);    
}

public function setPrintArea($cell_area)
{
    $this->sheet->getPageSetup()->setPrintArea($cell_area); 
}

public function setPrintMargins($top, $right, $bottom, $left)
{
    $this->sheet->getPageMargins()->setTop($top);
    $this->sheet->getPageMargins()->setRight($right);
    $this->sheet->getPageMargins()->setLeft($left);
    $this->sheet->getPageMargins()->setBottom($bottom);
}
问题是,打开生成的Excel文件时,我将页面边距设置为“自定义”,但实际上,设置为不同的值,而不是传递给函数的边距。事实上,我调用了参数
(1,0.5,0.5,1)
,但我得到了相同的顺序,
2,0.8,0.8,2
。真的很奇怪

另外:我无法工作
setFittoWidth(1)
;我希望在一个页面中看到所有列的调整,但Excel告诉我它是在页面的调整表上设置的

我做错了什么?

已解决:

改变

public function setPrintFitToWidth()
{
    $this->sheet->getPageSetup()->setFitToWidth(1);    
}


关于利润率:我尝试了零利润率,利润率得到了尊重,所以我得出结论,PHPExcel单位在某种程度上“缩小了”。。。因此,在“尝试”和“重做”之后,我找到了生成正确magins的值

您使用的是什么编写器?默认值。我认为这是Excel2007,因为我创建了
.xlsx
文件我认为页面边距参数以英寸为单位,1cm=0.393cm,如果我使用0.39作为值,它在Excel中显示为10mm。
public function setPrintFitToWidth()
{
    $this->sheet->getPageSetup()->setFitToWidth(1);    
    $this->sheet->getPageSetup()->setFitToHeight(0);    
}