[MacPorts] #44414: cairo +quartz pango +quartz

MacPorts noreply at macports.org
Sat Jan 24 02:02:48 PST 2015


#44414: cairo +quartz pango +quartz
--------------------------+--------------------------
  Reporter:  vtjnash@…    |      Owner:  ryandesign@…
      Type:  enhancement  |     Status:  closed
  Priority:  Low          |  Milestone:
 Component:  ports        |    Version:  2.3.1
Resolution:  fixed        |   Keywords:
      Port:  cairo pango  |
--------------------------+--------------------------

Comment (by rjvbertin@…):

 Do any of you who are so much in favour of imposing +quartz even use X11
 applications regularly enough to care how fonts render in them?

 I do, and have spent quite a bit of time proposing variants to freetype,
 fontconfig and cairo that leverage bohoomil's variant of Infinality
 patches with the immense database of rendering configuration files for
 individual fonts.

 With those, text rendering is actually considerably better (I'll avoid the
 term significant as that would suggest I have a quantitative measure)
 under X11 than it is under OS X itself.

 I've just spent a day trying to figure out why I didn't get this benefit
 (= text looked so lousy) since migrating to 10.9, while the same
 freetype,fontconfig,cairo ports on 10.6 gave the expected near perfect
 quality. On a hunch, I deactivated the latest pango-cairo that had a
 +quartz variant and activated the previous point release. Apparently that
 one was built before I built cairo with +quartz ... and all of a sudden
 the infinality quality was back in its full glory, without changing
 anything to the cairo build.

 I now understand why rendering looked so lousy: most of the functions
 involved in text rendering simply didn't call the freetype backend, but
 the quartz one. That also explains why the infinality tweak env. variables
 had 0 effect.
 Curiously, those variables do effect rendering in wine applications (I
 have port:wine-devel) which to my knowledge no longer display through X11.
 Regardless of what pango-cairo version I have activated.

 Looking at the pango-cairo build process I see that it picks up the
 available cairo backends, and for some reason gives priority to the quartz
 backend.

 Is it possible, at a system-wide or user-wide level, to configure the
 order of preference in which to use the available cairo backends?

 If that's not possible, I'd really have to ask not to remove the option to
 remove the quartz option, or to replace it with its opposite. I know
 there's a policy against negative variants, but in this case it might be a
 way out of what would otherwise be a dilemma. Infinality would become
 something for people who can follow instructions like:
 - build cairo+infinality+x11+noquartz
 - (re)build pango-cairo so that it doesn't see the quartz backend during
 the configure step
 - rebuild cairo without +noquartz if required

 What does the cairo quartz backend provide that the freetype backend
 doesn't? Freetype is not itself depend on X11 nor is its use restricted to
 X11 applications...

-- 
Ticket URL: <https://trac.macports.org/ticket/44414#comment:12>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list