Back to Imagemagick

Magick++: demo.cpp Source File

www/api/Magick++/demo_8cpp_source.html

7.1.2-2143.6 KB
Original Source

| Magick++ 7.1.0 |

demo.cpp

Go to the documentation of this file.

1 // This may look like C code, but it is really -*- C++ -*-

2 //

3 // Copyright Bob Friesenhahn, 1999, 2000, 2001, 2002, 2003

4 //

5 // Copyright @ 2013 ImageMagick Studio LLC, a non-profit organization

6 // dedicated to making software imaging solutions freely available.

7 //

8 // Simple demo program for Magick++

9 //

10 // Concept and algorithms lifted from PerlMagick demo script written

11 // by John Christy.

12 //

13 // Max run-time size 60MB (as compared with 95MB for PerlMagick) under SPARC Solaris

14 //

15

16 #include <Magick++.h>

17 #include <string>

18 #include <iostream>

19 #include <list>

20

21 using namespace std;

22

23 using namespace Magick;

24

25 #if MAGICKCORE_FREETYPE_DELEGATE

26 #define MakeLabel(image, text) image.label( (text) )

27 #else

28 #define MakeLabel(image, text)

29 #endif

30

31 int main( int /*argc*/, char ** argv)

32 {

33

34// Initialize ImageMagick install location for Windows

35InitializeMagick(*argv);

36

37const char *const p = getenv("MAGICK_FONT");

38const string MAGICK_FONT(p ? p : "");

39

40try {

41

42string srcdir("");

43if(getenv("SRCDIR") != 0)

44 srcdir = getenv("SRCDIR");

45

46 list<Image> montage;

47

48 {

49//

50// Read model & smile image.

51//

52 cout << "Read images ..." << endl;

53

54Image model( srcdir + "model.miff" );

55MakeLabel(model, "Magick++");

56 model.borderColor( "black" );

57 model.backgroundColor( "black" );

58

59Image smile( srcdir + "smile.miff" );

60MakeLabel(smile, "Smile");

61 smile.borderColor( "black" );

62

63//

64// Create image stack.

65//

66 cout << "Creating thumbnails..." << endl;

67

68// Construct initial list containing seven copies of a null image

69Image null;

70 null.size( Geometry(70,70) );

71 null.read( "NULL:black" );

72 list<Image> images( 7, null );

73

74Image example = model;

75

76// Each of the following follow the pattern

77// 1. obtain reference to (own copy of) image

78// 2. apply label to image

79// 3. apply operation to image

80// 4. append image to container

81

82 cout << " add noise ..." << endl;

83MakeLabel(example, "Add Noise");

84 example.addNoise( LaplacianNoise );

85 images.push_back( example );

86

87 cout << " add noise (blue) ..." << endl;

88MakeLabel(example, "Add Noise\n(Blue Channel)");

89 example.addNoiseChannel( BlueChannel, PoissonNoise );

90 images.push_back( example );

91

92 #if MAGICKCORE_FREETYPE_DELEGATE

93 cout << " annotate ..." << endl;

94 example = model;

95MakeLabel(example, "Annotate");

96 example.density( "72x72" );

97 example.fontPointsize( 18 );

98 example.font(MAGICK_FONT);

99 example.strokeColor( Color() );

100 example.fillColor( "gold" );

101 example.annotate( "Magick++", "+0+20", NorthGravity );

102 images.push_back( example );

103 #endif

104

105 cout << " blur ..." << endl;

106 example = model;

107MakeLabel(example, "Blur");

108 example.blur( 0, 1.5 );

109 images.push_back( example );

110

111 cout << " blur red channel ..." << endl;

112 example = model;

113MakeLabel(example, "Blur Channel\n(Red Channel)");

114 example.blurChannel( RedChannel, 0, 3.0 );

115 images.push_back( example );

116

117 cout << " border ..." << endl;

118 example = model;

119MakeLabel(example, "Border");

120 example.borderColor( "gold" );

121 example.border( Geometry(6,6) );

122 images.push_back( example );

123

124 cout << " channel ..." << endl;

125 example = model;

126MakeLabel(example, "Channel\n(Red Channel)");

127 example.channel( RedChannel );

128 images.push_back( example );

129

130 cout << " charcoal ..." << endl;

131 example = model;

132MakeLabel(example, "Charcoal");

133 example.charcoal( );

134 images.push_back( example );

135

136 cout << " composite ..." << endl;

137 example = model;

138MakeLabel(example, "Composite");

139 example.composite( smile, "+35+65", OverCompositeOp);

140 images.push_back( example );

141

142 cout << " contrast ..." << endl;

143 example = model;

144MakeLabel(example, "Contrast");

145 example.contrast( false );

146 images.push_back( example );

147

148 cout << " convolve ..." << endl;

149 example = model;

150MakeLabel(example, "Convolve");

151 {

152// 3x3 matrix

153const double kernel[] = { 1, 1, 1, 1, 4, 1, 1, 1, 1 };

154 example.convolve( 3, kernel );

155 }

156 images.push_back( example );

157

158 cout << " crop ..." << endl;

159 example = model;

160MakeLabel(example, "Crop");

161 example.crop( "80x80+25+50" );

162 images.push_back( example );

163

164 cout << " despeckle ..." << endl;

165 example = model;

166MakeLabel(example, "Despeckle");

167 example.despeckle( );

168 images.push_back( example );

169

170 cout << " draw ..." << endl;

171 example = model;

172MakeLabel(example, "Draw");

173 example.fillColor(Color());

174 example.strokeColor( "gold" );

175 example.strokeWidth( 2 );

176 example.draw( DrawableCircle( 60,90, 60,120 ) );

177 images.push_back( example );

178

179 cout << " edge ..." << endl;

180 example = model;

181MakeLabel(example, "Detect Edges");

182 example.edge( );

183 images.push_back( example );

184

185 cout << " emboss ..." << endl;

186 example = model;

187MakeLabel(example, "Emboss");

188 example.emboss( );

189 images.push_back( example );

190

191 cout << " equalize ..." << endl;

192 example = model;

193MakeLabel(example, "Equalize");

194 example.equalize( );

195 images.push_back( example );

196

197 cout << " explode ..." << endl;

198 example = model;

199MakeLabel(example, "Explode");

200 example.backgroundColor( "#000000FF" );

201 example.implode( -1 );

202 images.push_back( example );

203

204 cout << " flip ..." << endl;

205 example = model;

206MakeLabel(example, "Flip");

207 example.flip( );

208 images.push_back( example );

209

210 cout << " flop ..." << endl;

211 example = model;

212MakeLabel(example, "Flop");

213 example.flop();

214 images.push_back( example );

215

216 cout << " frame ..." << endl;

217 example = model;

218MakeLabel(example, "Frame");

219 example.frame( );

220 images.push_back( example );

221

222 cout << " gamma ..." << endl;

223 example = model;

224MakeLabel(example, "Gamma");

225 example.gamma( 1.6 );

226 images.push_back( example );

227

228 cout << " gaussian blur ..." << endl;

229 example = model;

230MakeLabel(example, "Gaussian Blur");

231 example.gaussianBlur( 0.0, 1.5 );

232 images.push_back( example );

233

234 cout << " gaussian blur channel ..." << endl;

235 example = model;

236MakeLabel(example, "Gaussian Blur\n(Green Channel)");

237 example.gaussianBlurChannel( GreenChannel, 0.0, 1.5 );

238 images.push_back( example );

239

240 cout << " gradient ..." << endl;

241Image gradient;

242 gradient.size( "130x194" );

243 gradient.read( "gradient:#20a0ff-#ffff00" );

244MakeLabel(gradient, "Gradient");

245 images.push_back( gradient );

246

247 cout << " grayscale ..." << endl;

248 example = model;

249MakeLabel(example, "Grayscale");

250 example.quantizeColorSpace( GRAYColorspace );

251 example.quantize( );

252 images.push_back( example );

253

254 cout << " implode ..." << endl;

255 example = model;

256MakeLabel(example, "Implode");

257 example.implode( 0.5 );

258 images.push_back( example );

259

260 cout << " level ..." << endl;

261 example = model;

262MakeLabel(example, "Level");

263 example.level( 0.20*QuantumRange, 0.90*QuantumRange, 1.20 );

264 images.push_back( example );

265

266 cout << " level red channel ..." << endl;

267 example = model;

268MakeLabel(example, "Level Channel\n(Red Channel)");

269 example.levelChannel( RedChannel, 0.20*QuantumRange, 0.90*QuantumRange, 1.20 );

270 images.push_back( example );

271

272 cout << " median filter ..." << endl;

273 example = model;

274MakeLabel(example, "Median Filter");

275 example.medianFilter( );

276 images.push_back( example );

277

278 cout << " modulate ..." << endl;

279 example = model;

280MakeLabel(example, "Modulate");

281 example.modulate( 110, 110, 110 );

282 images.push_back( example );

283

284 cout << " monochrome ..." << endl;

285 example = model;

286MakeLabel(example, "Monochrome");

287 example.quantizeColorSpace( GRAYColorspace );

288 example.quantizeColors( 2 );

289 example.quantizeDither( false );

290 example.quantize( );

291 images.push_back( example );

292

293 cout << " motion blur ..." << endl;

294 example = model;

295MakeLabel(example, "Motion Blur");

296 example.motionBlur( 0.0, 7.0,45 );

297 images.push_back( example );

298

299 cout << " negate ..." << endl;

300 example = model;

301MakeLabel(example, "Negate");

302 example.negate( );

303 images.push_back( example );

304

305 cout << " normalize ..." << endl;

306 example = model;

307MakeLabel(example, "Normalize");

308 example.normalize( );

309 images.push_back( example );

310

311 cout << " oil paint ..." << endl;

312 example = model;

313MakeLabel(example, "Oil Paint");

314 example.oilPaint( );

315 images.push_back( example );

316

317 cout << " ordered dither 2x2 ..." << endl;

318 example = model;

319MakeLabel(example, "Ordered Dither\n(2x2)");

320 example.randomThreshold(2,2);

321 images.push_back( example );

322

323 cout << " ordered dither 3x3..." << endl;

324 example = model;

325MakeLabel(example, "Ordered Dither\n(3x3)");

326 example.randomThreshold(3,3);

327 images.push_back( example );

328

329 cout << " ordered dither 4x4..." << endl;

330 example = model;

331MakeLabel(example, "Ordered Dither\n(4x4)");

332 example.randomThreshold(4,4);

333 images.push_back( example );

334

335 cout << " ordered dither red 4x4..." << endl;

336 example = model;

337MakeLabel(example, "Ordered Dither\n(Red 4x4)");

338 example.randomThresholdChannel(RedChannel,4,4);

339 images.push_back( example );

340

341 cout << " plasma ..." << endl;

342Image plasma;

343 plasma.size( "130x194" );

344 plasma.read( "plasma:fractal" );

345MakeLabel(plasma, "Plasma");

346 images.push_back( plasma );

347

348 cout << " quantize ..." << endl;

349 example = model;

350MakeLabel(example, "Quantize");

351 example.quantize( );

352 images.push_back( example );

353

354 cout << " quantum operator ..." << endl;

355 example = model;

356MakeLabel(example, "Quantum Operator\nRed * 0.4");

357 example.evaluate( RedChannel,MultiplyEvaluateOperator,0.40 );

358 images.push_back( example );

359

360 cout << " raise ..." << endl;

361 example = model;

362MakeLabel(example, "Raise");

363 example.raise( );

364 images.push_back( example );

365

366 cout << " reduce noise ..." << endl;

367 example = model;

368MakeLabel(example, "Reduce Noise");

369 example.reduceNoise( 1.0 );

370 images.push_back( example );

371

372 cout << " resize ..." << endl;

373 example = model;

374MakeLabel(example, "Resize");

375 example.zoom( "50%" );

376 images.push_back( example );

377

378 cout << " roll ..." << endl;

379 example = model;

380MakeLabel(example, "Roll");

381 example.roll( "+20+10" );

382 images.push_back( example );

383

384 cout << " rotate ..." << endl;

385 example = model;

386MakeLabel(example, "Rotate");

387 example.rotate( 45 );

388 example.transparent( "black" );

389 images.push_back( example );

390

391 cout << " scale ..." << endl;

392 example = model;

393MakeLabel(example, "Scale");

394 example.scale( "60%" );

395 images.push_back( example );

396

397 cout << " segment ..." << endl;

398 example = model;

399MakeLabel(example, "Segment");

400 example.segment( 0.5, 0.25 );

401 images.push_back( example );

402

403 cout << " shade ..." << endl;

404 example = model;

405MakeLabel(example, "Shade");

406 example.shade( 30, 30, false );

407 images.push_back( example );

408

409 cout << " sharpen ..." << endl;

410 example = model;

411MakeLabel(example, "Sharpen");

412 example.sharpen( 0.0, 1.0 );

413 images.push_back( example );

414

415 cout << " shave ..." << endl;

416 example = model;

417MakeLabel(example, "Shave");

418 example.shave( Geometry( 10, 10) );

419 images.push_back( example );

420

421 cout << " shear ..." << endl;

422 example = model;

423MakeLabel(example, "Shear");

424 example.shear( 45, 45 );

425 example.transparent( "black" );

426 images.push_back( example );

427

428 cout << " spread ..." << endl;

429 example = model;

430MakeLabel(example, "Spread");

431 example.spread( 3 );

432 images.push_back( example );

433

434 cout << " solarize ..." << endl;

435 example = model;

436MakeLabel(example, "Solarize");

437 example.solarize( );

438 images.push_back( example );

439

440 cout << " swirl ..." << endl;

441 example = model;

442 example.backgroundColor( "#000000FF" );

443MakeLabel(example, "Swirl");

444 example.swirl( 90 );

445 images.push_back( example );

446

447 cout << " threshold ..." << endl;

448 example = model;

449MakeLabel(example, "Threshold");

450 example.threshold( QuantumRange/2.0 );

451 images.push_back( example );

452

453 cout << " threshold random ..." << endl;

454 example = model;

455MakeLabel(example, "Random\nThreshold");

456 example.randomThreshold( (0.3*QuantumRange),

457 (0.85*QuantumRange) );

458 images.push_back( example );

459

460 cout << " unsharp mask ..." << endl;

461 example = model;

462MakeLabel(example, "Unsharp Mask");

463// radius_, sigma_, amount_, threshold_

464 example.unsharpmask( 0.0, 1.0, 1.0, 0.05);

465 images.push_back( example );

466

467 cout << " wave ..." << endl;

468 example = model;

469MakeLabel(example, "Wave");

470 example.alpha( true );

471 example.backgroundColor( "#000000FF" );

472 example.wave( 25, 150 );

473 images.push_back( example );

474

475//

476// Create image montage.

477//

478 cout << "Montage images..." << endl;

479

480 for_each( images.begin(), images.end(), strokeColorImage( Color("#600") ) );

481

482MontageFramed montageOpts;

483 montageOpts.geometry( "130x194+10+5>" );

484 montageOpts.gravity( CenterGravity );

485 montageOpts.borderColor( "green" );

486 montageOpts.borderWidth( 1 );

487 montageOpts.tile( "7x4" );

488 montageOpts.backgroundColor( "#ffffff" );

489 montageOpts.pointSize( 18 );

490 montageOpts.font(MAGICK_FONT);

491 montageOpts.fillColor( "#600" );

492 montageOpts.strokeColor( Color() );

493 montageOpts.fileName( "Magick++ Demo" );

494montageImages( &montage, images.begin(), images.end(), montageOpts );

495 }

496

497Image& montage_image = montage.front();

498 {

499// Create logo image

500 cout << "Adding logo image ..." << endl;

501Image logo( "logo:" );

502 logo.zoom( "45%" );

503

504// Composite logo into montage image

505Geometry placement(0,0,(montage_image.columns()/2)-(logo.columns()/2),0);

506 montage_image.composite( logo, placement, OverCompositeOp );

507 }

508

509 for_each( montage.begin(), montage.end(), depthImage(8) );

510 for_each( montage.begin(), montage.end(), alphaImage( false ) );

511 for_each( montage.begin(), montage.end(), compressTypeImage( RLECompression) );

512

513 cout << "Writing image "demo_out.miff" ..." << endl;

514writeImages(montage.begin(),montage.end(),"demo_out_%d.miff");

515

516// Uncomment following lines to display image to screen

517// cout << "Display image..." << endl;

518// montage_image.display();

519

520 }

521catch( exception &error_ )

522 {

523 cout << "Caught exception: " << error_.what() << endl;

524return 1;

525 }

526

527return 0;

528 }

