summaryrefslogtreecommitdiff
path: root/dmagick/Color.d
diff options
context:
space:
mode:
authorMike Wey2011-08-07 20:47:02 +0200
committerMike Wey2011-08-07 20:47:02 +0200
commit0f4da1faa6813373f7795a1081a7160d5ead5983 (patch)
tree7a4d02e0f8978491931f3cf690a23059569efb16 /dmagick/Color.d
parent7a9174cc012e93fb0a4d15ef3dcf64f3695b829e (diff)
Remove the limitation of one Row per thread.
Also some bugfixes and unittests.
Diffstat (limited to 'dmagick/Color.d')
-rw-r--r--dmagick/Color.d18
1 files changed, 14 insertions, 4 deletions
diff --git a/dmagick/Color.d b/dmagick/Color.d
index f42d4d2..ccb8b10 100644
--- a/dmagick/Color.d
+++ b/dmagick/Color.d
@@ -76,7 +76,7 @@ class Color
*/
this(PixelPacket* packet)
{
- packet = packet;
+ this.packet = packet;
}
PixelPacket pixelPacket()
@@ -104,11 +104,21 @@ class Color
string frm = "%08X";
if ( packet.opacity == 0 )
- frm = "#" ~ frm ~ frm ~ frm;
+ return format("#"~frm~frm~frm, packet.red, packet.green, packet.blue);
else
- frm = "#" ~ frm ~ frm ~ frm ~ frm;
+ return format("#"~frm~frm~frm~frm, packet.red, packet.green, packet.blue, packet.opacity);
+ }
+
+ unittest
+ {
+ Color color = new Color("blue");
- return format(frm, packet.red, packet.green, packet.blue, packet.opacity);
+ static if ( MagickQuantumDepth == 8 )
+ assert(color.toString() == "#0000FF");
+ else static if ( MagickQuantumDepth == 16 )
+ assert(color.toString() == "#00000000FFFF");
+ else
+ assert(color.toString() == "#0000000000000000FFFFFFFF");
}
/**