home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / fonts / 3805 < prev    next >
Encoding:
Internet Message Format  |  1992-12-29  |  7.6 KB

  1. Xref: sparky comp.fonts:3805 gnu.misc.discuss:4120
  2. Newsgroups: comp.fonts,gnu.misc.discuss
  3. Path: sparky!uunet!spool.mu.edu!agate!pasteur!cory.Berkeley.EDU!johnm
  4. From: johnm@cory.Berkeley.EDU (John D. Mitchell)
  5. Subject: Re: "Hinting" using antialiasing? A GNUish alternative...
  6. Message-ID: <1992Dec29.193853.17902@pasteur.Berkeley.EDU>
  7. Sender: nntp@pasteur.Berkeley.EDU (NNTP Poster)
  8. Nntp-Posting-Host: cory.berkeley.edu
  9. Organization: University of California, at Berkeley
  10. References: <PCG.92Dec27213908@decb.aber.ac.uk> <1992Dec27.225347.28173@pasteur.Berkeley.EDU> <PCG.92Dec29154125@decb.aber.ac.uk>
  11. Date: Tue, 29 Dec 1992 19:38:53 GMT
  12. Lines: 133
  13.  
  14. In article <PCG.92Dec29154125@decb.aber.ac.uk> pcg@aber.ac.uk (Piercarlo
  15. Grandi) writes:
  16. >On 27 Dec 92 22:53:47 GMT, johnm@cory.Berkeley.EDU (John D. Mitchell) said:
  17. >johnm> You might want to take a look at the documentation for GeoWorks'
  18. >johnm> GEOS platform.
  19. >Can you give some more info? I seem to remember it is kind-of a DOS GUI,
  20. >only cheaper/faster/simpler than Windows 3.1 (not that it's difficult :->).
  21.  
  22. [...Semi-commercial product blurb, since it was specifically asked for...]
  23. The GEOS system produced by GeoWorks (Berkeley, CA) is a multi-threaded,
  24. fully preemptive multi-tasking, graphical user interface, object oriented
  25. operating system that runs on Intel 80x86 based harware ranging from sub-1
  26. pound palmtops through the original 512Kb, CGA IBM XT to the latest
  27. workstation class 486s.
  28. [...End of blurb...]
  29.  
  30. The features of GEOS(r) relevant to the current discussion is its "Single
  31. Imaging Model" (ala Postscript(tm)).  Basically, the system is built around
  32. a font manager that fulfills requests for fonts/characters.  The exact same
  33. font generation calls are used by the graphics system (for the screen) as
  34. is used by the printer drivers (for printing).  The font manager manages
  35. font drivers for each of the major rasterizers (e.g. Nimbus, Speedo,
  36. etc.).  The font manager handles caching the built characters as well.  The
  37. Nimbus font driver for GEOS is the fastest rasterizer implementation I've
  38. ever heard of, seen, and/or used for that class of hardware.
  39.  
  40. >Yes, but this holds true for both technologies; so if one has less space
  41. >for caching, then a faster technique is preferable. For example I don't
  42. >like the few seconds of latency that existing renderers make me wait
  43. >while the rasterize the fonts contained in an imported document. Maybe I
  44. >am spoilt for speed, or maybe I cannot afford the latest Quadra or
  45. >DX2-66.
  46.  
  47. Import/Export is always going to be relatively slow (there's a helluva lot
  48. that goes on).  I'd say that it's most likely a matter of poor
  49. design/implementation of the ImpEx code rather than (just) a problem of the
  50. rasterizing of a bunch of fonts/characters.  Perhaps the systems that
  51. you're using are doing something silly like building out all of the
  52. characters in each font that's used?  That's a tragic waste of resources
  53. and I could certainly understand that causing a noticeable slow down.  I'd
  54. recommend switching to a better platform.  :-)
  55.  
  56. >However, given that in most common day use one uses only two sets of
  57. >fonts, one for the screen and one for printer, I am particularly
  58. >thinking of keeping around printer resolution bitmaps, which are the
  59. >ones that after all matter most, and then scaling them on the fly to the
  60. >screen resolution. I am even thinking that it would make sense putting a
  61. >font server *into the printer*, which, for networked printers, is the
  62. >right thing to do. And non networked printers can be turned into
  63. >networked ones for a few hundred dollars by way of a PC as gateway.
  64.  
  65. The font usage patterns depend very much on the ease of use of multiple
  66. fonts in the document creation/modification applications (e.g., word
  67. processor).  Speed makes a difference too.  I.e., people tend to use more
  68. fonts (and more graphics, etc.) if it's easy (and fast) to do so on
  69. whatever system they are using.  If it's difficult then they'll pick the
  70. very small number that they use most often and stick to them pretty much
  71. exclusively.
  72.  
  73. The problem with offloading the work to the printer is that of cost.  It
  74. might make sense as you propose to have an intelligent network printer but
  75. you still have problems of supporting that printer along with all of the
  76. other 84 gadzillion makes and models out there (unless you don't care about
  77. that market :-).
  78.  
  79. >I think too one would need context sensitive filtering; but I think this
  80. >would still be a win. It is often non obvious how to implement
  81. >Bezier/quadratic splines using integer only arithmetic, while all sorts
  82. >of bitmap filtering I can envision use only integer arithmetic and
  83. >pretty simple as well, and very predictable memory access patterns. This
  84. >can be an advantage.
  85.  
  86. Fixed point arithmetic, when intelligently applied, is a great thing. :-? :-)
  87.  
  88. After thinking about this more, I don't believe that you can come up with a
  89. solution that is as fast as a well implemented rasterizer based system and
  90. yet produces comparable (as good or better :-) output.  Heck, I'll win
  91. either way, you can make an idiot out of me by raising the state of the art
  92. or I'll look omniscient.  :-? :-)  Seriously though, I don't see any way of
  93. producing the kind of quality output that you desire without non-local
  94. contextual information and that must dramatically increase you resource
  95. needs.
  96.  
  97. [...]
  98. >pcg> I think it would be more general because I guess it could be
  99. >pcg> patterned after the rather universal properties of human vision;
  100. >johnm> The same argument as above.  Any typeface designer worth anything
  101. >johnm> must take into account the biases and pecularities of human
  102. >johnm> vision.
  103. >
  104. >As agreed above, but they do so *manually* (and "unconsciously": they
  105. >basically assume that what looks right to them looks right to
  106. >everybody). I think instead that it can be done, with tolerably
  107. >satisfying results, algorithmically. Moreover the situation for hints in
  108. >existing font specification languages is less than satisfying:
  109.  
  110. I think this moves off into discussions about expert sytems and other AI
  111. shme.  I do believe that many of the 'standard' tricks and rules of the
  112. human vision trade can be codified into algorithmic 'filters' but I don't
  113. see how that will be 'good enough'.  As they say, knowing when to break
  114. rules is at least as important as the rules themselves.
  115.  
  116. [...]
  117. >In practice designing a well tuned TrueType font is exactly identical to
  118. >designing the bitmaps at the various low resolutions that must be
  119. >supported, and then just encoding this as a fairly inefficient
  120. >programmatic outline and a series of fairly inefficient programmatic
  121. >(even if I seem to remember that one can actually specify bit-by-bit)
  122. >patches to it.
  123.  
  124. Sounds like a lame excuse for an outline based typeface system.  Sounds
  125. like somebody just wanted to get some new 'standard' to market(ing) and
  126. didn't give a crap about it's usefulness/quality/etc.
  127.  
  128. >I like more what is done in METAFONT; there adaptation to the resolution
  129. >and quirks of the intended output device is done by adjusting various
  130. >parameters, like the shape of the "nib". This is virtually equivalent to
  131. >choosing a different filtering algorithm (the "nib" is a filter!).
  132.  
  133. Hmm... Sounds interesting.  So instead of a single 'virtual' pen you can
  134. have a multitude of drawing tools?
  135.  
  136. Thanks,
  137.     John
  138.     johnm@cory.Berkeley.EDU
  139.  
  140. P.S.    I'm certainly for more/better 'free' scalable font technology and
  141.     building this stuff on top of filters may or may not prove to be a
  142.     good thing.  As an issue more relevant to the gnu side of this
  143.     discussion, I worry that the 'filters' being 'programs' would thus
  144.     be much easier to control (in the copyright/patent sense).  Since
  145.     the trend seems to be towards less and less protection for the
  146.     typefaces themselves.
  147.