Re: Printing a Gnome canvas
- From: Michael Meeks <michael ximian com>
- To: Jean Bréfort <jean brefort ac-dijon fr>
- Cc: gnome-hackers gnome org
- Subject: Re: Printing a Gnome canvas
- Date: 03 Dec 2002 09:57:50 +0000
Hi Jean,
On Sun, 2002-12-01 at 20:31, Jean Bréfort wrote:
> I think that Gnome is missing a straitforward method to print the
> contents of the canvas. Others before me raised that problem.
> I propose the following solution:
There are a number of issues with printing a canvas; however - I don't
think any are particularly insuperable.
It's worth asking yourself what the future of the canvas is; I suppose
- but either way, hopefully whatever work you do will be transferable.
> Add a function to ask the canvas to print itself, something like:
> > gnome_canvas_print (GnomeCanvas *canvas, GnomePrintContext *pc);
> with probably some more parameters as width and height.
It's not really feasible to make the canvas ( in the core platform )
depend on libgnomeprint[ui] which has a highish degree of instability /
API/ABI churn.
> Add a print pointer in GnomeCanvasItemClass with the same extra parameters
> > void (*print) (GnomeCanvasItem *item, GnomePrintContext *pc);
> so that each item type will print itself.
So you have the nub of the problem :-) the good thing is, that with
GObject we can retro-fit an existing GObjectClass with a new
'GTypeInterface' ( see glib/gobject/gtype.h ).
This will allow us to associate the print functionality separate to
both the canvas, and libgnomeprint - which is presumably the best way to
develop it.
> I don't know if this is really possible and it would add a dependance to
> libgnomeprint for libgnomecanvas. I suspect difficulties with the text
> items. May be I can help to implement such a thing as I need such an
> architecture or equivalent for GChemPaint, so I must do the work anyway.
So - that's great; I suggest that you create a nice
GnomeCanvasPrintable interface, and write your 'foo_gnome_canvas_print'
method inside GChemPaint [ and fit whatever objects you're interested in
with print interfaces ], then we can look at folding it back into the
core as/when it works.
It'd be a nice feature to have though :-) [ although, as you say there
are some interesting issues with screen vs. print fonts ].
Regards,
Michael.
--
mmeeks gnu org <><, Pseudo Engineer, itinerant idiot
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]