Canvas5Image Class Reference

the main class to read/convert the image or movie inside of Canvas 5-11 files More...

#include <Canvas5Image.hxx>

Public Member Functions

 Canvas5Image (Canvas5Parser &parser)
 constructor More...
 
virtual ~Canvas5Image ()
 destructor More...
 
int version () const
 returns the file version More...
 
bool readAGIFRsrc (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the AGIF rsrc block: a list of vectorised image v6 More...
 
bool readMACORsrc (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the macros rsrc blocks: a list of vectorised image More...
 
bool readQkTmRsrc (Canvas5Structure::Stream &stream)
 try to read the QkTm rsrc block: a list of media? v6 More...
 
bool readVKFL (std::shared_ptr< Canvas5Structure::Stream > stream, long len, std::shared_ptr< Canvas5ImageInternal::VKFLImage > &image)
 try to read an unknown vectorized graphic format used to store symbol, texture and arrow More...
 
bool readImages (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the second big block: the list of bitmap More...
 
bool readImages9 (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the list of bitmap: v9 More...
 
bool getBitmap (int bitmapId, MWAWEmbeddedObject &object)
 try to retrieve a bitmap given a bitmapId More...
 
std::shared_ptr< Canvas5ImageInternal::VKFLImagegetGIF (int gifId)
 try to retrieve a gif given a GIF id More...
 
bool readMacroIndent (Canvas5Structure::Stream &stream, std::vector< unsigned > &id, std::string &extra)
 try to read a macro indent (low level) More...
 
std::shared_ptr< Canvas5ImageInternal::VKFLImagegetMACO (std::vector< unsigned > const &id)
 try to retrieve a macros image given a MACO id More...
 
bool getQuickTime (int quicktimeId, MWAWEmbeddedObject &object)
 try to retrieve a quicktime given a quicktimeId More...
 
bool getArrow (std::shared_ptr< Canvas5ImageInternal::VKFLImage > image, MWAWGraphicStyle::Arrow &arrow) const
 try to retrieve an arrow from a VKFL image More...
 
bool getTexture (std::shared_ptr< Canvas5ImageInternal::VKFLImage > image, MWAWEmbeddedObject &texture, MWAWVec2i &textureDim, MWAWColor &averageColor) const
 try to retrieve an texture from a VKFL image More...
 
bool send (std::shared_ptr< Canvas5ImageInternal::VKFLImage > image, MWAWListenerPtr listener, MWAWBox2f const &box, MWAWTransformation const &transformation) const
 try to send a image where box is the image bdbox before applying transformation More...
 

Protected Member Functions

std::shared_ptr< Canvas5StyleManagergetStyleManager () const
 return the style manager More...
 
bool readVKFLShape (std::shared_ptr< Canvas5Structure::Stream > stream, Canvas5ImageInternal::VKFLImage &image)
 try to read a shape in an image More...
 
bool readVKFLShapeMainData (std::shared_ptr< Canvas5Structure::Stream > stream, Canvas5ImageInternal::VKFLImage &image, Canvas5ImageInternal::VKFLShape &shape, MWAWEntry const &data)
 try to read a shape header in an image More...
 
bool readVKFLShapeOtherData (std::shared_ptr< Canvas5Structure::Stream > stream, Canvas5ImageInternal::VKFLImage &image, std::tuple< MWAWEntry, unsigned, long > const &dataTypePos, std::vector< long > &childFieldPos, int subId)
 try to read a external data corresponding to some shapes in an image More...
 
bool send (Canvas5ImageInternal::VKFLImage const &image, size_t &shapeId, MWAWListenerPtr listener, MWAWGraphicStyle const &style, MWAWTransformation const &transformation) const
 try to send a shape More...
 

Protected Attributes

MWAWParserStatePtr m_parserState
 the parser state More...
 
std::shared_ptr< Canvas5ImageInternal::Statem_state
 the state More...
 
Canvas5Parserm_mainParser
 the main parser; More...
 

Private Member Functions

 Canvas5Image (Canvas5Image const &orig)=delete
 
Canvas5Imageoperator= (Canvas5Image const &orig)=delete
 

Friends

class Canvas5Parser
 

Detailed Description

the main class to read/convert the image or movie inside of Canvas 5-11 files

Note
Canvas can define many vectorized images in a drawing document (to store arrow, symbol, bitmap, macros, ...). There are stored in a "compressed" form: a series of continuous structures which are often similar to the drawing document structures.

Constructor & Destructor Documentation

◆ Canvas5Image() [1/2]

Canvas5Image::Canvas5Image ( Canvas5Parser parser)
explicit

constructor

◆ ~Canvas5Image()

Canvas5Image::~Canvas5Image ( )
virtual

destructor

◆ Canvas5Image() [2/2]

Canvas5Image::Canvas5Image ( Canvas5Image const &  orig)
privatedelete

Member Function Documentation

◆ getArrow()

bool Canvas5Image::getArrow ( std::shared_ptr< Canvas5ImageInternal::VKFLImage image,
MWAWGraphicStyle::Arrow arrow 
) const

try to retrieve an arrow from a VKFL image

◆ getBitmap()

bool Canvas5Image::getBitmap ( int  bitmapId,
MWAWEmbeddedObject object 
)

try to retrieve a bitmap given a bitmapId

◆ getGIF()

std::shared_ptr< Canvas5ImageInternal::VKFLImage > Canvas5Image::getGIF ( int  gifId)

try to retrieve a gif given a GIF id

◆ getMACO()

std::shared_ptr< Canvas5ImageInternal::VKFLImage > Canvas5Image::getMACO ( std::vector< unsigned > const &  id)

try to retrieve a macros image given a MACO id

◆ getQuickTime()

bool Canvas5Image::getQuickTime ( int  quicktimeId,
MWAWEmbeddedObject object 
)

try to retrieve a quicktime given a quicktimeId

◆ getStyleManager()

std::shared_ptr< Canvas5StyleManager > Canvas5Image::getStyleManager ( ) const
protected

return the style manager

Referenced by send().

◆ getTexture()

bool Canvas5Image::getTexture ( std::shared_ptr< Canvas5ImageInternal::VKFLImage image,
MWAWEmbeddedObject texture,
MWAWVec2i textureDim,
MWAWColor averageColor 
) const

try to retrieve an texture from a VKFL image

◆ operator=()

Canvas5Image& Canvas5Image::operator= ( Canvas5Image const &  orig)
privatedelete

◆ readAGIFRsrc()

bool Canvas5Image::readAGIFRsrc ( std::shared_ptr< Canvas5Structure::Stream stream)

try to read the AGIF rsrc block: a list of vectorised image v6

◆ readImages()

bool Canvas5Image::readImages ( std::shared_ptr< Canvas5Structure::Stream stream)

try to read the second big block: the list of bitmap

◆ readImages9()

bool Canvas5Image::readImages9 ( std::shared_ptr< Canvas5Structure::Stream stream)

try to read the list of bitmap: v9

◆ readMACORsrc()

bool Canvas5Image::readMACORsrc ( std::shared_ptr< Canvas5Structure::Stream stream)

try to read the macros rsrc blocks: a list of vectorised image

◆ readMacroIndent()

bool Canvas5Image::readMacroIndent ( Canvas5Structure::Stream stream,
std::vector< unsigned > &  id,
std::string &  extra 
)

try to read a macro indent (low level)

Referenced by readMACORsrc(), and readVKFLShapeMainData().

◆ readQkTmRsrc()

bool Canvas5Image::readQkTmRsrc ( Canvas5Structure::Stream stream)

try to read the QkTm rsrc block: a list of media? v6

◆ readVKFL()

bool Canvas5Image::readVKFL ( std::shared_ptr< Canvas5Structure::Stream stream,
long  len,
std::shared_ptr< Canvas5ImageInternal::VKFLImage > &  image 
)

try to read an unknown vectorized graphic format used to store symbol, texture and arrow

Referenced by readAGIFRsrc(), and readVKFLShapeMainData().

◆ readVKFLShape()

bool Canvas5Image::readVKFLShape ( std::shared_ptr< Canvas5Structure::Stream stream,
Canvas5ImageInternal::VKFLImage image 
)
protected

try to read a shape in an image

Referenced by readVKFL().

◆ readVKFLShapeMainData()

bool Canvas5Image::readVKFLShapeMainData ( std::shared_ptr< Canvas5Structure::Stream stream,
Canvas5ImageInternal::VKFLImage image,
Canvas5ImageInternal::VKFLShape shape,
MWAWEntry const &  data 
)
protected

try to read a shape header in an image

Referenced by readVKFLShape().

◆ readVKFLShapeOtherData()

bool Canvas5Image::readVKFLShapeOtherData ( std::shared_ptr< Canvas5Structure::Stream stream,
Canvas5ImageInternal::VKFLImage image,
std::tuple< MWAWEntry, unsigned, long > const &  dataTypePos,
std::vector< long > &  childFieldPos,
int  subId 
)
protected

try to read a external data corresponding to some shapes in an image

Referenced by readVKFL().

◆ send() [1/2]

bool Canvas5Image::send ( std::shared_ptr< Canvas5ImageInternal::VKFLImage image,
MWAWListenerPtr  listener,
MWAWBox2f const &  box,
MWAWTransformation const &  transformation 
) const

try to send a image where box is the image bdbox before applying transformation

Referenced by readVKFL(), and send().

◆ send() [2/2]

bool Canvas5Image::send ( Canvas5ImageInternal::VKFLImage const &  image,
size_t &  shapeId,
MWAWListenerPtr  listener,
MWAWGraphicStyle const &  style,
MWAWTransformation const &  transformation 
) const
protected

try to send a shape

◆ version()

int Canvas5Image::version ( ) const

Friends And Related Function Documentation

◆ Canvas5Parser

friend class Canvas5Parser
friend

Member Data Documentation

◆ m_mainParser

Canvas5Parser* Canvas5Image::m_mainParser
protected

◆ m_parserState

MWAWParserStatePtr Canvas5Image::m_parserState
protected

the parser state

Referenced by readVKFL(), and version().

◆ m_state

std::shared_ptr<Canvas5ImageInternal::State> Canvas5Image::m_state
protected

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

Generated for libmwaw by doxygen 1.8.14