Magick::Image::gaussianBlur

void gaussianBlur(const double radius_, const double sigma_)

Definition: Image.cpp:3253

Magick::Image::swirl

void swirl(const double degrees_)

Definition: Image.cpp:4623

Magick::Color

class MagickPPExport Color

Definition: Color.h:18

Magick::Image::modulate

void modulate(const double brightness_, const double saturation_, const double hue_)

Definition: Image.cpp:3616

Magick::Image::annotate

void annotate(const std::string &text_, const Geometry &location_)

Definition: Image.cpp:1858

Magick::Image::charcoal

void charcoal(const double radius_=0.0, const double sigma_=1.0)

Definition: Image.cpp:2200

Magick::Image::blur

void blur(const double radius_=0.0, const double sigma_=1.0)

Definition: Image.cpp:2107

Magick::Image::contrast

void contrast(const bool sharpen_)

Definition: Image.cpp:2597

Magick::Image::medianFilter

void medianFilter(const double radius_=0.0)

Definition: Image.cpp:3593

Magick::Image::composite

void composite(const Image &compositeImage_, const Geometry &offset_, const CompositeOperator compose_=InCompositeOp)

Definition: Image.cpp:2535

Magick::Image::unsharpmask

void unsharpmask(const double radius_, const double sigma_, const double amount_, const double threshold_)

