MSPUBCollector.h Source File documentation

MSPUBCollector.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 libmspub 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 INCLUDED_MSPUBCOLLECTOR_H
11 #define INCLUDED_MSPUBCOLLECTOR_H
12
13 #include <list>
14 #include <map>
15 #include <set>
16 #include <utility>
17 #include <vector>
18
19 #include <librevenge/librevenge.h>
20
21 #include "BorderArtInfo.h"
22 #include "ColorReference.h"
23 #include "EmbeddedFontInfo.h"
24 #include "MSPUBTypes.h"
25 #include "PolygonUtils.h"
26 #include "ShapeInfo.h"
27 #include "ShapeType.h"
28 #include "VerticalAlign.h"
29
30 namespace libmspub
31 {
32
33 class Fill;
34 class ShapeGroupElement;
35 class VectorTransformation2D;
36
37 struct Arrow;
38 struct Coordinate;
39 struct Dash;
40 struct Line;
41 struct Shadow;
42 struct TableInfo;
43
44 class MSPUBCollector
45 {
46 friend class Fill;
47 friend class ImgFill;
48 friend class SolidFill;
49 friend class GradientFill;
50 friend class PatternFill;
51 public:
52 typedef std::list<ContentChunkReference>::const_iterator ccr_iterator_t;
53
54 MSPUBCollector(librevenge::RVNGDrawingInterface *painter);
55 virtual ~MSPUBCollector();
56
57 // collector functions
58 void collectMetaData(const librevenge::RVNGPropertyList &metaData);
59
60 bool addPage(unsigned seqNum);
61 bool addTextString(const std::vector<TextParagraph> &str, unsigned id);
62 void addTextShape(unsigned stringId, unsigned seqNum);
63 bool addImage(unsigned index, ImgType type, librevenge::RVNGBinaryData img);
64 void setBorderImageOffset(unsigned index, unsigned offset);
65 librevenge::RVNGBinaryData *addBorderImage(ImgType type, unsigned borderArtIndex);
66 void setShapePage(unsigned seqNum, unsigned pageSeqNum);
67
68 void setNextPage(unsigned seqNum);
69
70 void setShapeType(unsigned seqNum, ShapeType type);
71 void setShapeCropType(unsigned seqNum, ShapeType cropType);
72 void setShapePictureRecolor(unsigned seqNum, const ColorReference &recolor);
73 void setShapePictureBrightness(unsigned seqNum, int brightness);
74 void setShapePictureContrast(unsigned seqNum, int contrast);
75 void setShapeTableInfo(unsigned seqNum, const TableInfo &ti);
76 void setShapeBorderImageId(unsigned seqNum, unsigned borderImageId);
77 void setShapeCoordinatesInEmu(unsigned seqNum, int xs, int ys, int xe, int ye);
78 void setShapeImgIndex(unsigned seqNum, unsigned index);
79 void setShapeFill(unsigned seqNum, std::shared_ptr<Fill> fill, bool skipIfNotBg);
80 void setShapeDash(unsigned seqNum, const Dash &dash);
81 void setAdjustValue(unsigned seqNum, unsigned index, int adjust);
82 void setShapeRotation(unsigned seqNum, double rotation);
83 void setShapeFlip(unsigned, bool, bool);
84 void setShapeMargins(unsigned seqNum, unsigned left, unsigned top, unsigned right, unsigned bottom);
85 void setShapeBorderPosition(unsigned seqNum, BorderPosition pos);
86 void setShapeCoordinatesRotated90(unsigned seqNum);
87 void setShapeCustomPath(unsigned seqNum,
88 const DynamicCustomShape &shape);
89 void setShapeClipPath(unsigned seqNum, const std::vector<libmspub::Vertex> &clip);
90 void setShapeVerticalTextAlign(unsigned seqNum, VerticalAlign va);
91 void designateMasterPage(unsigned seqNum);
92 void setMasterPage(unsigned pageSeqNum, unsigned masterSeqNum);
93 void setShapeStretchBorderArt(unsigned seqNum);
94 void setShapeShadow(unsigned seqNum, const Shadow &shadow);
95
96 // Microsoft "Embedded OpenType" ... need to figure out how to convert
97 // this to a sane format and how to get LibreOffice to understand embedded fonts.
98 void addEOTFont(const librevenge::RVNGString &name, const librevenge::RVNGBinaryData &data);
99
100 void beginGroup();
101 bool endGroup();
102
103 void setShapeLineBackColor(unsigned seqNum, ColorReference backColor);
104 void addShapeLine(unsigned seqNum, Line line);
105 void setShapeOrder(unsigned seqNum);
106 void setPageBgShape(unsigned pageSeqNum, unsigned seqNum);
107 void setWidthInEmu(unsigned long);
108 void setHeightInEmu(unsigned long);
109 void setShapeNumColumns(unsigned seqNum, unsigned numColumns);
110 void setShapeColumnSpacing(unsigned seqNum, unsigned spacing);
111 void setShapeBeginArrow(unsigned seqNum, const Arrow &arrow);
112 void setShapeEndArrow(unsigned seqNum, const Arrow &arrow);
113
114 void addTextColor(ColorReference c);
115 void addFont(std::vector<unsigned char> name);
116
117 void addDefaultCharacterStyle(const CharacterStyle &style);
118 void addDefaultParagraphStyle(const ParagraphStyle &style);
119 void addPaletteColor(Color);
120 bool setCurrentGroupSeqNum(unsigned seqNum);
121
122 void useEncodingHeuristic();
123
124 void setTableCellTextEnds(unsigned textId, const std::vector<unsigned> &ends);
125 void setTextStringOffset(unsigned textId, unsigned offset);
126
127 bool go();
128
129 bool hasPage(unsigned seqNum) const;
130 private:
131
132 struct PageInfo
133 {
134 std::vector<std::shared_ptr<ShapeGroupElement>> m_shapeGroupsOrdered;
135 PageInfo() : m_shapeGroupsOrdered() { }
136 };
137
138 MSPUBCollector(const MSPUBCollector &);
139 MSPUBCollector &operator=(const MSPUBCollector &);
140
141 librevenge::RVNGDrawingInterface *m_painter;
142 std::list<ContentChunkReference> m_contentChunkReferences;
143 double m_width, m_height;
144 bool m_widthSet, m_heightSet;
145 unsigned short m_numPages;
146 std::map<unsigned, std::vector<TextParagraph> > m_textStringsById;
147 std::map<unsigned, PageInfo> m_pagesBySeqNum;
148 std::vector<std::pair<ImgType, librevenge::RVNGBinaryData> > m_images;
149 std::vector<BorderArtInfo> m_borderImages;
150 std::vector<ColorReference> m_textColors;
151 std::vector<std::vector<unsigned char> > m_fonts;
152 std::vector<CharacterStyle> m_defaultCharStyles;
153 std::vector<ParagraphStyle> m_defaultParaStyles;
154 std::map<unsigned, ShapeType> m_shapeTypesBySeqNum;
155 std::vector<Color> m_paletteColors;
156 std::vector<unsigned> m_shapeSeqNumsOrdered;
157 std::map<unsigned, unsigned> m_pageSeqNumsByShapeSeqNum;
158 std::map<unsigned, unsigned> m_bgShapeSeqNumsByPageSeqNum;
159 std::set<unsigned> m_skipIfNotBgSeqNums;
160 std::shared_ptr<ShapeGroupElement> m_currentShapeGroup;
161 std::vector<std::shared_ptr<ShapeGroupElement>> m_topLevelShapes;
162 std::map<unsigned, std::shared_ptr<ShapeGroupElement>> m_groupsBySeqNum;
163 std::list<EmbeddedFontInfo> m_embeddedFonts;
164 std::map<unsigned, ShapeInfo> m_shapeInfosBySeqNum;
165 std::set<unsigned> m_masterPages;
166 std::set<unsigned> m_shapesWithCoordinatesRotated90;
167 std::map<unsigned, unsigned> m_masterPagesByPageSeqNum;
168 std::map<unsigned, std::vector<unsigned> > m_tableCellTextEndsByTextId;
169 std::map<unsigned, unsigned> m_stringOffsetsByTextId;
170 mutable std::vector<bool> m_calculationValuesSeen;
171 std::vector<unsigned> m_pageSeqNumsOrdered;
172 bool m_encodingHeuristic;
173 std::vector<unsigned char> m_allText;
174 mutable boost::optional<const char *> m_calculatedEncoding;
175 librevenge::RVNGPropertyList m_metaData;
176
177 // helper functions
178 std::vector<int> getShapeAdjustValues(const ShapeInfo &info) const;
179 boost::optional<unsigned> getMasterPageSeqNum(unsigned pageSeqNum) const;
180 void setRectCoordProps(Coordinate, librevenge::RVNGPropertyList *) const;
181 boost::optional<std::vector<libmspub::TextParagraph> > getShapeText(const ShapeInfo &info) const;
182 void setupShapeStructures(ShapeGroupElement &elt);
183 void addBlackToPaletteIfNecessary();
184 void assignShapesToPages();
185 void writePage(unsigned pageSeqNum) const;
186 void writePageShapes(unsigned pageSeqNum) const;
187 void writePageBackground(unsigned pageSeqNum) const;
188 void writeImage(double x, double y, double height, double width,
189 ImgType type, const librevenge::RVNGBinaryData &blob,
190 boost::optional<Color> oneBitColor) const;
191 bool pageIsMaster(unsigned pageSeqNum) const;
192
193 std::function<void(void)> paintShape(const ShapeInfo &info, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform, bool isGroup, const VectorTransformation2D &thisTransform) const;
194 double getCalculationValue(const ShapeInfo &info, unsigned index, bool recursiveEntry, const std::vector<int> &adjustValues) const;
195
196 librevenge::RVNGPropertyList getCharStyleProps(const CharacterStyle &, boost::optional<unsigned> defaultCharStyleIndex) const;
197 librevenge::RVNGPropertyList getParaStyleProps(const ParagraphStyle &, boost::optional<unsigned> defaultParaStyleIndex) const;
198 double getSpecialValue(const ShapeInfo &info, const CustomShape &shape, int arg, const std::vector<int> &adjustValues) const;
199 void ponderStringEncoding(const std::vector<TextParagraph> &str);
200 const char *getCalculatedEncoding() const;
201 public:
202 static librevenge::RVNGString getColorString(const Color &);
203 };
204
205 } // namespace libmspub
206
207 #endif /* INCLUDED_MSPUBCOLLECTOR_H */
208 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libmspub::MSPUBCollector::setShapeLineBackColor
void setShapeLineBackColor(unsigned seqNum, ColorReference backColor)
Definition: MSPUBCollector.cpp:1309
ShapeGroupElement.h
libmspub::CharacterStyle::emboss
bool emboss
Definition: MSPUBTypes.h:138
libmspub::ShapeInfo::m_borderImgIndex
boost::optional< unsigned > m_borderImgIndex
Definition: ShapeInfo.h:42
libmspub::ParagraphStyle::m_rightIndentEmu
boost::optional< unsigned > m_rightIndentEmu
Definition: MSPUBTypes.h:172
libmspub::LineSpacingType
LineSpacingType
Definition: MSPUBTypes.h:144
libmspub::RECT_DOT
Definition: Dash.h:21
libmspub::CharacterStyle::smallCaps
bool smallCaps
Definition: MSPUBTypes.h:136
MSPUBConstants.h
libmspub::Color::r
unsigned char r
Definition: MSPUBTypes.h:203
libmspub::Alignment
Alignment
Definition: MSPUBTypes.h:62
libmspub::MSPUBCollector::setShapeClipPath
void setShapeClipPath(unsigned seqNum, const std::vector< libmspub::Vertex > &clip)
Definition: MSPUBCollector.cpp:540
libmspub::BorderImgInfo::m_imgBlob
librevenge::RVNGBinaryData m_imgBlob
Definition: BorderArtInfo.h:24
libmspub::CustomShape::m_numCalculations
unsigned m_numCalculations
Definition: PolygonUtils.h:66
libmspub::MSPUBCollector::m_defaultParaStyles
std::vector< ParagraphStyle > m_defaultParaStyles
Definition: MSPUBCollector.h:153
libmspub::Dash::m_dotStyle
DotStyle m_dotStyle
Definition: Dash.h:52
Dash.h
libmspub::CharacterStyle::allCaps
bool allCaps
Definition: MSPUBTypes.h:137
libmspub::SUPERSCRIPT
Definition: MSPUBTypes.h:36
libmspub::TOP
Definition: VerticalAlign.h:17
libmspub::MSPUBCollector::m_shapeTypesBySeqNum
std::map< unsigned, ShapeType > m_shapeTypesBySeqNum
Definition: MSPUBCollector.h:154
libmspub::Dash::m_distance
double m_distance
Definition: Dash.h:51
libmspub::Calculation::m_flags
int m_flags
Definition: PolygonUtils.h:47
libmspub::ParagraphStyle::m_spaceBeforeEmu
boost::optional< unsigned > m_spaceBeforeEmu
Definition: MSPUBTypes.h:168
libmspub::getIfExists
MapT::mapped_type * getIfExists(MapT &map, const typename MapT::key_type &key)
Definition: libmspub_utils.h:87
libmspub::CharacterStyle::engrave
bool engrave
Definition: MSPUBTypes.h:139
MSPUB_DEBUG_MSG
#define MSPUB_DEBUG_MSG(M)
Definition: libmspub_utils.h:55
libmspub::MSPUBCollector::addDefaultParagraphStyle
void addDefaultParagraphStyle(const ParagraphStyle &style)
Definition: MSPUBCollector.cpp:1487
libmspub::ShapeInfo::m_imgIndex
boost::optional< unsigned > m_imgIndex
Definition: ShapeInfo.h:41
BorderArtInfo.h
libmspub::Fill
Definition: Fill.h:22
libmspub::windowsCharsetNameByOriginalCharset
const char * windowsCharsetNameByOriginalCharset(const char *name)
Definition: libmspub_utils.cpp:39
libmspub::MSPUBCollector::writePageBackground
void writePageBackground(unsigned pageSeqNum) const
Definition: MSPUBCollector.cpp:1803
libmspub::MSPUBCollector::setShapeShadow
void setShapeShadow(unsigned seqNum, const Shadow &shadow)
Definition: MSPUBCollector.cpp:515
libmspub::MSPUBCollector::m_defaultCharStyles
std::vector< CharacterStyle > m_defaultCharStyles
Definition: MSPUBCollector.h:152
libmspub::BorderArtInfo
Definition: BorderArtInfo.h:31
libmspub::Margins
Definition: Margins.h:14
libmspub::Color::g
unsigned char g
Definition: MSPUBTypes.h:203
libmspub::TableInfo
Definition: TableInfo.h:34
libmspub::MSPUBCollector::setAdjustValue
void setAdjustValue(unsigned seqNum, unsigned index, int adjust)
Definition: MSPUBCollector.cpp:1477
libmspub::ShapeGroupElement::setTransform
void setTransform(const VectorTransformation2D &transform)
Definition: ShapeGroupElement.cpp:41
libmspub::CharacterStyle::textScale
boost::optional< double > textScale
Definition: MSPUBTypes.h:140
libmspub::MSPUBCollector::setShapeNumColumns
void setShapeNumColumns(unsigned seqNum, unsigned numColumns)
Definition: MSPUBCollector.cpp:403
libmspub::OUTSIDE_SHAPE
Definition: MSPUBTypes.h:30
libmspub::ShapeInfo::getCustomShape
std::shared_ptr< const CustomShape > getCustomShape() const
Definition: ShapeInfo.h:81
libmspub::CustomShape::m_coordWidth
unsigned m_coordWidth
Definition: PolygonUtils.h:71
libmspub::MSPUBCollector::m_painter
librevenge::RVNGDrawingInterface * m_painter
Definition: MSPUBCollector.h:141
libmspub
Definition: Arrow.h:13
libmspub::Underline::Thick
libmspub::MSPUBCollector::m_pageSeqNumsOrdered
std::vector< unsigned > m_pageSeqNumsOrdered
Definition: MSPUBCollector.h:171
libmspub::ShapeInfo::m_pictureBrightness
boost::optional< int > m_pictureBrightness
Definition: ShapeInfo.h:68
libmspub::MSPUBCollector::writeImage
void writeImage(double x, double y, double height, double width, ImgType type, const librevenge::RVNGBinaryData &blob, boost::optional< Color > oneBitColor) const
Definition: MSPUBCollector.cpp:1315
libmspub::Shadow::m_opacity
double m_opacity
Definition: Shadow.h:35
libmspub::MSPUBCollector::setPageBgShape
void setPageBgShape(unsigned pageSeqNum, unsigned seqNum)
Definition: MSPUBCollector.cpp:585
libmspub::ImgFill
Definition: Fill.h:35
libmspub::ParagraphStyle::m_spaceAfterEmu
boost::optional< unsigned > m_spaceAfterEmu
Definition: MSPUBTypes.h:169
libmspub::MSPUBCollector::addBlackToPaletteIfNecessary
void addBlackToPaletteIfNecessary()
Definition: MSPUBCollector.cpp:1728
libmspub::MSPUBCollector::setShapeMargins
void setShapeMargins(unsigned seqNum, unsigned left, unsigned top, unsigned right, unsigned bottom)
Definition: MSPUBCollector.cpp:580
libmspub::ShapeGroupElement::create
static std::shared_ptr< ShapeGroupElement > create(const std::shared_ptr< ShapeGroupElement > &parent, unsigned seqNum=0)
Definition: ShapeGroupElement.cpp:28
libmspub::CharacterStyle::bold
bool bold
Definition: MSPUBTypes.h:129
libmspub::MSPUBCollector::ponderStringEncoding
void ponderStringEncoding(const std::vector< TextParagraph > &str)
Definition: MSPUBCollector.cpp:1887
libmspub::CharacterStyle::textSizeInPt
boost::optional< double > textSizeInPt
Definition: MSPUBTypes.h:130
libmspub::MSPUBCollector::m_borderImages
std::vector< BorderArtInfo > m_borderImages
Definition: MSPUBCollector.h:149
libmspub::Underline::None
libmspub::ShapeInfo::m_fill
std::shared_ptr< const Fill > m_fill
Definition: ShapeInfo.h:53
libmspub::Line
Definition: Line.h:20
libmspub::BOTTOM
Definition: VerticalAlign.h:19
libmspub::MSPUBCollector::m_heightSet
bool m_heightSet
Definition: MSPUBCollector.h:144
m_colSpan
unsigned m_colSpan
Definition: MSPUBCollector.cpp:135
libmspub::MSPUBCollector::getShapeText
boost::optional< std::vector< libmspub::TextParagraph > > getShapeText(const ShapeInfo &info) const
Definition: MSPUBCollector.cpp:648
libmspub::MSPUBCollector
Definition: MSPUBCollector.h:44
libmspub::MSPUBCollector::setShapeFill
void setShapeFill(unsigned seqNum, std::shared_ptr< Fill > fill, bool skipIfNotBg)
Definition: MSPUBCollector.cpp:1519
libmspub::Underline::Dotted
libmspub::MSPUBCollector::ImgFill
friend class ImgFill
Definition: MSPUBCollector.h:47
libmspub::Coordinate::m_xe
int m_xe
Definition: Coordinate.h:21
TableInfo.h
libmspub::Coordinate::m_xs
int m_xs
Definition: Coordinate.h:21
libmspub::Margins::m_bottom
unsigned m_bottom
Definition: Margins.h:19
libmspub::MSPUBCollector::setRectCoordProps
void setRectCoordProps(Coordinate, librevenge::RVNGPropertyList *) const
Definition: MSPUBCollector.cpp:420
libmspub::JUSTIFY
Definition: MSPUBTypes.h:67
libmspub::MSPUBCollector::writePage
void writePage(unsigned pageSeqNum) const
Definition: MSPUBCollector.cpp:1764
libmspub_utils.h
libmspub::MSPUBCollector::setNextPage
void setNextPage(unsigned seqNum)
Definition: MSPUBCollector.cpp:470
libmspub::ROUND_DOT
Definition: Dash.h:22
libmspub::Coordinate::m_ys
int m_ys
Definition: Coordinate.h:21
libmspub::ParagraphStyle::m_lineSpacing
boost::optional< LineSpacingInfo > m_lineSpacing
Definition: MSPUBTypes.h:167
libmspub::BorderPosition
BorderPosition
Definition: MSPUBTypes.h:26
libmspub::MSPUBCollector::m_skipIfNotBgSeqNums
std::set< unsigned > m_skipIfNotBgSeqNums
Definition: MSPUBCollector.h:159
libmspub::Coordinate::getWidthIn
double getWidthIn() const
Definition: Coordinate.h:30
libmspub::MSPUBCollector::PageInfo
Definition: MSPUBCollector.h:132
libmspub::MSPUBCollector::setShapeRotation
void setShapeRotation(unsigned seqNum, double rotation)
Definition: MSPUBCollector.cpp:1461
ColorReference.h
MSPUBTypes.h
libmspub::VerticalAlign
VerticalAlign
Definition: VerticalAlign.h:15
libmspub::CENTER
Definition: MSPUBTypes.h:65
libmspub::ShapeInfo::m_adjustValuesByIndex
std::map< unsigned, int > m_adjustValuesByIndex
Definition: ShapeInfo.h:47
libmspub::MSPUBCollector::designateMasterPage
void designateMasterPage(unsigned seqNum)
Definition: MSPUBCollector.cpp:1979
libmspub::Underline::LongDash
libmspub::MSPUBCollector::setShapeColumnSpacing
void setShapeColumnSpacing(unsigned seqNum, unsigned spacing)
Definition: MSPUBCollector.cpp:409
libmspub::getIfExists_const
const MapT::mapped_type * getIfExists_const(MapT &map, const typename MapT::key_type &key)
Definition: libmspub_utils.h:93
libmspub::ColorReference::getFinalColor
Color getFinalColor(const std::vector< Color > &palette) const
Definition: ColorReference.cpp:28
libmspub::MSPUBCollector::m_fonts
std::vector< std::vector< unsigned char > > m_fonts
Definition: MSPUBCollector.h:151
libmspub::Coordinate::getXIn
double getXIn(double pageWidth) const
Definition: Coordinate.h:22
libmspub::RECTANGLE
Definition: ShapeType.h:19
libmspub::VectorTransformation2D
Definition: VectorTransformation2D.h:25
libmspub::MSPUBCollector::addTextShape
void addTextShape(unsigned stringId, unsigned seqNum)
Definition: MSPUBCollector.cpp:1503
libmspub::MSPUBCollector::setShapeStretchBorderArt
void setShapeStretchBorderArt(unsigned seqNum)
Definition: MSPUBCollector.cpp:415
libmspub::MSPUBCollector::getParaStyleProps
librevenge::RVNGPropertyList getParaStyleProps(const ParagraphStyle &, boost::optional< unsigned > defaultParaStyleIndex) const
Definition: MSPUBCollector.cpp:1538
libmspub::MSPUBCollector::addBorderImage
librevenge::RVNGBinaryData * addBorderImage(ImgType type, unsigned borderArtIndex)
Definition: MSPUBCollector.cpp:1932
libmspub::MSPUBCollector::~MSPUBCollector
virtual ~MSPUBCollector()
Definition: MSPUBCollector.cpp:1457
libmspub::MSPUBCollector::m_groupsBySeqNum
std::map< unsigned, std::shared_ptr< ShapeGroupElement > > m_groupsBySeqNum
Definition: MSPUBCollector.h:162
libmspub::ParagraphStyle::m_align
boost::optional< Alignment > m_align
Definition: MSPUBTypes.h:165
libmspub::MSPUBCollector::setShapeEndArrow
void setShapeEndArrow(unsigned seqNum, const Arrow &arrow)
Definition: MSPUBCollector.cpp:391
libmspub::ShapeInfo::m_margins
boost::optional< Margins > m_margins
Definition: ShapeInfo.h:51
libmspub::MSPUBCollector::addDefaultCharacterStyle
void addDefaultCharacterStyle(const CharacterStyle &style)
Definition: MSPUBCollector.cpp:1482
libmspub::MSPUBCollector::setTextStringOffset
void setTextStringOffset(unsigned textId, unsigned offset)
Definition: MSPUBCollector.cpp:498
libmspub::ParagraphStyle::m_leftIndentEmu
boost::optional< unsigned > m_leftIndentEmu
Definition: MSPUBTypes.h:171
libmspub::SolidFill
Definition: Fill.h:63
libmspub::OTHER_CALC_VAL
const int OTHER_CALC_VAL
Definition: PolygonUtils.h:31
ShapeInfo.h
libmspub::ShapeInfo::m_type
boost::optional< ShapeType > m_type
Definition: ShapeInfo.h:39
libmspub::LineSpacingInfo
Definition: MSPUBTypes.h:150
libmspub::Coordinate::getHeightIn
double getHeightIn() const
Definition: Coordinate.h:34
libmspub::BorderImgInfo
Definition: BorderArtInfo.h:21
libmspub::ShapeInfo::m_pageSeqNum
boost::optional< unsigned > m_pageSeqNum
Definition: ShapeInfo.h:45
libmspub::MSPUBCollector::setMasterPage
void setMasterPage(unsigned pageSeqNum, unsigned masterSeqNum)
Definition: MSPUBCollector.cpp:1984
MSPUBCollector.h
libmspub::ImgType
ImgType
Definition: MSPUBTypes.h:213
libmspub::MSPUBCollector::m_widthSet
bool m_widthSet
Definition: MSPUBCollector.h:144
libmspub::ShapeInfo::m_verticalAlign
boost::optional< VerticalAlign > m_verticalAlign
Definition: ShapeInfo.h:63
libmspub::MSPUBCollector::m_tableCellTextEndsByTextId
std::map< unsigned, std::vector< unsigned > > m_tableCellTextEndsByTextId
Definition: MSPUBCollector.h:168
libmspub::MSPUBCollector::useEncodingHeuristic
void useEncodingHeuristic()
Definition: MSPUBCollector.cpp:510
libmspub::CustomShape::m_adjustShiftMask
unsigned char m_adjustShiftMask
Definition: PolygonUtils.h:75
libmspub::MSPUBCollector::m_bgShapeSeqNumsByPageSeqNum
std::map< unsigned, unsigned > m_bgShapeSeqNumsByPageSeqNum
Definition: MSPUBCollector.h:158
libmspub::Underline::ThickWave
libmspub::ShapeInfo::m_coordinates
boost::optional< Coordinate > m_coordinates
Definition: ShapeInfo.h:43
Margins.h
libmspub::LINE_SPACING_SP
Definition: MSPUBTypes.h:146
Coordinate.h
libmspub::MSPUBCollector::setShapeCropType
void setShapeCropType(unsigned seqNum, ShapeType cropType)
Definition: MSPUBCollector.cpp:1989
libmspub::MSPUBCollector::m_encodingHeuristic
bool m_encodingHeuristic
Definition: MSPUBCollector.h:172
libmspub::MSPUBCollector::addEOTFont
void addEOTFont(const librevenge::RVNGString &name, const librevenge::RVNGBinaryData &data)
Definition: MSPUBCollector.cpp:356
libmspub::mimeByImgType
const char * mimeByImgType(ImgType type)
Definition: libmspub_utils.cpp:72
libmspub::Underline::DotDotDash
libmspub::Underline::WordsOnly
libmspub::MSPUBCollector::m_embeddedFonts
std::list< EmbeddedFontInfo > m_embeddedFonts
Definition: MSPUBCollector.h:163
libmspub::ParagraphStyle::m_dropCapLetters
boost::optional< unsigned > m_dropCapLetters
Definition: MSPUBTypes.h:176
libmspub::MSPUBCollector::getShapeAdjustValues
std::vector< int > getShapeAdjustValues(const ShapeInfo &info) const
Definition: MSPUBCollector.cpp:624
libmspub::MSPUBCollector::getMasterPageSeqNum
boost::optional< unsigned > getMasterPageSeqNum(unsigned pageSeqNum) const
Definition: MSPUBCollector.cpp:1753
libmspub::MSPUBCollector::addPage
bool addPage(unsigned seqNum)
Definition: MSPUBCollector.cpp:1492
libmspub::ShapeInfo::m_flips
boost::optional< std::pair< bool, bool > > m_flips
Definition: ShapeInfo.h:50
Line.h
libmspub::CharacterStyle::colorIndex
int colorIndex
Definition: MSPUBTypes.h:131
libmspub::CharacterStyle::outline
bool outline
Definition: MSPUBTypes.h:134
libmspub::ParagraphStyle::m_firstLineIndentEmu
boost::optional< int > m_firstLineIndentEmu
Definition: MSPUBTypes.h:170
libmspub::MSPUBCollector::addTextString
bool addTextString(const std::vector< TextParagraph > &str, unsigned id)
Definition: MSPUBCollector.cpp:1876
libmspub::MSPUBCollector::m_pageSeqNumsByShapeSeqNum
std::map< unsigned, unsigned > m_pageSeqNumsByShapeSeqNum
Definition: MSPUBCollector.h:157
libmspub::MSPUBCollector::setShapePictureBrightness
void setShapePictureBrightness(unsigned seqNum, int brightness)
Definition: MSPUBCollector.cpp:367
libmspub::MSPUBCollector::setShapePictureContrast
void setShapePictureContrast(unsigned seqNum, int contrast)
Definition: MSPUBCollector.cpp:373
libmspub::RIGHT
Definition: MSPUBTypes.h:66
libmspub::MSPUBCollector::setShapeCoordinatesRotated90
void setShapeCoordinatesRotated90(unsigned seqNum)
Definition: MSPUBCollector.cpp:524
libmspub::MSPUBCollector::setCurrentGroupSeqNum
bool setCurrentGroupSeqNum(unsigned seqNum)
Definition: MSPUBCollector.cpp:590
libmspub::MSPUBCollector::hasPage
bool hasPage(unsigned seqNum) const
Definition: MSPUBCollector.cpp:575
libmspub::Shadow
Definition: Shadow.h:26
libmspub::MSPUBCollector::m_shapesWithCoordinatesRotated90
std::set< unsigned > m_shapesWithCoordinatesRotated90
Definition: MSPUBCollector.h:166
libmspub::MSPUBCollector::addTextColor
void addTextColor(ColorReference c)
Definition: MSPUBCollector.cpp:1974
libmspub::CharacterStyle::underline
boost::optional< Underline > underline
Definition: MSPUBTypes.h:127
libmspub::MSPUBCollector::setShapeCustomPath
void setShapeCustomPath(unsigned seqNum, const DynamicCustomShape &shape)
Definition: MSPUBCollector.cpp:534
libmspub::CharacterStyle::lcid
boost::optional< unsigned > lcid
Definition: MSPUBTypes.h:141
libmspub::Underline::Dash
Shadow.h
libmspub::CustomShape::mp_calculations
const Calculation * mp_calculations
Definition: PolygonUtils.h:65
PolygonUtils.h
libmspub::MSPUBCollector::PageInfo::m_shapeGroupsOrdered
std::vector< std::shared_ptr< ShapeGroupElement > > m_shapeGroupsOrdered
Definition: MSPUBCollector.h:134
libmspub::MSPUBCollector::m_topLevelShapes
std::vector< std::shared_ptr< ShapeGroupElement > > m_topLevelShapes
Definition: MSPUBCollector.h:161
libmspub::MSPUBCollector::getColorString
static librevenge::RVNGString getColorString(const Color &)
Definition: MSPUBCollector.cpp:1720
libmspub::MSPUBCollector::setShapeCoordinatesInEmu
void setShapeCoordinatesInEmu(unsigned seqNum, int xs, int ys, int xe, int ye)
Definition: MSPUBCollector.cpp:1528
libmspub::ShapeInfo::m_stretchBorderArt
bool m_stretchBorderArt
Definition: ShapeInfo.h:55
Arrow.h
VectorTransformation2D.h
libmspub::MSPUBCollector::collectMetaData
void collectMetaData(const librevenge::RVNGPropertyList &metaData)
Definition: MSPUBCollector.cpp:351
libmspub::Margins::m_top
unsigned m_top
Definition: Margins.h:19
libmspub::MSPUBCollector::m_currentShapeGroup
std::shared_ptr< ShapeGroupElement > m_currentShapeGroup
Definition: MSPUBCollector.h:160
libmspub::noop
void noop(const CustomShape *)
Definition: MSPUBCollector.cpp:520
libmspub::MSPUBCollector::m_numPages
unsigned short m_numPages
Definition: MSPUBCollector.h:145
libmspub::BorderArtInfo::m_offsets
std::vector< unsigned > m_offsets
Definition: BorderArtInfo.h:34
libmspub::MIDDLE
Definition: VerticalAlign.h:18
libmspub::MSPUBCollector::addFont
void addFont(std::vector< unsigned char > name)
Definition: MSPUBCollector.cpp:1533
libmspub::ShapeInfo::m_adjustValues
std::vector< int > m_adjustValues
Definition: ShapeInfo.h:48
libmspub::Coordinate::getYIn
double getYIn(double pageHeight) const
Definition: Coordinate.h:26
EmbeddedFontInfo.h
libmspub::ShapeInfo::m_tableInfo
boost::optional< TableInfo > m_tableInfo
Definition: ShapeInfo.h:58
libmspub::MSPUBCollector::setShapeImgIndex
void setShapeImgIndex(unsigned seqNum, unsigned index)
Definition: MSPUBCollector.cpp:1508
libmspub::SUBSCRIPT
Definition: MSPUBTypes.h:37
libmspub::ParagraphStyle
Definition: MSPUBTypes.h:163
libmspub::MSPUBCollector::m_contentChunkReferences
std::list< ContentChunkReference > m_contentChunkReferences
Definition: MSPUBCollector.h:142
libmspub::MSPUBCollector::m_shapeSeqNumsOrdered
std::vector< unsigned > m_shapeSeqNumsOrdered
Definition: MSPUBCollector.h:156
libmspub::MSPUBCollector::setShapePage
void setShapePage(unsigned seqNum, unsigned pageSeqNum)
Definition: MSPUBCollector.cpp:1968
libmspub::Calculation::m_argOne
int m_argOne
Definition: PolygonUtils.h:48
libmspub::Dash
Definition: Dash.h:49
libmspub::Shadow::m_offsetXInEmu
int m_offsetXInEmu
Definition: Shadow.h:29
libmspub::BorderArtInfo::m_images
std::vector< BorderImgInfo > m_images
Definition: BorderArtInfo.h:33
libmspub::writeCustomShape
void writeCustomShape(ShapeType shapeType, librevenge::RVNGPropertyList &graphicsProps, librevenge::RVNGDrawingInterface *painter, double x, double y, double height, double width, bool closeEverything, VectorTransformation2D transform, std::vector< Line > lines, std::function< double(unsigned index)> calculator, const std::vector< Color > &palette, std::shared_ptr< const CustomShape > shape)
Definition: PolygonUtils.cpp:5908
libmspub::PatternFill
Definition: Fill.h:51
libmspub::DynamicCustomShape
Definition: PolygonUtils.h:92
libmspub::MSPUBCollector::assignShapesToPages
void assignShapesToPages()
Definition: MSPUBCollector.cpp:1736
libmspub::MSPUBCollector::setShapeDash
void setShapeDash(unsigned seqNum, const Dash &dash)
Definition: MSPUBCollector.cpp:1514
libmspub::Margins::m_right
unsigned m_right
Definition: Margins.h:19
libmspub::Dash::m_dots
std::vector< Dot > m_dots
Definition: Dash.h:53
libmspub::MSPUBCollector::go
bool go()
Definition: MSPUBCollector.cpp:1832
libmspub::MSPUBCollector::getCalculatedEncoding
const char * getCalculatedEncoding() const
Definition: MSPUBCollector.cpp:1247
libmspub::MSPUBCollector::m_masterPages
std::set< unsigned > m_masterPages
Definition: MSPUBCollector.h:165
libmspub::CustomShape::m_coordHeight
unsigned m_coordHeight
Definition: PolygonUtils.h:72
libmspub::Calculation
Definition: PolygonUtils.h:45
libmspub::ShapeInfo::m_borderPosition
boost::optional< BorderPosition > m_borderPosition
Definition: ShapeInfo.h:52
libmspub::MSPUBCollector::m_masterPagesByPageSeqNum
std::map< unsigned, unsigned > m_masterPagesByPageSeqNum
Definition: MSPUBCollector.h:167
libmspub::MSPUBCollector::m_calculationValuesSeen
std::vector< bool > m_calculationValuesSeen
Definition: MSPUBCollector.h:170
libmspub::ShapeInfo::m_columnSpacing
unsigned m_columnSpacing
Definition: ShapeInfo.h:60
libmspub::CustomShape
Definition: PolygonUtils.h:59
libmspub::ShapeInfo::m_clipPath
std::vector< libmspub::Vertex > m_clipPath
Definition: ShapeInfo.h:67
libmspub::MSPUBCollector::getCalculationValue
double getCalculationValue(const ShapeInfo &info, unsigned index, bool recursiveEntry, const std::vector< int > &adjustValues) const
Definition: MSPUBCollector.cpp:1377
libmspub::MSPUBCollector::m_allText
std::vector< unsigned char > m_allText
Definition: MSPUBCollector.h:173
libmspub::INSIDE_SHAPE
Definition: MSPUBTypes.h:28
libmspub::getFudgedCoordinates
Coordinate getFudgedCoordinates(Coordinate coord, const std::vector< Line > &lines, bool makeBigger, BorderPosition borderPosition)
Definition: MSPUBCollector.cpp:428
libmspub::LINE_SPACING_PT
Definition: MSPUBTypes.h:147
m_cell
unsigned m_cell
Definition: MSPUBCollector.cpp:133
libmspub::MSPUBCollector::writePageShapes
void writePageShapes(unsigned pageSeqNum) const
Definition: MSPUBCollector.cpp:1796
libmspub::Arrow
Definition: Arrow.h:30
libmspub::Underline::Single
libmspub::CharacterStyle::fontIndex
boost::optional< unsigned > fontIndex
Definition: MSPUBTypes.h:132
libmspub::ShapeInfo::m_cropType
boost::optional< ShapeType > m_cropType
Definition: ShapeInfo.h:40
libmspub::HALF_INSIDE_SHAPE
Definition: MSPUBTypes.h:29
libmspub::MSPUBCollector::setShapeBorderPosition
void setShapeBorderPosition(unsigned seqNum, BorderPosition pos)
Definition: MSPUBCollector.cpp:570
libmspub::PROP_GEO_TOP
const int PROP_GEO_TOP
Definition: PolygonUtils.h:27
libmspub::ShapeGroupElement::getSeqNum
unsigned getSeqNum() const
Definition: ShapeGroupElement.cpp:103
libmspub::MSPUBCollector::m_calculatedEncoding
boost::optional< const char * > m_calculatedEncoding
Definition: MSPUBCollector.h:174
M_PI
#define M_PI
Definition: libmspub_utils.h:29
VerticalAlign.h
libmspub::LineSpacingInfo::m_type
LineSpacingType m_type
Definition: MSPUBTypes.h:152
Fill.h
libmspub::Calculation::m_argTwo
int m_argTwo
Definition: PolygonUtils.h:49
libmspub::MSPUBCollector::setShapePictureRecolor
void setShapePictureRecolor(unsigned seqNum, const ColorReference &recolor)
Definition: MSPUBCollector.cpp:361
libmspub::CharacterStyle::shadow
bool shadow
Definition: MSPUBTypes.h:135
libmspub::MSPUBCollector::getCharStyleProps
librevenge::RVNGPropertyList getCharStyleProps(const CharacterStyle &, boost::optional< unsigned > defaultCharStyleIndex) const
Definition: MSPUBCollector.cpp:1621
libmspub::endShapeGroup
void endShapeGroup(librevenge::RVNGDrawingInterface *painter)
Definition: MSPUBCollector.cpp:619
libmspub::Underline::ThickLongDash
libmspub::MSPUBCollector::setShapeTableInfo
void setShapeTableInfo(unsigned seqNum, const TableInfo &ti)
Definition: MSPUBCollector.cpp:397
libmspub::MSPUBCollector::beginGroup
void beginGroup()
Definition: MSPUBCollector.cpp:545
libmspub::CharacterStyle
Definition: MSPUBTypes.h:112
libmspub::MSPUBCollector::operator=
MSPUBCollector & operator=(const MSPUBCollector &)
libmspub::CharacterStyle::italic
bool italic
Definition: MSPUBTypes.h:128
libmspub::MSPUBCollector::m_height
double m_height
Definition: MSPUBCollector.h:143
libmspub::LineSpacingInfo::m_amount
double m_amount
Definition: MSPUBTypes.h:153
libmspub::MSPUBCollector::MSPUBCollector
MSPUBCollector(librevenge::RVNGDrawingInterface *painter)
Definition: MSPUBCollector.cpp:475
libmspub::MSPUBCollector::m_pagesBySeqNum
std::map< unsigned, PageInfo > m_pagesBySeqNum
Definition: MSPUBCollector.h:147
libmspub::ShapeInfo::m_rotation
boost::optional< double > m_rotation
Definition: ShapeInfo.h:49
libmspub::Shadow::m_offsetYInEmu
int m_offsetYInEmu
Definition: Shadow.h:30
libmspub::MSPUBCollector::m_metaData
librevenge::RVNGPropertyList m_metaData
Definition: MSPUBCollector.h:175
libmspub::ShapeType
ShapeType
Definition: ShapeType.h:15
libmspub::Calculation::m_argThree
int m_argThree
Definition: PolygonUtils.h:50
libmspub::ParagraphStyle::m_dropCapLines
boost::optional< unsigned > m_dropCapLines
Definition: MSPUBTypes.h:175
libmspub::Color
Definition: MSPUBTypes.h:199
libmspub::doubleModulo
double doubleModulo(double x, double y)
Definition: libmspub_utils.cpp:108
libmspub::ColorReference
Definition: ColorReference.h:19
libmspub::MSPUBCollector::setShapeOrder
void setShapeOrder(unsigned seqNum)
Definition: MSPUBCollector.cpp:601
libmspub::ShapeInfo::m_innerRotation
boost::optional< int > m_innerRotation
Definition: ShapeInfo.h:66
libmspub::MSPUBCollector::m_width
double m_width
Definition: MSPUBCollector.h:143
libmspub::PROP_GEO_RIGHT
const int PROP_GEO_RIGHT
Definition: PolygonUtils.h:28
libmspub::EmbeddedFontInfo
Definition: EmbeddedFontInfo.h:17
libmspub::needsEmulation
bool needsEmulation(const Shadow &shadow)
Definition: Shadow.cpp:15
libmspub::ShapeGroupElement
Definition: ShapeGroupElement.h:27
libmspub::GradientFill
Definition: Fill.h:75
libmspub::ShapeInfo::m_pictureRecolor
boost::optional< ColorReference > m_pictureRecolor
Definition: ShapeInfo.h:64
libmspub::VectorTransformation2D::getRotation
double getRotation() const
Definition: VectorTransformation2D.cpp:91
libmspub::MSPUBCollector::ccr_iterator_t
std::list< ContentChunkReference >::const_iterator ccr_iterator_t
Definition: MSPUBCollector.h:52
libmspub::ShapeInfo::m_shadow
boost::optional< Shadow > m_shadow
Definition: ShapeInfo.h:65
POINTS_IN_INCH
#define POINTS_IN_INCH
Definition: MSPUBConstants.h:14
libmspub::PROP_GEO_LEFT
const int PROP_GEO_LEFT
Definition: PolygonUtils.h:26
libmspub::MSPUBCollector::addPaletteColor
void addPaletteColor(Color)
Definition: MSPUBCollector.cpp:610
m_width
double m_width
Definition: PolygonUtils.cpp:5706
libmspub::PROP_GEO_BOTTOM
const int PROP_GEO_BOTTOM
Definition: PolygonUtils.h:29
libmspub::Underline::ThickDot
libmspub::BorderArtInfo::m_offsetsOrdered
std::vector< unsigned > m_offsetsOrdered
Definition: BorderArtInfo.h:35
libmspub::MSPUBCollector::m_images
std::vector< std::pair< ImgType, librevenge::RVNGBinaryData > > m_images
Definition: MSPUBCollector.h:148
libmspub::Underline::Wave
libmspub::ASPECT_RATIO
const int ASPECT_RATIO
Definition: PolygonUtils.h:32
libmspub::Underline::Double
libmspub::LEFT
Definition: MSPUBTypes.h:64
libmspub::MSPUBCollector::setShapeType
void setShapeType(unsigned seqNum, ShapeType type)
Definition: MSPUBCollector.cpp:1472
libmspub::MSPUBCollector::endGroup
bool endGroup()
Definition: MSPUBCollector.cpp:555
libmspub::Coordinate
Definition: Coordinate.h:17
libmspub::Shadow::m_color
ColorReference m_color
Definition: Shadow.h:36
libmspub::BorderImgInfo::m_type
ImgType m_type
Definition: BorderArtInfo.h:23
libmspub::MSPUBCollector::setupShapeStructures
void setupShapeStructures(ShapeGroupElement &elt)
Definition: MSPUBCollector.cpp:662
libmspub::MSPUBCollector::setShapeVerticalTextAlign
void setShapeVerticalTextAlign(unsigned seqNum, VerticalAlign va)
Definition: MSPUBCollector.cpp:385
libmspub::calcClipPath
librevenge::RVNGPropertyList calcClipPath(const std::vector< Vertex > &verts, double x, double y, double height, double width, VectorTransformation2D transform, std::shared_ptr< const CustomShape > shape)
Definition: PolygonUtils.cpp:5883
libmspub::ShapeGroupElement::setShapeInfo
void setShapeInfo(const ShapeInfo &shapeInfo)
Definition: ShapeGroupElement.cpp:36
libmspub::ShapeInfo::m_lineBackColor
boost::optional< ColorReference > m_lineBackColor
Definition: ShapeInfo.h:56
libmspub::Underline::DoubleWave
libmspub::Underline
Underline
Definition: MSPUBTypes.h:40
libmspub::ShapeInfo::m_textId
boost::optional< unsigned > m_textId
Definition: ShapeInfo.h:46
libmspub::MSPUBCollector::addShapeLine
void addShapeLine(unsigned seqNum, Line line)
Definition: MSPUBCollector.cpp:565
libmspub::Underline::ThickDotDash
libmspub::MSPUBCollector::pageIsMaster
bool pageIsMaster(unsigned pageSeqNum) const
Definition: MSPUBCollector.cpp:1827
libmspub::Color::b
unsigned char b
Definition: MSPUBTypes.h:203
libmspub::CharacterStyle::superSubType
SuperSubType superSubType
Definition: MSPUBTypes.h:133
libmspub::MSPUBCollector::addImage
bool addImage(unsigned index, ImgType type, librevenge::RVNGBinaryData img)
Definition: MSPUBCollector.cpp:1914
libmspub::MSPUBCollector::m_stringOffsetsByTextId
std::map< unsigned, unsigned > m_stringOffsetsByTextId
Definition: MSPUBCollector.h:169
libmspub::MSPUBCollector::m_shapeInfosBySeqNum
std::map< unsigned, ShapeInfo > m_shapeInfosBySeqNum
Definition: MSPUBCollector.h:164
libmspub::MSPUBCollector::setWidthInEmu
void setWidthInEmu(unsigned long)
Definition: MSPUBCollector.cpp:1900
libmspub::MSPUBCollector::setShapeBeginArrow
void setShapeBeginArrow(unsigned seqNum, const Arrow &arrow)
Definition: MSPUBCollector.cpp:379
libmspub::Underline::ThickDotDotDash
libmspub::MSPUBCollector::PageInfo::PageInfo
PageInfo()
Definition: MSPUBCollector.h:135
libmspub::isShapeTypeRectangle
bool isShapeTypeRectangle(ShapeType type)
Definition: PolygonUtils.cpp:6375
libmspub::ShapeInfo::m_numColumns
boost::optional< unsigned > m_numColumns
Definition: ShapeInfo.h:59
libmspub::no_op
void no_op()
Definition: MSPUBCollector.cpp:615
libmspub::MSPUBCollector::setShapeBorderImageId
void setShapeBorderImageId(unsigned seqNum, unsigned borderImageId)
Definition: MSPUBCollector.cpp:529
libmspub::MSPUBCollector::m_textColors
std::vector< ColorReference > m_textColors
Definition: MSPUBCollector.h:150
libmspub::Margins::m_left
unsigned m_left
Definition: Margins.h:19
libmspub::Coordinate::m_ye
int m_ye
Definition: Coordinate.h:21
libmspub::MSPUBCollector::setHeightInEmu
void setHeightInEmu(unsigned long)
Definition: MSPUBCollector.cpp:1907
libmspub::ShapeInfo::m_dash
boost::optional< Dash > m_dash
Definition: ShapeInfo.h:57
libmspub::MSPUBCollector::paintShape
std::function< void(void)> paintShape(const ShapeInfo &info, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform, bool isGroup, const VectorTransformation2D &thisTransform) const
Definition: MSPUBCollector.cpp:690
libmspub::MSPUBCollector::m_textStringsById
std::map< unsigned, std::vector< TextParagraph > > m_textStringsById
Definition: MSPUBCollector.h:146
libmspub::MSPUBCollector::getSpecialValue
double getSpecialValue(const ShapeInfo &info, const CustomShape &shape, int arg, const std::vector< int > &adjustValues) const
Definition: MSPUBCollector.cpp:1337
libmspub::VectorTransformation2D::fromFlips
static VectorTransformation2D fromFlips(bool flipH, bool flipV)
Definition: VectorTransformation2D.cpp:36
libmspub::ShapeInfo
Definition: ShapeInfo.h:37
m_rowSpan
unsigned m_rowSpan
Definition: MSPUBCollector.cpp:134
libmspub::ShapeInfo::m_lines
std::vector< Line > m_lines
Definition: ShapeInfo.h:44
libmspub::MSPUBCollector::setTableCellTextEnds
void setTableCellTextEnds(unsigned textId, const std::vector< unsigned > &ends)
Definition: MSPUBCollector.cpp:504
libmspub::MSPUBCollector::setBorderImageOffset
void setBorderImageOffset(unsigned index, unsigned offset)
Definition: MSPUBCollector.cpp:1943
ShapeType.h
libmspub::PROP_ADJUST_VAL_FIRST
const int PROP_ADJUST_VAL_FIRST
Definition: PolygonUtils.h:24
libmspub::Underline::DotDash
libmspub::Underline::ThickDash
libmspub::VectorTransformation2D::fromCounterRadians
static VectorTransformation2D fromCounterRadians(double theta)
Definition: VectorTransformation2D.cpp:55
libmspub::MSPUBCollector::m_paletteColors
std::vector< Color > m_paletteColors
Definition: MSPUBCollector.h:155
libmspub::appendCharacters
void appendCharacters(librevenge::RVNGString &text, const std::vector< unsigned char > &characters, const char *encoding)
Definition: libmspub_utils.cpp:383
libmspub::UNKNOWN
Definition: MSPUBTypes.h:215
EMUS_IN_INCH
#define EMUS_IN_INCH
Definition: MSPUBConstants.h:13
libmspub::MSPUBCollector::setShapeFlip
void setShapeFlip(unsigned, bool, bool)
Definition: MSPUBCollector.cpp:1467