Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!usenet.ins.cwru.edu!tut.cis.ohio-state.edu!ucbvax!jalapeno.UUCP!doc From: doc@jalapeno.UUCP (Tom Dockery) Newsgroups: comp.windows.news Subject: Re: Open Windows Message-ID: <8912221940.AA08619@jalapeno.mfti> Date: 22 Dec 89 21:37:56 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 57 Inre the message: > >One of the many bugs listed in the developers release of Open Windows is >the fact that the NeWS side is not device independent! Sun has done a lot of >things wrong in attempting to promote NeWS but taking the device independence >out of PostScript has to rank among the big ones. One of the major reasons >we develop under NeWS was the fact that PostScript was device independent. >Sun does not consider this a very important bug according to the ratings in >the bug report. How can this be? Could someone please enlighten me about >why this was done or if it will change any time soon? > > > Peter > korp@athens.ees.anl.gov > Argonne National Laboratory > The answer is somewhat simple: it's rather difficult to scale everything appropriately to handle differing device densities if your have no way of determining those densities. As most (though certainly not all) monitors do not have any provisio for providing this information to the framebuffer (and most framebuffers wouldnt know what to do with it anyway), certain assumptions have to be made about the attached devices in advance. In our shop, we regularly swap 16 and 19 inch color monitors around. On a Sun cg-3 these both have a resolution of 1152 X 900; this means the 16 inch monitor has a higher density of pixels per unit measure in either dimension than the 19 inch. The basic unit of measure in PostScript is the point, 1/72 of an inch; not too metric, to be sure, but having a basis in the printing industry. If the PostScript (or NeWS) programmer knows, or can query, the density of the device to be driven, s/he can transform everything accordingly, so that the same PS source prints to the same result on a 300 or 900 dpi printer. The higher density printer then simply provides just that. If the programmer can neither know in advance, nor find out a run-time by query the density of the output device, however, s/he faces a quandry. There is no real way, short of modifying the hardware, to solve the problem in a device independent way; so the NeWS programmers took the approach of changing the abstraction somewhat, from representing a point as a fixed measure, to representing it as a pixel. This is *not* truely device independent, but it does mean I can scale my output on the basis of frame- buffer resolution, which at least is something. At least NeWS attempts to make some sort of abstraction; under X, you must handle the abstraction yourself. Which is the better approach? Whatever works, I suppose. The only way this situation will change, though, is for the window server to take advantage of the newer hardware that does provide density information, so that the programmer can work at the same level of abstraction s/he uses with a PostScript printer. Whew, maybe it wasnt that simple an answer! I hope it helps. Tom Dockery, Market Focus Technologies sun!suntan!fajita!doc