Warning: Attempt to read property "date" on null in /usr/local/www/websvn.planix.org/blame.php on line 247

Warning: Attempt to read property "msg" on null in /usr/local/www/websvn.planix.org/blame.php on line 247
WebSVN – planix.SVN – Blame – /os/branches/planix-v0/sys/src/cmd/gs/doc/Hershey.htm – Rev 2

Subversion Repositories planix.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
<html>
3
<head>
4
<title>Hershey fonts for Ghostscript</title>
5
<!-- $Id: Hershey.htm,v 1.5 2002/02/21 21:36:33 giles Exp $ -->
6
<!-- Originally: hershey.txt -->
7
<link rel="stylesheet" type="text/css" href="gs.css" title="Ghostscript Style">
8
</head>
9
 
10
<body>
11
<!-- [1.0 begin visible header] ============================================ -->
12
 
13
<!-- [1.1 begin headline] ================================================== -->
14
 
15
<h1>Hershey fonts for Ghostscript</h1>
16
 
17
<!-- [1.1 end headline] ==================================================== -->
18
 
19
<!-- [1.2 begin table of contents] ========================================= -->
20
 
21
<!-- [1.2 end table of contents] =========================================== -->
22
 
23
<!-- [1.3 begin hint] ====================================================== -->
24
 
25
<p>
26
This file, unlike the rest of Ghostscript, consists entirely of information
27
copied from public sources.  It therefore is not covered by the
28
Ghostscript copyright or license: it is in the public domain.
29
 
30
<p>For other information, see the <a href="Readme.htm">Ghostscript
31
overview</a>. You can also read about <a href="Fonts.htm">Ghostscript
32
fonts</a> in general.
33
 
34
<!-- [1.3 end hint] ======================================================== -->
35
 
36
<hr>
37
 
38
<!-- [1.0 end visible header] ============================================== -->
39
 
40
<!-- [2.0 begin contents] ================================================== -->
41
 
42
<pre>
43
Mod.sources:  Volume 4, Issue 42
44
Submitted by: pyramid!octopus!pete (Pete Holzmann)
45
 
46
This is part 1 of five parts of the first Usenet distribution of
47
the Hershey Fonts. See the README file for more details.
48
 
49
Peter Holzmann, Octopus Enterprises
50
USPS: 19611 La Mar Court, Cupertino, CA 95014
51
UUCP: {hplabs!hpdsd,pyramid}!octopus!pete
52
Phone: 408/996-7746
53
 
54
This distribution is made possible through the collective encouragement
55
of the Usenet Font Consortium, a mailing list that sprang to life to get
56
this accomplished and that will now most likely disappear into the mists
57
of time... Thanks are especially due to Jim Hurt, who provided the packed
58
font data for the distribution, along with a lot of other help.
59
 
60
This file describes the Hershey Fonts in general, along with a description of
61
the other files in this distribution and a simple re-distribution restriction.
62
 
63
USE RESTRICTION:
64
        This distribution of the Hershey Fonts may be used by anyone for
65
        any purpose, commercial or otherwise, providing that:
66
                1. The following acknowledgements must be distributed with
67
                        the font data:
68
                        - The Hershey Fonts were originally created by Dr.
69
                                A. V. Hershey while working at the U. S.
70
                                National Bureau of Standards.
71
                        - The format of the Font data in this distribution
72
                                was originally created by
73
                                        James Hurt
74
                                        Cognition, Inc.
75
                                        900 Technology Park Drive
76
                                        Billerica, MA 01821
77
                                        (mit-eddie!ci-dandelion!hurt)
78
                2. The font data in this distribution may be converted into
79
                        any other format *EXCEPT* the format distributed by
80
                        the U.S. NTIS (which organization holds the rights
81
                        to the distribution and use of the font data in that
82
                        particular format). Not that anybody would really
83
                        *want* to use their format... each point is described
84
                        in eight bytes as "xxx yyy:", where xxx and yyy are
85
                        the coordinate values as ASCII numbers.
86
 
87
*PLEASE* be reassured: The legal implications of NTIS' attempt to control
88
a particular form of the Hershey Fonts *are* troubling. HOWEVER: We have
89
been endlessly and repeatedly assured by NTIS that they do not care what
90
we do with our version of the font data, they do not want to know about it,
91
they understand that we are distributing this information all over the world,
92
etc etc etc... but because it isn't in their *exact* distribution format, they
93
just don't care!!! So go ahead and use the data with a clear conscience! (If
94
you feel bad about it, take a smaller deduction for something on your taxes
95
next week...)
96
 
