Introduction
Introduction Statistics Contact Development Disclaimer Help
LH.example - 9base - revived minimalist port of Plan 9 userland to Unix
git clone git://git.suckless.org/9base
Log
Files
Refs
README
LICENSE
---
LH.example (4433B)
---
1 %
2 % An example logo character. Building the PostScript program that prints
3 % your company logo is not addressed here; we assume you already have
4 % such a program, that it's relatively simple, and that it prints the
5 % logo by itself on a page. What you'll find here are instructions for
6 % converting that logo program into a character that can be accessed by
7 % troff and dpost.
8 %
9 % Building a new charlib character involves some PostScript programming.
10 % We've tried to isolate parameters that you'll need to change (Xoffset,
11 % Yoffset, and Scaling), but we can't guarantee things will work properly
12 % with every logo program. PostScript is a complex language and subtle
13 % interactions between your logo program and what we've done here can
14 % cause problems.
15 %
16 % Tuning the new character is an iterative process. You may want to adju…
17 % the size of the logo (via Scaling), it's position relative to adjacent
18 % characters and the baseline (Xoffset and Yoffset), and the distance tr…
19 % moves after printing the character (width field in file ../S1). The st…
20 % to follow are:
21 %
22 % 1: Create a simple troff test file for the new character. Somet…
23 % like,
24 %
25 % .sp 1i
26 % .ps 10
27 % size 10: \(LH
28 % .sp 1i
29 % .ps 18
30 % size 18: \(LH
31 % .sp 1i
32 % .ps 36
33 % size 36: \(LH
34 % .sp 1i
35 % .ps 10
36 % four logo characters: \(LH\(LH\(LH\(LH
37 %
38 % is sufficient. The test file can go anywhere.
39 %
40 % 2: Change into directory /usr/lib/font/devpost/charlib. All file
41 % pathnames will be relative to that directory.
42 %
43 % 3: Save a copy of the working LH logo file. Then replace LH with
44 % this file (i.e. LH.example). Changes described below should …
45 % be made in the new LH file (not in LH.example).
46 %
47 % 4: Your PostScript logo program will eventually replace whatever
48 % you find between the <<StartLogo>> and <<EndLogo>> comment l…
49 % in the PostScript build_LH procedure (below). What's there n…
50 % prints an example logo that you can use until you understand…
51 % remaining steps.
52 %
53 % 5: Print your troff test file using (assuming your making chang…
54 % in the devpost charlib directory),
55 %
56 % troff -Tpost testfile | dpost | lp ...
57 %
58 % 6: Adjust the logo positioning by changing the numbers assigned…
59 % Xoffset and Yoffset (below). Both are in units of 72 per inc…
60 % Positive offsets should move the logo to the right and up the
61 % page.
62 %
63 % 7: Adjust the logo size by changing the the number assigned to
64 % Scaling. Unitsize also controls scaling, but there's no good
65 % reason to change both Scaling and Unitsize.
66 %
67 % 8: Control the horizontal distance troff moves after printing t…
68 % new LH character by changing the width (i.e. the number in t…
69 % second column) assigned to LH in file ../S1. Character width
70 % adjustments should probably wait until you're satisfied with
71 % the Scaling set in step 7.
72 %
73 % 9: Back to step 5 until your satisfied with the output.
74 %
75 % The remaining steps are suggested but not required:
76 %
77 % 10: Delete PostScript comments in your new LH charlib file - comm…
78 % start with % and go to the end of the line.
79 %
80 % 11: Update the width field assigned to LH in file ../shell.lib. T…
81 % new width should reflect what's currently in your S1 font fi…
82 %
83 % 12: Make a similiar set of changes in /usr/lib/font/devLatin1/cha…
84 % You can use the devpost version of LH to devLatin1/charlib/L…
85 % but changes to files devLatin1/S1 and devLatin1/shell.lib mu…
86 % entered by hand.
87 %
88
89 /Logo_Dict 100 dict dup begin
90 /Xoffset 0 def % 72 dpi with positive to …
91 /Yoffset 0 def % 72 dpi with positive up …
92 /Scaling 1.0 def % adjust this number to change t…
93 /Unitsize 36 def % for point size scaling - leave…
94 /showpage {} def
95 end def
96
97 /build_LH { % don't bind this procedure
98 Logo_Dict begin
99 gsave
100 /charwidth exch def
101 currentpoint translate
102 resolution 72 div dup scale
103 Xoffset Yoffset translate
104 Scaling Scaling scale
105 ptsize Unitsize div dup scale
106
107 %% Replace everything between the <<StartLogo>> and <<En…
108 %% comment lines by the PostScript program that prints y…
109 %% logo.
110
111 %% <<StartLogo>>
112 newpath
113 .5 .5 scale
114 0 0 moveto
115 100 0 lineto
116 100 100 lineto
117 closepath
118 .5 setgray
119 fill
120 0 setgray
121 10 10 translate
122 45 rotate
123 0 5 moveto
124 /Helvetica findfont 18 scalefont setfont
125 (Example Logo) show
126 %% <<EndLogo>>
127
128 grestore
129 end
130 } def
131
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.