Definition: Image.cpp:4811

Magick::Image::negate

void negate(const bool grayscale_=false)

Definition: Image.cpp:3745

MakeLabel

#define MakeLabel(image, text)

Definition: demo.cpp:28

Magick::Image::raise

void raise(const Geometry &geometry_=raiseGeometryDefault, const bool raisedFlag_=false)

Definition: Image.cpp:4008

Magick::Image::crop

void crop(const Geometry &geometry_)

Definition: Image.cpp:2667

Magick::Image::density

void density(const Point &density_)

Definition: Image.cpp:653

Magick::Image::shade

void shade(const double azimuth_=30, const double elevation_=30, const bool colorShading_=false)

Definition: Image.cpp:4399

std

STL namespace.

Magick::Image::equalize

void equalize(void)

Definition: Image.cpp:2888

Magick::Image::zoom

void zoom(const Geometry &geometry_)

Definition: Image.cpp:4997

Magick::Image::strokeWidth

void strokeWidth(const double strokeWidth_)

Definition: Image.cpp:1507

Magick++.h

Magick::Image::blurChannel

void blurChannel(const ChannelType channel_, const double radius_=0.0, const double sigma_=1.0)

Definition: Image.cpp:2118

Magick::Image::strokeColor

void strokeColor(const Color &strokeColor_)

