You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by Jeremias Maerki <de...@jeremias-maerki.ch> on 2006/05/31 23:28:41 UTC

Re: svn commit: r410672 - in /xmlgraphics/fop/trunk/src: documentation/content/xdocs/trunk/ java/org/apache/fop/fonts/ java/org/apache/fop/render/java2d/ sandbox/org/apache/fop/render/pcl/

I'd like to add some comments here:
I'm a bit disappointed by PCL. While it is quite feature-rich, it has
some important gaps. Examples are restrictions for handling transparent
images at least in PCL5 (PCL5c seems to be a little better but is also
quite a bit more complicated). Another example is the lack of
sophisticated clipping (non-rect clipping areas) in HP GL/2. It's
practically impossible to implement a full native Graphics2D
implementation for HP GL/2. PCL contains support for TrueType fonts or
downloading bitmap fonts, but implementing these is quite some work and
not even the Windows PCL printer drivers seem to really do this. All
examples I've generated so far made extensive use of bitmap painting
much like what I resorted to in many areas now. And that despite setting
on the printer driver which would suggest otherwise. At some point you
really only paint bitmaps so you could just as well use the
BitmapRenderer and wrap the bitmap in a PCL wrapper to handle painting
on a desktop printer including tray selection. It would most likely be
faster than the mix of bitmaps and native ops. Ok, it depends on the
document. It is certainly possible to invest more time in a more
sophisticated implementation (I've taken a few shortcuts along the way),
but I doubt they are worth the effort.

On 31.05.2006 23:17:19 jeremias wrote:
> Author: jeremias
> Date: Wed May 31 14:17:18 2006
> New Revision: 410672
> 
> URL: http://svn.apache.org/viewvc?rev=410672&view=rev
> Log:
> Improved accuracy of font size selection. The font size is not rounded down to the next integer point value anymore. (Java2D renderers profit from that one, too)
> 
> PCL Renderer:
> Found a use case for that Java2D ascent value (which I call MaxAscent). It is used for painting text as bitmaps and to make sure the image the text is painted on is big enough if the font ascends beyond the em box. For non-Java2D fonts, MaxAscent is the same as ascent.
> Added a check that lets text painting fall back to bitmaps if there are characters that are not in the ISO-8859-1 encoding. This also enables Symbol and ZapfDingbats fonts.
> A "text-rendering" setting allows to disable PCL text painting in case the mix of PCL and bitmap text painting should result in unwelcome output. Note: the bitmap rendering is relatively slow (many small bitmaps). In the end we might end up rendering using a BitmapRenderer and only wrapping the whole thing in PCL (much like the Windows PCL drivers do). This would be faster than creating many small bitmaps.

<snip/>


Jeremias Maerki