cc3a8a025b
Change-Id: I0275c178a478b7143b0cf4ed19f030009b7bd2fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167504 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> |
||
---|---|---|
.. | ||
inc | ||
qa/cppunit | ||
source/filter | ||
util | ||
CppunitTest_lotuswordpro_import_test.mk | ||
CppunitTest_lotuswordpro_test_lotuswordpro.mk | ||
IwyuFilter_lotuswordpro.yaml | ||
Library_lwpft.mk | ||
Makefile | ||
Module_lotuswordpro.mk | ||
README.md |
Import Filter for File Format of Lotus Word Pro (lwp)
Description
⚠️ Import Filter supports only Lotus Word Pro 97 and next versions
The import is not direct, but via an intermediate format: StarOffice XML,
the predecessor of ODF (yes, the code is old). The entry point to
the filter is class LotusWordProImportFilter
(refer to Source code
section), but that just hooks up the necessary machinery for processing
StarOffice XML produced by the filter. The real fun starts in function
ReadWordproFile()
(source/filter/lwpfilter.cxx
); this function
initializes the parser (class Lwp9Reader
) and the SAX XML handler that
produces the output (class XFSaxStream
). The Lwp9Reader
class then does
the actual parsing.
If the module is built with debug level greater than 0
, it is possible
to examine the intermediate XML: set environment variable
DBG_LWPIMPORT_DIR=
to an existing directory. During opening an .lwp
document, a file named lwpimport.xml
will be created in DBG_LWPIMPORT_DIR
directory.
Source Code
Module Contents
inc
: module-global headers (can be included by any file in source)qa
:cppunit
testssource
: the filter itselfutil
: UNO passive registration config
Source Contents
filter
:lwp
document format parserfilter/LotusWordProImportFilter.cxx
: the entry point to the filterfilter/xfilter
: export to StarOffice XML