[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52180] trunk/blender/source/blender/imbuf /intern/jpeg.c: Correction to YCCK and CNYK jpeg images loading into blender

Sergey Sharybin sergey.vfx at gmail.com
Tue Nov 13 15:28:45 CET 2012


Revision: 52180
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52180
Author:   nazgul
Date:     2012-11-13 14:28:45 +0000 (Tue, 13 Nov 2012)
Log Message:
-----------
Correction to YCCK and CNYK jpeg images loading into blender

There was incorrect formula applied on color components, used the same
as gimp uses. It makes image looking nicer in blender, however it's
still not 100% correct. Seems lots of software are handling profiles
from jpeg file nicely. But that's another topic.

Modified Paths:
--------------
    trunk/blender/source/blender/imbuf/intern/jpeg.c

Modified: trunk/blender/source/blender/imbuf/intern/jpeg.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/jpeg.c	2012-11-13 14:21:55 UTC (rev 52179)
+++ trunk/blender/source/blender/imbuf/intern/jpeg.c	2012-11-13 14:28:45 UTC (rev 52180)
@@ -348,25 +348,12 @@
 							g = *buffer++;
 							b = *buffer++;
 							k = *buffer++;
-							
-							k = 255 - k;
-							r -= k;
-							if (r & 0xffffff00) {
-								if (r < 0) r = 0;
-								else r = 255;
-							}
-							g -= k;
-							if (g & 0xffffff00) {
-								if (g < 0) g = 0;
-								else g = 255;
-							}
-							b -= k;
-							if (b & 0xffffff00) {
-								if (b < 0) b = 0;
-								else b = 255;
-							}
-							
-							rect[3] = 255 - k;
+
+							r = (r * k) / 255;
+							g = (g * k) / 255;
+							b = (b * k) / 255;
+
+							rect[3] = 255;
 							rect[2] = b;
 							rect[1] = g;
 							rect[0] = r;




More information about the Bf-blender-cvs mailing list