97
The Hershey Fonts:
98
        - are a set of more than 2000 glyph (symbol) descriptions in vector
99
                ( &lt;x,y&gt; point-to-point ) format
100
        - can be grouped as almost 20 'occidental' (english, greek,
101
                cyrillic) fonts, 3 or more 'oriental' (Kanji, Hiragana,
102
                and Katakana) fonts, and a few hundred miscellaneous
103
                symbols (mathematical, musical, cartographic, etc etc)
104
        - are suitable for typographic quality output on a vector device
105
                (such as a plotter) when used at an appropriate scale.
106
        - were digitized by Dr. A. V. Hershey while working for the U.S.
107
                Government National Bureau of Standards (NBS).
108
        - are in the public domain, with a few caveats:
109
                - They are available from NTIS (National Technical Info.
110
                        Service) in a computer-readable from which is *not*
111
                        in the public domain. This format is described in
112
                        a hardcopy publication "Tables of Coordinates for
113
                        Hershey's Repertory of Occidental Type Fonts and
114
                        Graphic Symbols" available from NTIS for less than
115
                        $20 US (phone number +1 703 487 4763).
116
                - NTIS does not care about and doesn't want to know about
117
                        what happens to Hershey Font data that is not
118
                        distributed in their exact format.
119
                - This distribution is not in the NTIS format, and thus is
120
                        only subject to the simple restriction described
121
                        at the top of this file.
122
 
123
Hard Copy samples of the Hershey Fonts are best obtained by purchasing the
124
book described above from NTIS. It contains a sample of all of the Occidental
125
symbols (but none of the Oriental symbols).
126
 
127
This distribution:
128
        - contains
129
                * a complete copy of the Font data using the original
130
                        glyph-numbering sequence
131
                * a set of translation tables that could be used to generate
132
                        ASCII-sequence fonts in various typestyles
133
                * a couple of sample programs in C and Fortran that are
134
                        capable of parsing the font data and displaying it
135
                        on a graphic device (we recommend that if you
136
                        wish to write programs using the fonts, you should
137
                        hack up one of these until it works on your system)
138
 
139
        - consists of the following files...
140
                hershey.doc - details of the font data format, typestyles and
141
                                symbols included, etc.
142
                hersh.oc[1-4] - The Occidental font data (these files can
143
                                        be catenated into one large database)
144
                hersh.or[1-4] - The Oriental font data (likewise here)
145
                *.hmp - Occidental font map files. Each file is a translation
146
                                table from Hershey glyph numbers to ASCII
147
                                sequence for a particular typestyle.
148
                hershey.f77 - A fortran program that reads and displays all
149
                                of the glyphs in a Hershey font file.
150
                hershey.c   - The same, in C, using GKS, for MS-DOS and the
151
                                PC-Color Graphics Adaptor.
152
 
153
Additional Work To Be Done (volunteers welcome!):
154
 
155
        - Integrate this complete set of data with the hershey font typesetting
156
                program recently distributed to mod.sources
157
        - Come up with an integrated data structure and supporting routines
158
                that make use of the ASCII translation tables
159
        - Digitize additional characters for the few places where non-ideal
160
                symbol substitutions were made in the ASCII translation tables.
161
        - Make a version of the demo program (hershey.c or hershey.f77) that
162
                uses the standard Un*x plot routines.
163
        - Write a banner-style program using Hershey Fonts for input and
164
                non-graphic terminals or printers for output.
165
        - Anything else you'd like!
166
 
167
This file provides a brief description of the contents of the Occidental
168
Hershey Font Files. For a complete listing of the fonts in hard copy, order
169
NBS Special Publication 424, "A contribution to computer typesetting
170
techniques: Tables of Coordinates for Hershey's Repertory of Occidental
171
Type Fonts and Graphic Symbols". You can get it from NTIS (phone number is
172
+1 703 487 4763) for less than twenty dollars US.
173
 
174
Basic Glyph (symbol) data:
175
 
176
        hersh.oc1       - numbers 1 to 1199
177
        hersh.oc2       - numbers 1200 to 2499
178
        hersh.oc3       - numbers 2500 to 3199
179
        hersh.oc4       - numbers 3200 to 3999
180
 
181
        These four files contain approximately 19 different fonts in
182
the A-Z alphabet plus greek and cyrillic, along with hundreds of special
183
symbols, described generically below.
184
 
185
        There are also four files of Oriental fonts (hersh.or[1-4]). These
