Options.cpp revision af4a73fc720b635879b16dd01b78abf468fcbba7
13ed852eea50f9d4cd633efb8c2b054b8e33c253cristy// This may look like C code, but it is really -*- C++ -*-
23ed852eea50f9d4cd633efb8c2b054b8e33c253cristy//
33ed852eea50f9d4cd633efb8c2b054b8e33c253cristy// Copyright Bob Friesenhahn, 1999, 2000, 2001, 2002, 2003
4bed10b164d3d5f161ace78109adb5219446e9218dirk// Copyright Dirk Lemstra 2014-2015
53ed852eea50f9d4cd633efb8c2b054b8e33c253cristy//
63ed852eea50f9d4cd633efb8c2b054b8e33c253cristy// Implementation of Options
73ed852eea50f9d4cd633efb8c2b054b8e33c253cristy//
83ed852eea50f9d4cd633efb8c2b054b8e33c253cristy// A wrapper around DrawInfo, ImageInfo, and QuantizeInfo
93ed852eea50f9d4cd633efb8c2b054b8e33c253cristy//
103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#define MAGICKCORE_IMPLEMENTATION  1
123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#define MAGICK_PLUSPLUS_IMPLEMENTATION 1
133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
14d4774283661e770ee52d54a7199b7c4d38208c35cristy#include "Magick++/Include.h"
153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include <string>
163ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include <string.h>
173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include <stdlib.h>
183ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include <math.h>
19d4774283661e770ee52d54a7199b7c4d38208c35cristy
203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include "Magick++/Options.h"
213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include "Magick++/Functions.h"
223ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#include "Magick++/Exception.h"
233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
24830e974c2864362a20c44c4a6e915b523cb56c66cristy#define MagickPI  3.14159265358979323846264338327950288419716939937510
253ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#define DegreesToRadians(x)  (MagickPI*(x)/180.0)
2683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
2783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Options::Options(void)
2883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  : _imageInfo(static_cast<ImageInfo*>(AcquireMagickMemory(
2983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      sizeof(ImageInfo)))),
3083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _quantizeInfo(static_cast<QuantizeInfo*>(AcquireMagickMemory(
3183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      sizeof(QuantizeInfo)))),
3207f84e72b205d18eb8ad35380af95351d9f0a1a3dirk    _drawInfo(static_cast<DrawInfo*>(AcquireMagickMemory(sizeof(DrawInfo)))),
3307f84e72b205d18eb8ad35380af95351d9f0a1a3dirk    _quiet(false)
343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  // Initialize image info with defaults
3683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  GetImageInfo(_imageInfo);
3783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  // Initialize quantization info
3983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  GetQuantizeInfo(_quantizeInfo);
403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
413ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  // Initialize drawing info
4283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  GetDrawInfo(_imageInfo,_drawInfo);
433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
4583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Options::Options(const Magick::Options& options_)
4683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  : _imageInfo(CloneImageInfo(options_._imageInfo )),
473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    _quantizeInfo(CloneQuantizeInfo(options_._quantizeInfo)),
4807f84e72b205d18eb8ad35380af95351d9f0a1a3dirk    _drawInfo(CloneDrawInfo(_imageInfo,options_._drawInfo)),
4907f84e72b205d18eb8ad35380af95351d9f0a1a3dirk    _quiet(options_._quiet)
503ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
513ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
523ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
533ed852eea50f9d4cd633efb8c2b054b8e33c253cristyMagick::Options::~Options()
543ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
553ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  // Destroy image info
5683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk   _imageInfo=DestroyImageInfo(_imageInfo);
573ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
583ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  // Destroy quantization info
5983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk   _quantizeInfo=DestroyQuantizeInfo(_quantizeInfo);
603ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
613ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  // Destroy drawing info
6283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk   _drawInfo=DestroyDrawInfo(_drawInfo);
633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
6583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::antiAlias(bool flag_)
663ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
6783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->text_antialias=static_cast<MagickBooleanType>(
6883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    flag_ ? MagickTrue : MagickFalse);
693ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
7083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
7183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::antiAlias(void) const
723ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
7383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<bool>(_drawInfo->text_antialias));
743ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
753ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
7683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::adjoin(bool flag_)
773ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
7883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->adjoin=static_cast<MagickBooleanType>(
7983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    flag_ ? MagickTrue : MagickFalse);
803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
8183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
8283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::adjoin(void) const
833ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
8483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<bool>(_imageInfo->adjoin));
853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
863ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
8783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::backgroundColor(const Magick::Color &color_)
883ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
8983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->background_color=color_;
903ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
9183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
9283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Color Magick::Options::backgroundColor(void) const
933ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
9483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(Magick::Color(_imageInfo->background_color));
953ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
963ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
9783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::backgroundTexture(const std::string &backgroundTexture_)
983ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
9983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (backgroundTexture_.length() == 0)
1003ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    _imageInfo->texture=(char *) RelinquishMagickMemory(_imageInfo->texture);
1013ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
10283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->texture,backgroundTexture_);
1033ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
10483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
10583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::backgroundTexture(void) const
1063ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
10783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->texture)
10883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string(_imageInfo->texture));
1093ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
11083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string());
1113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
11383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::borderColor(const Color &color_)
1143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
11583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->border_color=color_;
11683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->border_color=color_;
1173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
11883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
11983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Color Magick::Options::borderColor(void) const
1203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
12183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(Magick::Color(_imageInfo->border_color));
1223ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
12483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::boxColor(const Magick::Color &boxColor_)
1253ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
12683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->undercolor=boxColor_;
1273ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
12883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
12983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Color Magick::Options::boxColor(void) const
1303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
13183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(Magick::Color(_drawInfo->undercolor));
1323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
13483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::colorspaceType(Magick::ColorspaceType colorspace_)
1353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
13683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->colorspace=colorspace_;
1373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
13883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
13983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::ColorspaceType Magick::Options::colorspaceType(void) const
1403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
14183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<Magick::ColorspaceType>(_imageInfo->colorspace));
1423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
14483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::compressType(CompressionType compressType_)
1453ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
14683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->compression=compressType_;
1473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
14883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
14983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::CompressionType Magick::Options::compressType(void) const
1503ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
15183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<Magick::CompressionType>(_imageInfo->compression));
1523ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1533ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
15483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::colorFuzz(double fuzz_)
1553ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
15683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->fuzz=fuzz_;
1573ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
15883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
15983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkdouble Magick::Options::colorFuzz(void) const
1603ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
16183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->fuzz);
1623ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
16483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::debug(bool flag_)
1653ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
16683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if  (flag_)
16783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    SetLogEventMask("All");
1683ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
16983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    SetLogEventMask("None");
1703ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
17183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
17283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::debug(void) const
1733ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
17483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (IsEventLogging())
17583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(true);
17683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(false);
1773ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1783ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
179be1bbacaa9919aa3754e3abae43557be13669657dirkvoid Magick::Options::density(const Magick::Point &density_)
1803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
181be1bbacaa9919aa3754e3abae43557be13669657dirk  if (!density_.isValid())
1823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    _imageInfo->density=(char *) RelinquishMagickMemory(_imageInfo->density);
1833ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
18483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->density,density_);
1853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
18683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
187be1bbacaa9919aa3754e3abae43557be13669657dirkMagick::Point Magick::Options::density(void) const
1883ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
18983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->density)
190be1bbacaa9919aa3754e3abae43557be13669657dirk    return(Point(_imageInfo->density));
1913ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
192be1bbacaa9919aa3754e3abae43557be13669657dirk  return(Point());
1933ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1943ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
19583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::depth(size_t depth_)
1963ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
19783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->depth=depth_;
1983ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
19983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
20083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::depth(void) const
2013ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
20283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->depth);
2033ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
2043ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
20583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::endian(Magick::EndianType endian_)
2063ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
20783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->endian=endian_;
2083ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
20983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
21083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::EndianType Magick::Options::endian(void) const
2113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
21283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->endian);
2133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
2143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
21583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::file(FILE *file_)
21615781e5110c893ce0eb7924926ae0d1a056f90ebcristy{
21783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  SetImageInfoFile(_imageInfo,file_);
21815781e5110c893ce0eb7924926ae0d1a056f90ebcristy}
21983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
22083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkFILE *Magick::Options::file(void) const
22115781e5110c893ce0eb7924926ae0d1a056f90ebcristy{
22283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(GetImageInfoFile(_imageInfo));
22315781e5110c893ce0eb7924926ae0d1a056f90ebcristy}
22415781e5110c893ce0eb7924926ae0d1a056f90ebcristy
22583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::fileName(const std::string &fileName_)
2263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
22783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  fileName_.copy(_imageInfo->filename,MaxTextExtent-1);
22883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (fileName_.length() > MaxTextExtent-1)
22983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _imageInfo->filename[MaxTextExtent-1]=0;
23083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  else
23183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _imageInfo->filename[fileName_.length()]=0;
2323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
23383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
23483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::fileName(void) const
2353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
23683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string(_imageInfo->filename));
2373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
2383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
23983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::fillColor(const Magick::Color &fillColor_)
2403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
24183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->fill=fillColor_;
2423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  if (fillColor_ == Magick::Color())
2433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    fillPattern((const MagickCore::Image*) NULL);
2443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
24583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
24683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Color Magick::Options::fillColor(void) const
2473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
24883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->fill);
2493ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
25083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
25183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::fillPattern(const MagickCore::Image *fillPattern_)
2523ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
25383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_drawInfo->fill_pattern)
25483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      _drawInfo->fill_pattern=DestroyImageList(_drawInfo->fill_pattern);
25583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
25683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (fillPattern_)
2573ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    {
25883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      GetPPException;
25983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      _drawInfo->fill_pattern=CloneImage(const_cast<MagickCore::Image*>(
26083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk        fillPattern_),0,0,static_cast<MagickBooleanType>(MagickTrue),
261e31feb8a39ea937a6328da579085cd2ee66ab4c0dirk        exceptionInfo);
26207f84e72b205d18eb8ad35380af95351d9f0a1a3dirk      ThrowPPException(_quiet);
2633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    }
2643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
26583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
26683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkconst MagickCore::Image *Magick::Options::fillPattern(void) const
2673ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
26883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->fill_pattern);
2693ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
2703ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
27183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::fillRule(const Magick::FillRule &fillRule_)
2723ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
27383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->fill_rule=fillRule_;
2743ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
27583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
27683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::FillRule Magick::Options::fillRule(void) const
2773ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
27883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->fill_rule);
2793ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
2803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
28183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::font(const std::string &font_)
2823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
28383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (font_.length() == 0)
2843ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    {
2853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy      _imageInfo->font=(char *) RelinquishMagickMemory(_imageInfo->font);
2863ed852eea50f9d4cd633efb8c2b054b8e33c253cristy      _drawInfo->font=(char *) RelinquishMagickMemory(_drawInfo->font);
2873ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    }
2883ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
2893ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    {
29083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      Magick::CloneString(&_imageInfo->font,font_);
29183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      Magick::CloneString(&_drawInfo->font,font_);
2923ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    }
2933ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
29483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
29583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::font(void) const
2963ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
29783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->font)
29883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string(_imageInfo->font));
2993ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
30083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
3013ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3023ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
30383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::fontPointsize(double pointSize_)
3043ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
30583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->pointsize=pointSize_;
30683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->pointsize=pointSize_;
3073ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
30883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
30983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkdouble Magick::Options::fontPointsize(void) const
3103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
31183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->pointsize);
3123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
31483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::format(void) const
3153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
31683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  const MagickInfo
31783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    *magick_info=0;
3183ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
31983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  GetPPException;
32083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (*_imageInfo->magick != '\0' )
321e31feb8a39ea937a6328da579085cd2ee66ab4c0dirk    magick_info = GetMagickInfo(_imageInfo->magick,exceptionInfo);
32207f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  ThrowPPException(_quiet);
32383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
32483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if ((magick_info != 0) && (*magick_info->description != '\0'))
32583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string( magick_info->description));
3263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
32783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
3283ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
33083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::interlaceType(Magick::InterlaceType interlace_)
3313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
33283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->interlace=interlace_;
3333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
33483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
33583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::InterlaceType Magick::Options::interlaceType(void) const
3363ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
33783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<Magick::InterlaceType>(_imageInfo->interlace));
3383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
34083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::magick(const std::string &magick_)
3413ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
34249ccbc806b20f4892e6c8588768617afdfcee3cddirk  if (magick_.empty())
34349ccbc806b20f4892e6c8588768617afdfcee3cddirk  {
3441723755555721a4f099b6d4e691de1114cdee5e5dirk    _imageInfo->magick[0] = '\0';
34549ccbc806b20f4892e6c8588768617afdfcee3cddirk    return;
34649ccbc806b20f4892e6c8588768617afdfcee3cddirk  }
34749ccbc806b20f4892e6c8588768617afdfcee3cddirk
34883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  FormatLocaleString(_imageInfo->filename,MaxTextExtent,"%.1024s:",
34983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    magick_.c_str());
35083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  GetPPException;
351e31feb8a39ea937a6328da579085cd2ee66ab4c0dirk  SetImageInfo(_imageInfo,1,exceptionInfo);
352af4a73fc720b635879b16dd01b78abf468fcbba7cristy  if ( _imageInfo->magick[0] == '\0' )
353af4a73fc720b635879b16dd01b78abf468fcbba7cristy    throwExceptionExplicit(MagickCore::OptionError,"Unrecognized image format",
354af4a73fc720b635879b16dd01b78abf468fcbba7cristy      magick_.c_str());
35507f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  ThrowPPException(_quiet);
3563ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
35783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
35883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::magick(void) const
3593ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
360af4a73fc720b635879b16dd01b78abf468fcbba7cristy  if ( _imageInfo->magick[0] != '\0' )
36183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string(_imageInfo->magick));
36283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
36383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
3643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3653ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
36683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::matteColor(const Magick::Color &matteColor_)
3673ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
36883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->matte_color=matteColor_;
3693ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
37083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
37183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Color Magick::Options::matteColor(void) const
3723ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
37383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(Magick::Color(_imageInfo->matte_color));
3743ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3753ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
37683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::monochrome(bool monochromeFlag_)
3773ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
37883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->monochrome=(MagickBooleanType) monochromeFlag_;
3793ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
38083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
38183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::monochrome(void) const
3823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
38383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<bool>(_imageInfo->monochrome));
3843ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
3853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
38683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::page(const Magick::Geometry &pageSize_)
3873ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
38883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (!pageSize_.isValid())
3893ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    _imageInfo->page=(char *) RelinquishMagickMemory(_imageInfo->page);
3903ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
39183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->page,pageSize_);
3923ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
39383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
39483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Geometry Magick::Options::page(void) const
3953ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
39683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->page)
39783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(Geometry(_imageInfo->page));
3983ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
39983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(Geometry());
4003ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4013ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
40283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::quality(size_t quality_)
4033ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
40483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->quality=quality_;
4053ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
40683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
40783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::quality(void) const
4083ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
40983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->quality);
4103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
41283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::quantizeColors(size_t colors_)
4133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
41483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _quantizeInfo->number_colors=colors_;
4153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
41683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
41783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::quantizeColors(void) const
4183ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
41983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_quantizeInfo->number_colors);
4203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
42283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::quantizeColorSpace(Magick::ColorspaceType colorSpace_)
4233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
42483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _quantizeInfo->colorspace=colorSpace_;
4253ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
42683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
42783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::ColorspaceType Magick::Options::quantizeColorSpace(void) const
4283ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
42983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<Magick::ColorspaceType>(_quantizeInfo->colorspace));
4303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
43283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::quantizeDither(bool ditherFlag_)
4333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
43483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->dither=(MagickBooleanType) ditherFlag_;
43583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _quantizeInfo->dither_method=ditherFlag_ ? RiemersmaDitherMethod :
436cbda611068350bf4459f2dda1951f8823702e129cristy    NoDitherMethod;
4373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
43883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
43983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::quantizeDither(void) const
4403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
44183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<bool>(_imageInfo->dither));
4423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
4446d64b3658c2fa7218fbc309b9c85e3ec4441310edirkvoid Magick::Options::quantizeDitherMethod(DitherMethod ditherMethod_)
4456d64b3658c2fa7218fbc309b9c85e3ec4441310edirk{
4466d64b3658c2fa7218fbc309b9c85e3ec4441310edirk  _quantizeInfo->dither_method=ditherMethod_;
4476d64b3658c2fa7218fbc309b9c85e3ec4441310edirk}
4486d64b3658c2fa7218fbc309b9c85e3ec4441310edirk
4496d64b3658c2fa7218fbc309b9c85e3ec4441310edirkMagickCore::DitherMethod Magick::Options::quantizeDitherMethod(void) const
4506d64b3658c2fa7218fbc309b9c85e3ec4441310edirk{
4516d64b3658c2fa7218fbc309b9c85e3ec4441310edirk  return(_quantizeInfo->dither_method);
4526d64b3658c2fa7218fbc309b9c85e3ec4441310edirk}
4536d64b3658c2fa7218fbc309b9c85e3ec4441310edirk
45483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::quantizeTreeDepth(size_t treeDepth_)
4553ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
45683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _quantizeInfo->tree_depth=treeDepth_;
4573ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
45883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
45983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::quantizeTreeDepth(void) const
4603ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
46183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_quantizeInfo->tree_depth);
4623ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
46407f84e72b205d18eb8ad35380af95351d9f0a1a3dirkvoid Magick::Options::quiet(const bool quiet_)
46507f84e72b205d18eb8ad35380af95351d9f0a1a3dirk{
46607f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  _quiet=quiet_;
46707f84e72b205d18eb8ad35380af95351d9f0a1a3dirk}
46807f84e72b205d18eb8ad35380af95351d9f0a1a3dirk
46907f84e72b205d18eb8ad35380af95351d9f0a1a3dirkbool Magick::Options::quiet(void) const
47007f84e72b205d18eb8ad35380af95351d9f0a1a3dirk{
47107f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  return(_quiet);
47207f84e72b205d18eb8ad35380af95351d9f0a1a3dirk}
47307f84e72b205d18eb8ad35380af95351d9f0a1a3dirk
47483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::resolutionUnits(Magick::ResolutionType resolutionUnits_)
4753ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
47683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->units=resolutionUnits_;
4773ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
47883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
47983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::ResolutionType Magick::Options::resolutionUnits(void) const
4803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
48183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<Magick::ResolutionType>(_imageInfo->units));
4823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
4833ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
48483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::samplingFactor(const std::string &samplingFactor_)
4853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
48683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (samplingFactor_.length() == 0)
48783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _imageInfo->sampling_factor=(char *) RelinquishMagickMemory(
48883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      _imageInfo->sampling_factor);
4893ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
49083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->sampling_factor,samplingFactor_);
4913ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
49283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
49383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::samplingFactor(void) const
4943ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
49583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->sampling_factor)
49683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string(_imageInfo->sampling_factor));
4973ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
49883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
4993ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5003ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
50183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::size(const Geometry &geometry_)
5023ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
5033ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _imageInfo->size=(char *) RelinquishMagickMemory(_imageInfo->size);
5043ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
50583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (geometry_.isValid())
50683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->size,geometry_);
5073ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
50883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
50983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Geometry Magick::Options::size(void) const
5103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
51183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->size)
51283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(Geometry(_imageInfo->size));
5133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
51483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(Geometry());
5153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5163ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
51783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeAntiAlias(bool flag_)
5183ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
51983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  flag_ ? _drawInfo->stroke_antialias=MagickTrue :
52083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _drawInfo->stroke_antialias=MagickFalse;
5213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
52283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
52383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::strokeAntiAlias(void) const
5243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
52583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->stroke_antialias != 0 ? true : false);
5263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5273ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
52883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeColor(const Magick::Color &strokeColor_)
5293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
53083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->stroke=strokeColor_;
5313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
53283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
53383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Color Magick::Options::strokeColor(void) const
5343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
53583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->stroke);
5363ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
53883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeDashArray(const double *strokeDashArray_)
5393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
54083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->dash_pattern=(double *) RelinquishMagickMemory(
54183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _drawInfo->dash_pattern);
5423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
5433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  if(strokeDashArray_)
5443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    {
54583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      size_t
54683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk        x;
5473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy      // Count elements in dash array
5483ed852eea50f9d4cd633efb8c2b054b8e33c253cristy      for (x=0; strokeDashArray_[x]; x++) ;
5493ed852eea50f9d4cd633efb8c2b054b8e33c253cristy      // Allocate elements
55083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      _drawInfo->dash_pattern=static_cast<double*>(AcquireMagickMemory((x+1)*
55183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk        sizeof(double)));
5523ed852eea50f9d4cd633efb8c2b054b8e33c253cristy      // Copy elements
55383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      memcpy(_drawInfo->dash_pattern,strokeDashArray_,(x+1)*sizeof(double));
5543ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    }
5553ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
55683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
55783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkconst double *Magick::Options::strokeDashArray(void) const
5583ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
55983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->dash_pattern);
5603ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5613ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
56283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeDashOffset(double strokeDashOffset_)
5633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
56483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->dash_offset=strokeDashOffset_;
5653ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
56683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
56783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkdouble Magick::Options::strokeDashOffset(void) const
5683ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
56983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->dash_offset);
5703ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5713ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
57283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeLineCap(Magick::LineCap lineCap_)
5733ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
57483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->linecap=lineCap_;
5753ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
57683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
57783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::LineCap Magick::Options::strokeLineCap(void) const
5783ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
57983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->linecap);
5803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5813ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
58283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeLineJoin(Magick::LineJoin lineJoin_)
5833ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
58483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->linejoin=lineJoin_;
5853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
58683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
58783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::LineJoin Magick::Options::strokeLineJoin(void) const
5883ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
58983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->linejoin);
5903ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
5913ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
59283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeMiterLimit(size_t miterLimit_)
5933ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
59483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->miterlimit=miterLimit_;
5953ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
59683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
59783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::strokeMiterLimit(void) const
5983ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
59983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->miterlimit);
6003ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6013ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
60283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokePattern(const MagickCore::Image *strokePattern_)
6033ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
60483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_drawInfo->stroke_pattern)
60583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _drawInfo->stroke_pattern=DestroyImageList(_drawInfo->stroke_pattern);
6063ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
60783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (strokePattern_)
6083ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    {
60983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      GetPPException;
61077328896b876314656427663695bc7b2c9be3f74dirk      _drawInfo->stroke_pattern=CloneImage(const_cast<MagickCore::Image*>(
611e31feb8a39ea937a6328da579085cd2ee66ab4c0dirk        strokePattern_),0,0,MagickTrue,exceptionInfo);
612170ed0c49740abf48dfcd2938532241fb760e910dirk      ThrowPPException(_quiet);
6133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    }
6143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
61583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
61683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkconst MagickCore::Image *Magick::Options::strokePattern(void) const
6173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
61883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->stroke_pattern);
6193ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
62183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::strokeWidth(double strokeWidth_)
6223ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
62383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo->stroke_width=strokeWidth_;
6243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
62583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
62683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkdouble Magick::Options::strokeWidth(void) const
6273ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
62883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo->stroke_width);
6293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
63183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::subImage(size_t subImage_)
6323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
63383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->scene=subImage_;
6343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
63583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
63683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::subImage(void) const
6373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
63883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->scene);
6393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
64183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::subRange(size_t subRange_)
6423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
64383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->number_scenes=subRange_;
6443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
64583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
64683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirksize_t Magick::Options::subRange(void) const
6473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
64883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->number_scenes);
6493ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6503ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
651d37417692d7a7040aa854e493723e92fac1e3ae6dirkvoid Magick::Options::textDirection(DirectionType direction_)
652d37417692d7a7040aa854e493723e92fac1e3ae6dirk{
653d37417692d7a7040aa854e493723e92fac1e3ae6dirk  _drawInfo->direction=direction_;
654d37417692d7a7040aa854e493723e92fac1e3ae6dirk}
655d37417692d7a7040aa854e493723e92fac1e3ae6dirk
656d37417692d7a7040aa854e493723e92fac1e3ae6dirkMagick::DirectionType Magick::Options::textDirection() const
657d37417692d7a7040aa854e493723e92fac1e3ae6dirk{
658d37417692d7a7040aa854e493723e92fac1e3ae6dirk  return(_drawInfo->direction);
659d37417692d7a7040aa854e493723e92fac1e3ae6dirk}
660d37417692d7a7040aa854e493723e92fac1e3ae6dirk
66183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::textEncoding(const std::string &encoding_)
6623ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
663d37417692d7a7040aa854e493723e92fac1e3ae6dirk  CloneString(&_drawInfo->encoding,encoding_.c_str());
6643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6653ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
66683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::textEncoding(void) const
6673ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
66883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_drawInfo->encoding && *_drawInfo->encoding)
66983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string(_drawInfo->encoding));
670d37417692d7a7040aa854e493723e92fac1e3ae6dirk
67183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
6723ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
6733ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
674d37417692d7a7040aa854e493723e92fac1e3ae6dirkvoid Magick::Options::textGravity(GravityType gravity_)
675d37417692d7a7040aa854e493723e92fac1e3ae6dirk{
676d37417692d7a7040aa854e493723e92fac1e3ae6dirk  _drawInfo->gravity=gravity_;
677d37417692d7a7040aa854e493723e92fac1e3ae6dirk}
678d37417692d7a7040aa854e493723e92fac1e3ae6dirk
679d37417692d7a7040aa854e493723e92fac1e3ae6dirkMagick::GravityType Magick::Options::textGravity() const
680d37417692d7a7040aa854e493723e92fac1e3ae6dirk{
681d37417692d7a7040aa854e493723e92fac1e3ae6dirk  return(_drawInfo->gravity);
682d37417692d7a7040aa854e493723e92fac1e3ae6dirk}
683d37417692d7a7040aa854e493723e92fac1e3ae6dirk
684a424799a0e5bfd6d1b7941c044e067fbf18d319fdirkvoid Magick::Options::textInterlineSpacing(double spacing_)
685a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk{
686a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk  _drawInfo->interline_spacing=spacing_;
687a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk}
688a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk
689a424799a0e5bfd6d1b7941c044e067fbf18d319fdirkdouble Magick::Options::textInterlineSpacing(void) const
690a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk{
691a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk  return(_drawInfo->interline_spacing);
692a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk}
693a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk
694a424799a0e5bfd6d1b7941c044e067fbf18d319fdirkvoid Magick::Options::textInterwordSpacing(double spacing_)
695a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk{
696a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk  _drawInfo->interword_spacing=spacing_;
697a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk}
698a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk
699a424799a0e5bfd6d1b7941c044e067fbf18d319fdirkdouble Magick::Options::textInterwordSpacing(void) const
700a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk{
701a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk  return(_drawInfo->interword_spacing);
702a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk}
703a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk
704a424799a0e5bfd6d1b7941c044e067fbf18d319fdirkvoid Magick::Options::textKerning(double kerning_)
705a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk{
706a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk  _drawInfo->kerning=kerning_;
707a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk}
708a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk
709a424799a0e5bfd6d1b7941c044e067fbf18d319fdirkdouble Magick::Options::textKerning(void) const
710a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk{
711a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk  return(_drawInfo->kerning);
712a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk}
713a424799a0e5bfd6d1b7941c044e067fbf18d319fdirk
71483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::transformOrigin(double tx_,double ty_)
7153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
71683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  AffineMatrix
71783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    affine,
71883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    current=_drawInfo->affine;
71983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
7203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
7213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=0.0;
7223ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=0.0;
7233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
7243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.tx=0.0;
7253ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ty=0.0;
7263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
72783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  affine.tx=tx_;
72883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  affine.ty=ty_;
7293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
7303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
7313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
7323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
7333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
7343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.tx=current.sx*affine.tx+current.ry*affine.ty+current.tx;
7353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ty=current.rx*affine.tx+current.sy*affine.ty+current.ty;
7363ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
7373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
73883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::transformReset(void)
7393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
7403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sx=1.0;
7413ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.rx=0.0;
7423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ry=0.0;
7433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sy=1.0;
7443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.tx=0.0;
7453ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ty=0.0;
7463ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
7473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
74883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::transformRotation(double angle_)
7493ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
75083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  AffineMatrix
75183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    affine,
75283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    current=_drawInfo->affine;
75383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
7543ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
7553ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=0.0;
7563ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=0.0;
7573ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
7583ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.tx=0.0;
7593ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ty=0.0;
7603ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
7613ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=cos(DegreesToRadians(fmod(angle_,360.0)));
7623ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=(-sin(DegreesToRadians(fmod(angle_,360.0))));
7633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=sin(DegreesToRadians(fmod(angle_,360.0)));
7643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=cos(DegreesToRadians(fmod(angle_,360.0)));
7653ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
7663ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
7673ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
7683ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
7693ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
7703ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.tx=current.sx*affine.tx+current.ry*affine.ty+current.tx;
7713ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ty=current.rx*affine.tx+current.sy*affine.ty+current.ty;
7723ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
7733ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
77483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::transformScale(double sx_,double sy_)
7753ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
77683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  AffineMatrix
77783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    affine,
77883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    current=_drawInfo->affine;
77983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
7803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
7813ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=0.0;
7823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=0.0;
7833ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
7843ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.tx=0.0;
7853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ty=0.0;
7863ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
78783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  affine.sx=sx_;
78883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  affine.sy=sy_;
7893ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
7903ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
7913ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
7923ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
7933ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
7943ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.tx=current.sx*affine.tx+current.ry*affine.ty+current.tx;
7953ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ty=current.rx*affine.tx+current.sy*affine.ty+current.ty;
7963ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
7973ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
79883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::transformSkewX(double skewx_)
7993ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
80083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  AffineMatrix
80183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    affine,
80283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    current=_drawInfo->affine;
80383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
8043ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
8053ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=0.0;
8063ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=0.0;
8073ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
8083ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.tx=0.0;
8093ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ty=0.0;
8103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
8113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
8123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=tan(DegreesToRadians(fmod(skewx_,360.0)));
8133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
8143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
8153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
8163ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
8173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
8183ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
8193ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.tx=current.sx*affine.tx+current.ry*affine.ty+current.tx;
8203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ty=current.rx*affine.tx+current.sy*affine.ty+current.ty;
8213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
8223ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
82383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::transformSkewY(double skewy_)
8243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
82583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  AffineMatrix
82683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    affine,
82783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    current=_drawInfo->affine;
82883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
8293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
8303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=0.0;
8313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ry=0.0;
8323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
8333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.tx=0.0;
8343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.ty=0.0;
8353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
8363ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sx=1.0;
8373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.rx=tan(DegreesToRadians(fmod(skewy_,360.0)));
8383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  affine.sy=1.0;
8393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
8403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
8413ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
8423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
8433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
8443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.tx=current.sx*affine.tx+current.ry*affine.ty+current.tx;
8453ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  _drawInfo->affine.ty=current.rx*affine.tx+current.sy*affine.ty+current.ty;
8463ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
8473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
84883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::type(const Magick::ImageType type_)
84983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk{
85083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->type=type_;
85183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk}
85283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
85383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::ImageType Magick::Options::type(void) const
8543ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
85583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo->type);
8563ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
85783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
85883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::verbose(bool verboseFlag_)
8593ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
86083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo->verbose=(MagickBooleanType) verboseFlag_;
8613ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
8623ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
86383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkbool Magick::Options::verbose(void) const
8643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
86583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(static_cast<bool>(_imageInfo->verbose));
86683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk}
86783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
86883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::view(const std::string &view_)
86983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk{
87083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (view_.length() == 0)
8713ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    _imageInfo->view=(char *) RelinquishMagickMemory(_imageInfo->view);
8723ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
87383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->view, view_);
8743ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
87583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
87683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::view(void) const
8773ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
87883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->view)
87983c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string(_imageInfo->view));
8803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
88183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
8823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
8833ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
88483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkvoid Magick::Options::x11Display(const std::string &display_)
8853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
88683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (display_.length() == 0)
88783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    _imageInfo->server_name=(char *) RelinquishMagickMemory(
88883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk      _imageInfo->server_name);
8893ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  else
89083c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    Magick::CloneString(&_imageInfo->server_name,display_);
8913ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
89283c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
89383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkstd::string Magick::Options::x11Display(void) const
8943ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
89583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  if (_imageInfo->server_name)
89683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk    return(std::string( _imageInfo->server_name));
8973ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
89883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(std::string());
8993ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
9003ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
90183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagickCore::DrawInfo *Magick::Options::drawInfo(void)
9023ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
90383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_drawInfo);
9043ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
9053ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
90683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagickCore::ImageInfo *Magick::Options::imageInfo(void)
9073ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
90883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_imageInfo);
9093ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
9103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
91183c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagickCore::QuantizeInfo *Magick::Options::quantizeInfo(void)
9123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
91383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  return(_quantizeInfo);
9143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
91583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk
91683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirkMagick::Options::Options(const MagickCore::ImageInfo* imageInfo_,
91783c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  const MagickCore::QuantizeInfo* quantizeInfo_,
91883c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  const MagickCore::DrawInfo* drawInfo_)
91907f84e72b205d18eb8ad35380af95351d9f0a1a3dirk: _imageInfo((MagickCore::ImageInfo* ) NULL),
92007f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  _quantizeInfo((MagickCore::QuantizeInfo* ) NULL),
92107f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  _drawInfo((MagickCore::DrawInfo* ) NULL),
92207f84e72b205d18eb8ad35380af95351d9f0a1a3dirk  _quiet(false)
92383c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk{
92483c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _imageInfo=CloneImageInfo(imageInfo_);
92583c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _quantizeInfo=CloneQuantizeInfo(quantizeInfo_);
92683c9c37e8e76d6e5d0ef32537a7a9cf80bf62e9edirk  _drawInfo=CloneDrawInfo(imageInfo_,drawInfo_);
927830e974c2864362a20c44c4a6e915b523cb56c66cristy}
928