CDRParser.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3 * This file is part of the libcdr project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10 #ifndef __CDRPARSER_H__
11 #define __CDRPARSER_H__
12
13 #include <memory>
14 #include <vector>
15 #include <map>
16 #include <stack>
17 #include <librevenge-stream/librevenge-stream.h>
18 #include "CDRTypes.h"
19 #include "CommonParser.h"
20
21 namespace libcdr
22 {
23
24 class CDRCollector;
25
26 class CDRParser : protected CommonParser
27 {
28 public:
29 explicit CDRParser(const std::vector<std::unique_ptr<librevenge::RVNGInputStream>> &externalStreams, CDRCollector *collector);
30 ~CDRParser() override;
31 bool parseRecords(librevenge::RVNGInputStream *input, const std::vector<unsigned> &blockLengths = std::vector<unsigned>(), unsigned level = 0);
32 bool parseWaldo(librevenge::RVNGInputStream *input);
33
34 private:
35 CDRParser();
36 CDRParser(const CDRParser &);
37 CDRParser &operator=(const CDRParser &);
38 bool parseWaldoStructure(librevenge::RVNGInputStream *input, std::stack<WaldoRecordType1> &waldoStack,
39 const std::map<unsigned, WaldoRecordType1> &records1,
40 std::map<unsigned, WaldoRecordInfo> &records2);
41 bool gatherWaldoInformation(librevenge::RVNGInputStream *input, std::vector<WaldoRecordInfo> &records, std::map<unsigned, WaldoRecordInfo> &records2,
42 std::map<unsigned, WaldoRecordInfo> &records3, std::map<unsigned, WaldoRecordInfo> &records4,
43 std::map<unsigned, WaldoRecordInfo> &records6, std::map<unsigned, WaldoRecordInfo> &records7,
44 std::map<unsigned, WaldoRecordInfo> &records8, std::map<unsigned, WaldoRecordInfo> recordsOther);
45 void readWaldoRecord(librevenge::RVNGInputStream *input, const WaldoRecordInfo &info);
46 bool parseRecord(librevenge::RVNGInputStream *input, const std::vector<unsigned> &blockLengths = std::vector<unsigned>(), unsigned level = 0);
47 void readRecord(unsigned fourCC, unsigned length, librevenge::RVNGInputStream *input);
48 double readRectCoord(librevenge::RVNGInputStream *input);
49 CDRColor readColor(librevenge::RVNGInputStream *input);
50
51 void readRectangle(librevenge::RVNGInputStream *input);
52 void readEllipse(librevenge::RVNGInputStream *input);
53 void readLineAndCurve(librevenge::RVNGInputStream *input);
54 void readBitmap(librevenge::RVNGInputStream *input);
55 void readPageSize(librevenge::RVNGInputStream *input);
56 void readWaldoBmp(librevenge::RVNGInputStream *input, unsigned length, unsigned id);
57 void readWaldoBmpf(librevenge::RVNGInputStream *input, unsigned id);
58 void readWaldoTrfd(librevenge::RVNGInputStream *input);
59 void readWaldoOutl(librevenge::RVNGInputStream *input);
60 void readWaldoFill(librevenge::RVNGInputStream *input);
61 void readWaldoLoda(librevenge::RVNGInputStream *input, unsigned length);
62 void readOpacity(librevenge::RVNGInputStream *input, unsigned length);
63 void readTrfd(librevenge::RVNGInputStream *input, unsigned length);
64 void readFild(librevenge::RVNGInputStream *input, unsigned length);
65 void readOutl(librevenge::RVNGInputStream *input, unsigned length);
66 void readLoda(librevenge::RVNGInputStream *input, unsigned length);
67 void readFlags(librevenge::RVNGInputStream *input, unsigned length);
68 void readMcfg(librevenge::RVNGInputStream *input, unsigned length);
69 void readPath(librevenge::RVNGInputStream *input);
70 void readArrw(librevenge::RVNGInputStream *input, unsigned length);
71 void readPolygonCoords(librevenge::RVNGInputStream *input);
72 void readPolygonTransform(librevenge::RVNGInputStream *input);
73 void readBmp(librevenge::RVNGInputStream *input, unsigned length);
74 void readBmpf(librevenge::RVNGInputStream *input, unsigned length);
75 void readPpdt(librevenge::RVNGInputStream *input, unsigned length);
76 void readFtil(librevenge::RVNGInputStream *input, unsigned length);
77 void readDisp(librevenge::RVNGInputStream *input, unsigned length);
78 void readVersion(librevenge::RVNGInputStream *input, unsigned length);
79 void readIccd(librevenge::RVNGInputStream *input, unsigned length);
80 void readBBox(librevenge::RVNGInputStream *input, unsigned length);
81 void readSpnd(librevenge::RVNGInputStream *input, unsigned length);
82 void readVpat(librevenge::RVNGInputStream *input, unsigned length);
83 void readUidr(librevenge::RVNGInputStream *input, unsigned length);
84 void readFont(librevenge::RVNGInputStream *input, unsigned length);
85 void readStlt(librevenge::RVNGInputStream *input, unsigned length);
86 void readStyd(librevenge::RVNGInputStream *input);
87 void readTxsm(librevenge::RVNGInputStream *input, unsigned length);
88 void readTxsm16(librevenge::RVNGInputStream *input);
89 void readTxsm6(librevenge::RVNGInputStream *input);
90 void readTxsm5(librevenge::RVNGInputStream *input);
91 void readUdta(librevenge::RVNGInputStream *input);
92 void readArtisticText(librevenge::RVNGInputStream *input);
93 void readParagraphText(librevenge::RVNGInputStream *input);
94
95 bool _redirectX6Chunk(librevenge::RVNGInputStream **input, unsigned &length);
96 void _readX6StyleString(librevenge::RVNGInputStream *input, unsigned length, CDRStyle &style);
97
98 const std::vector<std::unique_ptr<librevenge::RVNGInputStream>> &m_externalStreams;
99
100 std::map<unsigned, CDRFont> m_fonts;
101 std::map<unsigned, CDRFillStyle> m_fillStyles;
102 std::map<unsigned, CDRLineStyle> m_lineStyles;
103 std::map<unsigned, CDRPath> m_arrows;
104
105 unsigned m_version;
106 unsigned m_waldoOutlId;
107 unsigned m_waldoFillId;
108
109 };
110
111 } // namespace libcdr
112
113 #endif // __CDRPARSER_H__
114 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
palette_19_11_Y
static const unsigned char palette_19_11_Y[]
Definition: CDRColorPalettes.h:2490
libcdr::CDRLineStyle::lineWidth
double lineWidth
Definition: CDRTypes.h:118
libcdr::EndOfStreamException
Definition: libcdr_utils.h:99
CDR_FOURCC_loda
#define CDR_FOURCC_loda
Definition: CDRDocumentStructure.h:83
libcdr::readU8
uint8_t readU8(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:163
palette_19_0B_C
static const unsigned char palette_19_0B_C[]
Definition: CDRColorPalettes.h:1936
CDR_FOURCC_lobj
#define CDR_FOURCC_lobj
Definition: CDRDocumentStructure.h:84
CDRParser.h
palette_19_16_M
static const unsigned char palette_19_16_M[]
Definition: CDRColorPalettes.h:3046
palette_0E_22_A
static const unsigned char palette_0E_22_A[]
Definition: CDRColorPalettes.h:6515
palette_19_11_M
static const unsigned char palette_19_11_M[]
Definition: CDRColorPalettes.h:2420
libcdr::CDRParser::m_externalStreams
const std::vector< std::unique_ptr< librevenge::RVNGInputStream > > & m_externalStreams
Definition: CDRParser.h:98
libcdr::CDRParser::readRectCoord
double readRectCoord(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:682
libcdr::CDRParser::m_arrows
std::map< unsigned, CDRPath > m_arrows
Definition: CDRParser.h:103
palette_19_08_Y
static const unsigned char palette_19_08_Y[]
Definition: CDRColorPalettes.h:901
CDR_FOURCC_vpat
#define CDR_FOURCC_vpat
Definition: CDRDocumentStructure.h:142
CDR_FOURCC_flgs
#define CDR_FOURCC_flgs
Definition: CDRDocumentStructure.h:53
CDR_FOURCC_outl
#define CDR_FOURCC_outl
Definition: CDRDocumentStructure.h:95
CDR_FOURCC_trfd
#define CDR_FOURCC_trfd
Definition: CDRDocumentStructure.h:125
libcdr::CDRParser::readFtil
void readFtil(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2395
libcdr::CDRParser::readBitmap
void readBitmap(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1468
libcdr::CDRGradientStop::m_color
CDRColor m_color
Definition: CDRTypes.h:64
libcdr::getLength
unsigned long getLength(librevenge::RVNGInputStream *input)
Definition: libcdr_utils.cpp:270
libcdr::CDRParser::parseRecords
bool parseRecords(librevenge::RVNGInputStream *input, const std::vector< unsigned > &blockLengths=std::vector< unsigned >(), unsigned level=0)
Definition: CDRParser.cpp:491
libcdr::CDRStyle::m_lineStyle
CDRLineStyle m_lineStyle
Definition: CDRTypes.h:144
palette_19_25_K
static const unsigned char palette_19_25_K[]
Definition: CDRColorPalettes.h:5129
libcdr::CDRParser::readPath
void readPath(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1403
palette_19_1B_K
static const unsigned char palette_19_1B_K[]
Definition: CDRColorPalettes.h:4034
palette_19_17_M
static const unsigned char palette_19_17_M[]
Definition: CDRColorPalettes.h:3303
palette_19_0A_C
static const unsigned char palette_19_0A_C[]
Definition: CDRColorPalettes.h:1654
libcdr::CDRParser::readWaldoLoda
void readWaldoLoda(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:454
palette_19_15_M
static const unsigned char palette_19_15_M[]
Definition: CDRColorPalettes.h:2996
STYD_HYPHENS
#define STYD_HYPHENS
Definition: CDRDocumentStructure.h:156
palette_19_09_B
static const unsigned char palette_19_09_B[]
Definition: CDRColorPalettes.h:1437
libcdr::CDRParser::readRecord
void readRecord(unsigned fourCC, unsigned length, librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:600
libcdr::readU64
uint64_t readU64(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:229
CDR_FOURCC_vrsn
#define CDR_FOURCC_vrsn
Definition: CDRDocumentStructure.h:143
CDR_FOURCC_font
#define CDR_FOURCC_font
Definition: CDRDocumentStructure.h:55
palette_19_1B_Y
static const unsigned char palette_19_1B_Y[]
Definition: CDRColorPalettes.h:4024
palette_0E_22_L
static const unsigned char palette_0E_22_L[]
Definition: CDRColorPalettes.h:6384
CDR_FOURCC_ppdt
#define CDR_FOURCC_ppdt
Definition: CDRDocumentStructure.h:99
libcdr::CDRParser::readEllipse
void readEllipse(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1278
libcdr::CDRPath::appendQuadraticBezierTo
void appendQuadraticBezierTo(double x1, double y1, double x, double y)
Definition: CDRPath.cpp:651
CDR_FOURCC_bmpf
#define CDR_FOURCC_bmpf
Definition: CDRDocumentStructure.h:23
libcdr::CDRParser::readBmpf
void readBmpf(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2336
palette_0E_18_A
static const unsigned char palette_0E_18_A[]
Definition: CDRColorPalettes.h:5729
CDR_FOURCC_page
#define CDR_FOURCC_page
Definition: CDRDocumentStructure.h:97
libcdr::WaldoRecordInfo::offset
unsigned offset
Definition: CDRTypes.h:276
libcdr::CDRParser::readPageSize
void readPageSize(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:2265
libcdr::CDRParser::readColor
CDRColor readColor(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:689
CDR_FOURCC_RIFF
#define CDR_FOURCC_RIFF
Definition: CDRDocumentStructure.h:105
CDR_FOURCC_txsm
#define CDR_FOURCC_txsm
Definition: CDRDocumentStructure.h:128
CDR_FOURCC_styd
#define CDR_FOURCC_styd
Definition: CDRDocumentStructure.h:120
libcdr::CDRStyle::m_rightIndent
double m_rightIndent
Definition: CDRTypes.h:143
libcdr::WaldoRecordInfo::type
unsigned char type
Definition: CDRTypes.h:274
CDR_FOURCC_vect
#define CDR_FOURCC_vect
Definition: CDRDocumentStructure.h:141
libcdr::CDRFillStyle::color1
CDRColor color1
Definition: CDRTypes.h:104
libcdr::CDRParser::m_lineStyles
std::map< unsigned, CDRLineStyle > m_lineStyles
Definition: CDRParser.h:102
palette_19_14_C
static const unsigned char palette_19_14_C[]
Definition: CDRColorPalettes.h:2914
palette_19_09_L
static const unsigned char palette_19_09_L[]
Definition: CDRColorPalettes.h:1007
palette_19_1A_C
static const unsigned char palette_19_1A_C[]
Definition: CDRColorPalettes.h:3962
CDR_FOURCC_ftil
#define CDR_FOURCC_ftil
Definition: CDRDocumentStructure.h:56
libcdr::CDRGradientStop
Definition: CDRTypes.h:62
palette_19_03_C
static const unsigned char palette_19_03_C[]
Definition: CDRColorPalettes.h:27
CDR_DEBUG_MSG
#define CDR_DEBUG_MSG(M)
Definition: libcdr_utils.h:56
libcdr::readFixedPoint
double readFixedPoint(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:262
palette_19_15_Y
static const unsigned char palette_19_15_Y[]
Definition: CDRColorPalettes.h:3008
CDR_FOURCC_cmpr
#define CDR_FOURCC_cmpr
Definition: CDRDocumentStructure.h:38
libcdr::CDRParser::readWaldoOutl
void readWaldoOutl(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1536
palette_19_20_B
static const unsigned char palette_19_20_B[]
Definition: CDRColorPalettes.h:4273
libcdr::WaldoRecordInfo
Definition: CDRTypes.h:269
libcdr::CDRParser::parseRecord
bool parseRecord(librevenge::RVNGInputStream *input, const std::vector< unsigned > &blockLengths=std::vector< unsigned >(), unsigned level=0)
Definition: CDRParser.cpp:506
libcdr::CDRLineStyle::color
CDRColor color
Definition: CDRTypes.h:121
libcdr::CDRParser::parseWaldoStructure
bool parseWaldoStructure(librevenge::RVNGInputStream *input, std::stack< WaldoRecordType1 > &waldoStack, const std::map< unsigned, WaldoRecordType1 > &records1, std::map< unsigned, WaldoRecordInfo > &records2)
Definition: CDRParser.cpp:342
libcdr::CDRParser::readArtisticText
void readArtisticText(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3380
palette_19_12_M
static const unsigned char palette_19_12_M[]
Definition: CDRColorPalettes.h:2702
libcdr::CDRParser::readFont
void readFont(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2505
CDR_FOURCC_CPng
#define CDR_FOURCC_CPng
Definition: CDRDocumentStructure.h:40
libcdr::CDRCollector
Definition: CDRCollector.h:61
libcdr::CDRInternalStream
Definition: CDRInternalStream.h:20
CDR_FOURCC_CDR
#define CDR_FOURCC_CDR
Definition: CDRDocumentStructure.h:29
libcdr::CDRStyle::m_align
unsigned m_align
Definition: CDRTypes.h:142
libcdr::CDRStyle::m_parentId
unsigned m_parentId
Definition: CDRTypes.h:146
palette_19_1F_R
static const unsigned char palette_19_1F_R[]
Definition: CDRColorPalettes.h:4201
palette_19_14_K
static const unsigned char palette_19_14_K[]
Definition: CDRColorPalettes.h:2965
CommonParser.h
STYD_BULLETS
#define STYD_BULLETS
Definition: CDRDocumentStructure.h:152
libcdr::CDRParser::readBmp
void readBmp(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2291
STYD_NAME
#define STYD_NAME
Definition: CDRDocumentStructure.h:147
STYD_IDENTS
#define STYD_IDENTS
Definition: CDRDocumentStructure.h:155
libcdr::CDRGradient::m_angle
double m_angle
Definition: CDRTypes.h:75
palette_19_14_M
static const unsigned char palette_19_14_M[]
Definition: CDRColorPalettes.h:2931
palette_19_1F_G
static const unsigned char palette_19_1F_G[]
Definition: CDRColorPalettes.h:4215
libcdr::CDRParser::readUdta
void readUdta(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3256
libcdr::CDRLineStyle
Definition: CDRTypes.h:113
palette_19_1B_C
static const unsigned char palette_19_1B_C[]
Definition: CDRColorPalettes.h:4004
libcdr::CDRParser::readStlt
void readStlt(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2553
palette_19_03_M
static const unsigned char palette_19_03_M[]
Definition: CDRColorPalettes.h:219
palette_19_1A_K
static const unsigned char palette_19_1A_K[]
Definition: CDRColorPalettes.h:3992
libcdr::CDRTransform
Definition: CDRTransforms.h:19
libcdr::CDRParser::readPpdt
void readPpdt(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2370
CDR_FOURCC_fill
#define CDR_FOURCC_fill
Definition: CDRDocumentStructure.h:51
libcdr::readS32
int32_t readS32(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:224
libcdr::CDRParser::readIccd
void readIccd(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2446
palette_19_1E_G
static const unsigned char palette_19_1E_G[]
Definition: CDRColorPalettes.h:4153
CDR_FOURCC_udta
#define CDR_FOURCC_udta
Definition: CDRDocumentStructure.h:131
libcdr::CDRParser::readTxsm16
void readTxsm16(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3003
palette_19_1E_B
static const unsigned char palette_19_1E_B[]
Definition: CDRColorPalettes.h:4176
STYD_FONTS
#define STYD_FONTS
Definition: CDRDocumentStructure.h:150
libcdr::readU16
uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:179
libcdr::CDRInternalStream::isEnd
bool isEnd() override
Definition: CDRInternalStream.cpp:151
palette_19_0B_M
static const unsigned char palette_19_0B_M[]
Definition: CDRColorPalettes.h:2039
libcdr::CDRGradient::m_stops
std::vector< CDRGradientStop > m_stops
Definition: CDRTypes.h:80
STYD_INTERVALS
#define STYD_INTERVALS
Definition: CDRDocumentStructure.h:153
libcdr::CDRParser::readVersion
void readVersion(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2410
palette_19_23_Y
static const unsigned char palette_19_23_Y[]
Definition: CDRColorPalettes.h:4441
libcdr::CDRParser::readOpacity
void readOpacity(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2326
libcdr::CDRParser::readOutl
void readOutl(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2023
libcdr::CDRParser::m_waldoOutlId
unsigned m_waldoOutlId
Definition: CDRParser.h:106
palette_19_11_K
static const unsigned char palette_19_11_K[]
Definition: CDRColorPalettes.h:2560
palette_19_1D_M
static const unsigned char palette_19_1D_M[]
Definition: CDRColorPalettes.h:4098
palette_0E_22_B
static const unsigned char palette_0E_22_B[]
Definition: CDRColorPalettes.h:6646
CDR_FOURCC_lnkg
#define CDR_FOURCC_lnkg
Definition: CDRDocumentStructure.h:81
palette_19_24_K
static const unsigned char palette_19_24_K[]
Definition: CDRColorPalettes.h:4823
libcdr::CDRColor::m_colorValue
unsigned m_colorValue
Definition: CDRTypes.h:56
libcdr::WaldoRecordType1
Definition: CDRTypes.h:279
libcdr::CDRStyle::m_fontName
librevenge::RVNGString m_fontName
Definition: CDRTypes.h:140
CDR_FOURCC_iccd
#define CDR_FOURCC_iccd
Definition: CDRDocumentStructure.h:63
libcdr::CDRLineStyle::lineType
unsigned short lineType
Definition: CDRTypes.h:115
palette_19_08_K
static const unsigned char palette_19_08_K[]
Definition: CDRColorPalettes.h:953
libcdr::appendCharacters
void appendCharacters(librevenge::RVNGString &text, std::vector< unsigned char > characters, unsigned short charset)
Definition: libcdr_utils.cpp:325
libcdr::CDRParser::~CDRParser
~CDRParser() override
Definition: CDRParser.cpp:164
palette_19_08_C
static const unsigned char palette_19_08_C[]
Definition: CDRColorPalettes.h:797
libcdr::CDRGradient::m_centerXOffset
int m_centerXOffset
Definition: CDRTypes.h:78
CDR_FOURCC_bmp
#define CDR_FOURCC_bmp
Definition: CDRDocumentStructure.h:22
palette_19_08_M
static const unsigned char palette_19_08_M[]
Definition: CDRColorPalettes.h:849
palette_19_1C_Y
static const unsigned char palette_19_1C_Y[]
Definition: CDRColorPalettes.h:4066
palette_19_23_C
static const unsigned char palette_19_23_C[]
Definition: CDRColorPalettes.h:4289
libcdr::CDRParser::readDisp
void readDisp(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:1335
libcdr::readS16
int16_t readS16(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:199
CDR_FOURCC_stlt
#define CDR_FOURCC_stlt
Definition: CDRDocumentStructure.h:119
libcdr::CDRParser::m_waldoFillId
unsigned m_waldoFillId
Definition: CDRParser.h:107
STYD_FILL_ID
#define STYD_FILL_ID
Definition: CDRDocumentStructure.h:148
libcdr::CDRParser::readSpnd
void readSpnd(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2472
libcdr::CDRParser::readStyd
void readStyd(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3275
libcdr::CDRParser::readBBox
void readBBox(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2461
CDR_FOURCC_obj
#define CDR_FOURCC_obj
Definition: CDRDocumentStructure.h:92
CDR_FOURCC_cdr
#define CDR_FOURCC_cdr
Definition: CDRDocumentStructure.h:31
libcdr::CDRParser::operator=
CDRParser & operator=(const CDRParser &)
libcdr::CDRParser::m_fillStyles
std::map< unsigned, CDRFillStyle > m_fillStyles
Definition: CDRParser.h:101
palette_19_14_Y
static const unsigned char palette_19_14_Y[]
Definition: CDRColorPalettes.h:2948
libcdr::CDRStyle
Definition: CDRTypes.h:137
libcdr::CDRStyle::m_firstIndent
double m_firstIndent
Definition: CDRTypes.h:143
libcdr::CDRParser::readWaldoBmpf
void readWaldoBmpf(librevenge::RVNGInputStream *input, unsigned id)
Definition: CDRParser.cpp:2347
CDRCollector.h
palette_19_11_C
static const unsigned char palette_19_11_C[]
Definition: CDRColorPalettes.h:2350
CDR_FOURCC_grp
#define CDR_FOURCC_grp
Definition: CDRDocumentStructure.h:60
palette_19_23_M
static const unsigned char palette_19_23_M[]
Definition: CDRColorPalettes.h:4365
libcdr
Definition: CDRCollector.h:24
palette_19_0A_K
static const unsigned char palette_19_0A_K[]
Definition: CDRColorPalettes.h:1864
libcdr::CDRGradient::m_mode
unsigned char m_mode
Definition: CDRTypes.h:74
palette_19_16_K
static const unsigned char palette_19_16_K[]
Definition: CDRColorPalettes.h:3070
palette_19_1F_B
static const unsigned char palette_19_1F_B[]
Definition: CDRColorPalettes.h:4229
CDR_FOURCC_arrw
#define CDR_FOURCC_arrw
Definition: CDRDocumentStructure.h:16
palette_19_20_G
static const unsigned char palette_19_20_G[]
Definition: CDRColorPalettes.h:4259
CDR_FOURCC_bbox
#define CDR_FOURCC_bbox
Definition: CDRDocumentStructure.h:19
STYD_DROPCAPS
#define STYD_DROPCAPS
Definition: CDRDocumentStructure.h:158
palette_0E_21_B
static const unsigned char palette_0E_21_B[]
Definition: CDRColorPalettes.h:6253
palette_19_23_K
static const unsigned char palette_19_23_K[]
Definition: CDRColorPalettes.h:4517
libcdr::CDRPath::appendClosePath
void appendClosePath()
Definition: CDRPath.cpp:666
palette_19_0A_Y
static const unsigned char palette_19_0A_Y[]
Definition: CDRColorPalettes.h:1794
palette_0E_18_L
static const unsigned char palette_0E_18_L[]
Definition: CDRColorPalettes.h:5598
palette_0E_0C_B
static const unsigned char palette_0E_0C_B[]
Definition: CDRColorPalettes.h:5467
palette_19_24_C
static const unsigned char palette_19_24_C[]
Definition: CDRColorPalettes.h:4595
palette_19_16_C
static const unsigned char palette_19_16_C[]
Definition: CDRColorPalettes.h:3034
libcdr::CDRParser
Definition: CDRParser.h:26
palette_19_24_Y
static const unsigned char palette_19_24_Y[]
Definition: CDRColorPalettes.h:4747
libcdr::CDRParser::readFild
void readFild(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:1756
libcdr::CDRParser::readPolygonCoords
void readPolygonCoords(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:2220
palette_19_12_K
static const unsigned char palette_19_12_K[]
Definition: CDRColorPalettes.h:2842
libcdr::CDRParser::readWaldoRecord
void readWaldoRecord(librevenge::RVNGInputStream *input, const WaldoRecordInfo &info)
Definition: CDRParser.cpp:388
libcdr::CDRTransforms::append
void append(double v0, double v1, double x0, double v3, double v4, double y0)
Definition: CDRTransforms.cpp:234
libcdr::CDRPath::appendArcTo
void appendArcTo(double rx, double ry, double rotation, bool longAngle, bool sweep, double x, double y)
Definition: CDRPath.cpp:656
palette_19_1B_M
static const unsigned char palette_19_1B_M[]
Definition: CDRColorPalettes.h:4014
libcdr::CDRColor
Definition: CDRTypes.h:53
libcdr::CDRParser::readTxsm
void readTxsm(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2829
palette_19_15_C
static const unsigned char palette_19_15_C[]
Definition: CDRColorPalettes.h:2984
libcdr::CDRStyle::m_fillStyle
CDRFillStyle m_fillStyle
Definition: CDRTypes.h:145
palette_19_09_A
static const unsigned char palette_19_09_A[]
Definition: CDRColorPalettes.h:1222
STYD_SET5S
#define STYD_SET5S
Definition: CDRDocumentStructure.h:157
libcdr::CDRFillStyle
Definition: CDRTypes.h:101
palette_19_1C_K
static const unsigned char palette_19_1C_K[]
Definition: CDRColorPalettes.h:4076
libcdr::CDRGradient::m_edgeOffset
int m_edgeOffset
Definition: CDRTypes.h:77
libcdr::CDRPath::appendMoveTo
void appendMoveTo(double x, double y)
Definition: CDRPath.cpp:636
palette_19_15_K
static const unsigned char palette_19_15_K[]
Definition: CDRColorPalettes.h:3020
palette_19_0B_K
static const unsigned char palette_19_0B_K[]
Definition: CDRColorPalettes.h:2245
CDRTypes.h
palette_19_03_Y
static const unsigned char palette_19_03_Y[]
Definition: CDRColorPalettes.h:411
libcdr::CommonParser
Definition: CommonParser.h:27
libcdr::CDRParser::m_version
unsigned m_version
Definition: CDRParser.h:105
CDR_FOURCC_fild
#define CDR_FOURCC_fild
Definition: CDRDocumentStructure.h:50
libcdr::CDRTransforms
Definition: CDRTransforms.h:48
CDRDocumentStructure.h
STYD_ALIGN
#define STYD_ALIGN
Definition: CDRDocumentStructure.h:151
libcdr::CDRStyle::m_fontSize
double m_fontSize
Definition: CDRTypes.h:141
libcdr::CDRParser::parseWaldo
bool parseWaldo(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:169
palette_19_16_Y
static const unsigned char palette_19_16_Y[]
Definition: CDRColorPalettes.h:3058
palette_0E_21_A
static const unsigned char palette_0E_21_A[]
Definition: CDRColorPalettes.h:6122
CDR_FOURCC_uidr
#define CDR_FOURCC_uidr
Definition: CDRDocumentStructure.h:132
libcdr::CDRParser::readArrw
void readArrw(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:1432
libcdr::CDRParser::readVpat
void readVpat(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2480
libcdr::CDRParser::readParagraphText
void readParagraphText(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3387
CDR_FOURCC_spnd
#define CDR_FOURCC_spnd
Definition: CDRDocumentStructure.h:118
libcdr::GenericException
Definition: libcdr_utils.h:103
libcdr::CDRParser::CDRParser
CDRParser()
CDR_FOURCC_mcfg
#define CDR_FOURCC_mcfg
Definition: CDRDocumentStructure.h:87
palette_19_1A_M
static const unsigned char palette_19_1A_M[]
Definition: CDRColorPalettes.h:3972
palette_19_17_C
static const unsigned char palette_19_17_C[]
Definition: CDRColorPalettes.h:3084
libcdr::PRECISION_32BIT
Definition: CommonParser.h:25
libcdr::CDRFillStyle::fillType
unsigned short fillType
Definition: CDRTypes.h:103
STYD_TABS
#define STYD_TABS
Definition: CDRDocumentStructure.h:154
palette_19_0B_Y
static const unsigned char palette_19_0B_Y[]
Definition: CDRColorPalettes.h:2142
libcdr::CDRGradientStop::m_offset
double m_offset
Definition: CDRTypes.h:65
M_PI
#define M_PI
Definition: libcdr_utils.h:27
libcdr::CDRTransforms::empty
bool empty() const
Definition: CDRTransforms.cpp:249
libcdr::CDRParser::readWaldoBmp
void readWaldoBmp(librevenge::RVNGInputStream *input, unsigned length, unsigned id)
Definition: CDRParser.cpp:2272
libcdr::CDRGradient
Definition: CDRTypes.h:71
palette_0E_18_B
static const unsigned char palette_0E_18_B[]
Definition: CDRColorPalettes.h:5860
libcdr::CDRStyle::m_leftIndent
double m_leftIndent
Definition: CDRTypes.h:143
palette_19_12_C
static const unsigned char palette_19_12_C[]
Definition: CDRColorPalettes.h:2632
libcdr::readDouble
double readDouble(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:249
palette_19_1E_R
static const unsigned char palette_19_1E_R[]
Definition: CDRColorPalettes.h:4130
libcdr::CDRParser::readWaldoTrfd
void readWaldoTrfd(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:414
palette_19_25_Y
static const unsigned char palette_19_25_Y[]
Definition: CDRColorPalettes.h:5053
libcdr::CDRPath::appendLineTo
void appendLineTo(double x, double y)
Definition: CDRPath.cpp:641
palette_19_1D_K
static const unsigned char palette_19_1D_K[]
Definition: CDRColorPalettes.h:4118
libcdr::CDRGradient::m_midPoint
double m_midPoint
Definition: CDRTypes.h:76
libcdr::CDRParser::_redirectX6Chunk
bool _redirectX6Chunk(librevenge::RVNGInputStream **input, unsigned &length)
Definition: CDRParser.cpp:2421
libcdr::CDRParser::readMcfg
void readMcfg(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2190
libcdr::CDRParser::readRectangle
void readRectangle(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1162
libcdr::CDRParser::readUidr
void readUidr(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2494
palette_0E_0C_A
static const unsigned char palette_0E_0C_A[]
Definition: CDRColorPalettes.h:5336
palette_19_24_M
static const unsigned char palette_19_24_M[]
Definition: CDRColorPalettes.h:4671
libcdr::CDRParser::readFlags
void readFlags(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2182
libcdr::CDRParser::readWaldoFill
void readWaldoFill(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1569
libcdr::CDRParser::readTxsm6
void readTxsm6(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3108
CDR_FOURCC_DISP
#define CDR_FOURCC_DISP
Definition: CDRDocumentStructure.h:44
palette_0E_21_L
static const unsigned char palette_0E_21_L[]
Definition: CDRColorPalettes.h:5991
palette_19_1D_Y
static const unsigned char palette_19_1D_Y[]
Definition: CDRColorPalettes.h:4108
palette_19_1D_C
static const unsigned char palette_19_1D_C[]
Definition: CDRColorPalettes.h:4088
libcdr::CDRPath
Definition: CDRPath.h:36
palette_19_25_M
static const unsigned char palette_19_25_M[]
Definition: CDRColorPalettes.h:4977
palette_19_0A_M
static const unsigned char palette_19_0A_M[]
Definition: CDRColorPalettes.h:1724
libcdr::CDRParser::readTrfd
void readTrfd(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:1663
libcdr::WaldoRecordInfo::id
unsigned id
Definition: CDRTypes.h:275
libcdr_utils.h
libcdr::CDRParser::m_fonts
std::map< unsigned, CDRFont > m_fonts
Definition: CDRParser.h:100
libcdr::CDRParser::gatherWaldoInformation
bool gatherWaldoInformation(librevenge::RVNGInputStream *input, std::vector< WaldoRecordInfo > &records, std::map< unsigned, WaldoRecordInfo > &records2, std::map< unsigned, WaldoRecordInfo > &records3, std::map< unsigned, WaldoRecordInfo > &records4, std::map< unsigned, WaldoRecordInfo > &records6, std::map< unsigned, WaldoRecordInfo > &records7, std::map< unsigned, WaldoRecordInfo > &records8, std::map< unsigned, WaldoRecordInfo > recordsOther)
Definition: CDRParser.cpp:291
libcdr::CDRParser::readPolygonTransform
void readPolygonTransform(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:2246
palette_19_1C_M
static const unsigned char palette_19_1C_M[]
Definition: CDRColorPalettes.h:4056
CDRColorPalettes.h
libcdr::CDRGradient::m_centerYOffset
int m_centerYOffset
Definition: CDRTypes.h:79
libcdr::PRECISION_16BIT
Definition: CommonParser.h:25
libcdr::CDRGradient::m_type
unsigned char m_type
Definition: CDRTypes.h:73
libcdr::CDRColor::m_colorModel
unsigned short m_colorModel
Definition: CDRTypes.h:55
libcdr::CDRParser::readTxsm5
void readTxsm5(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:3182
libcdr::getRemainingLength
unsigned long getRemainingLength(librevenge::RVNGInputStream *input)
Definition: libcdr_utils.cpp:301
libcdr::readU32
uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian=false)
Definition: libcdr_utils.cpp:204
CDR_FOURCC_clpt
#define CDR_FOURCC_clpt
Definition: CDRDocumentStructure.h:37
libcdr::CDRParser::readLoda
void readLoda(librevenge::RVNGInputStream *input, unsigned length)
Definition: CDRParser.cpp:2084
palette_19_25_C
static const unsigned char palette_19_25_C[]
Definition: CDRColorPalettes.h:4901
CDR_FOURCC_LIST
#define CDR_FOURCC_LIST
Definition: CDRDocumentStructure.h:80
libcdr::CDRParser::_readX6StyleString
void _readX6StyleString(librevenge::RVNGInputStream *input, unsigned length, CDRStyle &style)
Definition: CDRParser.cpp:3395
STYD_OUTL_ID
#define STYD_OUTL_ID
Definition: CDRDocumentStructure.h:149
palette_19_20_R
static const unsigned char palette_19_20_R[]
Definition: CDRColorPalettes.h:4245
palette_19_1A_Y
static const unsigned char palette_19_1A_Y[]
Definition: CDRColorPalettes.h:3982
palette_19_12_Y
static const unsigned char palette_19_12_Y[]
Definition: CDRColorPalettes.h:2772
palette_19_1C_C
static const unsigned char palette_19_1C_C[]
Definition: CDRColorPalettes.h:4046
libcdr::CDRParser::readLineAndCurve
void readLineAndCurve(librevenge::RVNGInputStream *input)
Definition: CDRParser.cpp:1378
palette_19_17_K
static const unsigned char palette_19_17_K[]
Definition: CDRColorPalettes.h:3741
palette_0E_0C_L
static const unsigned char palette_0E_0C_L[]
Definition: CDRColorPalettes.h:5205
libcdr::CDRImageFill
Definition: CDRTypes.h:85
palette_19_03_K
static const unsigned char palette_19_03_K[]
Definition: CDRColorPalettes.h:603
libcdr::CDRFont
Definition: CDRTypes.h:367
CDRInternalStream.h
libcdr::CDRFillStyle::color2
CDRColor color2
Definition: CDRTypes.h:104
libcdr::CDRStyle::m_charSet
unsigned short m_charSet
Definition: CDRTypes.h:139
palette_19_17_Y
static const unsigned char palette_19_17_Y[]
Definition: CDRColorPalettes.h:3522