On 2013-10-05 02:03-0700 phil rosenberg wrote:

> at the moment in wxWidgets at least, the string gets broken into
chunks and parsed to deal with superscript and newlines etc then the
chunks get passed for drawing. this is wy wxWidgets built in underline
doesn't work as we want, because it draws the sb/superscript chunks
separately. We'll need to draw our own underlined to avoid this. If
more than one driver needs this support, which it sounds like it does,
then i think we'd be best doing string parsing and under/overline
drawing from the plplot core. This means we only need to write one set
of code and it ensures consistency between drivers. It would mean the
drivers need to report section length and height. I can't remember if
they do this already, I've a feeling they report height but not
length.

>
> Even for drivers which can deal with newlines an lines properly it might be 
> best to do this for consistency
>

Hi Phil:

The "chunking" problem (i.e., underlining and overlining of a
particular string being done with a variety of heights) you describe
occurs for every device I have tried so far which is why we need the
string bounding-box calculation I have described.

That calculation should be normally delivered by the device with an
approximate fallback calculation otherwise (see how we calculate
string length now using plstrl in src/plsym.c), but after that string
bounding box calculation is done, I agree the underlining and
overlining should be done by the plplot core library calling something
like plline.

Also, please try my suggested test case for the wxwidgets device(s) that you 
have
access to.

For the "basic" version of the device I get cut descenders and chunking for
underlines and no overlines.  For the "wxGC" version of the device, I
get no underlines and no overlines.

Alan

__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk
_______________________________________________
Plplot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to