![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/demo.cartinsight.co/vendor/openspout/openspout/src/Writer/Common/ |
<?php declare(strict_types=1); namespace OpenSpout\Writer\Common; use OpenSpout\Common\Entity\Style\Style; use OpenSpout\Common\TempFolderOptionTrait; abstract class AbstractOptions { use TempFolderOptionTrait; public Style $DEFAULT_ROW_STYLE; public bool $SHOULD_CREATE_NEW_SHEETS_AUTOMATICALLY = true; public ?float $DEFAULT_COLUMN_WIDTH = null; public ?float $DEFAULT_ROW_HEIGHT = null; /** @var ColumnWidth[] Array of min-max-width arrays */ private array $COLUMN_WIDTHS = []; public function __construct() { $this->DEFAULT_ROW_STYLE = new Style(); } /** * @param positive-int ...$columns One or more columns with this width */ final public function setColumnWidth(float $width, int ...$columns): void { // Gather sequences $sequence = []; foreach ($columns as $column) { $sequenceLength = \count($sequence); if ($sequenceLength > 0) { $previousValue = $sequence[$sequenceLength - 1]; if ($column !== $previousValue + 1) { $this->setColumnWidthForRange($width, $sequence[0], $previousValue); $sequence = []; } } $sequence[] = $column; } $this->setColumnWidthForRange($width, $sequence[0], $sequence[\count($sequence) - 1]); } /** * @param float $width The width to set * @param positive-int $start First column index of the range * @param positive-int $end Last column index of the range */ final public function setColumnWidthForRange(float $width, int $start, int $end): void { $this->COLUMN_WIDTHS[] = new ColumnWidth($start, $end, $width); } /** * @internal * * @return ColumnWidth[] */ final public function getColumnWidths(): array { return $this->COLUMN_WIDTHS; } }