11#define MAGICKCORE_IMPLEMENTATION 1
12#define MAGICK_PLUSPLUS_IMPLEMENTATION 1
14#include "Magick++/Include.h"
15#include "Magick++/Montage.h"
16#include "Magick++/Functions.h"
19Magick::Montage::Montage(
void)
20 : _backgroundColor(
"#ffffff"),
24 _geometry(
"120x120+4+3>"),
25 _gravity(CenterGravity),
37Magick::Montage::~Montage(
void)
41void Magick::Montage::backgroundColor(
const Magick::Color &backgroundColor_)
43 _backgroundColor=backgroundColor_;
46Magick::Color Magick::Montage::backgroundColor(
void)
const
48 return(_backgroundColor);
51void Magick::Montage::fileName(
const std::string &fileName_)
56std::string Magick::Montage::fileName(
void)
const
61void Magick::Montage::fillColor(
const Color &fill_)
66Magick::Color Magick::Montage::fillColor(
void)
const
71void Magick::Montage::font(
const std::string &font_)
76std::string Magick::Montage::font(
void)
const
81void Magick::Montage::geometry(
const Magick::Geometry &geometry_)
86Magick::Geometry Magick::Montage::geometry(
void)
const
91void Magick::Montage::gravity(Magick::GravityType gravity_)
96Magick::GravityType Magick::Montage::gravity(
void)
const
101void Magick::Montage::label(
const std::string &label_)
106std::string Magick::Montage::label(
void)
const
111void Magick::Montage::pointSize(
size_t pointSize_)
113 _pointSize=pointSize_;
116size_t Magick::Montage::pointSize(
void)
const
121void Magick::Montage::shadow(
bool shadow_)
126bool Magick::Montage::shadow(
void)
const
131void Magick::Montage::strokeColor(
const Color &stroke_)
136Magick::Color Magick::Montage::strokeColor(
void)
const
141void Magick::Montage::texture(
const std::string &texture_)
146std::string Magick::Montage::texture(
void)
const
151void Magick::Montage::tile(
const Geometry &tile_)
156Magick::Geometry Magick::Montage::tile(
void)
const
161void Magick::Montage::title(
const std::string &title_)
166std::string Magick::Montage::title(
void)
const
171void Magick::Montage::transparentColor(
const Magick::Color &transparentColor_)
173 _transparentColor=transparentColor_;
176Magick::Color Magick::Montage::transparentColor(
void)
const
178 return(_transparentColor);
181void Magick::Montage::updateMontageInfo(MontageInfo &montageInfo_ )
const
183 (void) memset(&montageInfo_,0,
sizeof(montageInfo_));
186 montageInfo_.matte_color=
Color();
188 montageInfo_.background_color=_backgroundColor;
190 montageInfo_.border_color=
Color();
192 montageInfo_.border_width=0;
194 if (_font.length() != 0)
196 _fileName.copy(montageInfo_.filename,MagickPathExtent-1);
197 montageInfo_.filename[ _fileName.length() ] = 0;
200 montageInfo_.fill=_fill;
202 if (_font.length() != 0)
203 Magick::CloneString(&montageInfo_.font,_font);
205 if (_geometry.isValid())
206 Magick::CloneString(&montageInfo_.geometry,_geometry);
208 montageInfo_.gravity=_gravity;
210 montageInfo_.pointsize=(double) _pointSize;
212 montageInfo_.shadow=
static_cast<MagickBooleanType
>
213 (_shadow ? MagickTrue : MagickFalse);
215 montageInfo_.signature=MagickCoreSignature;
217 montageInfo_.stroke=_stroke;
219 if (_texture.length() != 0)
220 Magick::CloneString(&montageInfo_.texture,_texture);
223 Magick::CloneString(&montageInfo_.tile,_tile);
225 if (_title.length() != 0)
226 Magick::CloneString(&montageInfo_.title,_title);
233Magick::MontageFramed::MontageFramed(
void)
234 : _matteColor(
"#bdbdbd"),
235 _borderColor(
"#dfdfdf"),
241Magick::MontageFramed::~MontageFramed(
void)
245void Magick::MontageFramed::matteColor(
const Magick::Color &matteColor_)
247 _matteColor=matteColor_;
250Magick::Color Magick::MontageFramed::matteColor(
void)
const
255void Magick::MontageFramed::borderColor(
const Magick::Color &borderColor_)
257 _borderColor=borderColor_;
260Magick::Color Magick::MontageFramed::borderColor(
void)
const
262 return(_borderColor);
265void Magick::MontageFramed::borderWidth(
size_t borderWidth_)
267 _borderWidth=borderWidth_;
270size_t Magick::MontageFramed::borderWidth(
void)
const
272 return(_borderWidth);
275void Magick::MontageFramed::frameGeometry(
const Magick::Geometry &frame_)
280Magick::Geometry Magick::MontageFramed::frameGeometry(
void)
const
285void Magick::MontageFramed::updateMontageInfo(MontageInfo &montageInfo_)
const
288 Montage::updateMontageInfo(montageInfo_);
291 montageInfo_.matte_color = _matteColor;
293 montageInfo_.border_color=_borderColor;
295 montageInfo_.border_width=_borderWidth;
297 if (_frame.isValid())
298 Magick::CloneString(&montageInfo_.frame,_frame);