]> Dogcows Code - chaz/openbox/blobdiff - render/color.c
center text vertically. use the font's height because all that space is needed for...
[chaz/openbox] / render / color.c
index ca1f6e89c5aa30e8591e0bc515a9ac85086c493e..af57b78aad1efbe36311b639782e9eef1abaa5de 100644 (file)
@@ -217,45 +217,21 @@ void increase_depth(pixel32 *data, XImage *im)
         }
         break;
     case 8:
-        g_assert(render_visual->class != TrueColor);
+        g_message("this image bit depth is currently unhandled\n");
+        break;
+    case 1:
         for (y = 0; y < im->height; y++) {
             for (x = 0; x < im->width; x++) {
-                XColor icolor;
-                int ii, r, g, b;
-                gulong dev, closest = 0xffffffff, close = 0;
-
-                icolor.pixel = p8[x];
-                XQueryColor(ob_display, render_colormap, &icolor);
-
-                /* find the nearest color match */
-                for (ii = 0; ii < pseudo_ncolors(); ii++) {
-                    /* find deviations */
-                    r = (pseudo_colors[ii].red - icolor.red) & 0xff;
-                    g = (pseudo_colors[ii].green - icolor.green) & 0xff;
-                    b = (pseudo_colors[ii].blue - icolor.blue) & 0xff;
-                    /* find a weighted absolute deviation */
-                    dev = (r * r) + (g * g) + (b * b);
-
-                    if (dev < closest) {
-                        closest = dev;
-                        close = ii;
-                    }
-                }
-                data[x] =
-                    (pseudo_colors[close].red & 0xff <<
-                     default_red_offset) +
-                    (pseudo_colors[close].green & 0xff <<
-                       default_green_offset) +
-                    (pseudo_colors[close].blue & 0xff <<
-                       default_blue_offset) +
-                    (0xff << default_alpha_offset);
+                if (!(((p8[x / 8]) >> (x % 8)) & 0x1))
+                    data[x] = 0xff << default_alpha_offset; /* black */
+                else
+                    data[x] = 0xffffffff; /* white */
+            }
+            data += im->width;
+            p8 += im->bytes_per_line;
         }
-        data += im->width;
-        p8 += im->bytes_per_line;
-  }
-
-    break;
+        break;
     default:
-        g_message("your bit depth is currently unhandled\n");
+        g_message("this image bit depth is currently unhandled\n");
     }
 }
This page took 0.029141 seconds and 4 git commands to generate.