PhpSpreadsheet/tests/PhpSpreadsheetTests/Writer/Xlsx
oleibman ef031e74e1
More Chart Fixes (#2841)
* More Chart Fixes

Taking up where #2828 left off. Most of the following changes are demonstrated in 32readwriteChartWithImages1:
- Adds support for "scheme" colors (because rgb, theme, and index colors just weren't enough for Excel) for DataSeriesValues. See issue #2299.
- For chart titles (including axis labels), rather than a font name, Excel supplies a 3-fold series of font names for Latin, East Asian, and Complex Scripts. New properties `latin`, `eastAsian`, and `complexScript` are added to the Font class. I frankly have no idea how, or even if, you can set these in Excel; my test case (sample 32readwriteScatterChart7) is a result of manually editing the XML.
- Add support for subscript/superscript to chart titles. This requires a new property `baseLine` in Font (positive=superscript negative=subscript baseline value says how high/low).
- Support for underscore with different scheme color than its text, using a new string property `uSchemeClr` in Font.
- Support for extra options for strikethrough, using a new string property `strikeType` in Font.
- Support for extra options for underscore type, using the existing string property `underline` in Font.
- I do not anticipate that any of the new Font properties will be used except for chart titles.
- If no default font overrides are found for a Rich Text element in chart titles, and no explicit font overrides are found for a Run under such an element, the font element of the Run is set to null.
- PhpSpreadsheet will always write a tag `a:pPr` and, underneath that, an empty tag `a:defRPr`, for default font settings for chart titles and axis labels. Combined with the previous bullet item, this will prevent PhpSpreadsheet from inadvertently overriding the Excel defaults (18 point bold Calibri for chart title, 10 point bold Calibri for axis labels).
- Axis labels will now be written to XML in the same manner as chart titles. Among other considerations, this means that they can now have colors. Fix #2700. Supersedes PR #2701. Demonstrated in sample 32readwriteStockChart5.

* Fix Some Chart Corruption

Fix #2817, where @bridgeplayr gives an excellent description of the problem and how it should be solved.

* Fix Bubble Charts

Sample produced corrupt output - see issue #2763. After a lot of research, solution was just re-ordering of parameters in a single function call.

Bubble 3D had not been supported at all. It is now.

Surface Charts remain corrupted.
2022-05-21 07:01:18 -07:00
..
Charts32ColoredAxisLabelTest.php More Chart Fixes (#2841) 2022-05-21 07:01:18 -07:00
Charts32ScatterTest.php More Chart Fixes (#2841) 2022-05-21 07:01:18 -07:00
Charts32XmlTest.php Some Fixes for Scatter Charts (#2828) 2022-05-17 07:48:24 -07:00
ConditionalTest.php Read conditional styling for cell (#2491) 2022-01-22 19:18:26 +01:00
DrawingsTest.php Assertion updates 2022-05-11 16:06:44 +02:00
FloatsRetainedTest.php Now That SettingsTest Is Well-Behaved 2021-06-30 13:15:20 -07:00
Issue589Test.php Don't corrupt file when using chart with fill color 2021-11-23 23:34:48 +09:00
Issue2082Test.php Xlsx Writer Formula with Bool Result of False 2021-05-11 13:48:38 +02:00
Issue2266Test.php Deleting Sheet with Local Defined Name (#2284) 2021-09-15 12:14:13 -07:00
Issue2368Test.php Support Data Validations in More Versions of Excel (#2377) 2021-11-14 10:06:46 -08:00
LocaleFloatsTest.php New Looming Problems with PHP8.1 (#2231) 2021-08-03 21:37:53 -07:00
StartsWithHashTest.php Now That SettingsTest Is Well-Behaved 2021-06-30 13:15:20 -07:00
Unparsed2396Test.php Name Clashes Between Parsed and Unparsed Drawings (#2423) 2021-12-09 23:37:15 -08:00
UnparsedDataCloneTest.php Phpstan Differences from Php7 to Php8, Again (#2665) 2022-03-11 23:28:30 -08:00
UnparsedDataTest.php Phpstan Differences from Php7 to Php8, Again (#2665) 2022-03-11 23:28:30 -08:00
VisibilityTest.php Unit testing for row/column/worksheet visibility for Xls and Xlsx files (#2059) 2021-05-03 23:46:40 +02:00
WmfTest.php Phpstan Differences from Php7 to Php8, Again (#2665) 2022-03-11 23:28:30 -08:00