Quattro Pro File Format
QPW workbooks are structurally similar to other binary formats like Lotus WK#
CFB Container
Modern QPW files use the same CFB container as XLS.
The actual stream name has changed over the years but the typical names are
PerfectOffice_MAIN
and NativeContent_MAIN
.
Stream Structure
Like Lotus, the QPW stream consists of an array of records with 16-bit lengths and 16-bit record types.
For QPW streams, the BOF version field typically encodes "QPW" in ASCII.
Record Organization
Each file is divided into a notebooks (typically one notebook per file). Each notebook is divided into a series of worksheets.
Each worksheet is divided into a series of columns and data cells are stored within each column block.
Each part of the file is wrapped with beginning and ending records. The end record type is typically one larger than the beginning record type.
Part | Begin Type | End Type |
---|---|---|
File | 0x0001 |
0x0002 |
Notebook | 0x0401 |
0x0402 |
Worksheet | 0x0601 |
0x0602 |
Column | 0x0A01 |
0x0A02 |
Data Records
Record 0x0407
encodes the shared string table, scoped to the notebook.
Record 0x0C01
encodes multiple cells, similar to XLS MulRk
. It is contained
in a column block.
Resources
Notes were included as part of the WordPerfect Office SDK. In older versions of WordPerfect Office Suite, the SDK was included as part of the Professional Edition (but not the standard edition). For recent releases, the only way to obtain the documentation is to inquire with Corel Corporation.