10 #ifndef VSDCONTENTCOLLECTOR_H
11 #define VSDCONTENTCOLLECTOR_H
34 librevenge::RVNGDrawingInterface *painter,
35 std::vector<std::map<unsigned, XForm> > &groupXFormsSequence,
36 std::vector<std::map<unsigned, unsigned> > &groupMembershipsSequence,
37 std::vector<std::list<unsigned> > &documentPageShapeOrders,
45 void collectEllipticalArcTo(
unsigned id,
unsigned level,
double x3,
double y3,
double x2,
double y2,
double angle,
double ecc);
48 void collectOLEData(
unsigned id,
unsigned level,
const librevenge::RVNGBinaryData &oleData);
49 void collectEllipse(
unsigned id,
unsigned level,
double cx,
double cy,
double xleft,
double yleft,
double xtop,
double ytop);
50 void collectLine(
unsigned level,
const boost::optional<double> &strokeWidth,
const boost::optional<Colour> &c,
const boost::optional<unsigned char> &linePattern,
51 const boost::optional<unsigned char> &startMarker,
const boost::optional<unsigned char> &endMarker,
52 const boost::optional<unsigned char> &lineCap);
53 void collectFillAndShadow(
unsigned level,
const boost::optional<Colour> &colourFG,
const boost::optional<Colour> &colourBG,
54 const boost::optional<unsigned char> &fillPattern,
const boost::optional<double> &fillFGTransparency,
55 const boost::optional<double> &fillBGTransparency,
const boost::optional<unsigned char> &shadowPattern,
56 const boost::optional<Colour> &shfgc,
const boost::optional<double> &shadowOffsetX,
const boost::optional<double> &shadowOffsetY);
57 void collectFillAndShadow(
unsigned level,
const boost::optional<Colour> &colourFG,
const boost::optional<Colour> &colourBG,
58 const boost::optional<unsigned char> &fillPattern,
const boost::optional<double> &fillFGTransparency,
59 const boost::optional<double> &fillBGTransparency,
const boost::optional<unsigned char> &shadowPattern,
60 const boost::optional<Colour> &shfgc);
61 void collectThemeReference(
unsigned level,
const boost::optional<long> &lineColour,
const boost::optional<long> &fillColour,
62 const boost::optional<long> &shadowColour,
const boost::optional<long> &fontColour);
63 void collectGeometry(
unsigned id,
unsigned level,
bool noFill,
bool noLine,
bool noShow);
64 void collectMoveTo(
unsigned id,
unsigned level,
double x,
double y);
65 void collectLineTo(
unsigned id,
unsigned level,
double x,
double y);
66 void collectArcTo(
unsigned id,
unsigned level,
double x2,
double y2,
double bow);
67 void collectNURBSTo(
unsigned id,
unsigned level,
double x2,
double y2,
unsigned char xType,
unsigned char yType,
unsigned degree,
68 const std::vector<std::pair<double, double> > &ctrlPnts,
const std::vector<double> &kntVec,
const std::vector<double> &weights);
69 void collectNURBSTo(
unsigned id,
unsigned level,
double x2,
double y2,
double knot,
double knotPrev,
double weight,
double weightPrev,
unsigned dataID);
70 void collectNURBSTo(
unsigned id,
unsigned level,
double x2,
double y2,
double knot,
double knotPrev,
double weight,
double weightPrev,
const NURBSData &data);
71 void collectPolylineTo(
unsigned id,
unsigned level,
double x,
double y,
unsigned char xType,
unsigned char yType,
72 const std::vector<std::pair<double, double> > &points);
73 void collectPolylineTo(
unsigned id,
unsigned level,
double x,
double y,
unsigned dataID);
75 void collectShapeData(
unsigned id,
unsigned level,
unsigned char xType,
unsigned char yType,
unsigned degree,
double lastKnot,
76 std::vector<std::pair<double, double> > controlPoints, std::vector<double> knotVector, std::vector<double> weights);
77 void collectShapeData(
unsigned id,
unsigned level,
unsigned char xType,
unsigned char yType, std::vector<std::pair<double, double> > points);
80 void collectShapesOrder(
unsigned id,
unsigned level,
const std::vector<unsigned> &shapeIds);
81 void collectForeignDataType(
unsigned level,
unsigned foreignType,
unsigned foreignFormat,
double offsetX,
double offsetY,
double width,
double height);
82 void collectPageProps(
unsigned id,
unsigned level,
double pageWidth,
double pageHeight,
double shadowOffsetX,
double shadowOffsetY,
double scale);
83 void collectPage(
unsigned id,
unsigned level,
unsigned backgroundPageID,
bool isBackgroundPage,
const VSDName &pageName);
84 void collectShape(
unsigned id,
unsigned level,
unsigned parent,
unsigned masterPage,
unsigned masterShape,
unsigned lineStyle,
unsigned fillStyle,
unsigned textStyle);
85 void collectSplineStart(
unsigned id,
unsigned level,
double x,
double y,
double secondKnot,
double firstKnot,
double lastKnot,
unsigned degree);
86 void collectSplineKnot(
unsigned id,
unsigned level,
double x,
double y,
double knot);
88 void collectInfiniteLine(
unsigned id,
unsigned level,
double x1,
double y1,
double x2,
double y2);
89 void collectRelCubBezTo(
unsigned id,
unsigned level,
double x,
double y,
double a,
double b,
double c,
double d);
93 void collectRelQuadBezTo(
unsigned id,
unsigned level,
double x,
double y,
double a,
double b);
98 void collectCharIX(
unsigned id,
unsigned level,
unsigned charCount,
const boost::optional<VSDName> &font,
99 const boost::optional<Colour> &fontColour,
const boost::optional<double> &fontSize,
const boost::optional<bool> &bold,
100 const boost::optional<bool> &italic,
const boost::optional<bool> &underline,
const boost::optional<bool> &doubleunderline,
101 const boost::optional<bool> &strikeout,
const boost::optional<bool> &doublestrikeout,
const boost::optional<bool> &allcaps,
102 const boost::optional<bool> &initcaps,
const boost::optional<bool> &smallcaps,
const boost::optional<bool> &superscript,
103 const boost::optional<bool> &subscript);
104 void collectDefaultCharStyle(
unsigned charCount,
const boost::optional<VSDName> &font,
const boost::optional<Colour> &fontColour,
105 const boost::optional<double> &fontSize,
const boost::optional<bool> &bold,
const boost::optional<bool> &italic,
106 const boost::optional<bool> &underline,
const boost::optional<bool> &doubleunderline,
const boost::optional<bool> &strikeout,
107 const boost::optional<bool> &doublestrikeout,
const boost::optional<bool> &allcaps,
const boost::optional<bool> &initcaps,
108 const boost::optional<bool> &smallcaps,
const boost::optional<bool> &superscript,
const boost::optional<bool> &subscript);
109 void collectParaIX(
unsigned id,
unsigned level,
unsigned charCount,
const boost::optional<double> &indFirst,
110 const boost::optional<double> &indLeft,
const boost::optional<double> &indRight,
const boost::optional<double> &spLine,
111 const boost::optional<double> &spBefore,
const boost::optional<double> &spAfter,
const boost::optional<unsigned char> &align,
112 const boost::optional<unsigned> &flags);
113 void collectDefaultParaStyle(
unsigned charCount,
const boost::optional<double> &indFirst,
const boost::optional<double> &indLeft,
114 const boost::optional<double> &indRight,
const boost::optional<double> &spLine,
const boost::optional<double> &spBefore,
115 const boost::optional<double> &spAfter,
const boost::optional<unsigned char> &align,
const boost::optional<unsigned> &flags);
116 void collectTextBlock(
unsigned level,
const boost::optional<double> &leftMargin,
const boost::optional<double> &rightMargin,
117 const boost::optional<double> &topMargin,
const boost::optional<double> &bottomMargin,
118 const boost::optional<unsigned char> &verticalAlign,
const boost::optional<bool> &isBgFilled,
119 const boost::optional<Colour> &bgColour,
const boost::optional<double> &defaultTabStop,
120 const boost::optional<unsigned char> &textDirection);
122 void collectName(
unsigned id,
unsigned level,
const librevenge::RVNGBinaryData &name,
TextFormat format);
128 void collectStyleSheet(
unsigned id,
unsigned level,
unsigned parentLineStyle,
unsigned parentFillStyle,
unsigned parentTextStyle);
129 void collectLineStyle(
unsigned level,
const boost::optional<double> &strokeWidth,
const boost::optional<Colour> &c,
const boost::optional<unsigned char> &linePattern,
130 const boost::optional<unsigned char> &startMarker,
const boost::optional<unsigned char> &endMarker,
131 const boost::optional<unsigned char> &lineCap);
132 void collectFillStyle(
unsigned level,
const boost::optional<Colour> &colourFG,
const boost::optional<Colour> &colourBG,
133 const boost::optional<unsigned char> &fillPattern,
const boost::optional<double> &fillFGTransparency,
134 const boost::optional<double> &fillBGTransparency,
const boost::optional<unsigned char> &shadowPattern,
135 const boost::optional<Colour> &shfgc,
const boost::optional<double> &shadowOffsetX,
const boost::optional<double> &shadowOffsetY);
136 void collectFillStyle(
unsigned level,
const boost::optional<Colour> &colourFG,
const boost::optional<Colour> &colourBG,
137 const boost::optional<unsigned char> &fillPattern,
const boost::optional<double> &fillFGTransparency,
138 const boost::optional<double> &fillBGTransparency,
const boost::optional<unsigned char> &shadowPattern,
139 const boost::optional<Colour> &shfgc);
140 void collectCharIXStyle(
unsigned id,
unsigned level,
unsigned charCount,
const boost::optional<VSDName> &font,
141 const boost::optional<Colour> &fontColour,
const boost::optional<double> &fontSize,
const boost::optional<bool> &bold,
142 const boost::optional<bool> &italic,
const boost::optional<bool> &underline,
const boost::optional<bool> &doubleunderline,
143 const boost::optional<bool> &strikeout,
const boost::optional<bool> &doublestrikeout,
const boost::optional<bool> &allcaps,
144 const boost::optional<bool> &initcaps,
const boost::optional<bool> &smallcaps,
const boost::optional<bool> &superscript,
145 const boost::optional<bool> &subscript);
146 void collectParaIXStyle(
unsigned id,
unsigned level,
unsigned charCount,
const boost::optional<double> &indFirst,
147 const boost::optional<double> &indLeft,
const boost::optional<double> &indRight,
const boost::optional<double> &spLine,
148 const boost::optional<double> &spBefore,
const boost::optional<double> &spAfter,
const boost::optional<unsigned char> &align,
149 const boost::optional<unsigned> &flags);
150 void collectTextBlockStyle(
unsigned level,
const boost::optional<double> &leftMargin,
const boost::optional<double> &rightMargin,
151 const boost::optional<double> &topMargin,
const boost::optional<double> &bottomMargin,
152 const boost::optional<unsigned char> &verticalAlign,
const boost::optional<bool> &isBgFilled,
153 const boost::optional<Colour> &bgColour,
const boost::optional<double> &defaultTabStop,
154 const boost::optional<unsigned char> &textDirection);
155 void collectStyleThemeReference(
unsigned level,
const boost::optional<long> &lineColour,
const boost::optional<long> &fillColour,
156 const boost::optional<long> &shadowColour,
const boost::optional<long> &fontColour);
161 void collectTextField(
unsigned id,
unsigned level,
int nameId,
int formatStringId);
162 void collectNumericField(
unsigned id,
unsigned level,
unsigned short format,
double number,
int formatStringId);
180 double _NURBSBasis(
unsigned knot,
unsigned degree,
double point,
const std::vector<double> &knotVector);
201 void appendCharacters(librevenge::RVNGString &text,
const std::vector<unsigned char> &characters);
203 bool parseFormatId(
const char *formatString,
unsigned short &result);
207 bool _isUniform(
const std::vector<double> &weights)
const;
209 const std::vector<double> &knotVector,
const std::vector<double> &weights);
211 const std::vector<double> &knotVector);
std::vector< std::list< unsigned > >::iterator m_pageShapeOrder
Definition: VSDContentCollector.h:256
VSDContentCollector(librevenge::RVNGDrawingInterface *painter, std::vector< std::map< unsigned, XForm > > &groupXFormsSequence, std::vector< std::map< unsigned, unsigned > > &groupMembershipsSequence, std::vector< std::list< unsigned > > &documentPageShapeOrders, VSDStyles &styles, VSDStencils &stencils)
Definition: VSDContentCollector.cpp:57
Definition: VSDStyles.h:463
std::vector< std::map< unsigned, unsigned > >::iterator m_groupMemberships
Definition: VSDContentCollector.h:250
void _generateBezierSegmentsFromNURBS(unsigned degree, const std::vector< std::pair< double, double > > &controlPoints, const std::vector< double > &knotVector)
Definition: VSDContentCollector.cpp:1377
bool m_noLine
Definition: VSDContentCollector.h:242
Definition: VSDStencils.h:26
void collectThemeReference(unsigned level, const boost::optional< long > &lineColour, const boost::optional< long > &fillColour, const boost::optional< long > &shadowColour, const boost::optional< long > &fontColour)
Definition: VSDContentCollector.cpp:1063
void collectShape(unsigned id, unsigned level, unsigned parent, unsigned masterPage, unsigned masterShape, unsigned lineStyle, unsigned fillStyle, unsigned textStyle)
Definition: VSDContentCollector.cpp:1920
void collectCharIXStyle(unsigned id, unsigned level, unsigned charCount, const boost::optional< VSDName > &font, const boost::optional< Colour > &fontColour, const boost::optional< double > &fontSize, const boost::optional< bool > &bold, const boost::optional< bool > &italic, const boost::optional< bool > &underline, const boost::optional< bool > &doubleunderline, const boost::optional< bool > &strikeout, const boost::optional< bool > &doublestrikeout, const boost::optional< bool > &allcaps, const boost::optional< bool > &initcaps, const boost::optional< bool > &smallcaps, const boost::optional< bool > &superscript, const boost::optional< bool > &subscript)
Definition: VSDContentCollector.cpp:2224
void transformAngle(double &angle, XForm *txtxform=0)
Definition: VSDContentCollector.cpp:1825
virtual ~VSDContentCollector()
Definition: VSDContentCollector.h:40
XForm m_xform
Definition: VSDContentCollector.h:226
bool parseFormatId(const char *formatString, unsigned short &result)
Definition: VSDContentCollector.cpp:2777
void collectText(unsigned level, const librevenge::RVNGBinaryData &textStream, TextFormat format)
Definition: VSDContentCollector.cpp:2088
bool m_isPageStarted
Definition: VSDContentCollector.h:216
std::vector< librevenge::RVNGString > m_fields
Definition: VSDContentCollector.h:263
std::vector< std::map< unsigned, XForm > > & m_groupXFormsSequence
Definition: VSDContentCollector.h:248
std::vector< VSDParaStyle > m_paraFormats
Definition: VSDContentCollector.h:268
bool m_noShow
Definition: VSDContentCollector.h:244
void collectDefaultCharStyle(unsigned charCount, const boost::optional< VSDName > &font, const boost::optional< Colour > &fontColour, const boost::optional< double > &fontSize, const boost::optional< bool > &bold, const boost::optional< bool > &italic, const boost::optional< bool > &underline, const boost::optional< bool > &doubleunderline, const boost::optional< bool > &strikeout, const boost::optional< bool > &doublestrikeout, const boost::optional< bool > &allcaps, const boost::optional< bool > &initcaps, const boost::optional< bool > &smallcaps, const boost::optional< bool > &superscript, const boost::optional< bool > &subscript)
Definition: VSDContentCollector.cpp:2128
void collectMoveTo(unsigned id, unsigned level, double x, double y)
Definition: VSDContentCollector.cpp:1223
void collectEllipticalArcTo(unsigned id, unsigned level, double x3, double y3, double x2, double y2, double angle, double ecc)
Definition: VSDContentCollector.cpp:747
Definition: VSDStyles.h:100
void collectRelLineTo(unsigned id, unsigned level, double x, double y)
Definition: VSDContentCollector.cpp:1000
void collectShapeData(unsigned id, unsigned level, unsigned char xType, unsigned char yType, unsigned degree, double lastKnot, std::vector< std::pair< double, double > > controlPoints, std::vector< double > knotVector, std::vector< double > weights)
Definition: VSDContentCollector.cpp:1725
double m_originalX
Definition: VSDContentCollector.h:224
librevenge::RVNGBinaryData m_textStream
Definition: VSDContentCollector.h:261
Definition: VSDTypes.h:80
void collectForeignData(unsigned level, const librevenge::RVNGBinaryData &binaryData)
Definition: VSDContentCollector.cpp:1070
void endPage()
Definition: VSDContentCollector.cpp:2757
const char * _linePropertiesMarkerViewbox(unsigned marker)
Definition: VSDContentCollector.cpp:88
void collectFillAndShadow(unsigned level, const boost::optional< Colour > &colourFG, const boost::optional< Colour > &colourBG, const boost::optional< unsigned char > &fillPattern, const boost::optional< double > &fillFGTransparency, const boost::optional< double > &fillBGTransparency, const boost::optional< unsigned char > &shadowPattern, const boost::optional< Colour > &shfgc, const boost::optional< double > &shadowOffsetX, const boost::optional< double > &shadowOffsetY)
Definition: VSDContentCollector.cpp:1046
void _generatePolylineFromNURBS(unsigned degree, const std::vector< std::pair< double, double > > &controlPoints, const std::vector< double > &knotVector, const std::vector< double > &weights)
Definition: VSDContentCollector.cpp:1480
void appendCharacters(librevenge::RVNGString &text, const std::vector< unsigned char > &characters, TextFormat format)
Definition: VSDContentCollector.cpp:2807
unsigned m_currentLevel
Definition: VSDContentCollector.h:246
librevenge::RVNGDrawingInterface * m_painter
Definition: VSDContentCollector.h:172
double m_shadowOffsetX
Definition: VSDContentCollector.h:219
Definition: VSDStyles.h:425
void collectMisc(unsigned level, const VSDMisc &misc)
Definition: VSDContentCollector.cpp:2974
void _flushCurrentPage()
Definition: VSDContentCollector.cpp:700
void collectOLEData(unsigned id, unsigned level, const librevenge::RVNGBinaryData &oleData)
Definition: VSDContentCollector.cpp:1084
bool m_noFill
Definition: VSDContentCollector.h:243
void collectEllipse(unsigned id, unsigned level, double cx, double cy, double xleft, double yleft, double xtop, double ytop)
Definition: VSDContentCollector.cpp:820
void collectDefaultParaStyle(unsigned charCount, const boost::optional< double > &indFirst, const boost::optional< double > &indLeft, const boost::optional< double > &indRight, const boost::optional< double > &spLine, const boost::optional< double > &spBefore, const boost::optional< double > &spAfter, const boost::optional< unsigned char > &align, const boost::optional< unsigned > &flags)
Definition: VSDContentCollector.cpp:2107
void collectUnhandledChunk(unsigned id, unsigned level)
Definition: VSDContentCollector.cpp:2044
void _flushShape()
Definition: VSDContentCollector.cpp:192
void collectStyleSheet(unsigned id, unsigned level, unsigned parentLineStyle, unsigned parentFillStyle, unsigned parentTextStyle)
Definition: VSDContentCollector.cpp:2178
Definition: VSDPages.h:34
VSDParaStyle m_defaultParaStyle
Definition: VSDContentCollector.h:277
unsigned m_splineDegree
Definition: VSDContentCollector.h:297
void collectNumericField(unsigned id, unsigned level, unsigned short format, double number, int formatStringId)
Definition: VSDContentCollector.cpp:2660
void collectParaIXStyle(unsigned id, unsigned level, unsigned charCount, const boost::optional< double > &indFirst, const boost::optional< double > &indLeft, const boost::optional< double > &indRight, const boost::optional< double > &spLine, const boost::optional< double > &spBefore, const boost::optional< double > &spAfter, const boost::optional< unsigned char > &align, const boost::optional< unsigned > &flags)
Definition: VSDContentCollector.cpp:2214
void collectSplineEnd()
Definition: VSDContentCollector.cpp:2070
void collectName(unsigned id, unsigned level, const librevenge::RVNGBinaryData &name, TextFormat format)
Definition: VSDContentCollector.cpp:2163
double m_scale
Definition: VSDContentCollector.h:221
void collectArcTo(unsigned id, unsigned level, double x2, double y2, double bow)
Definition: VSDContentCollector.cpp:1259
void collectLine(unsigned level, const boost::optional< double > &strokeWidth, const boost::optional< Colour > &c, const boost::optional< unsigned char > &linePattern, const boost::optional< unsigned char > &startMarker, const boost::optional< unsigned char > &endMarker, const boost::optional< unsigned char > &lineCap)
Definition: VSDContentCollector.cpp:1039
double m_splineX
Definition: VSDContentCollector.h:295
void collectNameList(unsigned id, unsigned level)
Definition: VSDContentCollector.cpp:2147
std::vector< std::map< unsigned, unsigned > > & m_groupMembershipsSequence
Definition: VSDContentCollector.h:249
void collectForeignDataType(unsigned level, unsigned foreignType, unsigned foreignFormat, double offsetX, double offsetY, double width, double height)
Definition: VSDContentCollector.cpp:1886
bool _isUniform(const std::vector< double > &weights) const
Definition: VSDContentCollector.cpp:1516
void collectGeometry(unsigned id, unsigned level, bool noFill, bool noLine, bool noShow)
Definition: VSDContentCollector.cpp:1208
Definition: VSDTypes.h:190
double m_pageHeight
Definition: VSDContentCollector.h:218
double m_foreignOffsetY
Definition: VSDContentCollector.h:239
void collectTextField(unsigned id, unsigned level, int nameId, int formatStringId)
Definition: VSDContentCollector.cpp:2637
void _outputQuadraticBezierSegment(const std::vector< std::pair< double, double > > &points)
Definition: VSDContentCollector.cpp:1336
std::vector< std::list< unsigned > > & m_documentPageShapeOrders
Definition: VSDContentCollector.h:255
const VSDShape * m_stencilShape
Definition: VSDContentCollector.h:283
void collectTextBlockStyle(unsigned level, const boost::optional< double > &leftMargin, const boost::optional< double > &rightMargin, const boost::optional< double > &topMargin, const boost::optional< double > &bottomMargin, const boost::optional< unsigned char > &verticalAlign, const boost::optional< bool > &isBgFilled, const boost::optional< Colour > &bgColour, const boost::optional< double > &defaultTabStop, const boost::optional< unsigned char > &textDirection)
Definition: VSDContentCollector.cpp:2236
void startPage(unsigned pageId)
Definition: VSDContentCollector.cpp:2733
VSDPage m_currentPage
Definition: VSDContentCollector.h:290
std::vector< librevenge::RVNGPropertyList > m_currentFillGeometry
Definition: VSDContentCollector.h:229
void collectRelQuadBezTo(unsigned id, unsigned level, double x, double y, double a, double b)
Definition: VSDContentCollector.cpp:1014
void _handleLevelChange(unsigned level)
Definition: VSDContentCollector.cpp:2690
std::vector< VSDCharStyle > m_charFormats
Definition: VSDContentCollector.h:267
Definition: VSDStencils.h:75
void collectPage(unsigned id, unsigned level, unsigned backgroundPageID, bool isBackgroundPage, const VSDName &pageName)
Definition: VSDContentCollector.cpp:1910
double m_foreignOffsetX
Definition: VSDContentCollector.h:238
std::map< unsigned, XForm > * m_groupXForms
Definition: VSDContentCollector.h:231
Definition: VSDOutputElementList.h:23
void _fillAndShadowProperties(const VSDFillStyle &style, librevenge::RVNGPropertyList &styleProps)
Definition: VSDContentCollector.cpp:2461
bool m_isStencilStarted
Definition: VSDContentCollector.h:284
Definition: VSDContentCollector.h:30
TextFormat m_textFormat
Definition: VSDContentCollector.h:266
VSDContentCollector & operator=(const VSDContentCollector &)
void collectShapesOrder(unsigned id, unsigned level, const std::vector< unsigned > &shapeIds)
Definition: VSDContentCollector.cpp:1881
Definition: VSDCollector.h:20
double _NURBSBasis(unsigned knot, unsigned degree, double point, const std::vector< double > &knotVector)
Definition: VSDContentCollector.cpp:1457
void collectParaIX(unsigned id, unsigned level, unsigned charCount, const boost::optional< double > &indFirst, const boost::optional< double > &indLeft, const boost::optional< double > &indRight, const boost::optional< double > &spLine, const boost::optional< double > &spBefore, const boost::optional< double > &spAfter, const boost::optional< unsigned char > &align, const boost::optional< unsigned > &flags)
Definition: VSDContentCollector.cpp:2096
VSDMisc m_misc
Definition: VSDContentCollector.h:228
unsigned m_foreignType
Definition: VSDContentCollector.h:236
Definition: VSDFieldList.h:81
Definition: VSDStyles.h:263
void collectNURBSTo(unsigned id, unsigned level, double x2, double y2, unsigned char xType, unsigned char yType, unsigned degree, const std::vector< std::pair< double, double > > &ctrlPnts, const std::vector< double > &kntVec, const std::vector< double > &weights)
Definition: VSDContentCollector.cpp:1531
double m_splineLastKnot
Definition: VSDContentCollector.h:296
void collectInfiniteLine(unsigned id, unsigned level, double x1, double y1, double x2, double y2)
Definition: VSDContentCollector.cpp:872
std::map< unsigned, VSDOutputElementList > m_pageOutputText
Definition: VSDContentCollector.h:254
std::map< unsigned short, VSDFont > m_fonts
Definition: VSDContentCollector.h:245
VSDFieldList m_stencilFields
Definition: VSDContentCollector.h:264
unsigned m_foreignFormat
Definition: VSDContentCollector.h:237
void collectLineTo(unsigned id, unsigned level, double x, double y)
Definition: VSDContentCollector.cpp:1241
double m_foreignWidth
Definition: VSDContentCollector.h:240
double _linePropertiesMarkerScale(unsigned marker)
Definition: VSDContentCollector.cpp:173
void _flushText()
Definition: VSDContentCollector.cpp:385
double m_foreignHeight
Definition: VSDContentCollector.h:241
void collectOLEList(unsigned id, unsigned level)
Definition: VSDContentCollector.cpp:1076
librevenge::RVNGPropertyList m_currentForeignProps
Definition: VSDContentCollector.h:234
unsigned m_splineLevel
Definition: VSDContentCollector.h:298
std::map< unsigned, librevenge::RVNGString > m_names
Definition: VSDContentCollector.h:262
std::vector< librevenge::RVNGPropertyList > m_currentLineGeometry
Definition: VSDContentCollector.h:230
void applyXForm(double &x, double &y, const XForm &xform)
Definition: VSDContentCollector.cpp:1766
std::map< unsigned, VSDOutputElementList > m_pageOutputDrawing
Definition: VSDContentCollector.h:253
void collectPageSheet(unsigned id, unsigned level)
Definition: VSDContentCollector.cpp:2172
unsigned m_currentStyleSheet
Definition: VSDContentCollector.h:279
std::map< unsigned, librevenge::RVNGString > m_stencilNames
Definition: VSDContentCollector.h:262
void collectFillStyle(unsigned level, const boost::optional< Colour > &colourFG, const boost::optional< Colour > &colourBG, const boost::optional< unsigned char > &fillPattern, const boost::optional< double > &fillFGTransparency, const boost::optional< double > &fillBGTransparency, const boost::optional< unsigned char > &shadowPattern, const boost::optional< Colour > &shfgc, const boost::optional< double > &shadowOffsetX, const boost::optional< double > &shadowOffsetY)
Definition: VSDContentCollector.cpp:2197
void collectTxtXForm(unsigned level, const XForm &txtxform)
Definition: VSDContentCollector.cpp:1756
void collectSplineStart(unsigned id, unsigned level, double x, double y, double secondKnot, double firstKnot, double lastKnot, unsigned degree)
Definition: VSDContentCollector.cpp:2049
void _outputCubicBezierSegment(const std::vector< std::pair< double, double > > &points)
Definition: VSDContentCollector.cpp:1308
void transformFlips(bool &flipX, bool &flipY)
Definition: VSDContentCollector.cpp:1843
void endPages()
Definition: VSDContentCollector.cpp:2772
std::map< unsigned, PolylineData > m_polylineData
Definition: VSDContentCollector.h:260
librevenge::RVNGBinaryData m_currentOLEData
Definition: VSDContentCollector.h:233
TextFormat
Definition: VSDTypes.h:142
VSDStyles m_styles
Definition: VSDContentCollector.h:280
Definition: VSDStyles.h:170
double m_pageWidth
Definition: VSDContentCollector.h:217
unsigned m_fieldIndex
Definition: VSDContentCollector.h:265
unsigned m_backgroundPageID
Definition: VSDContentCollector.h:288
VSDPages m_pages
Definition: VSDContentCollector.h:291
VSDLineStyle m_lineStyle
Definition: VSDContentCollector.h:270
Definition: VSDStyles.h:46
VSDCharStyle m_defaultCharStyle
Definition: VSDContentCollector.h:276
VSDFillStyle m_fillStyle
Definition: VSDContentCollector.h:271
void collectPageProps(unsigned id, unsigned level, double pageWidth, double pageHeight, double shadowOffsetX, double shadowOffsetY, double scale)
Definition: VSDContentCollector.cpp:1897
void collectStyleThemeReference(unsigned level, const boost::optional< long > &lineColour, const boost::optional< long > &fillColour, const boost::optional< long > &shadowColour, const boost::optional< long > &fontColour)
Definition: VSDContentCollector.cpp:2622
void collectXFormData(unsigned level, const XForm &xform)
Definition: VSDContentCollector.cpp:1750
bool m_isFirstGeometry
Definition: VSDContentCollector.h:257
void _handleForeignData(const librevenge::RVNGBinaryData &data)
Definition: VSDContentCollector.cpp:1090
void _convertDataToString(librevenge::RVNGString &result, const librevenge::RVNGBinaryData &data, TextFormat format)
Definition: VSDContentCollector.cpp:2154
void collectRelMoveTo(unsigned id, unsigned level, double x, double y)
Definition: VSDContentCollector.cpp:1007
void collectCharIX(unsigned id, unsigned level, unsigned charCount, const boost::optional< VSDName > &font, const boost::optional< Colour > &fontColour, const boost::optional< double > &fontSize, const boost::optional< bool > &bold, const boost::optional< bool > &italic, const boost::optional< bool > &underline, const boost::optional< bool > &doubleunderline, const boost::optional< bool > &strikeout, const boost::optional< bool > &doublestrikeout, const boost::optional< bool > &allcaps, const boost::optional< bool > &initcaps, const boost::optional< bool > &smallcaps, const boost::optional< bool > &superscript, const boost::optional< bool > &subscript)
Definition: VSDContentCollector.cpp:2114
void _outputLinearBezierSegment(const std::vector< std::pair< double, double > > &points)
Definition: VSDContentCollector.cpp:1359
std::vector< double > m_splineKnotVector
Definition: VSDContentCollector.h:294
void collectSplineKnot(unsigned id, unsigned level, double x, double y, double knot)
Definition: VSDContentCollector.cpp:2061
double m_originalY
Definition: VSDContentCollector.h:225
void collectTextBlock(unsigned level, const boost::optional< double > &leftMargin, const boost::optional< double > &rightMargin, const boost::optional< double > &topMargin, const boost::optional< double > &bottomMargin, const boost::optional< unsigned char > &verticalAlign, const boost::optional< bool > &isBgFilled, const boost::optional< Colour > &bgColour, const boost::optional< double > &defaultTabStop, const boost::optional< unsigned char > &textDirection)
Definition: VSDContentCollector.cpp:2138
Definition: VSDStyles.h:350
VSDThemeReference m_themeReference
Definition: VSDContentCollector.h:274
Definition: VSDPages.h:19
void _flushCurrentForeignData()
Definition: VSDContentCollector.cpp:654
librevenge::RVNGBinaryData m_currentForeignData
Definition: VSDContentCollector.h:232
unsigned m_currentShapeId
Definition: VSDContentCollector.h:235
bool m_isBackgroundPage
Definition: VSDContentCollector.h:300
std::map< unsigned, NURBSData > m_NURBSData
Definition: VSDContentCollector.h:259
VSDStencils m_stencils
Definition: VSDContentCollector.h:282
double m_x
Definition: VSDContentCollector.h:222
double m_splineY
Definition: VSDContentCollector.h:295
void _lineProperties(const VSDLineStyle &style, librevenge::RVNGPropertyList &styleProps)
Definition: VSDContentCollector.cpp:2245
const char * _linePropertiesMarkerPath(unsigned marker)
Definition: VSDContentCollector.cpp:124
unsigned m_currentShapeLevel
Definition: VSDContentCollector.h:299
void collectRelEllipticalArcTo(unsigned id, unsigned level, double x, double y, double a, double b, double c, double d)
Definition: VSDContentCollector.cpp:991
Definition: VSDTypes.h:107
void transformPoint(double &x, double &y, XForm *txtxform=0)
Definition: VSDContentCollector.cpp:1785
std::vector< std::pair< double, double > > m_splineControlPoints
Definition: VSDContentCollector.h:293
bool m_isShapeStarted
Definition: VSDContentCollector.h:247
VSDTextBlockStyle m_textBlockStyle
Definition: VSDContentCollector.h:272
unsigned m_currentPageID
Definition: VSDContentCollector.h:289
unsigned m_currentGeometryCount
Definition: VSDContentCollector.h:286
double m_y
Definition: VSDContentCollector.h:223
VSDOutputElementList * m_shapeOutputText
Definition: VSDContentCollector.h:252
Definition: VSDTypes.h:163
void collectLineStyle(unsigned level, const boost::optional< double > &strokeWidth, const boost::optional< Colour > &c, const boost::optional< unsigned char > &linePattern, const boost::optional< unsigned char > &startMarker, const boost::optional< unsigned char > &endMarker, const boost::optional< unsigned char > &lineCap)
Definition: VSDContentCollector.cpp:2189
VSDOutputElementList * m_shapeOutputDrawing
Definition: VSDContentCollector.h:252
void _appendField(librevenge::RVNGString &text)
Definition: VSDContentCollector.cpp:2966
void collectFieldList(unsigned id, unsigned level)
Definition: VSDContentCollector.cpp:2631
void collectRelCubBezTo(unsigned id, unsigned level, double x, double y, double a, double b, double c, double d)
Definition: VSDContentCollector.cpp:961
void collectPolylineTo(unsigned id, unsigned level, double x, double y, unsigned char xType, unsigned char yType, const std::vector< std::pair< double, double > > &points)
Definition: VSDContentCollector.cpp:1644
void _flushCurrentPath()
Definition: VSDContentCollector.cpp:228
double m_shadowOffsetY
Definition: VSDContentCollector.h:220
unsigned m_currentPageNumber
Definition: VSDContentCollector.h:251
XForm * m_txtxform
Definition: VSDContentCollector.h:227