On 2009-03-12 13:47-0000 Alban Rochel wrote: > Hello Alan, > > You will find attached my updates for the Qt driver. I've not made them as a > diff, so much as been changed that it makes more sense to re-deliver > everything. It incorporates my changes for alpha blending, which match yours. > > Changes: > - Qt-based font support > - alpha blending > - fixed memory leaks, at least every one I could identify. Among the leaks > and problems identified by valgrind, some are related to Qt, but they appear > even on minimal Qt examples (a simple empty QApplication). > - hopefully fixed all crashed and segfaults > - fixed non-filled areas problems on example 30 > - Large clean-up of the driver architecture. Working on the fonts, I've found > Qt classes allowing me to simplify *much* the interactive driver. The > QtPLBufferedDriver class is not used any more. > - the output size parameter is taken into account (I had forgotten this one > in the previous releases, letting everything to the default A4 size), except > for EPS/PDF: Qt 4.2 and 4.3 require a standard paper size. I've left it to > A4. > > Bugs: > - I've had lots of issues with the SVG driver to have correct text placement. > I've decided to give up for the moment, unless I've missed something I > believe I've found a bug in Qt. I've made a quick and dirty fix which still > leaves imperfect text offsets. I'll investigate a little, and do a bug report > to Qt if it is indeed a Qt bug. > - No symbols on the x01 plots for the raster, EPS/PDF and interactive > drivers. No idea why, I remember seeing them at some point (!), but for the > moment (until the next release), let's forget them... > - The number of displayed symbols in example 23 is much smaller than with > other devices. I don't know much of font handling and unicode, so I don't > know if it is a Qt limitation or if I can do something about it (which I > suppose). Again, I'll deal with that in a future release. > > I've only tested it on my Linux system. I'll make more compatibility tests > when I've ported my changes to our own QSAS driver.
Hi Alban: I am answering you on the PLplot development list because I think others there will be interested in how you have improved qt so much. I have committed your work as revision 9729. I suspect you should just revert your text placement changes for svgqt. We have found previously that any Linux SVG viewer/converter having to do with GNOME (e.g., eog) or ImageMagick (convert or display) relies on the librsvg library which has some severe text placement bugs. I have put in several bug reports about this, but the official GNOME "maintainer" of that library seems proud of the fact that GNOME does not use SVG that much and that therefore librsvg does not have to be maintained (!) Hopefully, GNOME will eventually replace that guy with someone who is competent, but for now you have to be careful of anything that depends on librsvg. I recommend using konqueror for getting the best text-placement results for SVG files. Scribus-ng (but not Scribus) was good, and there were some other reliable apps as well whose names I have forgotten. Right now, konqueror shows some text placement issues with the svg results, but I bet those go away once your SVG "correction" is removed. I am not sure how to advise you with regards to example 23. My first guess was you were being too specific with the desired font names, but I don't spot anything in your code that is too specific that way. For example, f.setFamily("sans-serif") seems to use quite generic name which is exactly what you want. More likely, there is some way to control font lookup within Qt, and you have to set something or configure something to make it look for all "sans-serif" possibilities rather than taking, e.g., the first one (which is likely not to have all the glyphs you need). I confirmed all the other issues you mentioned. One other issue I noticed was the glyphs are roughly a factor of two too small. (I would adjust the qt character size to mimic what you get for xcairo.) I looked at example 24, and (aside from the size issue) looks good with the CTL (Complex Text Layout) languages being rendered correctly. So that is a huge improvement which shows the great potential there is with qt-related devices. Thanks very much for your continuing efforts with the qt device driver. 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); PLplot scientific plotting software package (plplot.org); 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 __________________________ ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel