Re: layout patch - transform handling needed

From: Dom Lachowicz (domlachowicz@yahoo.com)
Date: Mon Feb 17 2003 - 10:19:18 EST

  • Next message: Dom Lachowicz: "Commit: new and improved transform class"

    Hi Tomas,

    > ::getDeviceResolution handling the zoom is not
    > right; device
    > resolution is a constant that has nothing to do with
    > zoom, and doing
    > the zoom by pretending that the device resolution
    > has changed is a
    > potential source of layout bugs similar to those we
    > experienced in
    > the past. What we need, is to have proper transform
    > functions in the
    > gr_Graphics class and zoom by changing the scaling
    > factor of the
    > transform. Then the draw functions do not need to do
    > any internal
    > conversions due to zoom (see pseudo code below).

    This was not explained correctly - getDeviceResolution
    doesn't handle zoom at all - it returns a constant
    based on your screen resolution, such as 72 or 96.
    Other functions use a combination of DeviceResolution,
    Resoluton (1440), and Zoom to, in effect, create a
    virtual transform. Any hacks we described were unix
    specific because Gdk doesn't support transforms, and
    to the best of my knowledge, neither does
    Xft/FontConfig. But I'll look into it.

    This is not to say that things can't be improved upon
    still, or that we're doing things 100% correctly now.
    They're just significanly better than what they used
    to be. And, FWIW, drawing is currently identical for
    PS printing and on-screen (for the first time ever,
    actually), except for Justified text, because
    Justified text now uses the CharWidths array to
    specifiy font widths, and I'm not sure if PS supports
    such a mechanism. It might, but if so, I haven't found
    it using Google yet.

    Dom

    __________________________________________________
    Do you Yahoo!?
    Yahoo! Shopping - Send Flowers for Valentine's Day
    http://shopping.yahoo.com



    This archive was generated by hypermail 2.1.4 : Mon Feb 17 2003 - 10:23:58 EST