1 | .rn '' }` |
---|
2 | ''' $RCSfile: ttf2pt1_convert.1,v $$Revision: 1.1 $$Date: 2008-03-12 06:35:44 $ |
---|
3 | ''' |
---|
4 | ''' $Log: not supported by cvs2svn $ |
---|
5 | ''' |
---|
6 | .de Sh |
---|
7 | .br |
---|
8 | .if t .Sp |
---|
9 | .ne 5 |
---|
10 | .PP |
---|
11 | \fB\\$1\fR |
---|
12 | .PP |
---|
13 | .. |
---|
14 | .de Sp |
---|
15 | .if t .sp .5v |
---|
16 | .if n .sp |
---|
17 | .. |
---|
18 | .de Ip |
---|
19 | .br |
---|
20 | .ie \\n(.$>=3 .ne \\$3 |
---|
21 | .el .ne 3 |
---|
22 | .IP "\\$1" \\$2 |
---|
23 | .. |
---|
24 | .de Vb |
---|
25 | .ft CW |
---|
26 | .nf |
---|
27 | .ne \\$1 |
---|
28 | .. |
---|
29 | .de Ve |
---|
30 | .ft R |
---|
31 | |
---|
32 | .fi |
---|
33 | .. |
---|
34 | ''' |
---|
35 | ''' |
---|
36 | ''' Set up \*(-- to give an unbreakable dash; |
---|
37 | ''' string Tr holds user defined translation string. |
---|
38 | ''' Bell System Logo is used as a dummy character. |
---|
39 | ''' |
---|
40 | .tr \(*W-|\(bv\*(Tr |
---|
41 | .ie n \{\ |
---|
42 | .ds -- \(*W- |
---|
43 | .ds PI pi |
---|
44 | .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch |
---|
45 | .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch |
---|
46 | .ds L" "" |
---|
47 | .ds R" "" |
---|
48 | ''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of |
---|
49 | ''' \*(L" and \*(R", except that they are used on ".xx" lines, |
---|
50 | ''' such as .IP and .SH, which do another additional levels of |
---|
51 | ''' double-quote interpretation |
---|
52 | .ds M" """ |
---|
53 | .ds S" """ |
---|
54 | .ds N" """"" |
---|
55 | .ds T" """"" |
---|
56 | .ds L' ' |
---|
57 | .ds R' ' |
---|
58 | .ds M' ' |
---|
59 | .ds S' ' |
---|
60 | .ds N' ' |
---|
61 | .ds T' ' |
---|
62 | 'br\} |
---|
63 | .el\{\ |
---|
64 | .ds -- \(em\| |
---|
65 | .tr \*(Tr |
---|
66 | .ds L" `` |
---|
67 | .ds R" '' |
---|
68 | .ds M" `` |
---|
69 | .ds S" '' |
---|
70 | .ds N" `` |
---|
71 | .ds T" '' |
---|
72 | .ds L' ` |
---|
73 | .ds R' ' |
---|
74 | .ds M' ` |
---|
75 | .ds S' ' |
---|
76 | .ds N' ` |
---|
77 | .ds T' ' |
---|
78 | .ds PI \(*p |
---|
79 | 'br\} |
---|
80 | .\" If the F register is turned on, we'll generate |
---|
81 | .\" index entries out stderr for the following things: |
---|
82 | .\" TH Title |
---|
83 | .\" SH Header |
---|
84 | .\" Sh Subsection |
---|
85 | .\" Ip Item |
---|
86 | .\" X<> Xref (embedded |
---|
87 | .\" Of course, you have to process the output yourself |
---|
88 | .\" in some meaninful fashion. |
---|
89 | .if \nF \{ |
---|
90 | .de IX |
---|
91 | .tm Index:\\$1\t\\n%\t"\\$2" |
---|
92 | .. |
---|
93 | .nr % 0 |
---|
94 | .rr F |
---|
95 | .\} |
---|
96 | .TH TTF2PT1_CONVERT 1 "version 3.4.4" "December 31, 2003" "TTF2PT1 Font Converter" |
---|
97 | .UC |
---|
98 | .if n .hy 0 |
---|
99 | .if n .na |
---|
100 | .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' |
---|
101 | .de CQ \" put $1 in typewriter font |
---|
102 | .ft CW |
---|
103 | 'if n "\c |
---|
104 | 'if t \\&\\$1\c |
---|
105 | 'if n \\&\\$1\c |
---|
106 | 'if n \&" |
---|
107 | \\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 |
---|
108 | '.ft R |
---|
109 | .. |
---|
110 | .\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 |
---|
111 | . \" AM - accent mark definitions |
---|
112 | .bd B 3 |
---|
113 | . \" fudge factors for nroff and troff |
---|
114 | .if n \{\ |
---|
115 | . ds #H 0 |
---|
116 | . ds #V .8m |
---|
117 | . ds #F .3m |
---|
118 | . ds #[ \f1 |
---|
119 | . ds #] \fP |
---|
120 | .\} |
---|
121 | .if t \{\ |
---|
122 | . ds #H ((1u-(\\\\n(.fu%2u))*.13m) |
---|
123 | . ds #V .6m |
---|
124 | . ds #F 0 |
---|
125 | . ds #[ \& |
---|
126 | . ds #] \& |
---|
127 | .\} |
---|
128 | . \" simple accents for nroff and troff |
---|
129 | .if n \{\ |
---|
130 | . ds ' \& |
---|
131 | . ds ` \& |
---|
132 | . ds ^ \& |
---|
133 | . ds , \& |
---|
134 | . ds ~ ~ |
---|
135 | . ds ? ? |
---|
136 | . ds ! ! |
---|
137 | . ds / |
---|
138 | . ds q |
---|
139 | .\} |
---|
140 | .if t \{\ |
---|
141 | . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" |
---|
142 | . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' |
---|
143 | . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' |
---|
144 | . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' |
---|
145 | . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' |
---|
146 | . ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' |
---|
147 | . ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' |
---|
148 | . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' |
---|
149 | . ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' |
---|
150 | .\} |
---|
151 | . \" troff and (daisy-wheel) nroff accents |
---|
152 | .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' |
---|
153 | .ds 8 \h'\*(#H'\(*b\h'-\*(#H' |
---|
154 | .ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] |
---|
155 | .ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' |
---|
156 | .ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' |
---|
157 | .ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] |
---|
158 | .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] |
---|
159 | .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' |
---|
160 | .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' |
---|
161 | .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] |
---|
162 | .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] |
---|
163 | .ds ae a\h'-(\w'a'u*4/10)'e |
---|
164 | .ds Ae A\h'-(\w'A'u*4/10)'E |
---|
165 | .ds oe o\h'-(\w'o'u*4/10)'e |
---|
166 | .ds Oe O\h'-(\w'O'u*4/10)'E |
---|
167 | . \" corrections for vroff |
---|
168 | .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' |
---|
169 | .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' |
---|
170 | . \" for low resolution devices (crt and lpr) |
---|
171 | .if \n(.H>23 .if \n(.V>19 \ |
---|
172 | \{\ |
---|
173 | . ds : e |
---|
174 | . ds 8 ss |
---|
175 | . ds v \h'-1'\o'\(aa\(ga' |
---|
176 | . ds _ \h'-1'^ |
---|
177 | . ds . \h'-1'. |
---|
178 | . ds 3 3 |
---|
179 | . ds o a |
---|
180 | . ds d- d\h'-1'\(ga |
---|
181 | . ds D- D\h'-1'\(hy |
---|
182 | . ds th \o'bp' |
---|
183 | . ds Th \o'LP' |
---|
184 | . ds ae ae |
---|
185 | . ds Ae AE |
---|
186 | . ds oe oe |
---|
187 | . ds Oe OE |
---|
188 | .\} |
---|
189 | .rm #[ #] #H #V #F C |
---|
190 | .SH "NAME" |
---|
191 | \fBttf2pt1_convert\fR \- convenience font conversion script |
---|
192 | .SH "SYNOPSIS" |
---|
193 | ttf2pt1_convert \fB[config-file]\fR |
---|
194 | .SH "DESCRIPTION" |
---|
195 | `\fBConvert\fR\*(R' is the master conversion script provided with ttf2pt1. |
---|
196 | When installed into a public directory it's named `\fBttf2pt1_convert\fR\*(R' |
---|
197 | to avoid name collisions with the other programs. |
---|
198 | .PP |
---|
199 | If the configuration file is not specified as an argument then the file |
---|
200 | `\f(CWconvert.cfg\fR\*(R' in the current directory is used. This file contains |
---|
201 | a set of configuration variables. The distribution contains a sample file |
---|
202 | file `\f(CWconvert.cfg.sample\fR\*(R'. Please copy it to `\f(CWconvert.cfg\fR\*(R', |
---|
203 | look inside it and change the configuration variables. The more stable |
---|
204 | configuration variables, such as the path names of the scripts and |
---|
205 | encoding files are located in `\f(CWconvert\fR\*(R' itself, they are |
---|
206 | automatically updated when installing \fBttf2pt1\fR. |
---|
207 | .PP |
---|
208 | Put all the TTF fonts you want to convert into some directory (this |
---|
209 | may be just the directory that already contains all the Windows |
---|
210 | fonts on a mounted FAT filesystem). If you have fonts in different |
---|
211 | source encoding then put the fonts in each of the encodings |
---|
212 | into a separate directory. Up to 10 source directories are |
---|
213 | supported. If you (in a rather unlikely case) have more source |
---|
214 | directories then you can make two separate runs of the converter, |
---|
215 | converting up to 10 directories at a time. |
---|
216 | .PP |
---|
217 | The variables in the configuration file are: |
---|
218 | .Ip "\(bu" 2 |
---|
219 | \fB\f(CWSRCDIRS\fR\fR \- the list of directories (with absolute paths) with |
---|
220 | \s-1TTF\s0 fonts. Each line contains at least 3 fields: the name of the directory, |
---|
221 | the language of the fonts in it (if you have fonts for different |
---|
222 | languages you have to put them into the separate directories) and the |
---|
223 | encoding of the fonts. Again, if you have some of the \s-1TTF\s0 typefaces in |
---|
224 | one encoding, and some in another (say, \s-1CP\s0\-1251 and \s-1KOI\s0\-8), you have |
---|
225 | to put them into the separate source directories. Some lines may contain |
---|
226 | 4 fields. Then the fourth field is the name of the external map to |
---|
227 | convert the Unicode fonts into the desirable encoding. This map is |
---|
228 | used instead of the built-in map for the specified language. |
---|
229 | .Sp |
---|
230 | *8* |
---|
231 | An interesting thing is that some languages have more than one |
---|
232 | widely used character encodings. For example, the widely used |
---|
233 | encodings for Russian are \s-1IBM\s0 \s-1CP\s0\-866 (\s-1MS\s0\-\s-1DOS\s0 and Unix), \s-1KOI\s0\-8 |
---|
234 | (Unix and \s-1VAX\s0, also the standard Internet encoding), \s-1IBM\s0 \s-1CP\s0\-1251 (\s-1MS\s0 Windows). |
---|
235 | That's why I have provided the means to generate the converted fonts |
---|
236 | in more than one encoding. See the file encodings/\s-1README\s0 for |
---|
237 | details about the encoding tables. Actually, if you plan to use |
---|
238 | these fonts with Netscape Navigator better use the aliases |
---|
239 | cp-866 instead of ibm-866 and windows-1251 instead of ibm-1251 |
---|
240 | because that's what Netscape wants. |
---|
241 | .Ip "\(bu" 2 |
---|
242 | \fB\f(CWDSTDIR\fR\fR \- directory for the resulting Type1 fonts. Be careful! |
---|
243 | This directory gets completely wiped out before conversion, |
---|
244 | so don't use any already existing directory for this purpose. |
---|
245 | .Ip "\(bu" 2 |
---|
246 | \fB\f(CWDSTENC\fI{language}\fR\fR\fR \- the list of encodings in which the destination |
---|
247 | fonts will be generated for each language. Each font of that |
---|
248 | language will be generated in each of the specified |
---|
249 | encodings. If you don't want any translation, just specify both |
---|
250 | \f(CWSRCENC\fR and \f(CWDSTENC\fR as iso8859-1 (or if you want any other encoding |
---|
251 | specified in the fonts.dir, copy the description of 8859-1 with |
---|
252 | new name and use this new name for \f(CWSRCENC\fR and \f(CWDSTENC\fR). |
---|
253 | .Ip "\(bu" 2 |
---|
254 | \fB\f(CWFOUNDRY\fR\fR \- the foundry name to be used in the fonts.dir file. I have |
---|
255 | set it to `fromttf\*(R' to avoid name conflicts with any existing font for |
---|
256 | sure. But this foundry name is not registered in X11 standards and |
---|
257 | if you want to get the full standard compliance or have a font server |
---|
258 | that enforces such a compliance, use `misc\*(R'. |
---|
259 | .PP |
---|
260 | The next few parameters control the general behavior of the converter. |
---|
261 | They default values are set to something reasonable. |
---|
262 | .Ip "\(bu" 2 |
---|
263 | \fB\f(CWCORRECTWIDTH\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then use the |
---|
264 | converter option \f(CW\fB-w\fR\fR, otherwise don't use it. See the description of |
---|
265 | this option in the \s-1README\s0 file. |
---|
266 | .Ip "\(bu" 2 |
---|
267 | \fB\f(CWREMOVET1A\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then after |
---|
268 | conversion remove the un-encoded \f(CW.t1a\fR font files and the |
---|
269 | intermediate \f(CW.xpfa\fR font metric files. |
---|
270 | .Ip "\(bu" 2 |
---|
271 | \fB\f(CWINSTALLFONTMAP\fR\fR \- a Ghostscript parameter, if the value is set to |
---|
272 | \fB\f(CWYES\fR\fR then install the entries for the new fonts |
---|
273 | right into the main \f(CWFontmap\fR file. Otherwise just leave |
---|
274 | the file \f(CWFontmap.ttf\fR in the Ghostscript configuration |
---|
275 | directory. |
---|
276 | .Ip "\(bu" 2 |
---|
277 | \fB\f(CWHINTSUBST\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR use the option |
---|
278 | \f(CW\fB-H\fR\fR, otherwise don't use it. This option enables the |
---|
279 | hint substitution technique. If you have not installed the X11 patch |
---|
280 | described above, use this option with great caution. See further |
---|
281 | description of this option in the \s-1README\s0 file. |
---|
282 | .Ip "\(bu" 2 |
---|
283 | \fB\f(CWENFORCEISO\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then |
---|
284 | disguise the resulting fonts as the fonts in ISOLatin1 encoding. Historically |
---|
285 | this was neccessary due to the way the installer scripts created the |
---|
286 | X11 font configuration files. It is not neccessary any more for this |
---|
287 | purpose. But if you plan to use these fonts with some other application |
---|
288 | that expects ISOLatin1 encoding then better enable this option. |
---|
289 | .Ip "\(bu" 2 |
---|
290 | \fB\f(CWALLGLYPHS\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then |
---|
291 | include all the glyphs from the source fonts into the resulting fonts, even |
---|
292 | if these glyphs are inaccessible. If it's set to \fB\f(CWNO\fR\fR then |
---|
293 | include only the glyphs which have codes assigned to them. The glyphs |
---|
294 | without codes can not be used directly. But some clever programs, |
---|
295 | such as the Type 1 library from XFree86 3.9 and higher can change |
---|
296 | the encoding on the fly and use another set of glyphs. If you have not |
---|
297 | installed the X11 patch described above, use this option with great |
---|
298 | caution. See further description of the option option \f(CW\fB-a\fR\fR in the |
---|
299 | \s-1README\s0 file. |
---|
300 | .Ip "\(bu" 2 |
---|
301 | \fB\f(CWGENUID\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then use |
---|
302 | the option \f(CW\fB-uA\fR\fR of the converter to generate UniqueIDs for |
---|
303 | the converted fonts. The standard X11 Type 1 library does not use |
---|
304 | this \s-1ID\s0, so it may only be neccessary for the other applications. |
---|
305 | The script is clever enough to generate different UniqueID for the |
---|
306 | same font converted to multiple encodings. Also after conversion it |
---|
307 | checks all the fonts generacted during the session for duplicated |
---|
308 | UniqueID and shows those. Still, this does not quarantee that these |
---|
309 | UniqueIDs won't overlap with some other fonts. The UniqueIDs are |
---|
310 | generated as hash values from the font names, so it's guaranteed |
---|
311 | that if the `\f(CWconvert\fR\*(R' script runs multiple times it will |
---|
312 | generate the same UniqueIDs during each run. See further description |
---|
313 | of this option in the \s-1README\s0 file. |
---|
314 | .Ip "\(bu" 2 |
---|
315 | \fB\f(CWGENUID\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then create |
---|
316 | the \f(CW.pfb\fR files, otherwise the \f(CW.pfa\fR files. The \f(CW.pfb\fR |
---|
317 | files are more compact but contain binary data, so you may experience some |
---|
318 | troubles when transferring them through the network. |
---|
319 | .PP |
---|
320 | The following parameters are used to locate the other scripts and |
---|
321 | configuration files. By default the scripts do a bit of guessing for them: |
---|
322 | they search in the \fBttf2pt1\fR installation directory if \fBttf2pt1\fR |
---|
323 | was installed or otherwise suppose that you are running `\f(CWconvert\fR\*(R' with |
---|
324 | `\f(CWscripts\fR\*(R' subdirectory being the current directory. |
---|
325 | .Ip "\(bu" 2 |
---|
326 | \fB\f(CWENCDIR\fR\fR \- directory containing the descriptions of encodings |
---|
327 | .Ip "\(bu" 2 |
---|
328 | \fB\f(CWMAPDIR\fR\fR \- directory containing the external map files |
---|
329 | .PP |
---|
330 | Besides that a few parameters are built into the `\f(CWconvert\fR\*(R' script itself. |
---|
331 | You probably won't need to change them: |
---|
332 | .Ip "\(bu" 2 |
---|
333 | \f(CW\fBT1ASM\fR\fR, \f(CW\fBTTF2PT1\fR\fR, \f(CW\fBTRANS\fR\fR, \f(CW\fBT1FDIR\fR\fR, \f(CW\fBFORCEISO\fR\fR \- paths to the other script |
---|
334 | .PP |
---|
335 | Also there are a few parameters controlling the installation of |
---|
336 | fonts for Ghostscript. Please look at their description in the |
---|
337 | Ghostscript section of documentation or in the \fBttf2pt1_x2gs(1)\fR |
---|
338 | manual page before running `\f(CWconvert\fR\*(R'. If these parameters are |
---|
339 | set, `\f(CWconvert\fR\*(R' will call the `\f(CWx2gs\fR\*(R' script automatically |
---|
340 | to install the newly converted fonts in Ghostscript. |
---|
341 | .PP |
---|
342 | After creating the configuration file run the `\f(CWconvert\fR\*(R' script. Look at |
---|
343 | the result and the log file in \f(CWDSTDIR\fR. |
---|
344 | .PP |
---|
345 | Add the directory with newly converted fonts to the configuration |
---|
346 | of X server or font server. For most of the systems this step is |
---|
347 | very straightforward. For \s-1HP\s0\-\s-1UX\s0 it's rather tricky and poorly |
---|
348 | documented, so the file \s-1FONTS\s0.hpux gives a short description. |
---|
349 | .PP |
---|
350 | If you don't have the privileges of the root user, you still can |
---|
351 | configure your private font server. Just use some non-standard |
---|
352 | port number (see \s-1FONTS\s0.hpux for an example, exept that you won't |
---|
353 | need all the \s-1HP\s0\-related stuff on any other system). |
---|
354 | .SH "FILES" |
---|
355 | .Ip "\(bu" 2 |
---|
356 | \s-1TTF2PT1_SHAREDIR/\s0scripts/convert.cfg.sample |
---|
357 | .Ip "\(bu" 2 |
---|
358 | \s-1TTF2PT1_SHAREDIR/\s0scripts/* |
---|
359 | .Ip "\(bu" 2 |
---|
360 | \s-1TTF2PT1_SHAREDIR/README\s0 |
---|
361 | .Ip "\(bu" 2 |
---|
362 | \s-1TTF2PT1_SHAREDIR/FONTS\s0 |
---|
363 | .Ip "\(bu" 2 |
---|
364 | \s-1TTF2PT1_SHAREDIR\s0/* |
---|
365 | .Ip "\(bu" 2 |
---|
366 | \s-1TTF2PT1_BINDIR/\s0ttf2pt1 |
---|
367 | .SH "SEE ALSO" |
---|
368 | .Ip "\(bu" 4 |
---|
369 | the \fIttf2pt1(1)\fR manpage |
---|
370 | .Ip "\(bu" 4 |
---|
371 | the \fIttf2pt1_x2gs(1)\fR manpage |
---|
372 | .Ip "\(bu" 4 |
---|
373 | the \fIt1asm(1)\fR manpage |
---|
374 | .SH "BUGS" |
---|
375 | .Sh "Known problems" |
---|
376 | .Ip "\(bu" 4 |
---|
377 | One catch is that the X11 Type 1 font library has a rather low limit |
---|
378 | on the font size. Because of this the fonts with more complicated |
---|
379 | outlines and the enabled hint substitution may not fit into |
---|
380 | this limit. The same applies to the fonts with very complicated |
---|
381 | outlines or with very many glyphs (especially the fonts with |
---|
382 | over 256 glyphs). So you will need to excercise caution with |
---|
383 | these options if you plan using these fonts with X11. Some vendors |
---|
384 | such as \s-1HP\s0 provide the Type 1 implementation licensed from Adobe |
---|
385 | which should have no such problem. |
---|
386 | .Sp |
---|
387 | But there is a solution even for the generic X11. A patch located |
---|
388 | in the subdirectory `\f(CWapp/X11\fR\*(R' fixes this problem as well |
---|
389 | as some other minor problems. Its description is provided in |
---|
390 | app/X11/\s-1README\s0. |
---|
391 | .Sp |
---|
392 | To fix the X11 font library, you have to get the X11 sources. I |
---|
393 | can recommend the ftp sites of the XFree86 project ftp://ftp.xfree86.org |
---|
394 | or of the Open Group ftp://ftp.x.org. This patch was made on the sources |
---|
395 | of XFree86 so you may have better success with applying it to the |
---|
396 | XFree86 distribution. After you have got the sources, make sure |
---|
397 | that you can compile them. Then apply the patch as described. |
---|
398 | Make sure that it was applied properly. Compile the sources again |
---|
399 | (actually, you need only the fonts library, the fonts server, and |
---|
400 | possibly the X server). It would be prudent now to save your old |
---|
401 | font library, font server and, possibly, X server. Then install |
---|
402 | the new recently compiled versions of these files. Of course, |
---|
403 | if you know someone who already has compiled these files for the |
---|
404 | same \s-1OS\s0 as yours, you can just copy the binary fles from him. |
---|
405 | .Sp |
---|
406 | Alas, building the X11 system from the source code is not the |
---|
407 | easiest thing in the world and if you have no experience it |
---|
408 | can be quite difficult. In this case just avoid the aforementioned |
---|
409 | features or check each converted font to make sure that it |
---|
410 | works properly. |
---|
411 | .Ip "\(bu" 4 |
---|
412 | The Type1 font library from the standard X11 distribution |
---|
413 | does not work on \s-1HP\s0\-\s-1UX\s0 (at least, up to 10.01). The font server |
---|
414 | supplied with \s-1HP\s0\-\s-1UX\s0 up to 10.01 is also broken. Starting from |
---|
415 | \s-1HP\s0\-\s-1UX\s0 10.20 (I don't know about 10.10) they supply a proprietary font |
---|
416 | library and the converted fonts work fine with it, provided that |
---|
417 | they are configured properly (see the file \s-1FONTS\s0.hpux). |
---|
418 | .Ip "\(bu" 4 |
---|
419 | The \f(CWfonts.scale\fR files created by the older versions of the |
---|
420 | \f(CWttf2pt1\fR installation program (up to release 3.1) have conflicted |
---|
421 | with the language definitions of the \f(CWXfsft\fR font server and |
---|
422 | parts of it included into XFree86. To overcome this incompatibility |
---|
423 | the never versions creats the \f(CWfonts.scale\fR file describing all the |
---|
424 | fonts as belonging to the \f(CWadobe-fontspecific\fR encoding and |
---|
425 | the \f(CWfonts.alias\fR file with the proper names. The drawback of |
---|
426 | this solution is that \f(CWxlsfonts\fR gives the list of twice more |
---|
427 | fonts. But as a side effect the option \f(CW\fBENFORCEISO\fR\fR in |
---|
428 | `\f(CWconvert.cfg\fR\*(R' is not required for X11 any more. |
---|
429 | .Ip "\(bu" 4 |
---|
430 | The conversion script has no support for Eastern multi-plane fonts. |
---|
431 | Contribution of such a support would be welcome. |
---|
432 | |
---|
433 | .rn }` '' |
---|
434 | .IX Title "TTF2PT1_CONVERT 1" |
---|
435 | .IX Name "B<ttf2pt1_convert> - convenience font conversion script" |
---|
436 | |
---|
437 | .IX Header "NAME" |
---|
438 | |
---|
439 | .IX Header "SYNOPSIS" |
---|
440 | |
---|
441 | .IX Header "DESCRIPTION" |
---|
442 | |
---|
443 | .IX Item "\(bu" |
---|
444 | |
---|
445 | .IX Item "\(bu" |
---|
446 | |
---|
447 | .IX Item "\(bu" |
---|
448 | |
---|
449 | .IX Item "\(bu" |
---|
450 | |
---|
451 | .IX Item "\(bu" |
---|
452 | |
---|
453 | .IX Item "\(bu" |
---|
454 | |
---|
455 | .IX Item "\(bu" |
---|
456 | |
---|
457 | .IX Item "\(bu" |
---|
458 | |
---|
459 | .IX Item "\(bu" |
---|
460 | |
---|
461 | .IX Item "\(bu" |
---|
462 | |
---|
463 | .IX Item "\(bu" |
---|
464 | |
---|
465 | .IX Item "\(bu" |
---|
466 | |
---|
467 | .IX Item "\(bu" |
---|
468 | |
---|
469 | .IX Item "\(bu" |
---|
470 | |
---|
471 | .IX Item "\(bu" |
---|
472 | |
---|
473 | .IX Header "FILES" |
---|
474 | |
---|
475 | .IX Item "\(bu" |
---|
476 | |
---|
477 | .IX Item "\(bu" |
---|
478 | |
---|
479 | .IX Item "\(bu" |
---|
480 | |
---|
481 | .IX Item "\(bu" |
---|
482 | |
---|
483 | .IX Item "\(bu" |
---|
484 | |
---|
485 | .IX Item "\(bu" |
---|
486 | |
---|
487 | .IX Header "SEE ALSO" |
---|
488 | |
---|
489 | .IX Item "\(bu" |
---|
490 | |
---|
491 | .IX Item "\(bu" |
---|
492 | |
---|
493 | .IX Item "\(bu" |
---|
494 | |
---|
495 | .IX Header "BUGS" |
---|
496 | |
---|
497 | .IX Subsection "Known problems" |
---|
498 | |
---|
499 | .IX Item "\(bu" |
---|
500 | |
---|
501 | .IX Item "\(bu" |
---|
502 | |
---|
503 | .IX Item "\(bu" |
---|
504 | |
---|
505 | .IX Item "\(bu" |
---|
506 | |
---|