Jon Nott 887d6ef033 Add setCellVerticalAlignment() & allow setShouldWrapText() to be explicitly set as false
- add Common\Entity\Style\CellVerticalAlignment
- duplicate get/set/hasSet/shouldApply methods for CellAlignment in Common\Entity\Style\Style for CellVerticalAlignment instead, plus corresponding properties
- add setCellVerticalAlignment method to Common\Creator\Style\StyleBuilder
- add vertical alignment to StyleMerger:: mergeCellProperties()
- adjust wrapText logic in mergeCellProperties() to fix issue https://github.com/box/spout/issues/829
- apply vertical cell styling for both XLSX and ODS, via corresponding StyleManager classes
- transform vertical alignment  ‘center’ to ‘middle’ for ODS
- fix logic around wrapText such that the choice whether to include wrapping styles depends on hasSetWrapText() being true, and then use shouldWrapText() thereafter to either set wrapping or no wrapping (for XLSX, wrapText=“1” or wrapText=“0”, for ODS, wrap-option=wrap or wrap-option=no-wrap). previously there was no way to set wrapping to be OFF, only to set it to be ON.
- add new tests to ensure shouldWrapText(false) results in the correct negated wrapText (XLSX) / wrap-option (ODS) styles
- add new tests to StyleBuilderTest for vertical alignment
- add vertical alignment to documentation.md
2022-02-12 19:37:05 +00:00
2022-01-25 14:29:02 +01:00
2015-04-14 20:16:41 -07:00
2018-06-03 21:08:21 +02:00
2022-01-12 23:38:25 +01:00
2022-01-12 23:38:25 +01:00
2015-01-15 18:14:07 -08:00
2015-01-15 18:14:07 -08:00
2022-01-23 15:21:49 +01:00
2022-01-13 23:04:26 +01:00
2022-01-13 14:46:46 +01:00
2021-02-08 14:31:55 +01:00

Spout

Latest Stable Version Project Status Build Status Coverage Status Total Downloads

Spout is a PHP library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way. Unlike other file readers or writers, it is capable of processing very large files, while keeping the memory usage really low (less than 3MB).

Join the community and come discuss Spout: Gitter

Documentation

Full documentation can be found at https://opensource.box.com/spout/.

Requirements

  • PHP version 7.2 or higher
  • PHP extension php_zip enabled
  • PHP extension php_xmlreader enabled

Upgrade guide

Version 3 introduced new functionality but also some breaking changes. If you want to upgrade your Spout codebase from version 2 please consult the Upgrade guide.

Running tests

The master branch includes unit, functional and performance tests. If you just want to check that everything is working as expected, executing the unit and functional tests is enough.

  • phpunit - runs unit and functional tests
  • phpunit --group perf-tests - only runs the performance tests

For information, the performance tests take about 10 minutes to run (processing 1 million rows files is not a quick thing).

Performance tests status: Build Status

Support

You can ask questions, submit new features ideas or discuss Spout in the chat room:
Gitter

Copyright 2017 Box, Inc. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Description
Read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way
Readme Pixar 11 MiB
Languages
PHP 100%