← Back to team overview

kicad-developers team mailing list archive

Graphics Abstraction Layer (was Re: wxDC & wxGraphicsContext Test)


--- In kicad-devel@xxxxxxxxxxxxxxx, Wayne Stambaugh <stambaughw@...> wrote:
> > This shouldn't be a problem, because Cairo is able to handle PDF, SVG and PS surfaces. I'd just create a second Draw(..) method and keep the old one intact (thus you have always a fall back solution). I could also write adirect postscript driver, because the commands are very similar compared to Cairo.
> What is the status of Cairo on OSX? I know Cairo is workable solution 
> on Linux and Windows. Any new dependencies you add, must be usable on 
> at least these three platforms.

I'vent tested it, but as said by huter the Quartz engine is supported.
I think that could be some problems with the libraries as starting from 10.6 a version of cairo over X11 is shipped, but i think that could be bypassed easly linking it statically for all the three platforms.

> > I've found printing so far a bit redundant, because it doesn't seem to work well at the moment (?) At least the stroke fonts look very strange - I've always used plotting to PostScript.
> The printing on Linux is a problem. I'm not sure why the stroke fonts 
> in Kicad look so bad when printing on Linux. They print fine on 
> Windows. I haven't heard any complaints from the MAC folks so I'm 
> guessing that it works OK there. Maybe Cairo will improve the Linux 
> printing problem.

I'm not aware of problems printing and i've done some latelly without any kind of problem.

I propose to stop talking about this new library and just after the releaseimplant a proof of concept directly in gerbview as is the easier application.
This could allow us to see performance and problems drectly on the ground and see if there are problems on all the different platforms.
This solution has IMHO several plus:

- Allows to develop a complex test-suite without mod/library dependencies sharable between platforms in the easiest way.
- Being the least trafficked application this could leave more time to do experiments in a more free way: I (personally) think that and also having itbroken for some days doesn't make much problems to all us (am I wrong?) .
- Possibility of conflicts between work of all the other developers is minimized, they could continue to fix/enhance eeschema/pcbnew as they have donelatelly.


Follow ups