librevenge::RVNGDrawingInterface Class Referenceabstract

#include <RVNGDrawingInterface.h>

Inheritance diagram for librevenge::RVNGDrawingInterface:
librevenge::RVNGDummyDrawingGenerator librevenge::RVNGRawDrawingGenerator librevenge::RVNGSVGDrawingGenerator librevenge::RVNGTextDrawingGenerator

Public Member Functions

virtual ~RVNGDrawingInterface ()
virtual void startDocument (const RVNGPropertyList &propList)=0
virtual void endDocument ()=0
virtual void setDocumentMetaData (const RVNGPropertyList &propList)=0
 Called when all document metadata should be set.
virtual void defineEmbeddedFont (const RVNGPropertyList &propList)=0
 Called when an embedded font should be defined.
virtual void startPage (const RVNGPropertyList &propList)=0
virtual void endPage ()=0
virtual void startMasterPage (const RVNGPropertyList &propList)=0
virtual void endMasterPage ()=0
virtual void setStyle (const RVNGPropertyList &propList)=0
virtual void startLayer (const RVNGPropertyList &propList)=0
virtual void endLayer ()=0
virtual void startEmbeddedGraphics (const RVNGPropertyList &propList)=0
virtual void endEmbeddedGraphics ()=0
virtual void openGroup (const RVNGPropertyList &propList)=0
virtual void closeGroup ()=0
virtual void drawRectangle (const RVNGPropertyList &propList)=0
virtual void drawEllipse (const RVNGPropertyList &propList)=0
virtual void drawPolygon (const RVNGPropertyList &propList)=0
virtual void drawPolyline (const RVNGPropertyList &propList)=0
virtual void drawPath (const RVNGPropertyList &propList)=0
virtual void drawGraphicObject (const RVNGPropertyList &propList)=0
 Called when a binary/raster object should be inserted.
virtual void drawConnector (const RVNGPropertyList &propList)=0
 Draw a connector.
virtual void startTextObject (const RVNGPropertyList &propList)=0
virtual void endTextObject ()=0
virtual void startTableObject (const RVNGPropertyList &propList)=0
 Called when a table should be opened.
virtual void openTableRow (const RVNGPropertyList &propList)=0
 Called when a new table row is opened.
virtual void closeTableRow ()=0
 Called when the current table row is closed.
virtual void openTableCell (const RVNGPropertyList &propList)=0
 Called when a new table cell is opened.
virtual void closeTableCell ()=0
 Called when the current table cell is closed.
virtual void insertCoveredTableCell (const RVNGPropertyList &propList)=0
 Called when a covered (spanned by another cell in the table) table cell is opened.
virtual void endTableObject ()=0
 Called when the current table is closed.
virtual void insertTab ()=0
 Called when a TAB character should be inserted.
virtual void insertSpace ()=0
 Called when an explicit space should be inserted.
virtual void insertText (const RVNGString &text)=0
 Called when a string of text should be inserted.
virtual void insertLineBreak ()=0
 Called when a line break should be inserted.
virtual void insertField (const RVNGPropertyList &propList)=0
 Called when a field should be inserted.
virtual void openOrderedListLevel (const RVNGPropertyList &propList)=0
 Called when a new ordered list level should be opened.
virtual void openUnorderedListLevel (const RVNGPropertyList &propList)=0
 Called when a new unordered list level should be opened.
virtual void closeOrderedListLevel ()=0
 Called when an unordered list level should be closed.
virtual void closeUnorderedListLevel ()=0
 Called when an ununordered list level should be closed.
virtual void openListElement (const RVNGPropertyList &propList)=0
 Called when a list element should be opened.
virtual void closeListElement ()=0
 Called when a list element should be closed.
virtual void defineParagraphStyle (const RVNGPropertyList &propList)=0
virtual void openParagraph (const RVNGPropertyList &propList)=0
 Called when a new paragraph is opened.
virtual void closeParagraph ()=0
 Called when a paragraph is closed.
virtual void defineCharacterStyle (const RVNGPropertyList &propList)=0
virtual void openSpan (const RVNGPropertyList &propList)=0
 Called when a text span is opened.
virtual void closeSpan ()=0
 Called when a text span is closed.
virtual void openLink (const RVNGPropertyList &propList)=0
 Called when a link should be opened.
virtual void closeLink ()=0
 Called when the current link is closed.

Constructor & Destructor Documentation

◆ ~RVNGDrawingInterface()

virtual librevenge::RVNGDrawingInterface::~RVNGDrawingInterface ( )
inlinevirtual

Member Function Documentation

◆ closeGroup()

virtual void librevenge::RVNGDrawingInterface::closeGroup ( )
pure virtual

◆ closeLink()

virtual void librevenge::RVNGDrawingInterface::closeLink ( )
pure virtual

◆ closeListElement()

virtual void librevenge::RVNGDrawingInterface::closeListElement ( )
pure virtual

◆ closeOrderedListLevel()

virtual void librevenge::RVNGDrawingInterface::closeOrderedListLevel ( )
pure virtual

◆ closeParagraph()

virtual void librevenge::RVNGDrawingInterface::closeParagraph ( )
pure virtual

◆ closeSpan()

virtual void librevenge::RVNGDrawingInterface::closeSpan ( )
pure virtual

◆ closeTableCell()

virtual void librevenge::RVNGDrawingInterface::closeTableCell ( )
pure virtual

◆ closeTableRow()

virtual void librevenge::RVNGDrawingInterface::closeTableRow ( )
pure virtual

◆ closeUnorderedListLevel()

virtual void librevenge::RVNGDrawingInterface::closeUnorderedListLevel ( )
pure virtual

◆ defineCharacterStyle()

virtual void librevenge::RVNGDrawingInterface::defineCharacterStyle ( const RVNGPropertyList & propList)
pure virtual

◆ defineEmbeddedFont()

virtual void librevenge::RVNGDrawingInterface::defineEmbeddedFont ( const RVNGPropertyList & propList)
pure virtual

Called when an embedded font should be defined.

Parameters
propListA set of properties that specify the font. May contain:
  • librevenge:name The name of the font
  • librevenge:mime-type The mimetype of the font
  • office:binary-data The font data
  • librevenge:replacement-objects A property list vector containing alternative formats of the font. Every element is a property list containing:
    1. librevenge:mime-type The mimetype of the replacement object
    2. office:binary-data The replacement object data

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ defineParagraphStyle()

virtual void librevenge::RVNGDrawingInterface::defineParagraphStyle ( const RVNGPropertyList & propList)
pure virtual

◆ drawConnector()

virtual void librevenge::RVNGDrawingInterface::drawConnector ( const RVNGPropertyList & propList)
pure virtual

Draw a connector.

The connector will be typically between two shapes, but free-standing connectors are allowed too.

Parameters
propListDefines a set of properties for the object. May contain:
  • draw:end-shape The ID of the shape attached at the end. Should not be present if the connector's end is not attached to any object.
  • draw:start-shape The ID of the shape attached at the beginning. Should not be present if the connector's start is not attached to any object.
  • svg:d The connector's geometric path. This is optional; if missing, the consumer is free to render it any way it likes.
  • svg:x1 The X coordinate of the start point.
  • svg:y1 The Y coordinate of the start point.
  • svg:x2 The X coordinate of the end point.
  • svg:y2 The Y coordinate of the end point.

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ drawEllipse()

virtual void librevenge::RVNGDrawingInterface::drawEllipse ( const RVNGPropertyList & propList)
pure virtual

◆ drawGraphicObject()

virtual void librevenge::RVNGDrawingInterface::drawGraphicObject ( const RVNGPropertyList & propList)
pure virtual

Called when a binary/raster object should be inserted.

Parameters
propListDefines a set of properties for the object. May contain:
  • librevenge:mime-type The mimetype of the object
  • office:binary-data The object data
  • librevenge:replacement-objects A property list vector containing alternative representations of the content. Every element is a property list containing:
    1. librevenge:mime-type The mimetype of the replacement object
    2. office:binary-data The replacement object data
  • librevenge:replacement-text A string containing a text representation of the content.
Note
to insert a MathMl file, set the mimetype value to "application/mathml-presentation+xml" or "application/mathml+xml".

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ drawPath()

virtual void librevenge::RVNGDrawingInterface::drawPath ( const RVNGPropertyList & propList)
pure virtual

◆ drawPolygon()

virtual void librevenge::RVNGDrawingInterface::drawPolygon ( const RVNGPropertyList & propList)
pure virtual

◆ drawPolyline()

