From htl10 at users.sourceforge.net  Sat Oct 22 07:34:31 2011
From: htl10 at users.sourceforge.net (Hin-Tak Leung)
Date: Sat, 22 Oct 2011 06:34:31 +0100 (BST)
Subject: [Rd] patch to add cairo support to Sweave (Re: Sweave, cairo_pdf,
	CJK, ghostscript)
Message-ID: <1319261671.87414.YahooMailClassic@web29511.mail.ird.yahoo.com>

It was as easy as I thought it was half a day ago - here is a patch against R trunk to add cairo support to the Sweave driver, an example Sweave input, and the resulting output. A few more notes:

- obviously the documentation needs to be updated... a bit more work to do.

- some check to make sure "cairo" and "pdf" are not both set would be nice, as well as checking capabilities() for cairo support, etc.

- pdflatex from texlive2007 (fedora 15) emits a couple of warnings - but seems harmless enough:

=================
pdfTeX warning: pdflatex (file ./CairoTest-another1.pdf): PDF inclusion: found PDF version <1.5>, but at most version <1.4> allowed

pdfTeX warning: pdflatex (file ./CairoTest-another1.pdf): PDF inclusion: Page Group detected which pdfTeX can't handle. Ignoring it.
==================

I am fairly sure that this is too late to be included in R 2.14 (already in code freeze and due in less than 10 days..), but harmless enough to go into trunk and 2.14.1?

--- On Sat, 22/10/11, Hin-Tak Leung <htl10 at users.sourceforge.net> wrote:

> I have had some fun in the last few
> days trying to put together an annotated map of China with R
> and some public GIS data:
> 
> http://sourceforge.net/projects/outmodedbonsai/files/snpMatrix%20next/1.17.7.11/China_Choropleth_Maps.pdf/download
> 
> It is done, and rather nice... there are a few issues:
> 
> - the default pdf() device cannot do CJK with embedded
> fonts - and cairo_pdf() is not hooked up to Sweave yet. I
> have had a quick look, and it does not look too complicated,
> other than the fact that cairo_pdf() is mutually exclusive
> with pdf(); and the jpeg/png are new to 2.13 so it is
> probably just nobody has gotten round to it. (and
> cairo_pdf() also behaves differently with the onefile
> option). I guess I am almost saying I might get my hand
> dirty or help somebody else who wants to. So it is probably
> best to start some discussion.
> 
> - Some of the ghostscript/CID font instructions in pdf()
> are a bit bizarre...
> 
> - An earlier version of the above map does not work well
> with part of ghostscript (http://bugs.ghostscript.com/show_bug.cgi?id=692620). So
> that limits to some extent post-processing of cairo_pdf()
> output.
> 
> 
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: R-Sweave-cairo.patch
Type: text/x-patch
Size: 2373 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20111022/fa25ce2b/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: CairoTest.pdf
Type: application/pdf
Size: 25366 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20111022/fa25ce2b/attachment.pdf>


[Rd] patch to add cairo support to Sweave (Re: Sweave, cairo_pdf, CJK, ghostscript)
Hin-Tak Leung