Document ODS supported features

This should be completed in the future.
This commit is contained in:
Adrien Crivelli 2017-03-06 14:40:27 +09:00
parent 5fce89e76b
commit 93e2204774
No known key found for this signature in database
GPG Key ID: B182FD79DC6DE92E
3 changed files with 114 additions and 30 deletions

View File

@ -1,10 +1,15 @@
# Features cross reference
- <span style="text-align: center; color: green;"></span> Supported
- <span style="text-align: center; color: orange;"></span> Partially supported
- <span style="text-align: center; color: red;"></span> Not supported
- N/A Cannot be supported
<table>
<tr>
<th></th>
<th colspan="7">Writers</th>
<th colspan="5">Writers</th>
<th colspan="7">Readers</th>
<th colspan="6">Writers</th>
<th colspan="2">Methods</th>
</tr>
<tr>
@ -12,12 +17,13 @@
<th>XLS</th>
<th>XLSX</th>
<th>Excel2003XML</th>
<th>OOCalc</th>
<th>Ods</th>
<th>Gnumeric</th>
<th>CSV</th>
<th>SYLK</th>
<th>XLS</th>
<th>XLSX</th>
<th>Ods</th>
<th>CSV</th>
<th>HTML</th>
<th>PDF</th>
@ -33,11 +39,12 @@
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
<td></td>
</tr>
@ -50,11 +57,12 @@
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td>$reader-&gt;getReadDataOnly()</td>
<td>$reader-&gt;setReadDataOnly()</td>
</tr>
@ -67,11 +75,12 @@
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td>$reader-&gt;getLoadSheetsOnly()</td>
<td>$reader-&gt;setLoadSheetsOnly()<br>$reader-&gt;setLoadAllSheets()</td>
</tr>
@ -84,11 +93,12 @@
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td>$reader-&gt;getReadFilter()</td>
<td>$reader-&gt;setReadFilter()</td>
</tr>
@ -103,6 +113,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: orange;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: orange;"></td>
@ -120,6 +131,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: orange;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: orange;"></td>
@ -137,6 +149,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
@ -154,6 +167,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
@ -171,6 +185,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
@ -188,6 +203,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
@ -205,6 +221,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
@ -222,6 +239,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
@ -239,6 +257,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
@ -256,6 +275,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
@ -273,6 +293,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: orange;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -290,6 +311,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -307,6 +329,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -324,7 +347,8 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
<td>$spreadsheet-&gt;getProperties()-&gt;getManager()</td>
@ -341,6 +365,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -358,6 +383,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -375,6 +401,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -392,6 +419,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -409,6 +437,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -448,6 +477,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Boolean</td>
@ -465,6 +495,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Integer</td>
@ -482,6 +513,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Floating Point</td>
@ -499,6 +531,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">String</td>
@ -516,6 +549,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Error</td>
@ -533,6 +567,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Formula</td>
@ -550,6 +585,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Array</td>
@ -567,6 +603,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Rich Text</td>
@ -578,6 +615,7 @@
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center; color: green;"></td>
<td></td>
<td style="text-align: center;">N/A</td>
<td></td>
@ -601,6 +639,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><strong>Rows and Column Properties</strong></td>
@ -618,6 +657,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Row Height/Column Width</td>
@ -635,6 +675,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Hidden</td>
@ -652,6 +693,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><strong>Worksheet Properties</strong></td>
@ -669,6 +711,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Frozen Panes</td>
@ -686,6 +729,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Coloured Tabs</td>
@ -703,6 +747,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><strong>Cell Formatting</strong></td>
@ -720,6 +765,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Number Format Mask</td>
@ -737,6 +783,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Alignment</td>
@ -754,6 +801,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Horizontal</td>
@ -771,6 +819,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Vertical</td>
@ -788,6 +837,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Wrapping</td>
@ -805,6 +855,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Shring-to-Fit</td>
@ -822,6 +873,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Indent</td>
@ -839,6 +891,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Background Colour</td>
@ -856,6 +909,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Patterned</td>
@ -873,6 +927,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Font Attributes</td>
@ -885,6 +940,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: orange;"></td>
<td></td>
<td></td>
<td></td>
@ -902,6 +958,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td></td>
<td></td>
<td></td>
@ -919,6 +976,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td></td>
<td></td>
<td></td>
@ -936,6 +994,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td></td>
<td></td>
<td></td>
@ -953,6 +1012,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td></td>
<td></td>
<td></td>
@ -970,6 +1030,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: red;"></td>
<td></td>
<td></td>
<td></td>
@ -987,6 +1048,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: green;"></td>
<td></td>
<td></td>
<td></td>
@ -1004,6 +1066,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: red;"></td>
<td></td>
<td></td>
<td></td>
@ -1021,6 +1084,7 @@
<td></td>
<td></td>
<td></td>
<td style="text-align: center; color: red;"></td>
<td></td>
<td></td>
<td></td>
@ -1043,6 +1107,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Line Style</td>
@ -1060,6 +1125,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Position</td>
@ -1077,6 +1143,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 3em;">Diagonal</td>
@ -1094,6 +1161,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Hyperlinks</td>
@ -1111,6 +1179,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">http</td>
@ -1128,6 +1197,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 1em;">Merged Cells</td>
@ -1145,6 +1215,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><strong>Cell Comments</strong></td>
@ -1157,6 +1228,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center; color: orange;"></td>
<td style="text-align: center; color: orange;"></td>
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center;">N/A</td>
@ -1174,6 +1246,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center; color: green;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center;">N/A</td>
@ -1191,6 +1264,7 @@
<td style="text-align: center;">N/A</td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center; color: red;"></td>
<td style="text-align: center;">N/A</td>
<td></td>
<td style="text-align: center;">N/A</td>
@ -1213,6 +1287,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><strong>AutoFilters</strong></td>
@ -1228,6 +1303,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
<td>$spreadsheet-&gt;getActivesheet()-&gt;getAutoFilter()</td>
<td>$spreadsheet-&gt;getActivesheet()-&gt;setAutoFilter()</td>
</tr>
@ -1247,6 +1323,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Filter</td>
@ -1264,6 +1341,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Custom Filter</td>
@ -1281,6 +1359,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">DateGroup Filter</td>
@ -1298,6 +1377,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Dynamic Filter</td>
@ -1315,6 +1395,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Colour Filter</td>
@ -1332,6 +1413,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Icon Filter</td>
@ -1349,6 +1431,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="padding-left: 2em;">Top 10 Filter</td>
@ -1366,6 +1449,7 @@
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>

