Commit 957e6021 authored by flypig's avatar flypig Committed by flypig

[calligra] Add optimisations for importing readonly XLSX docs. Contributes to JB#13262

This adds a number of optimisations when importing readonly XLSX format
speadsheets.

1. Use the pre-calculated cell content values rather than performing a
full recalculation using the cell formulae.

2. Calculate a minimal containing rectangle around the cells with
content and import only those cells + a fixed border (5 cells by
default). Cells with only a background colour are ignored. This avoids
having to import large areas of empty cells (which are a common
occurrence in Excel files, since they're generate if the user selects an
entire column/row and applies a style to it).

The following additional compile-time cmake flags are also added.

MSOOXML_MAX_SPREADSHEET_COLS=<integer>

Controls the maximum number of columns to import. Defaults to 0x7FFF,
the maximum supported by Calligra.

MSOOXML_MAX_SPREADSHEET_ROWS=<integer>

Controls the maximum number of rows to import. Defaults to 0xFFFFF, the
maximum supported by Calligra.

MSOOXML_SPREADSHEET_CONTENT_BORDER=<integer>

The size of border to add around the minimal containing rectangle for
read only documents. Defaults to 5.
parent cab4cfac
This diff is collapsed.
......@@ -35,12 +35,13 @@ Patch14: calligra-error-reporting.patch
Patch15: calligra-sheets.patch
# to be removed after Qt upgrade
Patch16: calligra-sheets-read-time.patch
Patch18: calligra-cache.patch
Patch19: calligra-qtdbus.patch
Patch20: calligra-background.patch
Patch21: calligra-invalidate-cache.patch
Patch17: calligra-cache.patch
Patch18: calligra-qtdbus.patch
Patch19: calligra-background.patch
Patch20: calligra-invalidate-cache.patch
Patch22: calligra-sheets-csvimport.patch
Patch21: calligra-sheets-csvimport.patch
Patch22: calligra-sheets-optimise.patch
%description
%{summary}.
......@@ -185,6 +186,7 @@ BuildRequires: extra-cmake-modules >= 5.34.0
%patch14 -d upstream -p1
%patch15 -d upstream -p1
%patch16 -d upstream -p1
%patch17 -d upstream -p1
%patch18 -d upstream -p1
%patch19 -d upstream -p1
%patch20 -d upstream -p1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment