LibreOffice Module vcl (master)  1
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
VectorGraphicData Class Reference

#include <vectorgraphicdata.hxx>

Collaboration diagram for VectorGraphicData:
[legend]

Public Types

enum  State {
  State::UNPARSED,
  State::PARSED
}
 

Public Member Functions

 VectorGraphicData (const OUString &rPath, VectorGraphicDataType eVectorDataType)
 
 VectorGraphicData (const BinaryDataContainer &rDataContainer, VectorGraphicDataType eVectorDataType, sal_Int32 nPageIndex=-1)
 
 ~VectorGraphicData ()
 
bool operator== (const VectorGraphicData &rCandidate) const
 compare op More...
 
void setWmfExternalHeader (const WmfExternal &aExtHeader)
 special: needed for emf/wmf, maybe replaced by scaling the result later (?) More...
 
const BinaryDataContainergetBinaryDataContainer () const
 data read More...
 
std::pair< State, size_t > getSizeBytes () const
 
const VectorGraphicDataTypegetType () const
 
const basegfx::B2DRangegetRange () const
 data read and evtl. on demand creation More...
 
const std::deque< css::uno::Reference< css::graphic::XPrimitive2D > > & getPrimitive2DSequence () const
 
const BitmapExgetReplacement () const
 
BitmapChecksum GetChecksum () const
 
sal_Int32 getPageIndex () const
 
void setPageIndex (sal_Int32 nPageIndex)
 
void setSizeHint (const basegfx::B2DTuple &rSizeHint)
 
const basegfx::B2DTuplegetSizeHint () const
 
void setEnableEMFPlus (bool bEnableEMFPlus)
 
bool isPrimitiveSequenceCreated () const
 

Private Member Functions

void ensurePdfReplacement ()
 
void ensureReplacement ()
 
void ensureSequenceAndRange ()
 
 VectorGraphicData (const VectorGraphicData &)=delete
 
VectorGraphicDataoperator= (const VectorGraphicData &)=delete
 

Private Attributes

BinaryDataContainer maDataContainer
 
bool mbSequenceCreated
 
basegfx::B2DRange maRange
 
std::deque< css::uno::Reference< css::graphic::XPrimitive2D > > maSequence
 
BitmapEx maReplacement
 
size_t mNestedBitmapSize
 
VectorGraphicDataType meType
 
std::unique_ptr< WmfExternalmpExternalHeader
 
sal_Int32 mnPageIndex
 If the vector format has more pages this denotes which page to render. More...
 
basegfx::B2DTuple maSizeHint
 Useful for PDF, which is vector-based, but still rendered to a bitmap. More...
 
bool mbEnableEMFPlus = true
 

Detailed Description

Definition at line 55 of file vectorgraphicdata.hxx.

Member Enumeration Documentation

Enumerator
UNPARSED 
PARSED 

Definition at line 108 of file vectorgraphicdata.hxx.

Constructor & Destructor Documentation

VectorGraphicData::VectorGraphicData ( const VectorGraphicData )
privatedelete
VectorGraphicData::VectorGraphicData ( const OUString &  rPath,
VectorGraphicDataType  eVectorDataType 
)
VectorGraphicData::VectorGraphicData ( const BinaryDataContainer rDataContainer,
VectorGraphicDataType  eVectorDataType,
sal_Int32  nPageIndex = -1 
)

Definition at line 304 of file vectorgraphicdata.cxx.

VectorGraphicData::~VectorGraphicData ( )

Definition at line 346 of file vectorgraphicdata.cxx.

Member Function Documentation

void VectorGraphicData::ensurePdfReplacement ( )
private
void VectorGraphicData::ensureReplacement ( )
private
void VectorGraphicData::ensureSequenceAndRange ( )
private
const BinaryDataContainer& VectorGraphicData::getBinaryDataContainer ( ) const
inline

data read

Definition at line 103 of file vectorgraphicdata.hxx.

Referenced by ensureSequenceAndRange().

BitmapChecksum VectorGraphicData::GetChecksum ( ) const
sal_Int32 VectorGraphicData::getPageIndex ( ) const
inline

Definition at line 119 of file vectorgraphicdata.hxx.

const std::deque< css::uno::Reference< css::graphic::XPrimitive2D > > & VectorGraphicData::getPrimitive2DSequence ( ) const

Definition at line 357 of file vectorgraphicdata.cxx.

References ensureSequenceAndRange(), and maSequence.

const basegfx::B2DRange & VectorGraphicData::getRange ( ) const

data read and evtl. on demand creation

Definition at line 350 of file vectorgraphicdata.cxx.

References ensureSequenceAndRange(), and maRange.

Referenced by ensureReplacement().

const BitmapEx & VectorGraphicData::getReplacement ( ) const

Definition at line 364 of file vectorgraphicdata.cxx.

References ensureReplacement(), and maReplacement.

std::pair< VectorGraphicData::State, size_t > VectorGraphicData::getSizeBytes ( ) const
const basegfx::B2DTuple& VectorGraphicData::getSizeHint ( ) const
inline

Definition at line 134 of file vectorgraphicdata.hxx.

const VectorGraphicDataType& VectorGraphicData::getType ( ) const
inline
bool VectorGraphicData::isPrimitiveSequenceCreated ( ) const
inline

Definition at line 138 of file vectorgraphicdata.hxx.

VectorGraphicData& VectorGraphicData::operator= ( const VectorGraphicData )
privatedelete
bool VectorGraphicData::operator== ( const VectorGraphicData rCandidate) const
void VectorGraphicData::setEnableEMFPlus ( bool  bEnableEMFPlus)
inline

Definition at line 136 of file vectorgraphicdata.hxx.

void VectorGraphicData::setPageIndex ( sal_Int32  nPageIndex)
inline

Definition at line 124 of file vectorgraphicdata.hxx.

void VectorGraphicData::setSizeHint ( const basegfx::B2DTuple rSizeHint)
inline

Definition at line 129 of file vectorgraphicdata.hxx.

void VectorGraphicData::setWmfExternalHeader ( const WmfExternal aExtHeader)

special: needed for emf/wmf, maybe replaced by scaling the result later (?)

Definition at line 135 of file vectorgraphicdata.cxx.

References mpExternalHeader.

Member Data Documentation

BinaryDataContainer VectorGraphicData::maDataContainer
private
basegfx::B2DRange VectorGraphicData::maRange
private

Definition at line 63 of file vectorgraphicdata.hxx.

Referenced by ensureSequenceAndRange(), and getRange().

BitmapEx VectorGraphicData::maReplacement
private

Definition at line 65 of file vectorgraphicdata.hxx.

Referenced by ensurePdfReplacement(), ensureReplacement(), and getReplacement().

std::deque< css::uno::Reference< css::graphic::XPrimitive2D > > VectorGraphicData::maSequence
private
basegfx::B2DTuple VectorGraphicData::maSizeHint
private

Useful for PDF, which is vector-based, but still rendered to a bitmap.

Definition at line 76 of file vectorgraphicdata.hxx.

Referenced by ensurePdfReplacement(), and ensureSequenceAndRange().

bool VectorGraphicData::mbEnableEMFPlus = true
private

Definition at line 78 of file vectorgraphicdata.hxx.

Referenced by ensureSequenceAndRange().

bool VectorGraphicData::mbSequenceCreated
private

Definition at line 62 of file vectorgraphicdata.hxx.

Referenced by ensureSequenceAndRange().

VectorGraphicDataType VectorGraphicData::meType
private

Definition at line 67 of file vectorgraphicdata.hxx.

size_t VectorGraphicData::mNestedBitmapSize
private

Definition at line 66 of file vectorgraphicdata.hxx.

Referenced by ensureSequenceAndRange(), and getSizeBytes().

sal_Int32 VectorGraphicData::mnPageIndex
private

If the vector format has more pages this denotes which page to render.

Definition at line 73 of file vectorgraphicdata.hxx.

Referenced by ensurePdfReplacement(), and ensureSequenceAndRange().

std::unique_ptr<WmfExternal> VectorGraphicData::mpExternalHeader
private

Definition at line 70 of file vectorgraphicdata.hxx.

Referenced by ensureSequenceAndRange(), and setWmfExternalHeader().


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