libmspub Namespace Reference

Classes

class  ColorReference
struct  Coordinate
class  Fill
class  ImgFill
class  PatternFill
class  SolidFill
class  GradientFill
class  EndOfStreamException
class  GenericException
struct  Line
struct  Margins
class  MSPUBCollector
class  MSPUBDocument
class  FindBySeqNum
class  FindByParentSeqNum
class  MSPUBParser
class  MSPUBParser2k
class  MSPUBStringVectorImpl
class  MSPUBStringVector
class  MSPUBSVGGenerator
struct  EscherContainerInfo
struct  MSPUBBlockInfo
struct  ContentChunkReference
struct  QuillChunkReference
struct  CharacterStyle
struct  ParagraphStyle
struct  TextSpan
struct  TextParagraph
struct  Color
struct  Vertex
struct  Calculation
struct  TextRectangle
struct  CustomShape
class  ShapeGroupElement
struct  ShapeInfo
struct  Shape
struct  FillableShape
struct  GeometricShape
struct  Vector2D
class  VectorTransformation2D

Enumerations

enum  FillType {
  SOLID, GRADIENT = 0x07, BITMAP = 0x03, TEXTURE = 0x02,
  PATTERN = 0x01
}
enum  MSPUBBlockID {
  DOCUMENT_SIZE = 0x12, DOCUMENT_WIDTH = 0x1, DOCUMENT_HEIGHT = 0x2, PAGE_BG_SHAPE = 0xa,
  PAGE_SHAPES = 0x2, CHUNK_TYPE = 0x2, CHUNK_OFFSET = 0x4, CHUNK_PARENT_SEQNUM = 0x5,
  SHAPE_WIDTH = 0xaa, SHAPE_HEIGHT = 0xab, SHAPE_TEXT_ID = 0x27, BOLD_1_ID = 0x02,
  BOLD_2_ID = 0x37, ITALIC_1_ID = 0x03, ITALIC_2_ID = 0x38, UNDERLINE_ID = 0x1E,
  TEXT_SIZE_1_ID = 0x0C, TEXT_SIZE_2_ID = 0x39, COLOR_INDEX_CONTAINER_ID = 0x44, BARE_COLOR_INDEX_ID = 0x2E,
  FONT_INDEX_CONTAINER_ID = 0x24, COLOR_INDEX_ID = 0x0, PARAGRAPH_ALIGNMENT = 0x04, PARAGRAPH_DEFAULT_CHAR_STYLE = 0x19,
  PARAGRAPH_LINE_SPACING = 0x34, PARAGRAPH_SPACE_BEFORE = 0x12, PARAGRAPH_SPACE_AFTER = 0x13, PARAGRAPH_FIRST_LINE_INDENT = 0xC,
  PARAGRAPH_LEFT_INDENT = 0xD, PARAGRAPH_RIGHT_INDENT = 0xE
}
enum  MSPUBBlockType {
  TRAILER_DIRECTORY = 0x90, GENERAL_CONTAINER = 0x88, STRING_CONTAINER = 0xc0, DUMMY = 0x78,
  SHAPE_SEQNUM = 0x70
}
enum  MSPUBContentChunkType {
  UNKNOWN_CHUNK = 0, SHAPE = 0x01, ALTSHAPE = 0x20, DOCUMENT = 0x44,
  PAGE = 0x43, PALETTE = 0x5C, GROUP = 0x30, IMAGE_2K,
  IMAGE_2K_DATA
}
enum  BorderPosition { INSIDE_SHAPE, HALF_INSIDE_SHAPE, OUTSIDE_SHAPE }
enum  Alignment { LEFT = 0, CENTER = 2, RIGHT = 1, JUSTIFY = 6 }
enum  PageType { MASTER, NORMAL, DUMMY_PAGE }
enum  ImgType {
  UNKNOWN, PNG, JPEG, WMF,
  EMF, TIFF, DIB, PICT
}
enum  ShapeType {
  UNKNOWN_SHAPE = -1, RECTANGLE = 1, ROUND_RECTANGLE = 2, ELLIPSE = 3,
  DIAMOND = 4, ISOCELES_TRIANGLE = 5, RIGHT_TRIANGLE = 6, PARALLELOGRAM = 7,
  TRAPEZOID = 8, HEXAGON = 9, OCTAGON = 10, PLUS = 11,
  STAR = 12, ARROW = 13, HOME_PLATE = 15, CUBE = 16,
  BALLOON = 17, ARC_SHAPE = 19, LINE = 20, PLAQUE = 21,
  CAN = 22, DONUT = 23, TEXT_SIMPLE = 24, STRAIGHT_CONNECTOR_1 = 32,
  BENT_CONNECTOR_2 = 33, BENT_CONNECTOR_3 = 34, BENT_CONNECTOR_4 = 35, BENT_CONNECTOR_5 = 36,
  CURVED_CONNECTOR_2 = 37, CURVED_CONNECTOR_3 = 38, CURVED_CONNECTOR_4 = 39, CURVED_CONNECTOR_5 = 40,
  CALLOUT_1 = 41, CALLOUT_2 = 42, CALLOUT_3 = 43, RIBBON = 53,
  RIBBON_2 = 54, CHEVRON = 55, PENTAGON = 56, NO_SMOKING = 57,
  SEAL_8 = 58, SEAL_16 = 59, SEAL_32 = 60, WAVE = 64,
  FOLDED_CORNER = 65, LEFT_ARROW = 66, DOWN_ARROW = 67, UP_ARROW = 68,
  LEFT_RIGHT_ARROW = 69, UP_DOWN_ARROW = 70, IRREGULAR_SEAL_1 = 71, IRREGULAR_SEAL_2 = 72,
  LIGHTNING_BOLT = 73, HEART = 74, PICTURE_FRAME = 75, QUAD_ARROW = 76,
  BEVEL = 84, LEFT_BRACKET = 85, RIGHT_BRACKET = 86, LEFT_BRACE = 87,
  RIGHT_BRACE = 88, LEFT_UP_ARROW = 89, BENT_UP_ARROW = 90, BENT_ARROW = 91,
  SEAL_24 = 92, STRIPED_RIGHT_ARROW = 93, NOTCHED_RIGHT_ARROW = 94, BLOCK_ARC = 95,
  SMILEY_FACE = 96, VERTICAL_SCROLL = 97, HORIZONTAL_SCROLL = 98, CIRCULAR_ARROW = 99,
  U_TURN_ARROW = 101, CURVED_RIGHT_ARROW = 102, CURVED_LEFT_ARROW = 103, CURVED_UP_ARROW = 104,
  CURVED_DOWN_ARROW = 105, FLOW_CHART_PROCESS = 109, FLOW_CHART_DECISION = 110, FLOW_CHART_IO = 111,
  FLOW_CHART_PREDEFINED_PROCESS = 112, FLOW_CHART_INTERNAL_STORAGE = 113, FLOW_CHART_DOCUMENT = 114, FLOW_CHART_MULTI_DOCUMENT = 115,
  FLOW_CHART_TERMINATOR = 116, FLOW_CHART_PREPARATION = 117, FLOW_CHART_MANUAL_INPUT = 118, FLOW_CHART_MANUAL_OPERATION = 119,
  FLOW_CHART_CONNECTOR = 120, FLOW_CHART_PUNCHED_CARD = 121, FLOW_CHART_PUNCHED_TAPE = 122, FLOW_CHART_SUMMING_JUNCTION = 123,
  FLOW_CHART_OR = 124, FLOW_CHART_COLLATE = 125, FLOW_CHART_SORT = 126, FLOW_CHART_EXTRACT = 127,
  FLOW_CHART_MERGE = 128, FLOW_CHART_ONLINE_STORAGE = 130, FLOW_CHART_MAGNETIC_TAPE = 131, FLOW_CHART_MAGNETIC_DISK = 132,
  FLOW_CHART_MAGNETIC_DRUM = 133, FLOW_CHART_DISPLAY = 134, FLOW_CHART_DELAY = 135, TEXT_PLAIN_TEXT = 136,
  TEXT_STOP = 137, TEXT_TRIANGLE = 138, TEXT_TRIANGLE_INVERTED = 139, TEXT_CHEVRON = 140,
  TEXT_CHEVRON_INVERTED = 141, TEXT_RING_OUTSIDE = 143, TEXT_ARCH_UP_CURVE = 144, TEXT_ARCH_DOWN_CURVE = 145,
  TEXT_CIRCLE_CURVE = 146, TEXT_BUTTON_CURVE = 147, TEXT_ARCH_UP_POUR = 148, TEXT_ARCH_DOWN_POUR = 149,
  TEXT_CIRCLE_POUR = 150, TEXT_BUTTON_POUR = 151, TEXT_CURVE_UP = 152, TEXT_CURVE_DOWN = 153,
  TEXT_CASCADE_UP = 154, TEXT_CASCADE_DOWN = 155, TEXT_WAVE_1 = 156, TEXT_WAVE_2 = 157,
  TEXT_WAVE_3 = 158, TEXT_WAVE_4 = 159, TEXT_INFLATE = 160, TEXT_DEFLATE = 161,
  TEXT_INFLATE_BOTTOM = 162, TEXT_DEFLATE_BOTTOM = 163, TEXT_INFLATE_TOP = 164, TEXT_DEFLATE_TOP = 165,
  TEXT_DEFLATE_INFLATE = 166, TEXT_DEFLATE_INFLATE_DEFLATE = 167, TEXT_FADE_RIGHT = 168, TEXT_FADE_LEFT = 169,
  TEXT_FADE_UP = 170, TEXT_FADE_DOWN = 171, TEXT_SLANT_UP = 172, TEXT_SLANT_DOWN = 173,
  TEXT_CAN_UP = 174, TEXT_CAN_DOWN = 175, FLOW_CHART_ALTERNATE_PROCESS = 176, FLOW_CHART_OFFPAGE_CONNECTOR = 177,
  LEFT_RIGHT_UP_ARROW = 182, SUN = 183, MOON = 184, BRACKET_PAIR = 185,
  BRACE_PAIR = 186, SEAL_4 = 187, DOUBLE_WAVE = 188, ACTION_BUTTON_BLANK = 189,
  ACTION_BUTTON_HOME = 190, ACTION_BUTTON_HELP = 191, ACTION_BUTTON_INFORMATION = 192, ACTION_BUTTON_FORWARD_NEXT = 193,
  ACTION_BUTTON_BACK_PREVIOUS = 194, ACTION_BUTTON_END = 195, ACTION_BUTTON_BEGINNING = 196, ACTION_BUTTON_RETURN = 197,
  ACTION_BUTTON_DOCUMENT = 198, ACTION_BUTTON_SOUND = 199, ACTION_BUTTON_MOVIE = 200, TEXT_BOX = 202
}

