summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dmagick/ImageView.d7
-rw-r--r--dmagick/c/colorspace.d18
-rw-r--r--dmagick/c/gem.d14
-rw-r--r--dmagick/c/magickVersion.d9
-rw-r--r--dmagick/c/option.d49
5 files changed, 80 insertions, 17 deletions
diff --git a/dmagick/ImageView.d b/dmagick/ImageView.d
index d464588..2c7e43b 100644
--- a/dmagick/ImageView.d
+++ b/dmagick/ImageView.d
@@ -22,6 +22,7 @@ import dmagick.c.exception;
import dmagick.c.geometry;
import dmagick.c.image : MagickCoreImage = Image;
import dmagick.c.magickType;
+import dmagick.c.magickVersion;
import dmagick.c.memory;
import dmagick.c.pixel;
@@ -414,6 +415,12 @@ private extern(C)
cache,
pixels;
+ static if ( MagickLibVersion >= 0x686 )
+ {
+ MagickBooleanType
+ authentic_pixel_cache;
+ }
+
void*
metacontent;
diff --git a/dmagick/c/colorspace.d b/dmagick/c/colorspace.d
index 05051e1..49944e4 100644
--- a/dmagick/c/colorspace.d
+++ b/dmagick/c/colorspace.d
@@ -30,7 +30,7 @@ extern(C)
UndefinedColorspace,
/**
- * Red-Green-Blue colorspace
+ * Linear RGB colorspace
*/
RGBColorspace,
@@ -157,7 +157,7 @@ extern(C)
*/
HCLColorspace,
- /** ditto */
+ /** Alias for LCHuv. */
LCHColorspace,
/**
@@ -183,7 +183,19 @@ extern(C)
* and white/black points as the sRGB color space but allows
* coordinates below zero and greater than one.
*/
- scRGBColorspace
+ scRGBColorspace,
+
+ /** */
+ HSIColorspace,
+
+ /* Alias for HSB. */
+ HSVColorspace,
+
+ /** */
+ HCLpColorspace,
+
+ /** */
+ YDbDrColorspace
}
MagickBooleanType RGBTransformImage(Image*, const ColorspaceType);
diff --git a/dmagick/c/gem.d b/dmagick/c/gem.d
index 3b6a073..0868747 100644
--- a/dmagick/c/gem.d
+++ b/dmagick/c/gem.d
@@ -20,6 +20,13 @@ extern(C)
void ConvertHCLToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
}
+ static if (MagickLibVersion >= 0x686)
+ {
+ void ConvertHCLpToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
+ void ConvertHSIToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
+ void ConvertHSVToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
+ }
+
void ConvertHSBToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
void ConvertHSLToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
void ConvertHWBToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
@@ -35,6 +42,13 @@ extern(C)
void ConvertRGBToHCL(const Quantum, const Quantum, const Quantum, double*, double*, double*);
}
+ static if (MagickLibVersion >= 0x686)
+ {
+ void ConvertRGBToHCLp( const Quantum, const Quantum, const Quantum, double*, double*, double*);
+ void ConvertRGBToHSI( const Quantum, const Quantum, const Quantum, double*, double*, double*);
+ void ConvertRGBToHSV( const Quantum, const Quantum, const Quantum, double*, double*, double*);
+ }
+
void ConvertRGBToHSB(const Quantum, const Quantum, const Quantum, double*, double*, double*);
void ConvertRGBToHSL(const Quantum, const Quantum, const Quantum, double*, double*, double*);
void ConvertRGBToHWB(const Quantum, const Quantum, const Quantum, double*, double*, double*);
diff --git a/dmagick/c/magickVersion.d b/dmagick/c/magickVersion.d
index c4e94a3..25ff7d3 100644
--- a/dmagick/c/magickVersion.d
+++ b/dmagick/c/magickVersion.d
@@ -180,13 +180,20 @@ extern(C)
///ditto
enum MagickLibVersionText = "6.8.4";
}
- else
+ else version(MagickCore_685)
{
/// Defines the version of ImageMagick where these headers are based on.
enum MagickLibVersion = 0x685;
///ditto
enum MagickLibVersionText = "6.8.5";
}
+ else
+ {
+ /// Defines the version of ImageMagick where these headers are based on.
+ enum MagickLibVersion = 0x686;
+ ///ditto
+ enum MagickLibVersionText = "6.8.6";
+ }
/*
* With ImageMagick 6.6.3 long and unsinged long were changed to
diff --git a/dmagick/c/option.d b/dmagick/c/option.d
index 9977f16..a9de0e5 100644
--- a/dmagick/c/option.d
+++ b/dmagick/c/option.d
@@ -130,20 +130,43 @@ extern(C)
return options;
}());
- enum ValidateType
+ static if ( MagickLibVersion >= 0x686 )
{
- UndefinedValidate,
- NoValidate = 0x00000,
- CompareValidate = 0x00001,
- CompositeValidate = 0x00002,
- ConvertValidate = 0x00004,
- FormatsInMemoryValidate = 0x00008,
- FormatsOnDiskValidate = 0x00010,
- IdentifyValidate = 0x00020,
- ImportExportValidate = 0x00040,
- MontageValidate = 0x00080,
- StreamValidate = 0x00100,
- AllValidate = 0x7fffffff
+ enum ValidateType
+ {
+ UndefinedValidate,
+ NoValidate = 0x00000,
+ ColorspaceValidate = 0x00001,
+ CompareValidate = 0x00002,
+ CompositeValidate = 0x00004,
+ ConvertValidate = 0x00008,
+ FormatsDiskValidate = 0x00010,
+ FormatsMapValidate = 0x00020,
+ FormatsMemoryValidate = 0x00040,
+ IdentifyValidate = 0x00080,
+ ImportExportValidate = 0x00100,
+ MontageValidate = 0x00200,
+ StreamValidate = 0x00400,
+ AllValidate = 0x7fffffff
+ }
+ }
+ else
+ {
+ enum ValidateType
+ {
+ UndefinedValidate,
+ NoValidate = 0x00000,
+ CompareValidate = 0x00001,
+ CompositeValidate = 0x00002,
+ ConvertValidate = 0x00004,
+ FormatsInMemoryValidate = 0x00008,
+ FormatsOnDiskValidate = 0x00010,
+ IdentifyValidate = 0x00020,
+ ImportExportValidate = 0x00040,
+ MontageValidate = 0x00080,
+ StreamValidate = 0x00100,
+ AllValidate = 0x7fffffff
+ }
}
enum CommandOptionFlags