Difference between revisions of "Performance/WriterLoadSave"

From Apache OpenOffice Wiki
Jump to: navigation, search
(New page: <P>Started investigation of load/save issues in Writer using VTune. The first test document is the ODF 1.1 specification document (http://docs.oasis-open.org/office/v1.1/OS/OpenDocument-v1...)
 
Line 18: Line 18:
 
which is not implemented for Writer's UNO objects.  
 
which is not implemented for Writer's UNO objects.  
 
</P>
 
</P>
 +
                </LI>
  
 
<LI><P>Saving Writer's text content is done by iterating over the
 
<LI><P>Saving Writer's text content is done by iterating over the
Line 28: Line 29:
 
remember it's position. The impact on real documents is not yet
 
remember it's position. The impact on real documents is not yet
 
checked.</P>
 
checked.</P>
<LI><P></P>
+
</LI>
 
</UL>
 
</UL>
 
</UL>
 
</UL>

Revision as of 07:16, 9 February 2009

Started investigation of load/save issues in Writer using VTune. The first test document is the ODF 1.1 specification document (http://docs.oasis-open.org/office/v1.1/OS/OpenDocument-v1.1.odt)</A>.

  • Already done:

  • Already identified issues:

    • To decide which properties have to be saved xmloff uses the interface methods css::beans::XPropertyState::getPropertyStates() and css::beans::XMultiPropertySet::getPropertyValues(). It could also use the interface css::beans::XTolerantMultiPropertySet::getDirectPropertyValuesTolerant() which is not implemented for Writer's UNO objects.

    • Saving Writer's text content is done by iterating over the paragraphs and iterating over so-called text portions within the paragraphs. Text portions are parts of the paragraph that have a single attribute set, text fields, redline portions, inline anchored frames etc. It might make sense to detect their properties at construction time and preset their css::uno::XTolerantMultiPropertySet interface.
      And the moment a text portion is created that adds a bookmark to remember it's position. The impact on real documents is not yet checked.

Personal tools