View File

@ -6,7 +6,7 @@ use PhpOffice\PhpSpreadsheet\Cell\DataType;
use PhpOffice\PhpSpreadsheet\Reader\Ods;
use PhpOffice\PhpSpreadsheet\Style\Font;
/*
/**
* @todo The class doesn't read the bold/italic/underline properties (rich text)
*/
class OdsTest extends \PHPUnit_Framework_TestCase
@ -14,12 +14,12 @@ class OdsTest extends \PHPUnit_Framework_TestCase
/**
* @var \PhpOffice\PhpSpreadsheet\Spreadsheet
*/
public $spreadsheetOOCalcTest;
private $spreadsheetOOCalcTest;
/**
* @var \PhpOffice\PhpSpreadsheet\Spreadsheet
*/
public $spreadsheetData;
private $spreadsheetData;
/**
* @return \PhpOffice\PhpSpreadsheet\Spreadsheet

View File

@ -15,14 +15,14 @@ use PhpOffice\PhpSpreadsheet\Writer\Ods\Content;
class ContentTest extends \PHPUnit_Framework_TestCase
{
public $samplesPath = __DIR__ . '/../../../data/Writer/Ods';
private $samplesPath = __DIR__ . '/../../../data/Writer/Ods';
/**
* @var string
*/
protected $compatibilityMode;
private $compatibilityMode;
public function setUp()
protected function setUp()
{
parent::setUp();