Definition: Image.cpp:1403

Magick::Image::oilPaint

void oilPaint(const double radius_=0.0, const double sigma=1.0)

Definition: Image.cpp:3772

Magick::Image::spread

void spread(const double amount_=3.0)

Definition: Image.cpp:4555

Magick::Image::randomThresholdChannel

void randomThresholdChannel(const ChannelType channel_, const double low_, const double high_)

Definition: Image.cpp:4027

Magick::Image::motionBlur

void motionBlur(const double radius_, const double sigma_, const double angle_)

Definition: Image.cpp:3733

Magick::Image::emboss

void emboss(const double radius_=0.0, const double sigma_=1.0)

Definition: Image.cpp:2858

Magick::Image::segment

void segment(const double clusterThreshold_=1.0, const double smoothingThreshold_=1.5)

Definition: Image.cpp:4305

Magick::Image::reduceNoise

void reduceNoise(void)

Definition: Image.cpp:4138

Magick::Image::sharpen

void sharpen(const double radius_=0.0, const double sigma_=1.0)

Definition: Image.cpp:4425

Magick::montageImages

void montageImages(Container *montageImages_, InputIterator first_, InputIterator last_, const Montage &options_)

Definition: STL.h:2484

Magick::Image::solarize

void solarize(const double factor_=50.0)

