Go to the documentation of this file.
28 #ifndef __WPG2PARSER_H__
29 #define __WPG2PARSER_H__
36 #include <librevenge/librevenge.h>
65 librevenge::RVNGPropertyList
transformPoint(const ::librevenge::RVNGPropertyList &p)
const
67 librevenge::RVNGPropertyList propList;
68 propList.insert(
"svg:x", (
element[0][0]*p[
"svg:x"]->getDouble() +
element[1][0]*p[
"svg:y"]->getDouble() +
element[2][0]));
69 propList.insert(
"svg:y", (
element[0][1]*p[
"svg:x"]->getDouble() +
element[1][1]*p[
"svg:y"]->getDouble() +
element[2][1]));
73 librevenge::RVNGPropertyList
transformRect(const ::librevenge::RVNGPropertyList &r)
const
75 librevenge::RVNGPropertyList propList;
76 double oldx1 = r[
"svg:x"]->getDouble();
77 double oldy1 = r[
"svg:y"]->getDouble();
78 double oldx2 = r[
"svg:x"]->getDouble() + r[
"svg:width"]->getDouble();
79 double oldy2 = r[
"svg:y"]->getDouble() + r[
"svg:height"]->getDouble();
86 propList.insert(
"svg:x", (
double)newx1);
87 propList.insert(
"svg:y", (
double)newy1);
88 propList.insert(
"svg:width", (newx2-newx1));
89 propList.insert(
"svg:height", (newy2-newy1));
97 for (
int i = 0; i < 3; i++)
98 for (
int j = 0; j < 3; j++)
101 for (
int k = 0; k < 3; k++)
105 for (
int x = 0; x < 3; x++)
106 for (
int y = 0; y < 3; y++)
115 if (d >
double(std::numeric_limits<long>::max()))
116 return std::numeric_limits<long>::max();
117 else if (d <
double(std::numeric_limits<long>::min()))
118 return std::numeric_limits<long>::min();
188 WPG2Parser(librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *painter,
bool isEmbedded =
false);
189 bool parse()
override;
269 unsigned int m_layerId;
293 #endif // __WPG2PARSER_H__
bool compoundWindingRule
Definition: WPG2Parser.h:142
bool m_success
Definition: WPG2Parser.h:249
int objectIndex
Definition: WPG2Parser.h:169
void handlePenStyleDefinition()
Definition: WPG2Parser.cpp:760
bool filled
Definition: WPG2Parser.cpp:209
bool compoundFilled
Definition: WPG2Parser.h:143
void handleStartWPG()
Definition: WPG2Parser.cpp:554
double x1
Definition: WPG2Parser.h:177
double y1
Definition: WPG2Parser.h:160
bool translate
Definition: WPG2Parser.cpp:202
long txinteger
Definition: WPG2Parser.cpp:220
double y1
Definition: WPG2Parser.h:168
long m_width
Definition: WPG2Parser.h:256
double x1
Definition: WPG2Parser.h:160
void handleDPBrushForeColor()
Definition: WPG2Parser.cpp:1188
int getDots1() const
Definition: WPGDashArray.cpp:117
bool m_compoundFramed
Definition: WPG2Parser.h:278
void handleColorPalette()
Definition: WPG2Parser.cpp:795
Definition: WPG2Parser.h:185
static const unsigned char defaultWPG2PaletteBlue[]
Definition: WPG2Parser.cpp:162
WPGTextDataContext m_textData
Definition: WPG2Parser.h:283
libwpg::WPGColor m_penBackColor
Definition: WPG2Parser.h:261
Definition: WPGColor.h:34
static const unsigned char defaultWPG2PaletteGreen[]
Definition: WPG2Parser.cpp:126
std::vector< librevenge::RVNGString > mimeTypes
Definition: WPG2Parser.h:170
void handleDPPenSize()
Definition: WPG2Parser.cpp:976
bool compoundClosed
Definition: WPG2Parser.h:145
unsigned int readVariableLengthInteger()
Definition: WPGXParser.cpp:79
void handleTextData()
Definition: WPG2Parser.cpp:2411
long m_xofs
Definition: WPG2Parser.h:254
double y2
Definition: WPG2Parser.h:177
librevenge::RVNGPropertyListVector m_gradient
Definition: WPG2Parser.h:265
void handleBrushForeColor()
Definition: WPG2Parser.cpp:1093
bool parse() override
Definition: WPG2Parser.cpp:317
void flushCompoundPolygon()
Definition: WPG2Parser.cpp:727
bool taper
Definition: WPG2Parser.cpp:201
double m_gradientAngle
Definition: WPG2Parser.h:272
void handlePenBackColor()
Definition: WPG2Parser.cpp:878
librevenge::RVNGPropertyListVector compoundPath
Definition: WPG2Parser.h:140
bool m_graphicsStarted
Definition: WPG2Parser.h:251
bool hasObjectId
Definition: WPG2Parser.cpp:206
double x2
Definition: WPG2Parser.h:177
WPGTextDataContext()
Definition: WPG2Parser.h:182
bool skew
Definition: WPG2Parser.cpp:203
void handleObjectImage()
Definition: WPG2Parser.cpp:2281
void handleRectangle()
Definition: WPG2Parser.cpp:1630
long m_recordEnd
Definition: WPG2Parser.h:248
const librevenge::RVNGString getColorString() const
Definition: WPGColor.cpp:68
void handleTextPath()
Definition: WPG2Parser.cpp:2403
void handleBrushPattern()
Definition: WPG2Parser.cpp:1331
bool scale
Definition: WPG2Parser.cpp:204
long hres
Definition: WPG2Parser.h:161
bool framed
Definition: WPG2Parser.cpp:211
Definition: WPG2Parser.h:135
void handleTextBlock()
Definition: WPG2Parser.cpp:2366
void handleLayer()
Definition: WPG2Parser.cpp:696
Definition: WPGBitmap.h:39
librevenge::RVNGDrawingInterface * m_painter
Definition: WPGXParser.h:57
void add(double p)
Definition: WPGDashArray.cpp:142
void handleArc()
Definition: WPG2Parser.cpp:1683
long kxsin
Definition: WPG2Parser.cpp:218
Definition: WPGXParser.h:39
long sxcos
Definition: WPG2Parser.cpp:216
void handleTextLine()
Definition: WPG2Parser.cpp:2329
void handleLineJoin()
Definition: WPG2Parser.cpp:1009
bool m_compoundWindingRule
Definition: WPG2Parser.h:276
void handlePolyspline()
Definition: WPG2Parser.cpp:1531
bool m_vFlipped
Definition: WPG2Parser.h:282
void handleObjectCapsule()
Definition: WPG2Parser.cpp:2191
bool windingRule
Definition: WPG2Parser.cpp:208
Definition: WPG2Parser.h:157
void handlePenSize()
Definition: WPG2Parser.cpp:958
libwpg::WPGDashArray m_dashArray
Definition: WPG2Parser.h:264
bool closed
Definition: WPG2Parser.cpp:210
void handleLineCap()
Definition: WPG2Parser.cpp:995
bool checkRLESize(unsigned bytes) const
Definition: WPG2Parser.cpp:2465
#define DUMP_BINARY_DATA
Definition: WPG2Parser.cpp:42
librevenge::RVNGPropertyList m_style
Definition: WPG2Parser.h:259
unsigned int m_xres
Definition: WPG2Parser.h:252
Definition: WPG2Parser.h:174
static const unsigned char defaultWPG2PaletteRed[]
Definition: WPG2Parser.cpp:90
unsigned int getRemainingRecordLength() const
Definition: WPG2Parser.cpp:2458
WPG2TransformMatrix matrix
Definition: WPG2Parser.cpp:227
double getDots2Length() const
Definition: WPGDashArray.cpp:132
unsigned short flags
Definition: WPG2Parser.h:178
double y2
Definition: WPG2Parser.h:168
long m_height
Definition: WPG2Parser.h:257
WPG2TransformMatrix matrix
Definition: WPG2Parser.h:127
WPGCompoundPolygon()
Definition: WPG2Parser.h:132
unsigned char vertAlign
Definition: WPG2Parser.h:179
unsigned long getRemainingLength(librevenge::RVNGInputStream *const input)
Definition: libwpg_utils.cpp:71
long py
Definition: WPG2Parser.cpp:225
ObjectCharacterization()
Definition: WPG2Parser.cpp:229
void resetPalette()
Definition: WPG2Parser.cpp:2445
void handleDPPenBackColor()
Definition: WPG2Parser.cpp:898
WPGBinaryDataContext m_binaryData
Definition: WPG2Parser.h:281
long px
Definition: WPG2Parser.cpp:224
WPGGroupContext()
Definition: WPG2Parser.h:147
void handleDPColorPalette()
Definition: WPG2Parser.cpp:814
unsigned short readU16()
Definition: WPGXParser.cpp:53
void handlePenForeColor()
Definition: WPG2Parser.cpp:833
int m_recordLength
Definition: WPG2Parser.h:247
void handleBitmapData()
Definition: WPG2Parser.cpp:1819
unsigned short txfraction
Definition: WPG2Parser.cpp:221
libwpg::WPGColor m_penForeColor
Definition: WPG2Parser.h:260
void handleBrushGradient()
Definition: WPG2Parser.cpp:1023
librevenge::RVNGInputStream * m_input
Definition: WPGXParser.h:56
long tyinteger
Definition: WPG2Parser.cpp:222
void handlePolyline()
Definition: WPG2Parser.cpp:1437
WPGBinaryDataContext()
Definition: WPG2Parser.h:171
bool isFilled
Definition: WPG2Parser.h:128
void handleBitmap()
Definition: WPG2Parser.cpp:1769
libwpg::WPGColor m_brushBackColor
Definition: WPG2Parser.h:263
double x1
Definition: WPG2Parser.h:168
WPG2TransformMatrix compoundMatrix
Definition: WPG2Parser.h:141
long vres
Definition: WPG2Parser.h:161
double rotationAngle
Definition: WPG2Parser.cpp:215
WPG2Parser(librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *painter, bool isEmbedded=false)
Definition: WPG2Parser.cpp:258
void handleDPBrushGradient()
Definition: WPG2Parser.cpp:1058
std::stack< WPGGroupContext > m_groupStack
Definition: WPG2Parser.h:274
void handleFormSettings()
Definition: WPG2Parser.cpp:674
bool m_hFlipped
Definition: WPG2Parser.h:282
WPGBitmapContext m_bitmap
Definition: WPG2Parser.h:280
const librevenge::RVNGBinaryData & getDIB() const
Definition: WPGBitmap.cpp:149
bool m_doublePrecision
Definition: WPG2Parser.h:258
std::map< unsigned int, libwpg::WPGDashArray > m_dashArrayStyles
Definition: WPG2Parser.h:266
Definition: WPGTextDataHandler.h:33
libwpg::WPGColor m_brushForeColor
Definition: WPG2Parser.h:262
bool m_exit
Definition: WPG2Parser.h:250
int readS32()
Definition: WPGXParser.cpp:74
Definition: WPG2Parser.h:124
double y1
Definition: WPG2Parser.h:177
Definition: WPG2Parser.h:165
unsigned short tyfraction
Definition: WPG2Parser.cpp:223
void parseCharacterization(ObjectCharacterization *)
Definition: WPG2Parser.cpp:1351
unsigned subIndex
Definition: WPG2Parser.h:138
librevenge::RVNGPropertyList m_gradientRef
Definition: WPG2Parser.h:273
double x2
Definition: WPG2Parser.h:160
long sycos
Definition: WPG2Parser.cpp:217
WPGBitmapContext()
Definition: WPG2Parser.h:162
double baseLineAngle
Definition: WPG2Parser.h:181
bool isFramed
Definition: WPG2Parser.h:129
int getDots2() const
Definition: WPGDashArray.cpp:127
double x2
Definition: WPG2Parser.h:168
Definition: WPGDashArray.h:36
bool m_drawTextData
Definition: WPG2Parser.h:284
void transformXY(long &x, long &y) const
Definition: WPG2Parser.cpp:2477
bool isClosed
Definition: WPG2Parser.h:130
double getDots1Length() const
Definition: WPGDashArray.cpp:122
Definition: WPG2Parser.cpp:198
void handlePenStyle()
Definition: WPG2Parser.cpp:933
void setPixel(int x, int y, const WPGColor &color)
Definition: WPGBitmap.cpp:141
void handlePolycurve()
Definition: WPG2Parser.cpp:1544
void handleCompoundPolygon()
Definition: WPG2Parser.cpp:713
void setPenStyle()
Definition: WPG2Parser.cpp:919
unsigned char readU8()
Definition: WPGXParser.cpp:41
int numObjects
Definition: WPG2Parser.h:169
double getOpacity() const
Definition: WPGColor.cpp:75
unsigned long lockFlags
Definition: WPG2Parser.cpp:214
WPG2TransformMatrix m_compoundMatrix
Definition: WPG2Parser.h:275
unsigned int m_yres
Definition: WPG2Parser.h:253
unsigned char horAlign
Definition: WPG2Parser.h:180
bool m_compoundClosed
Definition: WPG2Parser.h:279
double getDistance() const
Definition: WPGDashArray.cpp:137
#define WPG_DEBUG_MSG(M)
Definition: libwpg_utils.h:56
bool compoundFramed
Definition: WPG2Parser.h:144
bool m_compoundFilled
Definition: WPG2Parser.h:277
short readS16()
Definition: WPGXParser.cpp:69
long m_yofs
Definition: WPG2Parser.h:255
double toDouble(long x) const
Definition: WPG2Parser.cpp:2472
void handleDPBrushBackColor()
Definition: WPG2Parser.cpp:1306
int parentType
Definition: WPG2Parser.h:139
#define M_PI
Definition: WPG2Parser.cpp:50
bool isCompoundPolygon() const
Definition: WPG2Parser.h:151
bool editLock
Definition: WPG2Parser.cpp:207
WPG2TransformMatrix m_matrix
Definition: WPG2Parser.h:271
std::map< int, libwpg::WPGColor > m_colorPalette
Definition: WPGXParser.h:58
unsigned int readU32()
Definition: WPGXParser.cpp:60
bool rotate
Definition: WPG2Parser.cpp:205
void handleBrushBackColor()
Definition: WPG2Parser.cpp:1284
void handleDPPenForeColor()
Definition: WPG2Parser.cpp:854
bool m_layerOpened
Definition: WPG2Parser.h:267
unsigned long objectId
Definition: WPG2Parser.cpp:213
long kysin
Definition: WPG2Parser.cpp:219
void handleEndWPG()
Definition: WPG2Parser.cpp:661
double y2
Definition: WPG2Parser.h:160
Generated for libwpg by
doxygen 1.8.16