? _imageapi_imagemagick.module
? imageapi_im_rotate_263059.patch
Index: imageapi_gd.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/imageapi/imageapi_gd.module,v
retrieving revision 1.10
diff -u -p -r1.10 imageapi_gd.module
--- imageapi_gd.module	29 May 2008 02:35:31 -0000	1.10
+++ imageapi_gd.module	29 May 2008 06:10:24 -0000
@@ -71,7 +71,7 @@ function imageapi_gd_image_resize(&$imag
 }
 
 function imageapi_gd_image_rotate(&$image, $degrees, $bgcolor) {
-  $res = imagerotate($image->res, $degrees, $bgcolor);
+  $res = imagerotate($image->res, 360 - $degrees, $bgcolor);
   imagedestroy($image->res);
   $image->res = $res;
   return true;
Index: imageapi_imagemagick.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/imageapi/imageapi_imagemagick.module,v
retrieving revision 1.12
diff -u -p -r1.12 imageapi_imagemagick.module
--- imageapi_imagemagick.module	29 May 2008 02:47:01 -0000	1.12
+++ imageapi_imagemagick.module	29 May 2008 06:10:24 -0000
@@ -97,21 +97,12 @@ function imageapi_imagemagick_quality_el
 }
 
 function imageapi_imagemagick_image_open($image) {
-  $ext = array_pop(explode('.', $image->source));
-  $image->res = tempnam(file_directory_temp(), 'imageapi_imagemagick_') .".$ext";
-  if (!file_copy($image->source, $image->res)) {
-    return false;
-  }
   $image->ops = array();
-  register_shutdown_function('file_delete', $image->res);
   return $image;
 }
 
 function imageapi_imagemagick_image_close($image, $dst) {
-  if (!_imageapi_imagemagick_convert($image->res, $image->res, $image->ops)) {
-    return false;
-  }
-  return file_move($image->res, $dst);
+  return _imageapi_imagemagick_convert($image->source, $dst, $image->ops);
 }
 
 function imageapi_imagemagick_image_crop(&$image, $x, $y, $width, $height) {
@@ -129,7 +120,12 @@ function imageapi_imagemagick_image_resi
 }
 
 function imageapi_imagemagick_image_rotate(&$image, $degrees, $bgcolor) {
-  $bgcolor = str_replace('0x', '#', $bgcolor); 
+  if (is_numeric($bgcolor)) {
+    $bgcolor = '#'. str_pad(dechex($bgcolor), 6, 0);
+  }
+  else {
+    $bgcolor = str_replace('0x', '#', $bgcolor);
+  }
   $image->ops[] = '-rotate '. (float) $degrees .' -background '. escapeshellarg($bgcolor) ;
   return true;
 } 
