libmspub::MSPUBParser97 Class Reference

#include <MSPUBParser97.h>

Inheritance diagram for libmspub::MSPUBParser97:
libmspub::MSPUBParser2k libmspub::MSPUBParser

Classes

struct  SpanInfo97
struct  TextInfo97

Public Member Functions

 MSPUBParser97 (librevenge::RVNGInputStream *input, MSPUBCollector *collector)
bool parse () override
Public Member Functions inherited from libmspub::MSPUBParser2k
 MSPUBParser2k (librevenge::RVNGInputStream *input, MSPUBCollector *collector)
 ~MSPUBParser2k () override
Public Member Functions inherited from libmspub::MSPUBParser
 MSPUBParser (librevenge::RVNGInputStream *input, MSPUBCollector *collector)
virtual ~MSPUBParser ()

Private Member Functions

bool parseDocument (librevenge::RVNGInputStream *input) override
int translateCoordinateIfNecessary (int coordinate) const override
unsigned getFirstLineOffset () const override
unsigned getSecondLineOffset () const override
unsigned getShapeFillTypeOffset () const override
unsigned getShapeFillColorOffset () const override
unsigned short getTextMarker () const override
unsigned getTextIdOffset () const override
CharacterStyle readCharacterStyle (librevenge::RVNGInputStream *input, unsigned length)
void parseContentsTextIfNecessary (librevenge::RVNGInputStream *input) override
std::vector< SpanInfo97getSpansInfo (librevenge::RVNGInputStream *input, unsigned prop1Index, unsigned prop2Index, unsigned prop3Index, unsigned prop3End)
TextInfo97 getTextInfo (librevenge::RVNGInputStream *input, unsigned length)

Private Attributes

bool m_isBanner

Additional Inherited Members

Protected Types inherited from libmspub::MSPUBParser
typedef std::vector< ContentChunkReference >::const_iterator ccr_iterator_t
Protected Member Functions inherited from libmspub::MSPUBParser2k
bool parse2kShapeChunk (const ContentChunkReference &chunk, librevenge::RVNGInputStream *input, boost::optional< unsigned > pageSeqNum=boost::optional< unsigned >(), bool topLevelCall=true)
void parseShapeLine (librevenge::RVNGInputStream *input, bool isRectangle, unsigned offset, unsigned seqNum)
void parseShapeType (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned chunkOffset, bool &isGroup, bool &isLine, bool &isImage, bool &isRectangle, unsigned &flagsOffset)
void parseShapeRotation (librevenge::RVNGInputStream *input, bool isGroup, bool isLine, unsigned seqNum, unsigned chunkOffset)
void parseShapeFlips (librevenge::RVNGInputStream *input, unsigned flagsOffset, unsigned seqNum, unsigned chunkOffset)
void parseShapeCoordinates (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned chunkOffset)
bool parseGroup (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned page)
void assignShapeImgIndex (unsigned seqNum)
void parseShapeFill (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned chunkOffset)
bool parseContents (librevenge::RVNGInputStream *input) override
unsigned getColorIndexByQuillEntry (unsigned entry) override
Protected Member Functions inherited from libmspub::MSPUBParser
 MSPUBParser ()
 MSPUBParser (const MSPUBParser &)