Definition: Image.cpp:4502

Magick::Montage::geometry

void geometry(const Geometry &geometry_)

Definition: Montage.cpp:83

Magick::Image::quantize

void quantize(const bool measureError_=false)

Definition: Image.cpp:3994

Magick::Image::read

void read(const Blob &blob_)

Definition: Image.cpp:4038

Magick::Image::frame

void frame(const Geometry &geometry_=frameGeometryDefault)

Definition: Image.cpp:3162

Magick::Image::flip

void flip(void)

Definition: Image.cpp:2997

Magick::Image::shave

void shave(const Geometry &geometry_)

Definition: Image.cpp:4450

Magick::Image::borderColor

void borderColor(const Color &color_)

Definition: Image.cpp:429

Magick::Image::font

void font(const std::string &font_)

Definition: Image.cpp:852

Magick::Image::fontPointsize

void fontPointsize(const double pointSize_)

Definition: Image.cpp:874

Magick::Geometry

class MagickPPExport Geometry

Definition: Geometry.h:21

Magick::strokeColorImage

Definition: STL.h:1135

Magick::depthImage

Definition: STL.h:1440

Magick::writeImages

void writeImages(InputIterator first_, InputIterator last_, const std::string &imageSpec_, bool adjoin_=true)

Definition: STL.h:2823

