[bug #44933] Cairo backend: NSGraphicsContext's imageInterpolation setting is ignored

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[bug #44933] Cairo backend: NSGraphicsContext's imageInterpolation setting is ignored

Richard Frith-Macdonald-10
URL:
  <http://savannah.gnu.org/bugs/?44933>

                 Summary: Cairo backend: NSGraphicsContext's
imageInterpolation setting is ignored
                 Project: GNUstep
            Submitted by: tedge
            Submitted on: Mon 27 Apr 2015 04:32:32 AM GMT
                Category: Backend
                Severity: 3 - Normal
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

   Setup: VirtualBox 4.3 + Ubuntu 14.04 guest, Clang, GNUstep from current SVN
trunk

   Scaled images drawn with the Cairo backend are always interpolated
(blurred), even when interpolation is disabled in the current
NSGraphicsContext (imageInterpolation set to NSImageInterpolationNone).

   This is because the CairoGState class hard-codes all calls to
cairo_pattern_set_filter() (Cairo function for setting interpolation type)
with the interpolation value, CAIRO_FILTER_BILINEAR.

   The attached patch updates CairoGState's cairo_pattern_set_filter() calls
to use an appropriate value based on the graphicsContext's imageInterpolation
setting. Test program is also attached.




    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Mon 27 Apr 2015 04:32:32 AM GMT  Name:
CairoGState_ImageInterpolation.patch  Size: 2kB   By: tedge

<http://savannah.gnu.org/bugs/download.php?file_id=33799>
-------------------------------------------------------
Date: Mon 27 Apr 2015 04:32:32 AM GMT  Name: TestImageInterpolation.m  Size:
7kB   By: tedge

<http://savannah.gnu.org/bugs/download.php?file_id=33800>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?44933>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/


_______________________________________________
Bug-gnustep mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-gnustep
Reply | Threaded
Open this post in threaded view
|

[bug #44933] Cairo backend: NSGraphicsContext's imageInterpolation setting is ignored

Richard Frith-Macdonald-10
Update of bug #44933 (project gnustep):

                  Status:                    None => Ready For Test        
             Assigned to:                    None => FredKiefer            
             Open/Closed:                    Open => In Test                

    _______________________________________________________

Follow-up Comment #1:

Thank you for another great patch. I just submitted it to SVN.

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?44933>

_______________________________________________
  Nachricht gesendet von/durch Savannah
  http://savannah.gnu.org/


_______________________________________________
Bug-gnustep mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-gnustep
Reply | Threaded
Open this post in threaded view
|

[bug #44933] Cairo backend: NSGraphicsContext's imageInterpolation setting is ignored

Richard Frith-Macdonald-10
Update of bug #44933 (project gnustep):

                  Status:          Ready For Test => Fixed                  
             Open/Closed:                 In Test => Closed                


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?44933>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/


_______________________________________________
Bug-gnustep mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-gnustep