Functions

bool operator== (const libmspub::ColorReference &l, const libmspub::ColorReference &r)
const char * mimeByImgType (ImgType type)
uint16_t readU16 (const unsigned char *input, unsigned offset)
uint32_t readU32 (const unsigned char *input, unsigned offset)
uint8_t readU8 (WPXInputStream *input)
uint16_t readU16 (WPXInputStream *input)
uint32_t readU32 (WPXInputStream *input)
uint64_t readU64 (WPXInputStream *input)
int32_t readS32 (WPXInputStream *input)
double readFixedPoint (WPXInputStream *input)
double toFixedPoint (int fp)
void readNBytes (WPXInputStream *input, unsigned long length, std::vector< unsigned char > &out)
void appendCharacters (WPXString &text, std::vector< unsigned char > characters)
bool stillReading (WPXInputStream *input, unsigned long until)
void rotateCounter (double &x, double &y, double centerX, double centerY, short rotation)
void flipIfNecessary (double &x, double &y, double centerX, double centerY, bool flipVertical, bool flipHorizontal)
unsigned correctModulo (int x, unsigned n)
double doubleModulo (double x, double y)
template<class MapT >
MapT::mapped_type * getIfExists (MapT &map, const typename MapT::key_type &key)
template<class MapT >
const MapT::mapped_type * getIfExists_const (MapT &map, const typename MapT::key_type &key)
template<class MapT >
MapT::mapped_type ptr_getIfExists (MapT &map, const typename MapT::key_type &key)
WPXBinaryData inflateData (WPXBinaryData)
const CustomShapegetCustomShape (ShapeType type)
bool isShapeTypeRectangle (ShapeType type)
void writeCustomShape (ShapeType shapeType, WPXPropertyList &graphicsProps, libwpg::WPGPaintInterface *painter, double x, double y, double height, double width, bool closeEverything, VectorTransformation2D transform, std::vector< Line > lines, boost::function< double(unsigned index)> calculator, const std::vector< Color > &palette)
Vector2D operator+ (const Vector2D &l, const Vector2D &r)
Vector2D operator- (const Vector2D &l, const Vector2D &r)
VectorTransformation2D operator* (const VectorTransformation2D &l, const VectorTransformation2D &r)

