[Rd] New version of X11, png and jpeg
Prof Brian Ripley
ripley at stats.ox.ac.uk
Tue Feb 26 15:18:26 CET 2008
Revision r44621 supports (in a limited way) cairo 1.0 and hence I believe
vanilla FC5 -- I found what purports to be a vanilla FC5 box and it works
quite well there.
Two people have reported that the svg(), cairo-pdf() and cairo-ps()
devices produce blank (but not empty) files. I was able to confirm that
on Debian etch (cairo 1.2.4). They do work on cairo 1.4.14 (F8) and
better on a 1.5.10 snapshot.
We've got a working version on Mac OS X, but you need to install cairo.
Finally, the quality of the fonts you see will depend on what fonts you
have installed: if you only have X11 bitmapped fonts, that is what you
will get (and I am getting on our minimally configured Debian etch
machine). Our Fedora installations are mainly using the URW Type 1 fonts
in the urw-fonts RPM. One of the alternatives is RH's liberation fonts
(https://www.redhat.com/promo/fonts/).
On Mon, 25 Feb 2008, Prof Brian Ripley wrote:
> That call is from Cairo 1.2, so looks like our test FC5 box had a later
> version of the cairo libraries than the one pkg-config reported.
>
> You should be able to build with --without-cairo until such a time as we can
> add a suitable configure test.
>
> Thank you for the report.
>
> On Mon, 25 Feb 2008, Roger Peng wrote:
>
>> (Apologies, I meant to 'Reply to all' the first time but forgot).
>>
>> I built r44608 of R-devel with (I think) cairo support. At least,
>> that's what the configure script told me. In addition,
>> 'capabilities("cairo")' is TRUE. Calling X11(type = "Cairo") gives me
>> the error:
>>
>> Error in X11() : X11 module cannot be loaded
>> In addition: Warning message:
>> In X11() :
>> unable to load shared library
>> '/home/rpeng/install/R-devel/lib64/R/modules//R_X11.so':
>> /home/rpeng/install/R-devel/lib64/R/modules//R_X11.so: undefined
>> symbol: cairo_image_surface_get_data
>>
>>
>> I figured I must be missing a library somewhere, but I'm not sure how
>> to track down which one. Any thoughts here?
>>
>> I'm on a FC5 system with:
>>
>> cairo-devel-1.0.4-1
>> cairo-1.0.4-1
>> cairo-1.0.4-1
>>
>> and
>>
>> pango-1.12.4-4
>> pango-devel-1.12.4-4
>> pango-1.12.4-4
>>
>> Also, I have
>>
>> [rpeng at audrey R-source]$ pkg-config --modversion pango
>> 1.12.4
>> [rpeng at audrey R-source]$ pkg-config --modversion cairo
>> 1.0.4
>>
>> -roger
>>
>> On Mon, Feb 25, 2008 at 11:56 AM, Prof Brian Ripley
>> <ripley at stats.ox.ac.uk> wrote:
>>> R-devel has new versions of the X11(), png() and jpeg() devices on
>>> Unix-alikes. The intention is that these are used identically to the
>>> previous versions (which remain available) but will produce
>>> higher-quality
>>> output with more features.
>>>
>>> Pros:
>>>
>>> Antialiasing of text and lines (can be turned off) but no blurring of
>>> fills.
>>>
>>> Buffering of the X11 display and fast repainting from a backing image.
>>> (The intention is to emulate the timer-based buffering of the windows()
>>> device in due course, but not for 2.7.0.)
>>>
>>> Ability to use translucent colours, including backgrounds, and produce
>>> partially transparent PNG files.
>>>
>>> Scalable text, including to sizes like 4.5 pt. This allows more accurate
>>> sizing on non-standard screen sizes (e.g. my home machine has a 90dpi
>>> 1650x1024 display whereas standard X11 fonts are set up for 75 or 100
>>> dpi).
>>>
>>> Full support for UTF-8, so on systems with suitable fonts you can plot in
>>> many languages on a single figure (and this will work even in non-UTF-8
>>> locales). The output should be locale-independent (unlike the current
>>> devices where even English text is rendered slightly differently in
>>> Latin-1 and UTF-8 locales).
>>>
>>> A utility function savePlot() to make a PNG/JPEG/TIFF copy of the current
>>> plot.
>>>
>>> The new png() and jpeg() devices do not require an X server to be
>>> running.
>>>
>>> Cons:
>>>
>>> Needs more software installed - cairo, pango and support packages (which
>>> on all the systems we have looked at are pulled in by the packages
>>> checked
>>> for). You will see something like
>>>
>>> Additional capabilities: PNG, JPEG, iconv, MBCS, NLS, cairo
>>> ^^^^^
>>> if configure finds the software we are looking for.
>>>
>>> Slower under some circumstances (although on the test systems much faster
>>> than packages Cairo and cairoDevice). This will be particularly true for
>>> X11() with a slow connection between the machine running R and the X
>>> server.
>>>
>>> The additional software might not work correctly.
>>>
>>>
>>> The new versions are not currently the default, but can be made so by
>>> setting X11.options(type="Cairo"), e.g. as a load hook for package
>>> grDevices. I am using
>>>
>>> setHook(packageEvent("grDevices", "onLoad"),
>>> function(...) {
>>> grDevices::ps.options(horizontal=FALSE)
>>> if(getRversion() >= '2.7.0') grDevices::X11.options(type="Cairo")
>>> })
>>>
>>>
>>> Please try these out and let us know how you get on. As a check, try the
>>> TestChars() examples in ?points - on one Solaris 10 system a few of the
>>> symbol font characters were incorrect. It worked on an FC5 system with
>>>
>>> auk% pkg-config --modversion pango
>>> 1.12.4
>>> auk% pkg-config --modversion cairo
>>> 1.0.4
>>>
>>> so the versions required are not all recent.
>>>
>>> Although these devices would in principle work on Mac OS X, neither cairo
>>> nor pango is readily available. We are working on other versions for
>>> Mac OS (X11 based on cairo/freetype, png/jpeg based on Quartz).
>>>
>>> There are also new svg() and tiff() devices.
>>>
>>> --
>>> Brian D. Ripley, ripley at stats.ox.ac.uk
>>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
>>> University of Oxford, Tel: +44 1865 272861 (self)
>>> 1 South Parks Road, +44 1865 272866 (PA)
>>> Oxford OX1 3TG, UK Fax: +44 1865 272595
>>>
>>> ______________________________________________
>>> R-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>
>>
>>
>> --
>> Roger D. Peng | http://www.biostat.jhsph.edu/~rpeng/
>>
>
> --
> Brian D. Ripley, ripley at stats.ox.ac.uk
> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
> University of Oxford, Tel: +44 1865 272861 (self)
> 1 South Parks Road, +44 1865 272866 (PA)
> Oxford OX1 3TG, UK Fax: +44 1865 272595
>
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel
mailing list