home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
517a.lha
/
VFont_v2.0
/
docs
/
ReferenceManual.pp
/
ReferenceManual
Wrap
Text File
|
1991-06-09
|
28KB
|
524 lines
___COP_v1.8____
===============
_____________________________________________________________________________
|Project| |Edit| |Preferences| |Guides| |Align to||Show |
+-------+--++----+-------++-----------+--++------+------++--------++--------+
|ABOUT ||UNDO ||HIT RADIUS... ||GRID SPACE...||SELF... ||MEMORY |
|NEW... ||CUT ||DRAG SPACE... ||ADD GUIDE ||GRID... ||EXAMPLES|
|OPEN... ||COPY ||COLOR... ||DELETE GUIDES||GUIDE...||CLASSES |
|SAVE ||PASTE || UPDATE TABLE|| GUIDES ||POINT...|+--------+
|SAVE AS...||REFRESH || SNAP || GRID |+--------+
| || FILL || CLOSE WB || FRAME |
|QUIT ||ADJUST FRAME|| MK LINE END || MARK EDGES |
+----------+|CENTER CHARS||EFACTOR... ||--BACKDROPS--|
|CHAR WIDTH..||RFACTOR... ||LOAD CURRENT.|
|GC ||UNDO LIMIT... ||LOAD COMMON..|
|SYMMETRY ||CLIPBOARD... ||CLEAR COMMON |
|SET ORIGIN ||LOAD... ||CLEAR CURRENT|
+------------+|SAVE... ||CLEAR ALL |
+--------------++-------------+
_____________________________________ _ _____________________________
|INFO ||_||TABLE |
| ||X|| |
| ||X|| |
|___________________________________||X|| |
______________________________|X|| |
COP |SKETCH PAD ||X|| |
| ||X|| |
^ | ||-|| |
10 | || || |
V | || || |
| || || |
^ | || || |
<11 > | || || |
v | || || |
____ | || || |
/ \ | || || |
| 12 | | || || |
`-><-' | || || |
----- | || || |
E|x | | || || |
----- | ||_|| |
----- | | | |
R| x | | | ^ | |
----- | | | | |
|____________________________| v |___________________________|
___ ___ ___ ___ ___ ___ ___ ___ ___
|1| |2| |3| |4| |5| |6| |7| |8| |9| Low Char: (12) High Char: (13)
|_| |_| |_| |_| |_| |_| |_| |_| |_| Baseline: (14) Space: (15)
Width: (16) Height: (17)
Fig. 1: The NTSC screen layout.
===============================
| || || |
| || || |
| ||_|| |
| | | |
| | ^ | |
| | | | |
|____________________________| v |___________________________|
___ ___ ___ ___ ___ ___
|1| |2| |3| |4| |5| |6| Low Char: (12) High Char: (13)
|_| |_| |_| |_| |_| |_| Baseline: (14) Space: (15)
___ ___ ___ Width: (15) Height: (17)
|7| |8| |9|
|_| |_| |_|
Fig. 2: The lower part of the PAL screen layout.
================================================
INTRODUCTION
COP stands for Curve Outline Painter, and is just that. It is a font
editor that can edit font classes that are managed by the vFont library.
You might even consider using the editor to edit standard amiga bitmap
fonts or any other font format that is supported by the library. This
document contains detail description of the various operation that can be
performed in the editor. You should buy or lend a good book about
vectorized fonts [REF 4] [REF 5] to learn about vectorized fonts and fonts
in general and how to build characters to achieve the best results. Read
the document entitled "UserManual" (Not finished yet) to learn about using
the editor, and use this document as a dictionary when you have questions
about specific operations in the editor.
THE MENU COMMANDS
COP has one menu strip, consisting of four menus, each consisting of six
menu items (See figure one). These menus conform to the standard that is
outlined by CBM [REF 1], which is:
- Each menu item that has three trailing periods is an item that
requires additional information, normally obtained by an additional
requester.
- Menu items with a few leading blanks may be toggled on and off.
- Menu items with an ending Amiga letter plus one more character can
be selected by typing the right Amiga key simultaneously with that
particular character.
COP will recognize the left Commodore (also known as the left Amiga) key in
addition to the right Amiga key as a menu hot key.
Project:
These menus are all related to the editing session in large, such as
loading and saving the edited font. All of theseĀ operations, except
ABOUT, will make you lose the changes you have done to the current
font class. You have to confirm these commands by answering a requester
whenever you have done anything that you will lose.
- ABOUT Not implemented.
- NEW Create a new font class. A unique name will be requested for
the new class. A non-unique name will result in yet another
request for a name until a unique name is provided or the
operation is aborted by choosing CANCEL in the requester.
- OPEN Load a font class from a file. A font requester will prompt
you for the name and the size of the desired font. The vFont
library (and therefor COP) will recognize several different
types of font formats on file. The only limitation is the
number of xdf-libraries you have to support that various
formats. The following formats are so far supported:
* Standard Amiga Bitmap fonts.
* Vectorized vFont fonts as loadseg file.
* Vectorized vFont fonts as iff file.
* Fontographer 2.0 - 3.0 PostScript fonts.
Fonts will only be recognized if there is an associated
FontContents header file for the font in the 'FONTS:' directory.
These files have the file name extension '.font'. These files
can be regenerated with the 'CheckFonts' utility that comes
with the vFont distribution.
- SAVE The current font class will be saved under that same name and
other characteristics (type, author, size etc.) as it was
loaded. The vFont library will ask you if it should overwrite
an existing font if there is one.
- SAVE AS This menu will allow you to alter specific data about the font
class, such as name, author, storage format, style etc. You
alter these parameters in a requester.
- QUIT Terminate the session.
Edit:
These menus are generally editing operation that alters the font in one
way or another.
- UNDO Undo the last undo-able change. Changes are recorded so
that you can undo all changes that you have done since the
last time you saved the font or did another operation,
found under the Project menu.
- CUT This command will remove the selected data from the sketch
pad and put it in the clipboard [REF 2] so that you can
paste it back to the sketch pad or possible paste it into
another application that supports the clipboard. You can
copy or cut text, picture or vectors into the clipboard.
Cutting a picture means that you put a copy of the picture
of ALL lines in the current character in the clipboard.
Cutting text means that the current character will be put
in the clipboard. Cutting vectors means that all selected
lines will be removed from the current character and put
into the clipboard.
- COPY This command works like CUT but it will not remove the
selected data from the sketch pad.
- PASTE PASTE will take the content of the clipboard and paste it
into the sketch pad according to your clipboard
preferences. Vectors, pictures and text can be pasted.
The pasted vectors are automatically selected when pasted.
Consecutive pasting of vectors will stack the vectors with
a small offset from each other. Pasting text will only
result in that the first character in the pasted text will
become the current character. Pasting a picture is
equivalent to loading a backdrop picture.
- REFRESH Clear and redraw the whole screen, including the 256x2048
super bitmap table window (might be sloooooow). This is
really an obsolete function and should be useless unless
some other program is messing up the COP screen.
- FILL This function will toggle the fill state of all the defined
characters in the font class. The characters will all be
filled or unfilled after this operation.
- ADJUST FRAME The frame of a character defines the size and the baseline
of a character. You can edit the frame by selecting this
menu. Hit <Tab> to select the left, upper, lower, right,
baseline or all sides of the frame. Use the arrow keys to
move what you have selected. <Esc> will abort the
operation and <Cr> will commit the operation.
- CENTER CHARS This operation will calculate the size of the characters in
the font class. You can select between fixed or
proportional width for the characters. The operation will
adjust the frame for all characters, the reference size for
the font class and the font class flags to reflect that the
font is a fix width or a proportional width font.
- GC Garbage Collect. This menu is used for releasing memory
that is kept but not presently used by the library.
- SYMMETRY Use this menu when ever the characters in the table window
looks distorted. It will improve the symmetry of small
characters (sort of 'hinting').
- SET ORIGIN Use this menu when you want to move the origin in the
sketch pad window. Use the arrow keys to move the origin,
abort with <Esc> and commit with <Cr>.
Preferences:
This is the menus that you use to customize the behaviour of the editor
according to your preferences.
- HIT RADIUS This is a numeric value that specifies how far from a point
or a line you can click and still hit that line or point.
The selected points will have a circle that displays that
radius.
- DRAG SPACE A sequence of points will be generated if the left mouse
button is pressed while moving the mouse in the sketch pad
window. The maximal distance between these points is the
DRAG SPACE. Changing this to a small value will result in
almost continues lines, while a large value will result in
a very rough line.
- COLOR In case someone prefers some other colors then I do. Use this
menu with caution, because I assume that some colors are
lighter then others to achieve the 3d-effects. You can
improve the 2.0x-look by increasing the contrast between
the light and the dark color if you have good monitor.
- UPDATE TABLE Setting the menu item will cause the character in the table
window to be updated simultaneously as lines are moved in
the sketch pad window with the mouse. This might be
CPU-power intensive for complex characters, so you might
not want to use this if you only have a 68000 machine.
- SNAP Setting this menu item will cause all move and define
operations to be aligned to the grid.
- CLOSE WB This is a way to gain some chip memory by closing down the
workbench screen. It will fail if there are windows on the
workbench screen that were not opened by workbench.
- MK LINE END Setting this menu item will remove the last visual point
where the mouse pointer is, when defining lines.
Some people prefer it to be like this (MK does ;-) and some
don't (like me ;-).
- EFACTOR Lines that have been bent can be adjusted by this
operation. The EFACTOR is a numeric value from 1 to 256
that specifies how accurately the bent line should be
drawn. A high value means that the line will be rough,
while a small value means that the line will be smooth.
Use this menu to set the default value.
- RFACTOR This is the other way to adjust bent lines. It is also a
numeric value from 1 to 256, and it specifies how much the
bent line should follow the original un-bent lines. A high
value means that the line will be as short as possible and
a low value means that the line will follow the original
line as much as possible. A value of 60-70 will turn a
square into a perfect circle. Use this menu to set the
default value.
- UNDO LIMIT A lot of memory can be consumed by the undo buffer. Use
this menu to limit the number of changes that are recorded.
- CLIPBOARD Use this menu to customize your use of the clipboard
such as selecting how the clip-data shall be represented in
the clipboard. You can chose between the following IFF
[REF 3] types: FTXT, COP or ILBM. FTXT is used for text,
COP is my private IFF-type used for vectors and ILBM is
used for pictures. The types under 'Accept' specifies what
types should be accepted during a paste operation. The
types under 'Produce' specifies the representations that
will be generated during a copy or cut operation. The unit
number specifies what 'slot' of the clipboard that should
be used. Most programs uses the primary clip-unit, e.g.
zero, so you might want to specify a different number so
that COP will not interfere with other programs that also
uses the clipboard. Some (most?) programs gets very
confused when they finds something in the clipboard that is
not a simple FTXT chunk.
- LOAD Load preference settings from a text file. The Settings
include all of the items under this menu, the defined
guides, and the drag space. COP will automatically load
the file 'COP.profile' when started. COP will look for this
file in the current directory, in 's:' and in 'vfonts:' in
that order.
- SAVE Save preference settings as a text file. This file consists
of readable text which you can create with a text editor if
you want to. Lines that starts with a semicolon are treated
as comments and will be skipped. The entries can be ordered in
any way and may be missing. The name of the entries are
case-dependent, so make sure that you spell the entries right.
Guides:
Guides are images that you can have in the background in the sketch pad.
It is a great help when you try to make the characters symmetrical or
when you want to give a font a special look by having some common shapes
in the characters.
- GRID SPACE The distance between the pixels in the grid.
- ADD GUIDE Use this menu to add different type of guides (line,
polygon train, ellipse, circle, square or rectangle) to
the background of the sketch pad window. Select this
menu and then type an 'l' to add a guide line, a 'p' to
add a polygon train and so forth. The guides are
created by clicking the left mouse button, moving the
mouse, and then clicking the right mouse button. The
operation can be aborted at any time by pressing
'escape'. A new guide type can always be selected,
even after you have started to define a guide.
- DELETE GUIDES Query delete some or all of the guides. Use the arrow
keys to select a particular guide and type delete to
remove it. Pressing 'escape' will abort the operation.
The operation is ended when you move to the guide
before the first one or after the last one, or when all
guides are removed.
- GUIDES Toggle the guides on or off.
- GRID Toggle the grid on or off.
- FRAME Toggle the frame on or off.
- MARK EDGES Selecting this menu item will cause the original points
in all bent lines to be marked with crosses. This will
make it easier to aim when selecting those points.
- BACKDROPS This is just a delimiter. The menus below this
delimiter all have to do with backdrops which are
pictures that are displayed in the background of the
sketch pad. Only one bit plane (single color) pictures
are displayed. Picture that have more colors or which
are larger then the sketch pad will be truncated in
depth, width or height.
- LOAD COMMON Use this menu to load a backdrop picture that will be
used as the background for all characters that don't
have a specific backdrop picture associated to it.
- LOAD CURRENT Use this menu to associate a backdrop picture to the
current character.
- CLEAR COMMON Drop the common backdrop.
- CLEAR CURRENT Drop the backdrop of the current character.
- CLEAR ALL Drop all loaded backdrops.
Align to:
Use these menus to move selected points in the current character
according to the chosen menu. Each menu will prompt you for a
direction in which the points should be moved. You can chose
between horizontal, vertical or both.
- SELF Move the selected points towards each other in the selected
direction.
- GRID Move all points so that they coincides in the selected
direction with the grid.
- GUIDE Not implemented yet. Should align the selected points to
some or all of the defined guides.
- LINE Move the selected points towards a line that you specifies
by pressing, dragging and releasing the left mouse button.
Show:
These menus displays some information.
- SHOW MEMORY LEFT Show how much memory is available. Consider closing
the workbench screen if you will run out of chip
memory.
- SHOW EXAMPLES Use the current font class to display a file of your
choice. Pressing escape or clicking the close gadget of
the window ends this operation. Typing any other
character will display another page of the chosen
file. Cop will do this by invoking the "vMore" program
which means that you have to have a path to that
program.
- LIST CLASSES List the currently loaded font classes and font
instances.
USING THE TABLE WINDOW
The purpose of the table window is to provide a way to pick new characters
to edit and to display the designed characters. A new character may be
selected either by pressing a key when the table window is active or by
selecting with the mouse. Selecting a character with the keyboard will center
that character in the window.
Some of the characters in the table will have a blank spot. Those are the
characters that are defined in the class. Undefined characters will be
rendered as specified in the 'undef' font class.
USING THE SKETCH PAD WINDOW
Selecting:
The leftmost tool gadget has to be unselected (gadget one in the
figures) before you can select anything. Both lines and points can be
selected with the mouse. A point is selected if you are inside the HIT
SPACE radius from that point, and a line is selected if you are less then
HIT SPACE from it. Pressing the 'control'-key simultaneously when
selecting a point or a line will select that entire polygon train. You
can frame points and lines by pressing the left mouse button while the
mouse pointer are not pointing at anything, and then dragging the mouse
pointer. You will then get a frame, which you can re-size by moving the
mouse. Everything inside the frame will be selected when you release the
mouse button again. Any previous selection will stay selected either if
you select something that is already selected or by pressing a
'shift'-key. Any previous selection will be unselected otherwise.
Pressing the 'shift'-key will also cause points and lines that you aimed
at which were selected to be unselected and vice versa.
Defining:
The leftmost tool gadget has to be selected before you can define new
polygon trains. You will have a hair cross instead of the mouse pointer
when you are inside the sketch window when that gadget is selected. A new
polygon train is started by pressing and releasing the left mouse button.
Clicking the left mouse button will add new points/lines to the polygon
train. Moving the mouse while you still are pressing left mouse button
will generate points when you exceed the DRAG SPACE distance. Pressing the
right mouse button will end the polygon train. Pressing 'delete' while
adding new points to a polygon train will remove the last point. Deleting
the first point in the polygon train will abort the operation. You will
automatically continue on old lines if your first or last point coincides
with an end point of any line in the current character.
Deleting:
Pressing 'delete' or clicking the skull button below the sketch window
will remove the lines and points that were selected.
Moving:
Any points and lines can be moved by pressing the left mouse button and
moving the mouse simultaneously. Only selected points/lines will be moved.
A useful method is to frame select a bunch of lines and then grab one of
the selecting points and then drag it somewhere.
USING THE MAIN WINDOW TOOLS
Please refer to the figure for the numbering of the gadgets. The gadgets
are placed slightly different on the screen on a NTSC Amiga then on PAL
Amiga due to the different screen heights.
The define gadget (#1) can be toggled. Lines can be added to the sketch pad
when the button is selected, and lines can be picked and moved while that
button is unselected.
The select-all gadget (#2) is used to select every line that is defined in
the current character (see USING THE TABLE WINDOW). A subsequent command
after pressing this button might be to erase or move every line in the
current character.
The bend gadget (#3) is used to bend or unbend lines. One or many lines or
points have to be selected before this button is pressed. The lines that were
selected will become bent if they were not bent before and vice versa.
The fill gadget (#4) is used to make the current character filled or
non-filled. Intersecting lines will generate a cookie-cut look.
The widen gadget (#5) is used to make selected lines thick or thin. The
selected lines will become thin if they were thick before and vice versa.
The tie gadget (#6) is used to link two end points together. Precisely
two end points have to be selected before this button is pressed.
The cut gadget (#7) is used to cut points and lines. Selected lines will be
cut and any points that were not a part of line will be cut and made into
two different points.
The reproduce gadget (#8) is used to reproduce points (intuitive image ehh!?
;-). Selected lines will have an extra point after this operation.
The kill gadget (#9) is used to delete points and lines, just like the delete
key.
The re-size gadgets (#10) are used to enlarge or shrink selected lines. You
will scale the selected lines more if you press a shift-key simultaneously
while you press one of the buttons.
The move gadgets (#11) are used to move selected lines in one of four
directions. Pressing a shift-key will move the lines the distance
specified by GRID SPACE. An alternative to using these gadgets is to use
the arrow keys on your keyboard.
The rotate gadgets (#12) are used for rotating the selected lines. Pressing
a shift-key simultaneously will rotate the lines 90 degrees.
The Low Char gadget (#13) are used to set the ascii value of lowest
character that are defined in the font class. Characters with a lower
ascii value then this value will have the 'undef.class' look.
The High Char gadget (#14) are used to set the ascii value of the highest
character that are defined in the font class. Character with a higher
ascii value then this will have the 'undef.vfont' look.
The Baseline gadget (#15) are used to set the baseline of the font.
The Width gadget (#16) are used to set the reference width for the font.
The library will use this width when it is scaling a font to become a
certain width, e.g. this means that library will half the width of a font
if the desired font is half of this reference width regardless of the actual
width of the characters in the class. Setting a width that is larger then
the actual width of the character will have the result of shrinking the
character, and setting a too small value will expand all characters.
The Height gadget (#17) are used in the same way as the Width gadget.
REFERENCES
[REF 1] "Amiga ROM Kernel Reference Manual: Libraries & Devices,
Revised & Updated." COMMODORE-AMIGA, INCORPORATED. Addison-Wesley
Publishing Company, Inc.
ISBN 0-201-18187-8.
[REF 2] "Amiga ROM Kernel Reference Manual: Libraries & Devices,
Revised & Updated." Chapter 32, pp 627-635. COMMODORE-AMIGA,
INCORPORATED. Addison-Wesley Publishing Company, Inc.
ISBN 0-201-18187-8.
[REF 3] "AMIGA ROM Kernal Reference Manual: Exec." Appendix B-29.
"EA IFF 85" Standard for Interchange Format Files."
Commodore Business Machines, Inc. Addison-Wesley Publishing
Company, Inc.
ISBN 0-201-11099-7.
[REF 4] "TeX and METAFONT New Directions in Typesetting" Donald E.Knuth,
Digital Press & American Mathematical Society.
ISBN 0-932376-02-9
[REF 5] "Adobe type 1 font format" Adobe System Incorporated, Addison-Wesley
Publishing Company, Inc.
ISBN 0-201-57044-0