Variables

const int PROP_ADJUST_VAL_FIRST = 327
const int PROP_ADJUST_VAL_LAST = 336
const int PROP_GEO_LEFT = 320
const int PROP_GEO_TOP = 321
const int PROP_GEO_RIGHT = 322
const int PROP_GEO_BOTTOM = 323
const int OTHER_CALC_VAL = 0x400
const int ASPECT_RATIO = 0x600

Enumeration Type Documentation

Enumerator:
LEFT 
CENTER 
RIGHT 
JUSTIFY 
Enumerator:
INSIDE_SHAPE 
HALF_INSIDE_SHAPE 
OUTSIDE_SHAPE 
Enumerator:
SOLID 
GRADIENT 
BITMAP 
TEXTURE 
PATTERN 
Enumerator:
UNKNOWN 
PNG 
JPEG 
WMF 
EMF 
TIFF 
DIB 
PICT 
Enumerator:
DOCUMENT_SIZE 
DOCUMENT_WIDTH 
DOCUMENT_HEIGHT 
PAGE_BG_SHAPE 
PAGE_SHAPES 
CHUNK_TYPE 
CHUNK_OFFSET 
CHUNK_PARENT_SEQNUM 
SHAPE_WIDTH 
SHAPE_HEIGHT 
SHAPE_TEXT_ID 
BOLD_1_ID 
BOLD_2_ID 
ITALIC_1_ID 
ITALIC_2_ID 
UNDERLINE_ID 
TEXT_SIZE_1_ID 
TEXT_SIZE_2_ID 
COLOR_INDEX_CONTAINER_ID 
BARE_COLOR_INDEX_ID 
FONT_INDEX_CONTAINER_ID 
COLOR_INDEX_ID 
PARAGRAPH_ALIGNMENT 
PARAGRAPH_DEFAULT_CHAR_STYLE 
PARAGRAPH_LINE_SPACING 
PARAGRAPH_SPACE_BEFORE 
PARAGRAPH_SPACE_AFTER 
PARAGRAPH_FIRST_LINE_INDENT 
PARAGRAPH_LEFT_INDENT 
PARAGRAPH_RIGHT_INDENT 
Enumerator:
TRAILER_DIRECTORY 
GENERAL_CONTAINER 
STRING_CONTAINER 
DUMMY 
SHAPE_SEQNUM 
Enumerator:
UNKNOWN_CHUNK 
SHAPE 
ALTSHAPE 
DOCUMENT 
PAGE 
PALETTE 
GROUP 
IMAGE_2K 
IMAGE_2K_DATA 
Enumerator:
MASTER 
NORMAL 
DUMMY_PAGE 
Enumerator:
UNKNOWN_SHAPE 
RECTANGLE 
ROUND_RECTANGLE 
ELLIPSE 
DIAMOND 
ISOCELES_TRIANGLE 
RIGHT_TRIANGLE 
PARALLELOGRAM 
TRAPEZOID 
HEXAGON 
OCTAGON 
PLUS 
STAR 
ARROW 
HOME_PLATE 
CUBE 
BALLOON 
ARC_SHAPE 
LINE 
PLAQUE 
CAN 
DONUT 
TEXT_SIMPLE 
STRAIGHT_CONNECTOR_1 
BENT_CONNECTOR_2 
BENT_CONNECTOR_3 
BENT_CONNECTOR_4 
BENT_CONNECTOR_5 
CURVED_CONNECTOR_2 
CURVED_CONNECTOR_3 
CURVED_CONNECTOR_4 
CURVED_CONNECTOR_5 
CALLOUT_1 
CALLOUT_2 
CALLOUT_3 
RIBBON 
RIBBON_2 
CHEVRON 
PENTAGON 
NO_SMOKING 
SEAL_8 
SEAL_16 
SEAL_32 
WAVE 
FOLDED_CORNER 
LEFT_ARROW 
DOWN_ARROW 
UP_ARROW 
LEFT_RIGHT_ARROW 
UP_DOWN_ARROW 
IRREGULAR_SEAL_1 
IRREGULAR_SEAL_2 
LIGHTNING_BOLT 
HEART 
PICTURE_FRAME 
QUAD_ARROW 
BEVEL 
LEFT_BRACKET 
RIGHT_BRACKET 
LEFT_BRACE 
RIGHT_BRACE 
LEFT_UP_ARROW 
BENT_UP_ARROW 
BENT_ARROW 
SEAL_24 
STRIPED_RIGHT_ARROW 
NOTCHED_RIGHT_ARROW 
BLOCK_ARC 
SMILEY_FACE 
VERTICAL_SCROLL 
HORIZONTAL_SCROLL 
CIRCULAR_ARROW 
U_TURN_ARROW 
CURVED_RIGHT_ARROW 
CURVED_LEFT_ARROW 
CURVED_UP_ARROW 
CURVED_DOWN_ARROW 
FLOW_CHART_PROCESS 
FLOW_CHART_DECISION 
FLOW_CHART_IO 
FLOW_CHART_PREDEFINED_PROCESS 
FLOW_CHART_INTERNAL_STORAGE 
FLOW_CHART_DOCUMENT 
FLOW_CHART_MULTI_DOCUMENT 
FLOW_CHART_TERMINATOR 
FLOW_CHART_PREPARATION 
FLOW_CHART_MANUAL_INPUT 
FLOW_CHART_MANUAL_OPERATION 
FLOW_CHART_CONNECTOR 
FLOW_CHART_PUNCHED_CARD 
FLOW_CHART_PUNCHED_TAPE 
FLOW_CHART_SUMMING_JUNCTION 
FLOW_CHART_OR 
FLOW_CHART_COLLATE 
FLOW_CHART_SORT 
FLOW_CHART_EXTRACT 
FLOW_CHART_MERGE 
FLOW_CHART_ONLINE_STORAGE 
FLOW_CHART_MAGNETIC_TAPE 
FLOW_CHART_MAGNETIC_DISK 
FLOW_CHART_MAGNETIC_DRUM 
FLOW_CHART_DISPLAY 
FLOW_CHART_DELAY 
TEXT_PLAIN_TEXT 
TEXT_STOP 
TEXT_TRIANGLE 
TEXT_TRIANGLE_INVERTED 
TEXT_CHEVRON 
TEXT_CHEVRON_INVERTED 
TEXT_RING_OUTSIDE 
TEXT_ARCH_UP_CURVE 
TEXT_ARCH_DOWN_CURVE 
TEXT_CIRCLE_CURVE 
TEXT_BUTTON_CURVE 
TEXT_ARCH_UP_POUR 
TEXT_ARCH_DOWN_POUR 
TEXT_CIRCLE_POUR 
TEXT_BUTTON_POUR 
TEXT_CURVE_UP 
TEXT_CURVE_DOWN 
TEXT_CASCADE_UP 
TEXT_CASCADE_DOWN 
TEXT_WAVE_1 
TEXT_WAVE_2 
TEXT_WAVE_3 
TEXT_WAVE_4 
TEXT_INFLATE 
TEXT_DEFLATE 
TEXT_INFLATE_BOTTOM 
TEXT_DEFLATE_BOTTOM 
TEXT_INFLATE_TOP 
TEXT_DEFLATE_TOP 
TEXT_DEFLATE_INFLATE 
TEXT_DEFLATE_INFLATE_DEFLATE 
TEXT_FADE_RIGHT 
TEXT_FADE_LEFT 
TEXT_FADE_UP 
TEXT_FADE_DOWN 
TEXT_SLANT_UP 
TEXT_SLANT_DOWN 
TEXT_CAN_UP 
TEXT_CAN_DOWN 
FLOW_CHART_ALTERNATE_PROCESS 
FLOW_CHART_OFFPAGE_CONNECTOR 
LEFT_RIGHT_UP_ARROW 
SUN 
MOON 
BRACKET_PAIR 
BRACE_PAIR 
SEAL_4 
DOUBLE_WAVE 
ACTION_BUTTON_BLANK 
ACTION_BUTTON_HOME 
ACTION_BUTTON_HELP 
ACTION_BUTTON_INFORMATION 
ACTION_BUTTON_FORWARD_NEXT 
ACTION_BUTTON_BACK_PREVIOUS 
ACTION_BUTTON_END 
ACTION_BUTTON_BEGINNING 
ACTION_BUTTON_RETURN 
ACTION_BUTTON_DOCUMENT 
ACTION_BUTTON_SOUND 
ACTION_BUTTON_MOVIE 
TEXT_BOX 

