Layout Managers

R

Roedy Green

We don't have the display resolution yet. This machine has 125 ppi and that's
nowhere near enough to be able to ignore pixel boundaries. I'd guess that the
old laser printer "standard" resolution of 300 ppi would be enough, but only
just.

Consider font rendering. We programmatically ignore the pixels, but
inside pixels are far from ignored. there are rendering hints, snap to
grid positioning etc.

In PostScript there is snap to pixel grid positioning though you work
in 1/72 inch units.

It is not like a typesetter where you have such fine resolution you
can ignore the pixel error.

It will be that smarter layouts deal with it automatically, much the
way font rendering deals with making fonts look good at low res now
using hints, anti-aliasing, snap to positioning/sizing etc. etc.
 
T

Thomas G. Marshall

Roedy Green coughed up:
Yes. That applies to shrinking too which is even more problematic.

....[rip yada...]...

I was part of a postscript clone manufacturer. I am intimate with all
details regarding it's developement and design, particularly AA and pixel
alignment ramifications.

The only thing I can imagine is (believe it or not) that a general purpose
PDL such as postscript is beyond the abilities of most to implement. This
is true to a large extent---take a look at how many postscript clones that
would work and then gack on particular pages. Or not work at all. There
were a great many joke interpreters. I haven't checked in a while, but
gnu's ghostscript was certainly one of them for many years.
 
T

Thomas G. Marshall

Chris Uppal coughed up:
We don't have the display resolution yet. This machine has 125 ppi and
that's nowhere near enough to be able to ignore pixel boundaries.

Hinting solves that for fonts. Similar algorithms for lines. I've seen
them, ported them, worked deep in the muck with them in the past. It is
possible.

Here was an interesting experiement: We pushed one hinting algorithm to the
extreme: Iteratively drawing the lower case 'e' at lower and lower point
sizes. You'd watch it (in fat bits) try and try to keep the center of the e
open. Until at the very last second it would give up the ghost.

....[rip]...
 
T

Thomas G. Marshall

Roedy Green coughed up:
Consider font rendering. We programmatically ignore the pixels, but
inside pixels are far from ignored. there are rendering hints, snap to
grid positioning etc.

The notions of this snapping you refer to /are/ part of the term "hinting".
 
C

Chris Uppal

Thomas G. Marshall wrote:

[me:]
Hinting solves that for fonts. Similar algorithms for lines. I've seen
them, ported them, worked deep in the muck with them in the past. It is
possible.

I don't think I'd want to mix the complexity of hinting into GUI construction.

Although it would be interesting to try to extend the layout manager concept so
that it could act as an "advisor" on pixel-level positioning even though the
user/programmer only specified positions and relations in a continuous space.

-- chris
 
R

Roedy Green

I don't think I'd want to mix the complexity of hinting into GUI construction.

Although it would be interesting to try to extend the layout manager concept so
that it could act as an "advisor" on pixel-level positioning even though the
user/programmer only specified positions and relations in a continuous space.

For it to work, pixel fiddling has to be taken out of the app. The
layout manager may get feedback from lower layers on how many pixels a
N unit margin should be, then the layout would do it in pixels from
then on to be consistent.

I think the detail would come from extended L&F, and more abstract
L&Fs, doing bit fiddling. The layout layer would ask the lower layer
to round VU units to pixels for it. The app layer would work in
pixel-independent biometric units like the VU.

I would like to see an animation of a continuously variable layout
that morphs smoothly to adjust to the particular data in it, or your
particular subinterest in data in a box to show you more details.

With some sort of quasi-biological metaphor -- your retinal
computation layer may be more at home.

We will need a way soon to waste all the new compute power. :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,432
Messages
2,571,680
Members
48,796
Latest member
Greg L.

Latest Threads

Top