]> git.pld-linux.org Git - packages/cairo.git/commitdiff
- updated for 1.4.12
authorJakub Bogusz <qboosh@pld-linux.org>
Wed, 28 Nov 2007 19:18:37 +0000 (19:18 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    cairo-1.2.4-lcd-filter-1.patch -> 1.4

cairo-1.2.4-lcd-filter-1.patch

index 46a53aba679cd70308979efcf1c28e4c1af6df4f..5fffc6ff9cab6c440242aa4487257e22956b8bab 100644 (file)
@@ -1,5 +1,5 @@
---- cairo-1.4.8/src/cairo-ft-font.c.orig       2007-06-07 19:45:39.000000000 +0200
-+++ cairo-1.4.8/src/cairo-ft-font.c    2007-06-12 23:42:30.671182698 +0200
+--- cairo-1.4.12/src/cairo-ft-font.c.orig      2007-11-27 07:20:12.000000000 +0100
++++ cairo-1.4.12/src/cairo-ft-font.c   2007-11-28 19:54:09.894901361 +0100
 @@ -55,6 +55,8 @@
  #include FT_SYNTHESIS_H
  #endif
@@ -9,7 +9,7 @@
  #define DOUBLE_TO_26_6(d) ((FT_F26Dot6)((d) * 64.0))
  #define DOUBLE_FROM_26_6(t) ((double)(t) / 64.0)
  #define DOUBLE_TO_16_16(d) ((FT_Fixed)((d) * 65536.0))
-@@ -701,23 +703,300 @@
+@@ -702,23 +704,300 @@
      return CAIRO_STATUS_SUCCESS;
  }
  
  
  /* Fills in val->image with an image surface created from @bitmap
   */
-@@ -730,12 +1009,14 @@
+@@ -731,7 +1010,7 @@
      int width, height, stride;
      unsigned char *data;
      int format = CAIRO_FORMAT_A8;
  
      width = bitmap->width;
      height = bitmap->rows;
--    switch (bitmap->pixel_mode) {
-+    {
-+        switch (bitmap->pixel_mode)
-+        {
-     case FT_PIXEL_MODE_MONO:
-       stride = (((width + 31) & ~31) >> 3);
-       if (own_buffer) {
-@@ -765,7 +1046,6 @@
+@@ -772,7 +1051,6 @@
                }
            }
        }
  #ifndef WORDS_BIGENDIAN
        {
            unsigned char   *d = data;
-@@ -777,17 +1057,15 @@
+@@ -784,17 +1062,15 @@
            }
        }
  #endif
            stride = bitmap->pitch;
            if (own_buffer) {
                data = bitmap->buffer;
-@@ -800,107 +1078,19 @@
+@@ -807,105 +1083,16 @@
                memcpy (data, bitmap->buffer, stride * height);
            }
            format = CAIRO_FORMAT_A8;
 -          width_rgba = width;
 -          stride = bitmap->pitch;
 -          stride_rgba = (width_rgba * 4 + 3) & ~3;
--          data_rgba = calloc (1, stride_rgba * height);
+-          data_rgba = calloc (stride_rgba, height);
 -          if (data_rgba == NULL) {
 -              if (own_buffer)
 -                  free (bitmap->buffer);
 -              _cairo_error (CAIRO_STATUS_NO_MEMORY);
 -              return CAIRO_STATUS_NO_MEMORY;
 -          }
--
++            } else {
++                // if we get there, the  data from the source bitmap
++                // really comes from _fill_xrender_bitmap, and is
++                // made of 32-bit ARGB or ABGR values
++                assert(own_buffer != 0);
++                assert(bitmap->pixel_mode != FT_PIXEL_MODE_GRAY);
 -          os = 1;
 -          switch (font_options->subpixel_order) {
 -          case CAIRO_SUBPIXEL_ORDER_VRGB:
 -                  *out++ = (green << 24) | (red << 16) | (green << 8) | blue;
 -              }
 -          }
-+            } else {
-+                // if we get there, the  data from the source bitmap
-+                // really comes from _fill_xrender_bitmap, and is
-+                // made of 32-bit ARGB or ABGR values
-+                assert(own_buffer != 0);
-+                assert(bitmap->pixel_mode != FT_PIXEL_MODE_GRAY);
+-
 -          /* Images here are stored in native format. The
 -           * backend must convert to its own format as needed
 -           */
 -      }
        }
        break;
-+
      case FT_PIXEL_MODE_GRAY2:
-     case FT_PIXEL_MODE_GRAY4:
-       /* These could be triggered by very rare types of TrueType fonts */
-@@ -911,20 +1101,21 @@
+@@ -918,19 +1105,20 @@
        return CAIRO_STATUS_NO_MEMORY;
      }
  
  
 -    if (subpixel)
 -      pixman_image_set_component_alpha ((*surface)->pixman_image, TRUE);
--
--    _cairo_image_surface_assume_ownership_of_data ((*surface));
 +        if (font_options->antialias == CAIRO_ANTIALIAS_SUBPIXEL)
 +            pixman_image_set_component_alpha (image->pixman_image, TRUE);
  
+-    _cairo_image_surface_assume_ownership_of_data ((*surface));
 +        _cairo_image_surface_assume_ownership_of_data (image);
-+    }
      return CAIRO_STATUS_SUCCESS;
  }
-@@ -948,16 +1139,44 @@
+@@ -955,16 +1143,44 @@
                       cairo_font_options_t      *font_options,
                       cairo_image_surface_t    **surface)
  {
  
      FT_Outline_Get_CBox (outline, &cbox);
  
-@@ -968,100 +1187,95 @@
+@@ -975,20 +1191,19 @@
  
      width = (unsigned int) ((cbox.xMax - cbox.xMin) >> 6);
      height = (unsigned int) ((cbox.yMax - cbox.yMin) >> 6);
 -      case CAIRO_ANTIALIAS_GRAY:
        default:
            format = CAIRO_FORMAT_A8;
--          break;
-       }
-       (*surface) = (cairo_image_surface_t *)
-           cairo_image_surface_create_for_data (NULL, format, 0, 0, 0);
-       if ((*surface)->base.status)
+           break;
+@@ -1000,75 +1215,70 @@
            return CAIRO_STATUS_NO_MEMORY;
-+
      } else  {
  
 -      matrix.xx = matrix.yy = 0x10000L;
 -          bitmap.pixel_mode = FT_PIXEL_MODE_GRAY;
 -          bitmap.num_grays  = 256;
 -          stride = (width + 3) & -4;
-+
 +        case FT_RENDER_MODE_LCD_V:
 +            if (font_options->subpixel_order == CAIRO_SUBPIXEL_ORDER_VBGR ) {
 +                rgba = FC_RGBA_VBGR;
 -          case CAIRO_SUBPIXEL_ORDER_RGB:
 -          case CAIRO_SUBPIXEL_ORDER_BGR:
 -          case CAIRO_SUBPIXEL_ORDER_DEFAULT:
-+
            default:
 -              matrix.xx *= 3;
 -              hmul = 3;
 -              subpixel = TRUE;
--              break;
+               break;
 -          case CAIRO_SUBPIXEL_ORDER_VRGB:
 -          case CAIRO_SUBPIXEL_ORDER_VBGR:
 -              matrix.yy *= 3;
 -              vmul = 3;
 -              subpixel = TRUE;
 -              break;
-+            ;
-           }
+-          }
 -          FT_Outline_Transform (outline, &matrix);
+-
 -          bitmap.pixel_mode = FT_PIXEL_MODE_GRAY;
 -          bitmap.num_grays  = 256;
 -          stride = (width * hmul + 3) & -4;
--      }
-+        FT_Library_SetLcdFilter( library, FT_LCD_FILTER_DEFAULT );
+       }
  
 -      bitmap.pitch = stride;
 -      bitmap.width = width * hmul;
 -      bitmap.rows = height * vmul;
--      bitmap.buffer = calloc (1, stride * bitmap.rows);
+-      bitmap.buffer = calloc (stride, bitmap.rows);
++        FT_Library_SetLcdFilter( library, FT_LCD_FILTER_DEFAULT );
++
 +        fterror = FT_Render_Glyph( face->glyph, render_mode );
  
 -      if (bitmap.buffer == NULL) {
 +      }
  
 -      if (FT_Outline_Get_Bitmap (glyphslot->library, outline, &bitmap) != 0) {
--          free (bitmap.buffer);
 +        bitmap.buffer = calloc(1, bitmap_size);
 +        if (bitmap.buffer == NULL) {
+           free (bitmap.buffer);
            _cairo_error (CAIRO_STATUS_NO_MEMORY);
            return CAIRO_STATUS_NO_MEMORY;
        }
  
      return CAIRO_STATUS_SUCCESS;
  }
-@@ -1433,11 +1647,11 @@
+@@ -1442,11 +1652,11 @@
                case CAIRO_SUBPIXEL_ORDER_DEFAULT:
                case CAIRO_SUBPIXEL_ORDER_RGB:
                case CAIRO_SUBPIXEL_ORDER_BGR:
This page took 0.082485 seconds and 4 git commands to generate.