Function Documentation

void libmspub::appendCharacters ( WPXString &  text,
std::vector< unsigned char >  characters 
)
unsigned libmspub::correctModulo ( int  x,
unsigned  n 
)
double libmspub::doubleModulo ( double  x,
double  y 
)
void libmspub::flipIfNecessary ( double &  x,
double &  y,
double  centerX,
double  centerY,
bool  flipVertical,
bool  flipHorizontal 
)
template<class MapT >
MapT::mapped_type* libmspub::getIfExists ( MapT &  map,
const typename MapT::key_type &  key 
)
template<class MapT >
const MapT::mapped_type* libmspub::getIfExists_const ( MapT &  map,
const typename MapT::key_type &  key 
)
WPXBinaryData libmspub::inflateData ( WPXBinaryData  deflated)
bool libmspub::isShapeTypeRectangle ( ShapeType  type)
const char * libmspub::mimeByImgType ( ImgType  type)
libmspub::VectorTransformation2D libmspub::operator* ( const VectorTransformation2D &  l,
const VectorTransformation2D &  r 
)
libmspub::Vector2D libmspub::operator+ ( const Vector2D &  l,
const Vector2D &  r 
)
libmspub::Vector2D libmspub::operator- ( const Vector2D &  l,
const Vector2D &  r 
)
bool libmspub::operator== ( const libmspub::ColorReference l,
const libmspub::ColorReference r 
)
template<class MapT >
MapT::mapped_type libmspub::ptr_getIfExists ( MapT &  map,
const typename MapT::key_type &  key 
)
double libmspub::readFixedPoint ( WPXInputStream *  input)
void libmspub::readNBytes ( WPXInputStream *  input,
unsigned long  length,
std::vector< unsigned char > &  out 
)
int32_t libmspub::readS32 ( WPXInputStream *  input)
uint16_t libmspub::readU16 ( WPXInputStream *  input)
uint32_t libmspub::readU32 ( WPXInputStream *  input)
uint64_t libmspub::readU64 ( WPXInputStream *  input)
void libmspub::rotateCounter ( double &  x,
double &  y,
double  centerX,
double  centerY,
short  rotation 
)
double libmspub::toFixedPoint ( int  fp)
void libmspub::writeCustomShape ( ShapeType  shapeType,
WPXPropertyList &  graphicsProps,
libwpg::WPGPaintInterface *  painter,
double  x,
double  y,
double  height,
double  width,
bool  closeEverything,
VectorTransformation2D  transform,
std::vector< Line lines,
boost::function< double(unsigned index)>  calculator,
const std::vector< Color > &  palette 
)

Variable Documentation

const int libmspub::ASPECT_RATIO = 0x600
const int libmspub::OTHER_CALC_VAL = 0x400
const int libmspub::PROP_ADJUST_VAL_FIRST = 327
const int libmspub::PROP_ADJUST_VAL_LAST = 336
const int libmspub::PROP_GEO_BOTTOM = 323
const int libmspub::PROP_GEO_LEFT = 320
const int libmspub::PROP_GEO_RIGHT = 322
const int libmspub::PROP_GEO_TOP = 321

Generated for libmspub by doxygen 1.8.1.1