Board  0.9.5
examples/images.cpp
#include "Board.h"
using namespace LibBoard;
int main(int, char *[])
{
Board board;
#if (BOARD_HAVE_MAGICKPLUSPLUS == 1)
Image michel("../resources/saint_michel.jpg", 0, 0, 200);
Polyline rectangle = LibBoard::rectangle(michel.boundingBox(IgnoreLineWidth), Color::Red, Color::Silver, 1);
Group g;
g << rectangle;
g << michel;
ShapeList tiling;
tiling.addTiling(g, Point(0, 0), 5, 4, 0.0, UseLineWidth);
board << tiling;
ShapeList avatars;
Image avatar("../resources/avatar.png", 0, 0, 80);
avatar.rotateDeg(45);
avatars.addTiling(avatar, Point(0, 0), 4, 4, 10.0, UseLineWidth);
avatars.moveCenter(board.center());
board << avatars;
#else
Text text(10, -40, "Magick++ is required", Fonts::Helvetica, 10);
board << LibBoard::rectangle(text.boundingBox(LibBoard::IgnoreLineWidth).grow(5), Color::Red, Color::White, 1.0, SolidStyle, RoundCap, RoundJoin);
board << text;
#endif
// board.saveEPS( "images.eps", 0.0, 0.0, 2.0, Board::UInche );
board.saveEPS("images.eps", 20.0, 30.0, 2.0, Board::UInche);
// board.saveEPS( "images.eps", Board::BoundingBox, 10.0, Board::UInche );
board.saveSVG("images_40x60cm.svg", 40.0, 60.0, 10.0, Board::UCentimeter);
board.saveFIG("images.fig", 20.0, 20.0, 2.0, Board::UCentimeter);
// board.saveFIG( "images.fig", Board::BoundingBox, 10.0, Board::UCentimeter );
board.scaleToWidth(25, UseLineWidth);
board.saveSVG("images.svg", Board::BoundingBox, 0.0, Board::UCentimeter);
}
LibBoard::Shape::rotateDeg
Shape & rotateDeg(double angle, const Point &center)
Definition: Shape.h:336
LibBoard::Board::saveEPS
void saveEPS(std::ostream &out, PageSize size=Board::BoundingBox, double margin=0.0, Unit unit=UMillimeter, const std::string &title=std::string()) const
Definition: Board.cpp:532
LibBoard::Polyline
A polygonal line described by a series of 2D points.
Definition: Polyline.h:38
LibBoard::Board::saveSVG
void saveSVG(const char *filename, PageSize size=Board::BoundingBox, double margin=0.0, Unit unit=UMillimeter) const
Definition: Board.cpp:758
LibBoard::Shape::scaleToWidth
Shape & scaleToWidth(double w, LineWidthFlag lineWidthFlag)
Definition: Shape.cpp:85
LibBoard::Text
A piece of text.
Definition: Text.h:40
LibBoard::Point
Struct representing a 2D point.
Definition: Point.h:42
LibBoard::Shape::moveCenter
Shape & moveCenter(double x, double y, LineWidthFlag lineWidthFlag=IgnoreLineWidth)
Definition: Shape.cpp:64
LibBoard::ShapeList::addTiling
Group & addTiling(const Shape &shape, Point topLeftCorner, std::size_t columns, std::size_t rows, double spacing=0.0, LineWidthFlag lineWidthFlag=UseLineWidth)
Definition: ShapeList.cpp:210
LibBoard::Group
A group of shapes. A group is basically a ShapeList except that when rendered in either an SVG of a F...
Definition: Group.h:40
LibBoard::ShapeList
A group of shapes.
Definition: ShapeList.h:46
LibBoard::Shape::center
virtual Point center(LineWidthFlag lineWidthFlag=IgnoreLineWidth) const
Definition: Shape.cpp:59
Board.h
Declaration of the Board class.
LibBoard::Image::boundingBox
Rect boundingBox(LineWidthFlag lineWidthFlag) const override
Definition: Image.cpp:151
LibBoard::Board
Class for EPS, FIG or SVG drawings.
Definition: Board.h:62
LibBoard::Group::boundingBox
Rect boundingBox(LineWidthFlag) const override
Definition: Group.cpp:212
LibBoard::Board::saveFIG
void saveFIG(const char *filename, PageSize size=Board::BoundingBox, double margin=0.0, Unit unit=UMillimeter) const
Definition: Board.cpp:629
LibBoard::Image
Structure for a bitmap image shape.
Definition: Image.h:41