186
files contain symbols from three Japanese alphabets (Kanji, Hiragana, and
187
Katakana). It is unknown what other symbols may be contained therein, nor
188
is it known what order the symbols are in (I don't know Japanese!).
189
 
190
        Back to the Occidental files:
191
 
192
Fonts:
193
        Roman: Plain, Simplex, Duplex, Complex Small, Complex, Triplex
194
        Italic: Complex Small, Complex, Triplex
195
        Script: Simplex, Complex
196
        Gothic: German, English, Italian
197
        Greek: Plain, Simplex, Complex Small, Complex
198
        Cyrillic: Complex
199
 
200
Symbols:
201
        Mathematical (227-229,232,727-779,732,737-740,1227-1270,2227-2270,
202
                        1294-1412,2294-2295,2401-2412)
203
        Daggers (for footnotes, etc) (1276-1279, 2276-2279)
204
        Astronomical (1281-1293,2281-2293)
205
        Astrological (2301-2312)
206
        Musical (2317-2382)
207
        Typesetting (ffl,fl,fi sorts of things) (miscellaneous places)
208
        Miscellaneous (mostly in 741-909, but also elsewhere):
209
                - Playing card suits
210
                - Meteorology
211
                - Graphics (lines, curves)
212
                - Electrical
213
                - Geometric (shapes)
214
                - Cartographic
215
                - Naval
216
                - Agricultural
217
                - Highways
218
                - Etc...
219
 
220
ASCII sequence translation files:
221
 
222
        The Hershey glyphs, while in a particular order, are not in an
223
        ASCII sequence. I have provided translation files that give the
224
        sequence of glyph numbers that will most closely approximate the
225
        ASCII printing sequence (from space through ~, with the degree
226
        circle tacked on at the end) for each of the above fonts:
227
 
228
        File names are made up of fffffftt.hmp,
229
 
230
                where ffffff is the font style, one of:
231
                        roman   Roman
232
                        greek   Greek
233
                        italic  Italic
234
                        script  Script
235
                        cyril   Cyrillic (some characters not placed in
236
                                           the ASCII sequence)
237
                        gothgr  Gothic German
238
                        gothgb  Gothic English
239
                        gothit  Gothic Italian
240
 
241
                and tt is the font type, one of:
242
                    p       Plain (very small, no lower case)
243
                    s       Simplex (plain, normal size, no serifs)
244
                    d       Duplex (normal size, no serifs, doubled lines)
245
                    c       Complex (normal size, serifs, doubled lines)
246
                    t       Triplex (normal size, serifs, tripled lines)
247
                    cs      Complex Small (Complex, smaller than normal size)
248
 
249
The three sizes are coded with particular base line (bottom of a capital
250
        letter) and cap line (top of a capital letter) values for 'y':
251
 
252
        Size            Base Line       Cap Line
253
 
254
        Very Small         -5              +4
255
        Small              -6              +7
256
        Normal             -9              +12
257
 
258
        (Note: some glyphs in the 'Very Small' fonts are actually 'Small')
259
 
260
The top line and bottom line, which are normally used to define vertical
261
        spacing, are not given. Maybe somebody can determine appropriate
262
        values for these!
263
 
264
The left line and right line, which are used to define horizontal spacing,
265
        are provided with each character in the database.
266
 
267
Format of Hershey glyphs:
268
 
269
5 bytes - glyphnumber
270
3 bytes - length of data  length in 16-bit words including left&amp;right numbers
271
1 byte  - x value of left margin
272
1 byte  - x value of right margin
273
(length*2)-2 bytes      - stroke data
274
 
275
left&amp;right margins and stroke data are biased by the value of the letter 'R'
276
Subtract the letter 'R' to get the data.
277
 
278
e.g. if the data byte is 'R', the data is 0
279
     if the data byte is 'T', the data is +2
280
     if the data byte is 'J', the data is -8
281
 
282
and so on...
283
 
284
The coordinate system is x-y, with the origin (0,0) in the center of the
285
glyph.  X increases to the right and y increases *down*.
286
 
287
The stroke data is pairs of bytes, one byte for x followed by one byte for y.
288
 
289
An 'R' in the stroke data indicates a 'lift pen and move' instruction.
290
</pre>
291
 
292
<!-- [2.0 end contents] ==================================================== -->
293
 
294
<!-- [3.0 begin visible trailer] =========================================== -->
295
 
296
<hr>
297
 
298
<p>
299
<small>Public Domain.</small>
300
<small>Distributed with Ghostscript 6.50, November 2000</small>
301
 
302
<!-- [3.0 end visible trailer] ============================================= -->
303
 
304
</body>
305
</html>