Magick::Image::edge

void edge(const double radius_=0.0)

Definition: Image.cpp:2847

Magick::Image::fillColor

void fillColor(const Color &fillColor_)

Definition: Image.cpp:786

Magick::Image::scale

void scale(const Geometry &geometry_)

Definition: Image.cpp:4283

Magick::Image::size

void size(const Geometry &geometry_)

Definition: Image.cpp:1379

Magick::Image::draw

void draw(const Drawable &drawable_)

Definition: Image.cpp:2798

Magick::Image::randomThreshold

void randomThreshold(const double low_, const double high_)

Definition: Image.cpp:4020

Magick::Image::evaluate

void evaluate(const ChannelType channel_, const MagickEvaluateOperator operator_, double rvalue_)

Definition: Image.cpp:2904

Magick::Geometry

Definition: Geometry.h:37

Magick::Image::implode

void implode(const double factor_)

Definition: Image.cpp:3372

Magick::Image::addNoiseChannel

void addNoiseChannel(const ChannelType channel_, const NoiseType noiseType_, const double attenuate_=1.0)

Definition: Image.cpp:1807

Magick::DrawableCircle

Definition: Drawable.h:606

Magick::Image::wave

void wave(const double amplitude_=25.0, const double wavelength_=150.0)

Definition: Image.cpp:4852

Magick::Image::gamma

double gamma(void) const

Definition: Image.cpp:947

Magick::Image::threshold

void threshold(const double threshold_)

Definition: Image.cpp:4650

Magick::Image::convolve

void convolve(const size_t order_, const double *kernel_)

Definition: Image.cpp:2625

Magick::Image::roll

void roll(const Geometry &roll_)

Definition: Image.cpp:4202

Magick::Image::gaussianBlurChannel

void gaussianBlurChannel(const ChannelType channel_, const double radius_, const double sigma_)

Definition: Image.cpp:3264

Magick::Image::transparent

void transparent(const Color &color_, const bool inverse_=false)

Definition: Image.cpp:4713

Magick::compressTypeImage

Definition: STL.h:1416

Magick::Image::alpha

void alpha(const bool alphaFlag_)

Definition: Image.cpp:307

Magick::Image::border

void border(const Geometry &geometry_=borderGeometryDefault)

Definition: Image.cpp:2132

Magick::alphaImage

Definition: STL.h:805

Magick::Image::addNoise

void addNoise(const NoiseType noiseType_, const double attenuate_=1.0)

Definition: Image.cpp:1796

Magick::Image::columns

size_t columns(void) const

Definition: Image.cpp:590

Magick::Image::quantizeColors

void quantizeColors(const size_t colors_)

Definition: Image.cpp:1260

Magick::MontageFramed

Definition: Montage.h:119

Magick

Definition: Blob.h:17

Magick::Image::flop

void flop(void)

Definition: Image.cpp:3120

Magick::Image::levelChannel

void levelChannel(const ChannelType channel_, const double blackPoint_, const double whitePoint_, const double gamma_=1.0)

Definition: Image.cpp:3436

Magick::Image::despeckle

void despeckle(void)

Definition: Image.cpp:2767

Magick::Image::channel

void channel(const ChannelType channel_)

Definition: Image.cpp:2189

Magick::InitializeMagick

MagickPPExport void InitializeMagick(const char *path_)

Definition: Functions.cpp:45

Magick::Image::normalize

void normalize(void)

Definition: Image.cpp:3764

main

int main(int, char **argv)

Definition: demo.cpp:31

Magick::Image::backgroundColor

void backgroundColor(const Color &color_)

Definition: Image.cpp:376

Magick::Image::quantizeDither

void quantizeDither(const bool ditherFlag_)

Definition: Image.cpp:1283

Magick::Image

Definition: Image.h:55

Magick::Image::level

void level(const double blackPoint_, const double whitePoint_, const double gamma_=1.0)

Definition: Image.cpp:3427

Magick::Image::quantizeColorSpace

void quantizeColorSpace(const ColorspaceType colorSpace_)

Definition: Image.cpp:1271

Magick::Image::shear

void shear(const double xShearAngle_, const double yShearAngle_)

Definition: Image.cpp:4464

Magick::Image::rotate

void rotate(const double degrees_)

Definition: Image.cpp:4225