virtual void librevenge::RVNGDrawingInterface::drawPolyline ( const RVNGPropertyList & propList)
pure virtual

◆ drawRectangle()

virtual void librevenge::RVNGDrawingInterface::drawRectangle ( const RVNGPropertyList & propList)
pure virtual

◆ endDocument()

virtual void librevenge::RVNGDrawingInterface::endDocument ( )
pure virtual

◆ endEmbeddedGraphics()

virtual void librevenge::RVNGDrawingInterface::endEmbeddedGraphics ( )
pure virtual

◆ endLayer()

virtual void librevenge::RVNGDrawingInterface::endLayer ( )
pure virtual

◆ endMasterPage()

virtual void librevenge::RVNGDrawingInterface::endMasterPage ( )
pure virtual

◆ endPage()

virtual void librevenge::RVNGDrawingInterface::endPage ( )
pure virtual

◆ endTableObject()

virtual void librevenge::RVNGDrawingInterface::endTableObject ( )
pure virtual

◆ endTextObject()

virtual void librevenge::RVNGDrawingInterface::endTextObject ( )
pure virtual

◆ insertCoveredTableCell()

virtual void librevenge::RVNGDrawingInterface::insertCoveredTableCell ( const RVNGPropertyList & propList)
pure virtual

Called when a covered (spanned by another cell in the table) table cell is opened.

Parameters
propListProperty list for the table cell. May contain:
  • librevenge:column Number of the column in which the cell is positioned
  • librevenge:row Number of the row in which the cell is positioned

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ insertField()

virtual void librevenge::RVNGDrawingInterface::insertField ( const RVNGPropertyList & propList)
pure virtual

Called when a field should be inserted.

Field types may include:

  • librevenge:field-type field types may include:
    1. text:page-number Current page number
    2. text:page-count Total # of pages in document
  • style:num-format Type of page number (for page number)

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ insertLineBreak()

virtual void librevenge::RVNGDrawingInterface::insertLineBreak ( )
pure virtual

◆ insertSpace()

virtual void librevenge::RVNGDrawingInterface::insertSpace ( )
pure virtual

◆ insertTab()

virtual void librevenge::RVNGDrawingInterface::insertTab ( )
pure virtual

◆ insertText()

virtual void librevenge::RVNGDrawingInterface::insertText ( const RVNGString & text)
pure virtual

Called when a string of text should be inserted.

Parameters
textA textbuffer encoded as a UTF8 string

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openGroup()

virtual void librevenge::RVNGDrawingInterface::openGroup ( const RVNGPropertyList & propList)
pure virtual

◆ openLink()

virtual void librevenge::RVNGDrawingInterface::openLink ( const RVNGPropertyList & propList)
pure virtual

Called when a link should be opened.

Parameters
propListDefines a set of properties for the link. May contain:
  • xlink:type .
  • xlink:href .

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openListElement()

virtual void librevenge::RVNGDrawingInterface::openListElement ( const RVNGPropertyList & propList)
pure virtual

Called when a list element should be opened.

Parameters
propListProperty list for the paragraph. May contain:
  • fo:text-align The justification of this paragraph (left, center, end, full, or justify)
  • fo:margin-left The left indentation of this paragraph, in inches
  • fo:margin-right The right indentation of this paragraph, in inches
  • fo:margin-top The amount of extra spacing to be placed before the paragraph, in inches
  • fo:margin-bottom The amount of extra spacing to be placed after the paragraph, in inches
  • fo:text-indent The indentation of first line, in inches (difference relative to margin-left)
  • fo:line-height The amount of spacing between lines, in number of lines (1.0 is single spacing)
  • fo:break-before Whether this paragraph should be placed in a new column or page (the value is set to column or page if so)
  • librevenge:tab-stops List of tabstop definitions for the paragraph. If the list is empty, default tabstop definition should be used. Each tab stop may contain:
    1. style:type Type of tab (left, right, center, or char)
    2. style:char Alingnment character for char aligned tabs
    3. style:leader-text The leader character
    4. style:position Position of the tab

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openOrderedListLevel()

virtual void librevenge::RVNGDrawingInterface::openOrderedListLevel ( const RVNGPropertyList & propList)
pure virtual

Called when a new ordered list level should be opened.

