1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
#!/usr/bin/env fontforge
# Time-stamp: <2005-02-11 13:17:03 ralf>
# Copyright 2004, 2005 Ralf Stubner
# See the file COPYING (GNU General Public License) for license
# conditions.
# prepare and copy SC and OsF
# MergeFonts() doesn't like in the references in Palladio-SC
Open("Palladio-SC.sfd");
Select("zero","nine", "a","z", "grave","caron");
SelectMore("ae");
SelectMore("lslash");
SelectMore("oslash");
SelectMore("oe");
SelectMore("adieresis","iogonek", "dcroat","thorn");
SelectMore("commaaccent");
UnlinkReference();
Copy();
Open("uplr8a.pfb");
# proper setup with names etc
fontname="TeXPalladioL-SC";
fontfamily="TeX Palladio L";
fullname="TeX Palladio L Small Caps & Old Style Figures";
copyright=$copyright+", Copyright 2004, 2005 Ralf Stubner.";
copyright=AddGPL(copyright);
copyright=AddException(copyright);
fontversion="1.003";
SetFontNames(fontname,fontfamily,fullname,"",copyright,fontversion);
# No UniqueID (needs recent ff to work properly)
SetUniqueID(-1);
# use OtherSubrs from URW (needs recent ff to work properly)
ReadOtherSubrsFile("URW-OtherSubrs.ps");
# paste OsF and SC
Select("zero","nine", "a","z", "grave","caron");
SelectMore("ae");
SelectMore("lslash");
SelectMore("oslash");
SelectMore("oe");
SelectMore("adieresis","iogonek", "dcroat","thorn");
SelectMore("commaaccent");
Clear();
Paste();
# ligatures
Select("fi","fl");
BuildComposite();
UnlinkReference();
Select("s");
width=CharInfo("Width");
Copy();
Select("germandbls");
Clear();
Paste();
Move(width,0);
PasteInto();
# dotlessi
Select("i");
Copy();
Select("dotlessi");
Paste();
# build q and real accents
Select("q");
SelectMore("lslash");
SelectMore("oslash");
SelectMore("aogonek");
SelectMore("ccedilla");
SelectMore("eogonek");
SelectMore("uogonek");
SelectMore("scedilla");
SelectMore("iogonek");
SelectMore("dcroat");
RemoveOverlap();
Simplify();
RoundToInt();
# underscore
Select("underscore");
Scale(100,116,0,0);
Move(0,-15);
# emdash
Select("emdash");
Scale(75,100,0,0);
Move(125,0);
SetWidth(1000);
RoundToInt();
# kerning
RemoveAllKerns();
MergeKern("pplrc9d-kern.afm");
# hinting
ChangePrivateEntry("BlueValues","[-20 0 469 481 487 499 692 712]");
Save("TeXPalladioL-SC.sfd");
# generte Type1, scale generate TTF
Generate("fplrc8a.pfb","",3);
# ScaleToEm(2048);
# Generate("fplrc8a.ttf","",0x80);
Quit(0);
|