WriterFilter

From Apache OpenOffice Wiki
Revision as of 16:02, 24 November 2006 by Hbrinkm (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Getting Current Source Code for WriterFilter

WriterFilter is currently not included in the build system. You have to check it out manually:

cvs -d:pserver:anoncvs@anoncvs.services.openoffice.org:/cvs co sw/writerfilter 

Installing WriterFilter

Prerequisites

The current CWS for WriterFilter is writerfilter2. Have a look in EIS for details on the CWS.

You will need an installed StarOffice/OOo and the following projects:

  • comphelper
  • filter
  • jurt
  • offapi
  • offuh
  • scp2
  • svtools
  • svx
  • sw

Compile these projects and deliver the libraries to your installation in <SOINST>.

Changing Filter Detecting

In <SOINST>/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_writer_filters.xcu add node with attribute oor:name="MS Word 97":

   <node oor:name="MS Word 97" oor:op="replace">
        <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER</value></prop>
        <prop oor:name="UIComponent"/>
        <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop>
        <prop oor:name="UserData"><value>CWW8</value></prop>
        <prop oor:name="UIName">
            <value xml:lang="x-default">Microsoft Word 97/2000/XP (new)</value>
        </prop>
        <prop oor:name="FileFormatVersion"><value>0</value></prop>
        <prop oor:name="Type"><value>writer_MS_Word_97</value></prop>
        <prop oor:name="TemplateName"/>
        <prop oor:name="DocumentService"><value>com.sun.star.text.TextDocument</value></prop>
    </node>

Remember to grant yourself write access to the xcu.

Create Resource Database for New Intefaces

Note: This is only necessary if you do not use CWS writerfilter2.

Generate resource database for new interfaces: In offapi/<platform>/ucr/com/sun/star/text call

regmerge /tmp/merge.rdb -UCR XTextAppend.urd

Register New Interfaces

Note: Again, only necessary if not using the CWS writerfilter2.

In <SOINST>/program call

./unopkg add /tmp/merge.rdb

Register filter component

In <SOINST>/program call

chmod u+w services.rdb
regcomp -register -r services.rdb -c <writerfilter lib>

Now, if you load a file recognized as "Word 97", WriterFilter will be used.

Documentation

  • Documentation generated by Doxygen (will be available soon)

Notes

The properties of sprm 0x6a03 (sprmCPicLocation) have to be resolved. Otherwise the FC of the picture to come is not stored.

Personal tools