Parameters
propListDefines a set of properties for the list. May contain:
  • librevenge:list-id A unique integer identifier for the list
  • librevenge:level The level of the list in the hierarchy
  • style:num-format Type of list
  • style:num-prefix Text that comes before the number in the list
  • style:num-suffix Text that comes after the number in the list
  • text:start-value The starting number of the list
  • text:min-label-width The distance between the list label and the actual text, stored in inches
  • text:space-before The indentation level of the lists, stored in inches

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openParagraph()

virtual void librevenge::RVNGDrawingInterface::openParagraph ( const RVNGPropertyList & propList)
pure virtual

Called when a new paragraph is opened.

This (or openListElement) will always be called before any text or span is placed into the document.

Parameters
propListProperty list for the paragraph. May contain:
  • fo:text-align The justification of this paragraph (left, center, end, full, or justify)
  • fo:margin-left The left indentation of this paragraph, in inches
  • fo:margin-right The right indentation of this paragraph, in inches
  • fo:margin-top The amount of extra spacing to be placed before the paragraph, in inches
  • fo:margin-bottom The amount of extra spacing to be placed after the paragraph, in inches
  • fo:text-indent The indentation of first line, in inches (difference relative to margin-left)
  • fo:line-height The amount of spacing between lines, in number of lines (1.0 is single spacing)
  • fo:break-before Whether this paragraph should be placed in a new column or page (the value is set to column or page if so)
  • librevenge:tab-stops List of tabstop definitions for the paragraph. If the list is empty, default tabstop definition should be used. Each tab stop may contain:
    1. style:type Type of tab (left, right, center, or char)
    2. style:char Alingnment character for char aligned tabs
    3. style:leader-text The leader character
    4. style:position Position of the tab

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openSpan()

virtual void librevenge::RVNGDrawingInterface::openSpan ( const RVNGPropertyList & propList)
pure virtual

Called when a text span is opened.

