From: <he...@co...> - 2015-05-13 18:21:44
|
Jim,<br><br>That sounds like a good place to start.<br><br>Would you mind posting it? Or maybe it's in an early branch of the code?<br><br>Thanks,<br><br>Aaron.<br><br><br>Sent from XFINITY Connect Mobile App<br>-----Original Message-----<br><br>From: ji...@di...<br>To: ir...@be...<br>Cc: Plp...@li...,he...@co...<br>Sent: 2015-05-13 13:03:32 GMT<br>Subject: Re: [Plplot-devel] Using Window's raw API for shapes and text<br><br>I still have the revised windows driver that I can blow the dust off and offer as a possible replacement. <br><br><br><br>> On May 13, 2015, at 1:59 PM, Alan W. Irwin <ir...@be...> wrote:<br>> <br>> Hi Aaron:<br>> <br>> I am putting this further discussion on the plplot-devel mailing list<br>> since some developers there have more device expertise than I do (and<br>> also a lot more Windows expertise) and therefore will likely want to<br>> contribute to the discussion.<br>> <br>>> On 2015-05-13 07:37-0500 Aaron Hexamer wrote:<br>>> <br>>> [....] I've been wondering is if it<br>>> would be feasible to make a driver that uses more of Window's raw API for<br>>> shapes and text, thus avoiding the need for libs like Qt, Cairo-Pango, etc.<br>>> - one would still get portability through other drivers on other platforms.<br>>> It looks like wingcc is somewhat like that, but preferred to use Freetype.<br>>> I gather from looking at the history that text rendering is challenging,<br>>> especially around vertical alignment topics.<br>> <br>> For your information, the plfreetype approach is strongly deprecated. <br>> The primary reason for this is the user can only control the selection<br>> of the needed font files at cmake time or else at run-time via<br>> environment variables which is a very clumsy approach. A secondary<br>> reason is the plfreetype approach only works for simple text layout<br>> (left-to-right) languages. Instead, our preferred approach is to rely<br>> on external libraries such as pango/cairo/fontconfig, Qt, or wxwidgets<br>> to automatically select the best system font (of the sans, serif,<br>> normal weight, bold, etc., generic classes of fonts that PLplot<br>> supports) to render each unicode glyph encountered (which<br>> automatically allows multi-language plots such as example 24) and to<br>> do the required (complex) text layout.<br>> <br>> Thus, I agree that the plfreetype approach used by wingcc (the last<br>> device driver that still uses that approach) should be completely<br>> replaced by calling the appropriate native Windows API for selecting<br>> the best system font to render each unicode glyph that is encountered<br>> and to do the text layout.<br>> <br>> I think in the past that Arjen Markus has commented this approach<br>> should be possible, but he has not had time to pursue it further.<br>> Also, my understanding is that Jim Dishaw has worked on implementing a<br>> Windows device driver. I am not sure what the status of that project<br>> is, but he might have some comments also about the feasibility of<br>> modifying wingcc this way.<br>> <br>> Anyhow, if you feel such modification of wingcc is possible, I would<br>> encourage you to give it a try following, say, the broad outline of<br>> the alt_unicode text handling that is done in drivers/cairo.c.<br>> <br>> Alan<br>> __________________________<br>> Alan W. Irwin<br>> <br>> Astronomical research affiliation with Department of Physics and Astronomy,<br>> University of Victoria (astrowww.phys.uvic.ca).<br>> <br>> Programming affiliations with the FreeEOS equation-of-state<br>> implementation for stellar interiors (freeeos.sf.net); the Time<br>> Ephemerides project (timeephem.sf.net); PLplot scientific plotting<br>> software package (plplot.sf.net); the libLASi project<br>> (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);<br>> and the Linux Brochure Project (lbproject.sf.net).<br>> __________________________<br>> <br>> Linux-powered Science<br>> __________________________<br>> <br>> ------------------------------------------------------------------------------<br>> One dashboard for servers and applications across Physical-Virtual-Cloud <br>> Widest out-of-the-box monitoring support with 50+ applications<br>> Performance metrics, stats and reports that give you Actionable Insights<br>> Deep dive visibility with transaction tracing using APM Insight.<br>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y<br>> _______________________________________________<br>> Plplot-devel mailing list<br>> Plp...@li...<br>> https://lists.sourceforge.net/lists/listinfo/plplot-devel<br> |