On Jun 3, 2007, at 7:30 PM, Alan W. Irwin wrote:

> On 2007-06-03 18:20-0400 Hazen Babcock wrote:
>
>>
>> Hello,
>>
>> I've added the Cairo driver family to PLplot. This includes:
>>
>> xcairo (formally known as xwinttf).
>> pdfcairo (PDF)
>> pscairo (PS)
>> svgcairo (SVG)
>> pngcairo (PNG)
>> memcairo (MEM)
>>
>> Known issues:
>> 1. If you have Cairo but not X Windows your build will likely fail
>> since I still haven't solved the pre-processor directive problem I
>> mentioned Yesterday.
>> 2. The svgcairo driver does not display text properly. I'm not really
>> sure what to do about this one since it seems to be an issue with the
>> cairo library.
>> 3. The pngcairo driver does not support multiple pages. You only get
>> one page, which is the last page that you drew. This could be fixed
>> by having the driver generate multiple files, say my-graph.png, my-
>> graph-2.png, etc... I don't think the PNG format itself supports
>> multiple page output.
>
> That is correct.  The way this is taken care of for the png device  
> (as well
> as jpeg and gif) for gd.c is to use the normal PLplot familying  
> facility
> (see
> http://plplot.sourceforge.net/docbook-manual/plplot-html-5.7.3/ 
> output-devices.html#familying).
> It's a bit tricky to set up, but if you follow what is done for  
> gd.c, you
> should be fine.  I thought you might have inadvertently set up  
> familying
> already simply by following what is done in gd.c, but apparently  
> not since
> the -fam command-line option only gives the same last page of  
> example 8 that
> you get without the option.

Ok. I'll implement this approach.

>> 4. The memcairo driver is untested. It appears that a side effect of
>> a call to plsmem is to force PLplot to use the "mem" driver. An
>> attempt to overide this behavior by calling plsdev("memcairo") after
>> the plsmem call but before plinit was unsuccessful.
>> 5. Plots output by the pscairo driver do not fit the page, i.e. there
>> is a largish white margin on two sides of a plot.
>>
>> All the drivers are off by default so you will have to turn them on
>> to test them, if you are so inclined.
>
> I didn't bother with memcairo, but I built all the rest with no  
> build errors
> on Ubuntu Dapper.
>
> I have only done the most superficial tests of the built results,  
> but I
> immediately noticed two issues on Linux beyond what you mentioned.
>
> (1) the 'ldd -r cairo.so' test showed the
> following problems:
>
> undefined symbol: cairo_ps_surface_create       (./cairo.so)
> undefined symbol: cairo_pdf_surface_create      (./cairo.so)
> undefined symbol: cairo_svg_surface_create      (./cairo.so)
>
> It's fairly urgent to solve these problems since it excludes any  
> testing of
> the pscairo, pdfcairo, or svgcairo devices on Linux.

Maybe this is because I have Cairo v1.2.6 and debian testing is  
v1.2.4? According the cairo docs these functions have been in the  
library since 1.2.

> (2)  ./x08c -dev xcairo shows only the first page of that example.

Hm. On OS-X I get a bus error. It is interesting that it works fine  
if you just type ./x08c and then choose the driver.

-Hazen


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to