[cairo] [PATCH 1/3] NEWS: Bring up to date with recent bug fixes.

Bryce Harrington bryce at osg.samsung.com
Tue Sep 23 16:45:41 PDT 2014


Thanks, I've updated the description using your text Bill.

On Mon, Sep 22, 2014 at 06:01:47PM -0700, Bill Spitzak wrote:
> On 09/17/2014 08:40 PM, Bryce Harrington wrote:
> 
> >    when viewing large images on low resolution devices, as firefox and
> >    chromium already do.
> >
> >+    Filter generator:
> >+    - Single filter, no "reconstruction" and "sample" filter
> >+    - Filters for derivative < 1 work
> >+    - Fixed IMPULSE and BOX
> >+    - Added TENT, CATMULL_ROM, NOTCH. Remove LANZCOS2.
> >+    - Renamed CUBIC to MITCHELL
> >+
> >+    Cairo's filter settings:
> >+    - CAIRO_FILTER_GOOD: uses BOX filter for scales less than .75 in
> >+      either direction. Uses PIXMAN_FILTER_GOOD (ie BILINEAR) otherwise.
> >+    - CAIRO_FILTER_BEST: uses CATMULL filter always. Upscaling more than
> >+      2x will produce anti-aliased square pixels, similar to OS/X.
> >+    - CAIRO_FILTER_GAUSSIAN: this obsolete value is used to test other
> >+      filters.  The program must declare and poke the filter into the
> >+      static variable ikernel. This should be removed for production
> >+      code.
> >+
> 
> This is not really accurate, as my patch included code that was
> intended to go into pixman but is unreachable from the current cairo
> api. You can't actually specify any of those filters types using
> cairo so it probably should not be mentioned. And the gaussian
> setting in the current patch is very simple. Correct docs may look
> like this:
> 
> Filtering improvements for the image backend, in particular
> down-scaling of images produces filtered images that depend on all
> the pixels of the source. When using the image backend you get the
> following settings:
> 
>  CAIRO_FILTER_GOOD: uses a box filter for scales less than .75 in
> either direction. For scales larger than this the same filter as
> CAIRO_FILTER_BILINEAR is used
> 
>  CAIRO_FILTER_BEST: uses a Catmull-Rom filter always. When upscaling
> more than 2x this will produce anti-aliased square pixels, similar
> to OS/X.
> 
>  CAIRO_FILTER_GAUSSIAN: uses PIXMAN_FILTER_BEST, which in current
> pixman is the same as BILINEAR. (may also want to point out that
> this is subject to change in the future).
> 
> Note that other backends, in particular xlib/xcb, do not implement
> these filtering fixes yet, however other actions may cause them to
> use an image fallback which will cause these filters to be used.
> -- 
> cairo mailing list
> cairo at cairographics.org
> http://lists.cairographics.org/mailman/listinfo/cairo


More information about the cairo mailing list