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
virtual ~Canvas5Image ()
 destructor
int version () const
 returns the file version
bool readAGIFRsrc (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the AGIF rsrc block: a list of vectorised image v6
bool readMACORsrc (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the macros rsrc blocks: a list of vectorised image
bool readQkTmRsrc (Canvas5Structure::Stream &stream)
 try to read the QkTm rsrc block: a list of media? v6
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
bool readImages (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the second big block: the list of bitmap
bool readImages9 (std::shared_ptr< Canvas5Structure::Stream > stream)
 try to read the list of bitmap: v9
bool getBitmap (int bitmapId, MWAWEmbeddedObject &object)
 try to retrieve a bitmap given a bitmapId
std::shared_ptr< Canvas5ImageInternal::VKFLImagegetGIF (int gifId)
 try to retrieve a gif given a GIF id
bool readMacroIndent (Canvas5Structure::Stream &stream, std::vector< unsigned > &id, std::string &extra)
 try to read a macro indent (low level)
std::shared_ptr< Canvas5ImageInternal::VKFLImagegetMACO (std::vector< unsigned > const &id)
 try to retrieve a macros image given a MACO id
bool getQuickTime (int quicktimeId, MWAWEmbeddedObject &object)
 try to retrieve a quicktime given a quicktimeId
bool getArrow (std::shared_ptr< Canvas5ImageInternal::VKFLImage > image, MWAWGraphicStyle::Arrow &arrow) const
 try to retrieve an arrow from a VKFL image
bool getTexture (std::shared_ptr< Canvas5ImageInternal::VKFLImage > image, MWAWEmbeddedObject &texture, MWAWVec2i &textureDim, MWAWColor &averageColor) const
 try to retrieve an texture from a VKFL image
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

Protected Member Functions

std::shared_ptr< Canvas5StyleManagergetStyleManager () const
 return the style manager
bool readVKFLShape (std::shared_ptr< Canvas5Structure::Stream > stream, Canvas5ImageInternal::VKFLImage &image)
 try to read a shape in an image
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
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
bool send (Canvas5ImageInternal::VKFLImage const &image, size_t &shapeId, MWAWListenerPtr listener, MWAWGraphicStyle const &style, MWAWTransformation const &transformation) const
 try to send a shape

Protected Attributes

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

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

Referenced by Canvas5Image(), and operator=().

◆ ~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 readVKFLShapeOtherData(), and 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 ( Canvas5ImageInternal::VKFLImage const & image,
size_t & shapeId,
MWAWListenerPtr listener,
MWAWGraphicStyle const & style,
MWAWTransformation const & transformation ) const
protected

try to send a shape

◆ send() [2/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(), send(), and send().

◆ version()

int Canvas5Image::version ( ) const

◆ Canvas5Parser

friend class Canvas5Parser
friend

Referenced by Canvas5Image(), and Canvas5Parser.

Member Data Documentation

◆ m_mainParser

◆ m_parserState

MWAWParserStatePtr Canvas5Image::m_parserState
protected

the parser state

Referenced by Canvas5Image(), 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 on Thu Jul 24 2025 00:00:00 for libmwaw by doxygen 1.14.0