setIncludeCharts(true); } public function writeCharts(XlsxWriter $writer): void { $writer->setIncludeCharts(true); } public function testLine4(): void { $file = self::DIRECTORY . '32readwriteLineChart4.xlsx'; $reader = new XlsxReader(); $reader->setIncludeCharts(true); $spreadsheet = $reader->load($file); $sheet = $spreadsheet->getActiveSheet(); self::assertSame(1, $sheet->getChartCount()); /** @var callable */ $callableReader = [$this, 'readCharts']; /** @var callable */ $callableWriter = [$this, 'writeCharts']; $reloadedSpreadsheet = $this->writeAndReload($spreadsheet, 'Xlsx', $callableReader, $callableWriter); $spreadsheet->disconnectWorksheets(); $sheet = $reloadedSpreadsheet->getActiveSheet(); $charts = $sheet->getChartCollection(); self::assertCount(1, $charts); $chart = $charts[0]; self::assertNotNull($chart); $plotArea = $chart->getPlotArea(); $dataSeriesArray = $plotArea->getPlotGroup(); self::assertCount(1, $dataSeriesArray); $dataSeries = $dataSeriesArray[0]; $dataSeriesValuesArray = $dataSeries->getPlotValues(); self::assertCount(3, $dataSeriesValuesArray); $dataSeriesValues = $dataSeriesValuesArray[1]; self::assertEquals(5, $dataSeriesValues->getGlowSize()); self::assertSame('schemeClr', $dataSeriesValues->getGlowProperty(['color', 'type'])); self::assertSame('accent2', $dataSeriesValues->getGlowProperty(['color', 'value'])); self::assertSame(60, $dataSeriesValues->getGlowProperty(['color', 'alpha'])); $reloadedSpreadsheet->disconnectWorksheets(); } }