From: RWilson
Full-Name: Roger Wilson at Acorn Computers UK
Text-Size: 1836 bytes
Status: 0

Neil,

I've been playing with ArcFont:

(1) Its not simple to replace a set of lines/arcs by a new one. Main problem is
the wish to leave in the old lines as a guide and then delete them: but it
keeps picking my most recent line to delete! Only solution so far is to move it
out the way and then try again, but mistakes get made this way!

(2) Its far to easy to create difficult to remove "dots". Creating a line
should be made harder - its a rare event anyway, and the consequences of
inadvertant changes are nasty. Otherwise you need a multi-level undo feature!

(3) It would be nice to have merge primitives directly available. For example,
its difficult to tell (with a great deal of zoom) if two "straight" lines can
be made into one long straight one. (Try the H in TimesAdobe).


With respect to the font manager (when it arrives):

I think we need the following control of rasterisation:

    (1) Threshold below which pixel map files are used for the screen
        (default <=24 point?) [or default in pixels tall?]

    (2) Threshold below which antialiasing is used for the screen
        (default circa 40-50 point?)

    (3) Threshold above which characters are "Draw"n directly to screen
        (default circa 70-80 point?)

    (4) Threshold above which characters are "Draw"n directly to printer
        pixel map [specified in pixels tall - we should be able to calculate
        a maximum for this (and (3)), based on Draw speed versus unpacking from
        cache, but it needs lowering for smaller caches]

And, now that we have the outlines, what about character rotation? Particularly
by 90 degrees (which is inevitable just to deal with portrait and landscape
printing) (But other angles are useful as well, e.g. writing "New Edition"
diagonally across the top left of a document).

                    Roger

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
At Wed,02 Nov 1988.11:02:18 mail was sent to RWilson
About Fonts
Text:

In reply to your points concerning the Font Editor:

I agree that it is desirable to have an automatic 'merge' facility to reduce
the number of arcs / straight lines used in character outlines, but

       1) Bear in mind that DTS are going to redo the characters more
          efficiently anyway, so this will become a much less common
          occurrence.

       2) It IS possible to compare new lines against the old:

          - first copy the character into another (probably in a blank
            font (click on the iconbar entry to create a blank font,
            then SELECT-drag the char from its Font Index window into
            the new one)

          - then SELECT-drag the new char into the original skeleton window

          This will put the old version of the char into the skeleton window
          as a 'template', so you can see how any changes compare with the
          old shape.

As for the Font Manager:

  (1) Surely the Font Manager should use pixel map files (as opposed to
      outlines) in the following circumstances:

      a) For new-style pixel files, if the exact size is found
      b) For old-style 4-bpp files, if the largest size found is greater
         than or equal to the size required

      Of these, (b) is perhaps dubious: what if you want 23 point text and
      the largest available size is 24 point - here the pixel-scaled font
      would look much fuzzier than the one built from the outlines.

  (2) I agree that there should be a (user-configurable) size threshold for
      anti-aliasing.

  (3) I agree that there should be a (user-configurable/auto-computed) size
      threshold for cacheing/direct drawing.  Note that you can't draw
      anti-aliased text direct to the screen, but you could cache the right
      character only, draw it and then discard the sprite.  Thus it could be
      meaningful for the threshold in (3) to be lower than that in (2).

  (4) Surely the threshold for printed fonts is the same as for screen
      fonts, since the only issue is speed versus space?  (OK, maybe the
      extra overhead of dumping print buffers might swing the balance
      against cacheing, but it is difficult to quantify this, since it
      depends on how much text is to be printed, and how fast the printer
      is).

Note that 90-degree rotation of fonts is NOT required for dealing with
landscape printers, since this is done by the printer driver module (buffers
are created the 'other way up', and rotated as they are dumped.

I agree that it is important that it is the Font Manager which deals with
rotated fonts, since it can achieve a much better result than is possible by
exporting the character outlines and drawing them rotated (due to cacheing
and anti-aliasing).  Note, however, that software such as editors and DTP
packages will have to be specially written to cope with rotated fonts, since
formatting them is not a trivial matter (eg. they can travel in negative
directions, and the rub-out box is not axis-aligned any more).