Parameters
propListProperty list for the span. May contain:
  • fo:font-style Font style (italic or normal)
  • fo:font-weight Font style (bold or normal)
  • style:text-line-through-type (none, double or single, if present)
  • style:text-line-through-style (solid, dotted, dash, long-dash, dot-dash, dot-dot-dash or wave, if present)
  • style:text-underline-type (none, double or single, if present)
  • style:text-underline-style (solid, dotted, dash, long-dash, dot-dash, dot-dot-dash or wave, if present)
  • style:text-outline (true or false)
  • fo:font-variant (small-caps, if present)
  • style:font-name The name of the font used in the span, a text string in ascii
  • fo:font-size The size of the font used in the span, in points (72 points per inch)
  • fo:color The color of the font used in the span (encoded in hex: #RRGGBB)
  • fo:background-color The background color of the text in the span (encoded in hex: #RRGGBB)
  • style:text-blinking Whether the text should blink (true or false)
  • fo:text-shadow\n
  • fo:language\n \ The language of the text in the span, a valid language code according to ISO 639
  • fo:text-shadow

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openTableCell()

virtual void librevenge::RVNGDrawingInterface::openTableCell ( const RVNGPropertyList & propList)
pure virtual

Called when a new table cell is opened.

Parameters
propListProperty list for the table cell. May contain:
  • librevenge:column Number of the column in which the cell is positioned
  • librevenge:row Number of the row in which the cell is positioned
  • table:number-columns-spanned Number of columns that the cell spans
  • table:number-rows-spanned Number of rows that the cell spans
  • fo:border-left Properties of the left border of the cell
  • fo:border-right Properties of the right border of the cell
  • fo:border-top Properties of the top border of the cell
  • fo:border-bottom Properties of the bottom border of the cell
  • fo:background-color Color of the cell (encoded in hex: #RRGGBB)
  • style:vertical-align Vertical alignment of the content in the cell (top, middle, or bottom)

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openTableRow()

virtual void librevenge::RVNGDrawingInterface::openTableRow ( const RVNGPropertyList & propList)
pure virtual

Called when a new table row is opened.

Parameters
propListDefines a set of properties for the table row. May contain:
  • style:row-height The row's height, in inches
  • style:min-row-height The row's minimum height, in inches
  • librevenge:is-header-row This row contains headings of columns and should repeat at every page (for tables that span several pages)

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ openUnorderedListLevel()

virtual void librevenge::RVNGDrawingInterface::openUnorderedListLevel ( const RVNGPropertyList & propList)
pure virtual

Called when a new unordered list level should be opened.

Parameters
propListDefines a set of properties for the list level. May contain:
  • librevenge:list-id A unique integer identifier for the list
  • librevenge:level The level of the list in the hierarchy
  • text:bullet-char The string that should be used as a bullet
  • text:min-label-width The distance between the bullet and the actual text, stored in inches
  • text:space-before The indentation level of the lists, stored in inches

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ setDocumentMetaData()

virtual void librevenge::RVNGDrawingInterface::setDocumentMetaData ( const RVNGPropertyList & propList)
pure virtual

Called when all document metadata should be set.

This is always the first callback made.

Parameters
propListProperty list for the metadata. May contain:
  • dc:creator
  • dc:language The document's keywords
  • dc:publisher The document's publisher
  • dc:source
  • dc:subject The document's subject
  • dc:type The document's type
  • dcterms:available Date when the document was completed
  • dcterms:issued: Date of the version of the document
  • librevenge:abstract Abstract of the document's contents
  • librevenge:account Account
  • librevenge:address Address
  • librevenge:attachments
  • librevenge:authorization
  • librevenge:bill-to
  • librevenge:blind-copy
  • librevenge:carbon-copy
  • librevenge:checked-by
  • librevenge:client
  • librevenge:comments
  • librevenge:department
  • librevenge:descriptive-name The descriptive name for the document
  • librevenge:descriptive-type The descriptive type for the document
  • librevenge:destination
  • librevenge:disposition
  • librevenge:division
  • librevenge:document-number
  • librevenge:editor
  • librevenge:forward-to
  • librevenge:group
  • librevenge:mail-stop
  • librevenge:matter
  • librevenge:office
  • librevenge:owner
  • librevenge:project
  • librevenge:purpose
  • librevenge:received-from
  • librevenge:recorded-by
  • librevenge:recorded-date Date when the document was recorded
  • librevenge:reference
  • librevenge:revision-notes
  • librevenge:revision-number
  • librevenge:section
  • librevenge:security
  • librevenge:status
  • librevenge:telephone-number
  • librevenge:version-notes
  • librevenge:version-number
  • meta:creation-date Document creation date
  • meta:initial-creator The document's author
  • meta:keyword The document's keywords

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ setStyle()

virtual void librevenge::RVNGDrawingInterface::setStyle ( const RVNGPropertyList & propList)
pure virtual

◆ startDocument()

virtual void librevenge::RVNGDrawingInterface::startDocument ( const RVNGPropertyList & propList)
pure virtual

◆ startEmbeddedGraphics()

virtual void librevenge::RVNGDrawingInterface::startEmbeddedGraphics ( const RVNGPropertyList & propList)
pure virtual

◆ startLayer()

virtual void librevenge::RVNGDrawingInterface::startLayer ( const RVNGPropertyList & propList)
pure virtual

◆ startMasterPage()

virtual void librevenge::RVNGDrawingInterface::startMasterPage ( const RVNGPropertyList & propList)
pure virtual

◆ startPage()

virtual void librevenge::RVNGDrawingInterface::startPage ( const RVNGPropertyList & propList)
pure virtual

◆ startTableObject()

virtual void librevenge::RVNGDrawingInterface::startTableObject ( const RVNGPropertyList & propList)
pure virtual

Called when a table should be opened.

Parameters
propListDefines a set of properties for the table. May contain:
  • table:align The alignment (left, right, center, or margins)
  • fo:margin-left The left indentation of the table, in inches
  • fo:margin-right The right indentation of the table, in inches
  • style:width Total width of the table, in inches
  • fo:break-before Whether this table should be placed in a new column or page (the value is set to column or page if so)
  • librevenge:table-columns Column definitions for the table. May contain
    1. style:column-width Width of a column, in inches

Implemented in librevenge::RVNGDummyDrawingGenerator, librevenge::RVNGRawDrawingGenerator, librevenge::RVNGSVGDrawingGenerator, and librevenge::RVNGTextDrawingGenerator.

◆ startTextObject()

virtual void librevenge::RVNGDrawingInterface::startTextObject ( const RVNGPropertyList & propList)
pure virtual

The documentation for this class was generated from the following file:

Generated for librevenge by doxygen 1.14.0