MSPUBParseroperator= (const MSPUBParser &)
bool parseMetaData ()
bool parseQuill (librevenge::RVNGInputStream *input)
bool parseEscher (librevenge::RVNGInputStream *input)
bool parseEscherDelay (librevenge::RVNGInputStream *input)
MSPUBBlockInfo parseBlock (librevenge::RVNGInputStream *input, bool skipHierarchicalData=false)
EscherContainerInfo parseEscherContainer (librevenge::RVNGInputStream *input)
bool parseContentChunkReference (librevenge::RVNGInputStream *input, MSPUBBlockInfo block)
QuillChunkReference parseQuillChunkReference (librevenge::RVNGInputStream *input)
bool parseDocumentChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool parsePageChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool parsePaletteChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool parsePageShapeList (librevenge::RVNGInputStream *input, MSPUBBlockInfo block, unsigned pageSeqNum)
bool parseShape (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool parseBorderArtChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool parseFontChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
void parsePaletteEntry (librevenge::RVNGInputStream *input, MSPUBBlockInfo block)
void parseColors (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
void parseFonts (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
void parseDefaultStyle (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
void parseShapeGroup (librevenge::RVNGInputStream *input, const EscherContainerInfo &spgr, Coordinate parentCoordinateSystem, Coordinate parentGroupAbsoluteCoord)
void skipBlock (librevenge::RVNGInputStream *input, MSPUBBlockInfo block)
void parseEscherShape (librevenge::RVNGInputStream *input, const EscherContainerInfo &sp, Coordinate &parentCoordinateSystem, Coordinate &parentGroupAbsoluteCoord)
bool findEscherContainer (librevenge::RVNGInputStream *input, const EscherContainerInfo &parent, EscherContainerInfo &out, unsigned short type)
bool findEscherContainerWithTypeInSet (librevenge::RVNGInputStream *input, const EscherContainerInfo &parent, EscherContainerInfo &out, std::set< unsigned short > types)
std::map< unsigned short, unsigned > extractEscherValues (librevenge::RVNGInputStream *input, const EscherContainerInfo &record)
FOPTValues extractFOPTValues (librevenge::RVNGInputStream *input, const libmspub::EscherContainerInfo &record)
std::vector< TextSpanReferenceparseCharacterStyles (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
std::vector< TextParagraphReferenceparseParagraphStyles (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
std::vector< CalculationparseGuides (const std::vector< unsigned char > &guideData)
std::vector< VertexparseVertices (const std::vector< unsigned char > &vertexData)
std::vector< unsigned > parseTableCellDefinitions (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
std::vector< unsigned short > parseSegments (const std::vector< unsigned char > &segmentData)
DynamicCustomShape getDynamicCustomShape (const std::vector< unsigned char > &vertexData, const std::vector< unsigned char > &segmentData, const std::vector< unsigned char > &guideData, unsigned geoWidth, unsigned geoHeight)
int getColorIndex (librevenge::RVNGInputStream *input, const MSPUBBlockInfo &info)
unsigned getFontIndex (librevenge::RVNGInputStream *input, const MSPUBBlockInfo &info)
CharacterStyle getCharacterStyle (librevenge::RVNGInputStream *input)
ParagraphStyle getParagraphStyle (librevenge::RVNGInputStream *input)
std::shared_ptr< FillgetNewFill (const std::map< unsigned short, unsigned > &foptProperties, bool &skipIfNotBg, std::map< unsigned short, std::vector< unsigned char > > &foptValues)
Static Protected Member Functions inherited from libmspub::MSPUBParser2k
static Color getColorBy2kIndex (unsigned char index)
static Color getColorBy2kHex (unsigned hex)
static unsigned translate2kColorReference (unsigned ref2k)
static PageType getPageTypeBySeqNum (unsigned seqNum)
Static Protected Member Functions inherited from libmspub::MSPUBParser
static short getBlockDataLength (unsigned type)
static bool isBlockDataString (unsigned type)
static PageType getPageTypeBySeqNum (unsigned seqNum)
static unsigned getEscherElementTailLength (unsigned short type)
static unsigned getEscherElementAdditionalHeaderLength (unsigned short type)
static ImgType imgTypeByBlipType (unsigned short type)
static int getStartOffset (ImgType type, unsigned short initial)
static bool lineExistsByFlagPointer (unsigned *flags, unsigned *geomFlags=nullptr)
Protected Attributes inherited from libmspub::MSPUBParser
librevenge::RVNGInputStream * m_input
unsigned m_length
MSPUBCollectorm_collector
std::vector< MSPUBBlockInfom_blockInfo
std::vector< ContentChunkReferencem_contentChunks
std::vector< unsigned > m_cellsChunkIndices
std::vector< unsigned > m_pageChunkIndices
std::vector< unsigned > m_shapeChunkIndices
std::vector< unsigned > m_paletteChunkIndices
std::vector< unsigned > m_borderArtChunkIndices
std::vector< unsigned > m_fontChunkIndices
std::vector< unsigned > m_unknownChunkIndices
boost::optional< unsigned > m_documentChunkIndex
int m_lastSeenSeqNum
unsigned m_lastAddedImage
std::vector< int > m_alternateShapeSeqNums
std::vector< int > m_escherDelayIndices

Constructor & Destructor Documentation

◆ MSPUBParser97()

libmspub::MSPUBParser97::MSPUBParser97 ( librevenge::RVNGInputStream * input,
MSPUBCollector * collector )

Member Function Documentation

◆ getFirstLineOffset()

unsigned libmspub::MSPUBParser97::getFirstLineOffset ( ) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ getSecondLineOffset()

unsigned libmspub::MSPUBParser97::getSecondLineOffset ( ) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ getShapeFillColorOffset()

unsigned libmspub::MSPUBParser97::getShapeFillColorOffset ( ) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ getShapeFillTypeOffset()

unsigned libmspub::MSPUBParser97::getShapeFillTypeOffset ( ) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ getSpansInfo()

std::vector< MSPUBParser97::SpanInfo97 > libmspub::MSPUBParser97::getSpansInfo ( librevenge::RVNGInputStream * input,
unsigned prop1Index,
unsigned prop2Index,
unsigned prop3Index,
unsigned prop3End )
private

◆ getTextIdOffset()

unsigned libmspub::MSPUBParser97::getTextIdOffset ( ) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ getTextInfo()

MSPUBParser97::TextInfo97 libmspub::MSPUBParser97::getTextInfo ( librevenge::RVNGInputStream * input,
unsigned length )
private

◆ getTextMarker()

unsigned short libmspub::MSPUBParser97::getTextMarker ( ) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ parse()

bool libmspub::MSPUBParser97::parse ( )
overridevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ parseContentsTextIfNecessary()

void libmspub::MSPUBParser97::parseContentsTextIfNecessary ( librevenge::RVNGInputStream * input)
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ parseDocument()

bool libmspub::MSPUBParser97::parseDocument ( librevenge::RVNGInputStream * input)
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

◆ readCharacterStyle()

CharacterStyle libmspub::MSPUBParser97::readCharacterStyle ( librevenge::RVNGInputStream * input,
unsigned length )
private

Referenced by getSpansInfo().

◆ translateCoordinateIfNecessary()

int libmspub::MSPUBParser97::translateCoordinateIfNecessary ( int coordinate) const
overrideprivatevirtual

Reimplemented from libmspub::MSPUBParser2k.

Member Data Documentation

◆ m_isBanner

bool libmspub::MSPUBParser97::m_isBanner
private

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

Generated for libmspub by doxygen 1.14.0