summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--GNUmakefile3
-rw-r--r--dmagick/c/colorspace.d20
-rw-r--r--dmagick/c/enhance.d7
-rw-r--r--dmagick/c/gem.d12
-rw-r--r--dmagick/c/magickVersion.d9
-rw-r--r--dmagick/c/pixel.d3
6 files changed, 50 insertions, 4 deletions
diff --git a/GNUmakefile b/GNUmakefile
index bc9d5b1..23812e6 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -46,12 +46,13 @@ RANLIB=ranlib
QUANTUMDEPTH = $(word 5,$(shell convert --version))
MAGICKVERSION = $(firstword $(subst -, ,$(subst .,,$(word 3,$(shell convert --version)))))
+WRAPEDVERSION = $(subst 0x,,$(subst ;,,$(lastword $(shell grep "enum\ MagickLibVersion\ " dmagick/c/magickVersion.d))))
ifneq ("$(QUANTUMDEPTH)","Q16")
VERSIONS+= -version=$(subst Q,Quantum,$(QUANTUMDEPTH))
endif
-ifneq ("$(MAGICKVERSION)","684")
+ifneq ("$(MAGICKVERSION)","$(WRAPEDVERSION)")
VERSIONS+= -version=MagickCore_$(MAGICKVERSION)
endif
diff --git a/dmagick/c/colorspace.d b/dmagick/c/colorspace.d
index 00c6240..05051e1 100644
--- a/dmagick/c/colorspace.d
+++ b/dmagick/c/colorspace.d
@@ -165,7 +165,25 @@ extern(C)
* of cones of the human eye, named after their responsivity
* (sensitivity) at long, medium and short wavelengths.
*/
- LMSColorspace
+ LMSColorspace,
+
+ /**
+ * CIE 1976 cylindrical version of Lab.
+ */
+ LCHabColorspace,
+
+ /**
+ * CIE 1976 cylindrical version of Luv
+ */
+ LCHuvColorspace,
+
+ /**
+ * scRGB is a wide color gamut RGB (Red Green Blue) color space
+ * created by Microsoft and HP that uses the same color primaries
+ * and white/black points as the sRGB color space but allows
+ * coordinates below zero and greater than one.
+ */
+ scRGBColorspace
}
MagickBooleanType RGBTransformImage(Image*, const ColorspaceType);
diff --git a/dmagick/c/enhance.d b/dmagick/c/enhance.d
index 722a3ca..6b25a37 100644
--- a/dmagick/c/enhance.d
+++ b/dmagick/c/enhance.d
@@ -3,6 +3,7 @@ module dmagick.c.enhance;
import dmagick.c.exception;
import dmagick.c.image;
import dmagick.c.magickType;
+import dmagick.c.magickVersion;
import dmagick.c.pixel;
extern(C)
@@ -23,6 +24,12 @@ extern(C)
MagickBooleanType EqualizeImageChannel(Image* image, const ChannelType);
MagickBooleanType GammaImage(Image*, const(char)*);
MagickBooleanType GammaImageChannel(Image*, const ChannelType, const double);
+
+ static if ( MagickLibVersion >= 0x685 )
+ {
+ MagickBooleanType GrayscaleImage(Image*, const PixelIntensityMethod);
+ }
+
MagickBooleanType HaldClutImage(Image*, const(Image)*);
MagickBooleanType HaldClutImageChannel(Image*, const ChannelType, const(Image)*);
MagickBooleanType LevelImage(Image*, const(char)*);
diff --git a/dmagick/c/gem.d b/dmagick/c/gem.d
index d777638..3b6a073 100644
--- a/dmagick/c/gem.d
+++ b/dmagick/c/gem.d
@@ -24,6 +24,12 @@ extern(C)
void ConvertHSLToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
void ConvertHWBToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
+ static if ( MagickLibVersion >= 0x685 )
+ {
+ void ConvertLCHabToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
+ void ConvertLCHuvToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*);
+ }
+
static if (MagickLibVersion >= 0x679)
{
void ConvertRGBToHCL(const Quantum, const Quantum, const Quantum, double*, double*, double*);
@@ -32,4 +38,10 @@ extern(C)
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*);
+
+ static if ( MagickLibVersion >= 0x685 )
+ {
+ void ConvertRGBToLCHab(const Quantum, const Quantum, const Quantum, double*, double*, double*);
+ void ConvertRGBToLCHuv(const Quantum, const Quantum, const Quantum, double*, double*, double*);
+ }
}
diff --git a/dmagick/c/magickVersion.d b/dmagick/c/magickVersion.d
index 9431455..c4e94a3 100644
--- a/dmagick/c/magickVersion.d
+++ b/dmagick/c/magickVersion.d
@@ -173,13 +173,20 @@ extern(C)
///ditto
enum MagickLibVersionText = "6.8.3";
}
- else
+ else version(MagickCore_684)
{
/// Defines the version of ImageMagick where these headers are based on.
enum MagickLibVersion = 0x684;
///ditto
enum MagickLibVersionText = "6.8.4";
}
+ else
+ {
+ /// Defines the version of ImageMagick where these headers are based on.
+ enum MagickLibVersion = 0x685;
+ ///ditto
+ enum MagickLibVersionText = "6.8.5";
+ }
/*
* With ImageMagick 6.6.3 long and unsinged long were changed to
diff --git a/dmagick/c/pixel.d b/dmagick/c/pixel.d
index 4d8b8a2..37ea3c5 100644
--- a/dmagick/c/pixel.d
+++ b/dmagick/c/pixel.d
@@ -84,7 +84,8 @@ extern(C)
Rec601LuminancePixelIntensityMethod,
Rec709LumaPixelIntensityMethod,
Rec709LuminancePixelIntensityMethod,
- RMSPixelIntensityMethod
+ RMSPixelIntensityMethod,
+ MSPixelIntensityMethod
}
struct DoublePixelPacket