Mercurial > emacs
annotate lisp/ps-print.el @ 23212:42fcd022d4e5
(adjust_after_replace): Don't add combining bytes to
the args given to adjust_point. Handle correctly the case that
there are both before and after combining bytes.
(replace_range): Likewise.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 08 Sep 1998 02:01:59 +0000 |
parents | 70e635407161 |
children | 519bc559e950 |
rev | line source |
---|---|
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
1 ;;; ps-print.el --- Print text from the buffer as PostScript |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3 ;; Copyright (C) 1993, 94, 95, 96, 97, 1998 Free Software Foundation, Inc. |
7257 | 4 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5 ;; Author: Jim Thompson (was <thompson@wg2.waii.com>) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
6 ;; Author: Jacques Duthen <duthen@cegelec-red.fr> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
7 ;; Author: Vinicius Jose Latorre <vinicius@cpqd.com.br> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
8 ;; Author: Kenichi Handa <handa@etl.go.jp> (multibyte characters) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
9 ;; Maintainer: Kenichi Handa <handa@etl.go.jp> (multibyte characters) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
10 ;; Maintainer: Vinicius Jose Latorre <vinicius@cpqd.com.br> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
11 ;; Keywords: print, PostScript |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
12 ;; Time-stamp: <98/08/19 11:10:03 vinicius> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
13 ;; Version: 4.0 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
14 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
15 (defconst ps-print-version "4.0" |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
16 "ps-print.el, v 4.0 <98/08/19 vinicius> |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
17 |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
18 Vinicius's last change version -- this file may have been edited as part of |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
19 Emacs without changes to the version number. When reporting bugs, |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
20 please also report the version of Emacs, if any, that ps-print was |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
21 distributed with. |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
22 |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
23 Please send all bug fixes and enhancements to |
20331 | 24 Vinicius Jose Latorre <vinicius@cpqd.com.br>. |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
25 ") |
7257 | 26 |
10493 | 27 ;; This file is part of GNU Emacs. |
7257 | 28 |
29 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
30 ;; it under the terms of the GNU General Public License as published by | |
31 ;; the Free Software Foundation; either version 2, or (at your option) | |
32 ;; any later version. | |
33 | |
34 ;; GNU Emacs is distributed in the hope that it will be useful, | |
35 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
36 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
37 ;; GNU General Public License for more details. | |
38 | |
39 ;; You should have received a copy of the GNU General Public License | |
14169 | 40 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
41 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
42 ;; Boston, MA 02111-1307, USA. | |
7257 | 43 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
44 ;;; Commentary: |
7257 | 45 |
46 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
47 ;; | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
48 ;; About ps-print |
7257 | 49 ;; -------------- |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
50 ;; |
7257 | 51 ;; This package provides printing of Emacs buffers on PostScript |
52 ;; printers; the buffer's bold and italic text attributes are | |
53 ;; preserved in the printer output. Ps-print is intended for use with | |
10683 | 54 ;; Emacs 19 or Lucid Emacs, together with a fontifying package such as |
55 ;; font-lock or hilit. | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
56 ;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
57 ;; ps-print uses the same face attributes defined through font-lock or hilit |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
58 ;; to print a PostScript file, but some faces are better seeing on the screen |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
59 ;; than on paper, specially when you have a black/white PostScript printer. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
60 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
61 ;; ps-print allows a remap of face to another one that it is better to print, |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
62 ;; for example, the face font-lock-comment-face (if you are using font-lock) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
63 ;; could have bold or italic attribute when printing, besides foreground color. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
64 ;; This remap improves printing look (see How Ps-Print Maps Faces). |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
65 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
66 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
67 ;; Using ps-print |
7257 | 68 ;; -------------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
69 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
70 ;; The Commands |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
71 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
72 ;; Ps-print provides eight commands for generating PostScript images |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
73 ;; of Emacs buffers: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
74 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
75 ;; ps-print-buffer |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
76 ;; ps-print-buffer-with-faces |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
77 ;; ps-print-region |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
78 ;; ps-print-region-with-faces |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
79 ;; ps-spool-buffer |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
80 ;; ps-spool-buffer-with-faces |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
81 ;; ps-spool-region |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
82 ;; ps-spool-region-with-faces |
7257 | 83 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
84 ;; These commands all perform essentially the same function: they |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
85 ;; generate PostScript images suitable for printing on a PostScript |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
86 ;; printer or displaying with GhostScript. These commands are |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
87 ;; collectively referred to as "ps-print- commands". |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
88 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
89 ;; The word "print" or "spool" in the command name determines when the |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
90 ;; PostScript image is sent to the printer: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
91 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
92 ;; print - The PostScript image is immediately sent to the |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
93 ;; printer; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
94 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
95 ;; spool - The PostScript image is saved temporarily in an |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
96 ;; Emacs buffer. Many images may be spooled locally |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
97 ;; before printing them. To send the spooled images |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
98 ;; to the printer, use the command `ps-despool'. |
7257 | 99 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
100 ;; The spooling mechanism was designed for printing lots of small |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
101 ;; files (mail messages or netnews articles) to save paper that would |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
102 ;; otherwise be wasted on banner pages, and to make it easier to find |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
103 ;; your output at the printer (it's easier to pick up one 50-page |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
104 ;; printout than to find 50 single-page printouts). |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
105 ;; |
20332 | 106 ;; Ps-print has a hook in the `kill-emacs-hook' so that you won't |
14040 | 107 ;; accidentally quit from Emacs while you have unprinted PostScript |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
108 ;; waiting in the spool buffer. If you do attempt to exit with |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
109 ;; spooled PostScript, you'll be asked if you want to print it, and if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
110 ;; you decline, you'll be asked to confirm the exit; this is modeled |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
111 ;; on the confirmation that Emacs uses for modified buffers. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
112 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
113 ;; The word "buffer" or "region" in the command name determines how |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
114 ;; much of the buffer is printed: |
7257 | 115 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
116 ;; buffer - Print the entire buffer. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
117 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
118 ;; region - Print just the current region. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
119 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
120 ;; The -with-faces suffix on the command name means that the command |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
121 ;; will include font, color, and underline information in the |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
122 ;; PostScript image, so the printed image can look as pretty as the |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
123 ;; buffer. The ps-print- commands without the -with-faces suffix |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
124 ;; don't include font, color, or underline information; images printed |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
125 ;; with these commands aren't as pretty, but are faster to generate. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
126 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
127 ;; Two ps-print- command examples: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
128 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
129 ;; ps-print-buffer - print the entire buffer, |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
130 ;; without font, color, or |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
131 ;; underline information, and |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
132 ;; send it immediately to the |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
133 ;; printer. |
7257 | 134 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
135 ;; ps-spool-region-with-faces - print just the current region; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
136 ;; include font, color, and |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
137 ;; underline information, and |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
138 ;; spool the image in Emacs to |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
139 ;; send to the printer later. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
140 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
141 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
142 ;; Invoking Ps-Print |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
143 ;; ----------------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
144 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
145 ;; To print your buffer, type |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
146 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
147 ;; M-x ps-print-buffer |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
148 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
149 ;; or substitute one of the other seven ps-print- commands. The |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
150 ;; command will generate the PostScript image and print or spool it as |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
151 ;; specified. By giving the command a prefix argument |
7257 | 152 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
153 ;; C-u M-x ps-print-buffer |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
154 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
155 ;; it will save the PostScript image to a file instead of sending it |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
156 ;; to the printer; you will be prompted for the name of the file to |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
157 ;; save the image to. The prefix argument is ignored by the commands |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
158 ;; that spool their images, but you may save the spooled images to a |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
159 ;; file by giving a prefix argument to `ps-despool': |
7257 | 160 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
161 ;; C-u M-x ps-despool |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
162 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
163 ;; When invoked this way, `ps-despool' will prompt you for the name of |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
164 ;; the file to save to. |
7257 | 165 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
166 ;; Any of the `ps-print-' commands can be bound to keys; I recommend |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
167 ;; binding `ps-spool-buffer-with-faces', `ps-spool-region-with-faces', |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
168 ;; and `ps-despool'. Here are the bindings I use on my Sun 4 keyboard: |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
169 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
170 ;; (global-set-key 'f22 'ps-spool-buffer-with-faces) ;f22 is prsc |
7257 | 171 ;; (global-set-key '(shift f22) 'ps-spool-region-with-faces) |
172 ;; (global-set-key '(control f22) 'ps-despool) | |
173 ;; | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
174 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
175 ;; The Printer Interface |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
176 ;; --------------------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
177 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
178 ;; The variables `ps-lpr-command' and `ps-lpr-switches' determine what |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
179 ;; command is used to send the PostScript images to the printer, and |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
180 ;; what arguments to give the command. These are analogous to |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
181 ;; `lpr-command' and `lpr-switches'. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
182 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
183 ;; Make sure that they contain appropriate values for your system; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
184 ;; see the usage notes below and the documentation of these variables. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
185 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
186 ;; NOTE: `ps-lpr-command' and `ps-lpr-switches' take their initial values |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
187 ;; from the variables `lpr-command' and `lpr-switches'. If you have |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
188 ;; `lpr-command' set to invoke a pretty-printer such as `enscript', |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
189 ;; then ps-print won't work properly. `ps-lpr-command' must name |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
190 ;; a program that does not format the files it prints. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
191 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
192 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
193 ;; The Page Layout |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
194 ;; --------------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
195 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
196 ;; All dimensions are floats in PostScript points. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
197 ;; 1 inch == 2.54 cm == 72 points |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
198 ;; 1 cm == (/ 1 2.54) inch == (/ 72 2.54) points |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
199 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
200 ;; The variable `ps-paper-type' determines the size of paper ps-print |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
201 ;; formats for; it should contain one of the symbols: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
202 ;; `a4' `a3' `letter' `legal' `letter-small' `tabloid' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
203 ;; `ledger' `statement' `executive' `a4small' `b4' `b5' |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
204 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
205 ;; The variable `ps-landscape-mode' determines the orientation |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
206 ;; of the printing on the page: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
207 ;; nil means `portrait' mode, non-nil means `landscape' mode. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
208 ;; There is no oblique mode yet, though this is easy to do in ps. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
209 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
210 ;; In landscape mode, the text is NOT scaled: you may print 70 lines |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
211 ;; in portrait mode and only 50 lignes in landscape mode. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
212 ;; The margins represent margins in the printed paper: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
213 ;; the top margin is the margin between the top of the page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
214 ;; and the printed header, whatever the orientation is. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
215 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
216 ;; The variable `ps-number-of-columns' determines the number of columns |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
217 ;; both in landscape and portrait mode. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
218 ;; You can use: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
219 ;; - (the standard) one column portrait mode |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
220 ;; - (my favorite) two columns landscape mode (which spares trees) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
221 ;; but also |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
222 ;; - one column landscape mode for files with very long lines. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
223 ;; - multi-column portrait or landscape mode |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
224 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
225 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
226 ;; Horizontal layout |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
227 ;; ----------------- |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
228 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
229 ;; The horizontal layout is determined by the variables |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
230 ;; `ps-left-margin' `ps-inter-column' `ps-right-margin' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
231 ;; as follows: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
232 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
233 ;; ------------------------------------------ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
234 ;; | | | | | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
235 ;; | lm | text | ic | text | ic | text | rm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
236 ;; | | | | | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
237 ;; ------------------------------------------ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
238 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
239 ;; If `ps-number-of-columns' is 1, `ps-inter-column' is not relevant. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
240 ;; Usually, lm = rm > 0 and ic = lm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
241 ;; If (ic < 0), the text of adjacent columns can overlap. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
242 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
243 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
244 ;; Vertical layout |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
245 ;; --------------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
246 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
247 ;; The vertical layout is determined by the variables |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
248 ;; `ps-bottom-margin' `ps-top-margin' `ps-header-offset' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
249 ;; as follows: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
250 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
251 ;; |--------| |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
252 ;; | tm | | tm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
253 ;; |--------| |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
254 ;; | header | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
255 ;; |--------| | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
256 ;; | ho | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
257 ;; |--------| or | text | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
258 ;; | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
259 ;; | text | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
260 ;; | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
261 ;; |--------| |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
262 ;; | bm | | bm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
263 ;; |--------| |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
264 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
265 ;; If `ps-print-header' is nil, `ps-header-offset' is not relevant. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
266 ;; The margins represent margins in the printed paper: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
267 ;; the top margin is the margin between the top of the page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
268 ;; and the printed header, whatever the orientation is. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
269 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
270 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
271 ;; Headers |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
272 ;; ------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
273 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
274 ;; Ps-print can print headers at the top of each column or at the top |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
275 ;; of each page; the default headers contain the following four items: |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
276 ;; on the left, the name of the buffer and, if the buffer is visiting |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
277 ;; a file, the file's directory; on the right, the page number and |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
278 ;; date of printing. The default headers look something like this: |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
279 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
280 ;; ps-print.el 1/21 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
281 ;; /home/jct/emacs-lisp/ps/new 94/12/31 |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
282 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
283 ;; When printing on duplex printers, left and right are reversed so |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
284 ;; that the page numbers are toward the outside (cf. `ps-spool-duplex'). |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
285 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
286 ;; Headers are configurable: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
287 ;; To turn them off completely, set `ps-print-header' to nil. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
288 ;; To turn off the header's gaudy framing box, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
289 ;; set `ps-print-header-frame' to nil. |
7257 | 290 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
291 ;; To print only one header at the top of each page, |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
292 ;; set `ps-print-only-one-header' to t. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
293 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
294 ;; The font family and size of text in the header are determined |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
295 ;; by the variables `ps-header-font-family', `ps-header-font-size' and |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
296 ;; `ps-header-title-font-size' (see below). |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
297 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
298 ;; The variable `ps-header-line-pad' determines the portion of a header |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
299 ;; title line height to insert between the header frame and the text |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
300 ;; it contains, both in the vertical and horizontal directions: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
301 ;; .5 means half a line. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
302 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
303 ;; Page numbers are printed in `n/m' format, indicating page n of m pages; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
304 ;; to omit the total page count and just print the page number, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
305 ;; set `ps-show-n-of-n' to nil. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
306 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
307 ;; The amount of information in the header can be changed by changing |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
308 ;; the number of lines. To show less, set `ps-header-lines' to 1, and |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
309 ;; the header will show only the buffer name and page number. To show |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
310 ;; more, set `ps-header-lines' to 3, and the header will show the time of |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
311 ;; printing below the date. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
312 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
313 ;; To change the content of the headers, change the variables |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
314 ;; `ps-left-header' and `ps-right-header'. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
315 ;; These variables are lists, specifying top-to-bottom the text |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
316 ;; to display on the left or right side of the header. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
317 ;; Each element of the list should be a string or a symbol. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
318 ;; Strings are inserted directly into the PostScript arrays, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
319 ;; and should contain the PostScript string delimiters '(' and ')'. |
7257 | 320 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
321 ;; Symbols in the header format lists can either represent functions |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
322 ;; or variables. Functions are called, and should return a string to |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
323 ;; show in the header. Variables should contain strings to display in |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
324 ;; the header. In either case, function or variable, the PostScript |
14040 | 325 ;; string delimiters are added by ps-print, and should not be part of |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
326 ;; the returned value. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
327 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
328 ;; Here's an example: say we want the left header to display the text |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
329 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
330 ;; Moe |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
331 ;; Larry |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
332 ;; Curly |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
333 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
334 ;; where we have a function to return "Moe" |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
335 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
336 ;; (defun moe-func () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
337 ;; "Moe") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
338 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
339 ;; a variable specifying "Larry" |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
340 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
341 ;; (setq larry-var "Larry") |
7257 | 342 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
343 ;; and a literal for "Curly". Here's how `ps-left-header' should be |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
344 ;; set: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
345 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
346 ;; (setq ps-left-header (list 'moe-func 'larry-var "(Curly)")) |
7257 | 347 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
348 ;; Note that Curly has the PostScript string delimiters inside his |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
349 ;; quotes -- those aren't misplaced lisp delimiters! |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
350 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
351 ;; Without them, PostScript would attempt to call the undefined |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
352 ;; function Curly, which would result in a PostScript error. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
353 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
354 ;; Since most printers don't report PostScript errors except by |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
355 ;; aborting the print job, this kind of error can be hard to track down. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
356 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
357 ;; Consider yourself warned! |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
358 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
359 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
360 ;; Duplex Printers |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
361 ;; --------------- |
7257 | 362 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
363 ;; If you have a duplex-capable printer (one that prints both sides of |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
364 ;; the paper), set `ps-spool-duplex' to t. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
365 ;; Ps-print will insert blank pages to make sure each buffer starts |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
366 ;; on the correct side of the paper. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
367 ;; Don't forget to set `ps-lpr-switches' to select duplex printing |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
368 ;; for your printer. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
369 ;; |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
370 ;; |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
371 ;; Control And 8-bit Characters |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
372 ;; ---------------------------- |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
373 ;; |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
374 ;; The variable `ps-print-control-characters' specifies whether you want to see |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
375 ;; a printable form for control and 8-bit characters, that is, instead of |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
376 ;; sending, for example, a ^D (\004) to printer, it is sent the string "^D". |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
377 ;; |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
378 ;; Valid values for `ps-print-control-characters' are: |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
379 ;; |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
380 ;; 8-bit This is the value to use when you want an ascii encoding of |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
381 ;; any control or non-ascii character. Control characters are |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
382 ;; encoded as "^D", and non-ascii characters have an |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
383 ;; octal encoding. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
384 ;; |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
385 ;; control-8-bit This is the value to use when you want an ascii encoding of |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
386 ;; any control character, whether it is 7 or 8-bit. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
387 ;; European 8-bits accented characters are printed according |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
388 ;; the current font. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
389 ;; |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
390 ;; control Only ascii control characters have an ascii encoding. |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
391 ;; European 8-bits accented characters are printed according |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
392 ;; the current font. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
393 ;; |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
394 ;; nil No ascii encoding. Any character is printed according the |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
395 ;; current font. |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
396 ;; |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
397 ;; Any other value is treated as nil. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
398 ;; |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
399 ;; The default is `control-8-bit'. |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
400 ;; |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
401 ;; Characters TAB, NEWLINE and FORMFEED are always treated by ps-print engine. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
402 ;; |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
403 ;; |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
404 ;; Printing Multi-Byte Buffer |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
405 ;; -------------------------- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
406 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
407 ;; ps-print can print multi-byte buffer. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
408 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
409 ;; If you are using only Latin-1 characters, you don't need to do anything else. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
410 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
411 ;; If you have a japanese or korean PostScript printer, you can print ASCII, |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
412 ;; Latin-1, Japanese (JISX0208, and JISX0201-Kana) and Korean characters by |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
413 ;; setting: |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
414 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
415 ;; (setq ps-mule-font-info-database ps-mule-font-info-database-ps) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
416 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
417 ;; At present, it was not tested the korean characters printing. If you have |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
418 ;; a korean PostScript printer, please verify it. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
419 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
420 ;; If you use any other kind of character, you need to install intlfonts-1.1. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
421 ;; So you can print using BDF fonts contained in intlfonts-1.1. To print using |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
422 ;; BDF fonts, do the following settings: |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
423 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
424 ;; (1) Set the variable `bdf-directory-list' appropriately (see bdf.el for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
425 ;; documentation of this variable). |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
426 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
427 ;; (2) (setq ps-mule-font-info-database-ps ps-mule-font-info-database-bdf) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
428 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
429 ;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
430 ;; Line Number |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
431 ;; ----------- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
432 ;; |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
433 ;; The variable `ps-line-number' specifies whether to number each line; |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
434 ;; non-nil means do so. The default is nil (don't number each line). |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
435 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
436 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
437 ;; Zebra Stripes |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
438 ;; ------------- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
439 ;; |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
440 ;; Zebra stripes are a kind of background that appear "underneath" the text |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
441 ;; and can make the text easier to read. They look like this: |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
442 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
443 ;; XXXXXXXXXXXXXXXXXXXXXXXX |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
444 ;; XXXXXXXXXXXXXXXXXXXXXXXX |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
445 ;; XXXXXXXXXXXXXXXXXXXXXXXX |
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
446 ;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
447 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
448 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
449 ;; XXXXXXXXXXXXXXXXXXXXXXXX |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
450 ;; XXXXXXXXXXXXXXXXXXXXXXXX |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
451 ;; XXXXXXXXXXXXXXXXXXXXXXXX |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
452 ;; |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
453 ;; The blocks of X's represent rectangles filled with a light gray color. |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
454 ;; Each rectangle extends all the way across the page. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
455 ;; |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
456 ;; The height, in lines, of each rectangle is controlled by |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
457 ;; the variable `ps-zebra-stripe-height', which is 3 by default. |
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
458 ;; The distance between stripes equals the height of a stripe. |
20331 | 459 ;; |
19787
4ea00387fb08
(ps-setup): ps-zebra-stripe => ps-zebra-stripes.
Richard M. Stallman <rms@gnu.org>
parents:
19773
diff
changeset
|
460 ;; The variable `ps-zebra-stripes' controls whether to print zebra stripes. |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
461 ;; Non-nil means yes, nil means no. The default is nil. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
462 ;; |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
463 ;; See also section How Ps-Print Has A Text And/Or Image On Background. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
464 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
465 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
466 ;; Hooks |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
467 ;; ----- |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
468 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
469 ;; Ps-print has the following hook variables: |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
470 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
471 ;; `ps-print-hook' |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
472 ;; It is evaluated once before any printing process. This is the right |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
473 ;; place to initialize ps-print global data. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
474 ;; For an example, see section Adding a New Font Family. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
475 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
476 ;; `ps-print-begin-page-hook' |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
477 ;; It is evaluated on each real beginning of page, that is, ps-print |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
478 ;; considers each beginning of column as a beginning of page, and a real |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
479 ;; beginning of page is when the beginning of column coincides with a |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
480 ;; paper change on your printer. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
481 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
482 ;; `ps-print-begin-column-hook' |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
483 ;; It is evaluated on each beginning of column, except in the beginning |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
484 ;; of column that `ps-print-begin-page-hook' is evaluated. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
485 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
486 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
487 ;; Font Managing |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
488 ;; ------------- |
7257 | 489 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
490 ;; Ps-print now knows rather precisely some fonts: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
491 ;; the variable `ps-font-info-database' contains information |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
492 ;; for a list of font families (currently mainly `Courier' `Helvetica' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
493 ;; `Times' `Palatino' `Helvetica-Narrow' `NewCenturySchlbk'). |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
494 ;; Each font family contains the font names for standard, bold, italic |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
495 ;; and bold-italic characters, a reference size (usually 10) and the |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
496 ;; corresponding line height, width of a space and average character width. |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
497 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
498 ;; The variable `ps-font-family' determines which font family |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
499 ;; is to be used for ordinary text. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
500 ;; If its value does not correspond to a known font family, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
501 ;; an error message is printed into the `*Messages*' buffer, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
502 ;; which lists the currently available font families. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
503 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
504 ;; The variable `ps-font-size' determines the size (in points) |
23138
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
505 ;; of the font for ordinary text, when generating PostScript. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
506 ;; Its value is a float. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
507 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
508 ;; Similarly, the variable `ps-header-font-family' determines |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
509 ;; which font family is to be used for text in the header. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
510 ;; The variable `ps-header-font-size' determines the font size, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
511 ;; in points, for text in the header. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
512 ;; The variable `ps-header-title-font-size' determines the font size, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
513 ;; in points, for the top line of text in the header. |
7257 | 514 ;; |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
515 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
516 ;; Adding a New Font Family |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
517 ;; ------------------------ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
518 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
519 ;; To use a new font family, you MUST first teach ps-print |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
520 ;; this font, i.e., add its information to `ps-font-info-database', |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
521 ;; otherwise ps-print cannot correctly place line and page breaks. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
522 ;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
523 ;; For example, assuming `Helvetica' is unknown, |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
524 ;; you first need to do the following ONLY ONCE: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
525 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
526 ;; - create a new buffer |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
527 ;; - generate the PostScript image to a file (C-u M-x ps-print-buffer) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
528 ;; - open this file and find the line: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
529 ;; `% 3 cm 20 cm moveto 10 /Courier ReportFontInfo showpage' |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
530 ;; - delete the leading `%' (which is the PostScript comment character) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
531 ;; - replace in this line `Courier' by the new font (say `Helvetica') |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
532 ;; to get the line: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
533 ;; `3 cm 20 cm moveto 10 /Helvetica ReportFontInfo showpage' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
534 ;; - send this file to the printer (or to ghostscript). |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
535 ;; You should read the following on the output page: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
536 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
537 ;; For Helvetica 10 point, the line height is 11.56, the space width is 2.78 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
538 ;; and a crude estimate of average character width is 5.09243 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
539 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
540 ;; - Add these values to the `ps-font-info-database': |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
541 ;; (setq ps-font-info-database |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
542 ;; (append |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
543 ;; '((Helvetica ; the family key |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
544 ;; (fonts (normal . "Helvetica") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
545 ;; (bold . "Helvetica-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
546 ;; (italic . "Helvetica-Oblique") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
547 ;; (bold-italic . "Helvetica-BoldOblique")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
548 ;; (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
549 ;; (line-height . 11.56) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
550 ;; (space-width . 2.78) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
551 ;; (avg-char-width . 5.09243))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
552 ;; ps-font-info-database)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
553 ;; - Now you can use this font family with any size: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
554 ;; (setq ps-font-family 'Helvetica) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
555 ;; - if you want to use this family in another emacs session, you must |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
556 ;; put into your `~/.emacs': |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
557 ;; (require 'ps-print) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
558 ;; (setq ps-font-info-database (append ...))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
559 ;; if you don't want to load ps-print, you have to copy the whole value: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
560 ;; (setq ps-font-info-database '(<your stuff> <the standard stuff>)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
561 ;; or, use `ps-print-hook' (see section Hooks): |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
562 ;; (add-hook 'ps-print-hook |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
563 ;; '(lambda () (setq ps-font-info-database (append ...)))) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
564 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
565 ;; You can create new `mixed' font families like: |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
566 ;; (my-mixed-family |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
567 ;; (fonts (normal . "Courier-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
568 ;; (bold . "Helvetica") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
569 ;; (italic . "Zapf-Chancery-MediumItalic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
570 ;; (bold-italic . "NewCenturySchlbk-BoldItalic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
571 ;; (w3-table-hack-x-face . "LineDrawNormal")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
572 ;; (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
573 ;; (line-height . 10.55) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
574 ;; (space-width . 6.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
575 ;; (avg-char-width . 6.0)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
576 ;; Now you can use your new font family with any size: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
577 ;; (setq ps-font-family 'my-mixed-family) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
578 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
579 ;; Note that on above example the `w3-table-hack-x-face' entry refers to |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
580 ;; a face symbol, so when printing this face it'll be used the font |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
581 ;; `LineDrawNormal'. If the face `w3-table-hack-x-face' is remapped to |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
582 ;; use bold and/or italic attribute, the corresponding entry (bold, italic |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
583 ;; or bold-italic) will be used instead of `w3-table-hack-x-face' entry. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
584 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
585 ;; Note also that the font family entry order is irrelevant, so the above |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
586 ;; example could also be written: |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
587 ;; (my-mixed-family |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
588 ;; (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
589 ;; (fonts (w3-table-hack-x-face . "LineDrawNormal") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
590 ;; (bold . "Helvetica") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
591 ;; (bold-italic . "NewCenturySchlbk-BoldItalic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
592 ;; (italic . "Zapf-Chancery-MediumItalic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
593 ;; (normal . "Courier-Bold")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
594 ;; (avg-char-width . 6.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
595 ;; (space-width . 6.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
596 ;; (line-height . 10.55)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
597 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
598 ;; Despite the note above, it is recommended that some convention about |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
599 ;; entry order be used. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
600 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
601 ;; You can get information on all the fonts resident in YOUR printer |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
602 ;; by uncommenting the line: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
603 ;; % 3 cm 20 cm moveto ReportAllFontInfo showpage |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
604 ;; |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
605 ;; The PostScript file should be sent to YOUR PostScript printer. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
606 ;; If you send it to ghostscript or to another PostScript printer, |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
607 ;; you may get slightly different results. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
608 ;; Anyway, as ghostscript fonts are autoload, you won't get |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
609 ;; much font info. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
610 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
611 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
612 ;; How Ps-Print Deals With Faces |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
613 ;; ----------------------------- |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
614 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
615 ;; The ps-print-*-with-faces commands attempt to determine which faces |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
616 ;; should be printed in bold or italic, but their guesses aren't |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
617 ;; always right. For example, you might want to map colors into faces |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
618 ;; so that blue faces print in bold, and red faces in italic. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
619 ;; |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
620 ;; It is possible to force ps-print to consider specific faces bold, |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
621 ;; italic or underline, no matter what font they are displayed in, by setting |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
622 ;; the variables `ps-bold-faces', `ps-italic-faces' and `ps-underlined-faces'. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
623 ;; These variables contain lists of faces that ps-print should consider bold, |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
624 ;; italic or underline; to set them, put code like the following into your |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
625 ;; .emacs file: |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
626 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
627 ;; (setq ps-bold-faces '(my-blue-face)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
628 ;; (setq ps-italic-faces '(my-red-face)) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
629 ;; (setq ps-underlined-faces '(my-green-face)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
630 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
631 ;; Faces like bold-italic that are both bold and italic should go in |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
632 ;; *both* lists. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
633 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
634 ;; Ps-print keeps internal lists of which fonts are bold and which are |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
635 ;; italic; these lists are built the first time you invoke ps-print. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
636 ;; For the sake of efficiency, the lists are built only once; the same |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
637 ;; lists are referred in later invocations of ps-print. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
638 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
639 ;; Because these lists are built only once, it's possible for them to |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
640 ;; get out of sync, if a face changes, or if new faces are added. To |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
641 ;; get the lists back in sync, you can set the variable |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
642 ;; `ps-build-face-reference' to t, and the lists will be rebuilt the |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
643 ;; next time ps-print is invoked. If you need that the lists always be |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
644 ;; rebuilt when ps-print is invoked, set the variable |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
645 ;; `ps-always-build-face-reference' to t. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
646 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
647 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
648 ;; How Ps-Print Deals With Color |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
649 ;; ----------------------------- |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
650 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
651 ;; Ps-print detects faces with foreground and background colors |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
652 ;; defined and embeds color information in the PostScript image. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
653 ;; The default foreground and background colors are defined by the |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
654 ;; variables `ps-default-fg' and `ps-default-bg'. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
655 ;; On black-and-white printers, colors are displayed in grayscale. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
656 ;; To turn off color output, set `ps-print-color-p' to nil. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
657 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
658 ;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
659 ;; How Ps-Print Maps Faces |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
660 ;; ----------------------- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
661 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
662 ;; As ps-print uses PostScript to print buffers, it is possible to have |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
663 ;; other attributes associated with faces. So the new attributes used |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
664 ;; by ps-print are: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
665 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
666 ;; strikeout - like underline, but the line is in middle of text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
667 ;; overline - like underline, but the line is over the text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
668 ;; shadow - text will have a shadow. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
669 ;; box - text will be surrounded by a box. |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
670 ;; outline - print characters as hollow outlines. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
671 ;; |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
672 ;; See the documentation for `ps-extend-face'. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
673 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
674 ;; Let's, for example, remap font-lock-keyword-face to another foreground color |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
675 ;; and bold attribute: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
676 ;; |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
677 ;; (ps-extend-face '(font-lock-keyword-face "RoyalBlue" nil bold) 'MERGE) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
678 ;; |
19446
15ecd855fec8
(ps-print-face-extension-alist): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
19445
diff
changeset
|
679 ;; If you want to use a new face, define it first with `defface', |
15ecd855fec8
(ps-print-face-extension-alist): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
19445
diff
changeset
|
680 ;; and then call `ps-extend-face' to specify how to print it. |
15ecd855fec8
(ps-print-face-extension-alist): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
19445
diff
changeset
|
681 ;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
682 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
683 ;; How Ps-Print Has A Text And/Or Image On Background |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
684 ;; -------------------------------------------------- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
685 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
686 ;; Ps-print can print texts and/or EPS PostScript images on background; it is |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
687 ;; possible to define the following text attributes: font name, font size, |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
688 ;; initial position, angle, gray scale and pages to print. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
689 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
690 ;; It has the following EPS PostScript images attributes: file name containing |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
691 ;; the image, initial position, X and Y scales, angle and pages to print. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
692 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
693 ;; See documentation for `ps-print-background-text' and |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
694 ;; `ps-print-background-image'. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
695 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
696 ;; For example, if we wish to print text "preliminary" on all pages and text |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
697 ;; "special" on page 5 and from page 11 to page 17, we could specify: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
698 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
699 ;; (setq ps-print-background-text |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
700 ;; '(("preliminary") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
701 ;; ("special" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
702 ;; "LeftMargin" "BottomMargin PrintHeight add" ; X and Y position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
703 ;; ; (upper left corner) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
704 ;; nil nil nil |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
705 ;; "PrintHeight neg PrintPageWidth atan" ; angle |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
706 ;; 5 (11 . 17)) ; page list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
707 ;; )) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
708 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
709 ;; Similarly, we could print image "~/images/EPS-image1.ps" on all pages and |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
710 ;; image "~/images/EPS-image2.ps" on page 5 and from page 11 to page 17, we |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
711 ;; specify: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
712 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
713 ;; (setq ps-print-background-image |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
714 ;; '(("~/images/EPS-image1.ps" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
715 ;; "LeftMargin" "BottomMargin") ; X and Y position (lower left corner) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
716 ;; ("~/images/EPS-image2.ps" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
717 ;; "LeftMargin" "BottomMargin PrintHeight 2 div add" ; X and Y position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
718 ;; ; (upper left corner) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
719 ;; nil nil nil |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
720 ;; 5 (11 . 17)) ; page list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
721 ;; )) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
722 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
723 ;; If it is not possible to read (or does not exist) an image file, that file |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
724 ;; is ignored. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
725 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
726 ;; The printing order is: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
727 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
728 ;; 1. Print zebra stripes |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
729 ;; 2. Print background texts that it should be on all pages |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
730 ;; 3. Print background images that it should be on all pages |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
731 ;; 4. Print background texts only for current page (if any) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
732 ;; 5. Print background images only for current page (if any) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
733 ;; 6. Print header |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
734 ;; 7. Print buffer text (with faces, if specified) and line number |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
735 ;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
736 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
737 ;; Utilities |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
738 ;; --------- |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
739 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
740 ;; Some tools are provided to help you customize your font setup. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
741 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
742 ;; `ps-setup' returns (some part of) the current setup. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
743 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
744 ;; To avoid wrapping too many lines, you may want to adjust the |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
745 ;; left and right margins and the font size. On UN*X systems, do: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
746 ;; pr -t file | awk '{printf "%3d %s\n", length($0), $0}' | sort -r | head |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
747 ;; to determine the longest lines of your file. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
748 ;; Then, the command `ps-line-lengths' will give you the correspondence |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
749 ;; between a line length (number of characters) and the maximum font |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
750 ;; size which doesn't wrap such a line with the current ps-print setup. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
751 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
752 ;; The commands `ps-nb-pages-buffer' and `ps-nb-pages-region' display |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
753 ;; the correspondence between a number of pages and the maximum font |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
754 ;; size which allow the number of lines of the current buffer or of |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
755 ;; its current region to fit in this number of pages. |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
756 ;; |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
757 ;; NOTE: line folding is not taken into account in this process and could |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
758 ;; change the results. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
759 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
760 ;; |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
761 ;; New since version 1.5 |
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
762 ;; --------------------- |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
763 ;; |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
764 ;; Color output capability. |
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
765 ;; Automatic detection of font attributes (bold, italic). |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
766 ;; Configurable headers with page numbers. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
767 ;; Slightly faster. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
768 ;; Support for different paper sizes. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
769 ;; Better conformance to PostScript Document Structure Conventions. |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
770 ;; |
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
771 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
772 ;; New since version 2.8 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
773 ;; --------------------- |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
774 ;; |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
775 ;; [keinichi] 980819 Kein'ichi Handa <handa@etl.go.jp> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
776 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
777 ;; Multi-byte buffer handling. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
778 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
779 ;; [vinicius] 980306 Vinicius Jose Latorre <vinicius@cpqd.com.br> |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
780 ;; |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
781 ;; Skip invisible text. |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
782 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
783 ;; [vinicius] 971130 Vinicius Jose Latorre <vinicius@cpqd.com.br> |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
784 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
785 ;; Hooks: `ps-print-hook', `ps-print-begin-page-hook' and |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
786 ;; `ps-print-begin-column-hook'. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
787 ;; Put one header per page over the columns. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
788 ;; Better database font management. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
789 ;; Better control characters handling. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
790 ;; |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
791 ;; [vinicius] 971121 Vinicius Jose Latorre <vinicius@cpqd.com.br> |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
792 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
793 ;; Dynamic evaluation at print time of `ps-lpr-switches'. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
794 ;; Handle control characters. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
795 ;; Face remapping. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
796 ;; New face attributes. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
797 ;; Line number. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
798 ;; Zebra stripes. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
799 ;; Text and/or image on background. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
800 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
801 ;; [jack] 960517 Jacques Duthen <duthen@cegelec-red.fr> |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
802 ;; |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
803 ;; Font family and float size for text and header. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
804 ;; Landscape mode. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
805 ;; Multiple columns. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
806 ;; Tools for page setup. |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
807 ;; |
7257 | 808 ;; |
809 ;; Known bugs and limitations of ps-print: | |
810 ;; -------------------------------------- | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
811 ;; |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
812 ;; Although color printing will work in XEmacs 19.12, it doesn't work |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
813 ;; well; in particular, bold or italic fonts don't print in the right |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
814 ;; background color. |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
815 ;; |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
816 ;; Invisible properties aren't correctly ignored in XEmacs 19.12. |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
817 ;; |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
818 ;; Automatic font-attribute detection doesn't work well, especially |
10683 | 819 ;; with hilit19 and older versions of get-create-face. Users having |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
820 ;; problems with auto-font detection should use the lists |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
821 ;; `ps-italic-faces', `ps-bold-faces' and `ps-underlined-faces' and/or |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
822 ;; turn off automatic detection by setting `ps-auto-font-detect' to nil. |
10683 | 823 ;; |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
824 ;; Automatic font-attribute detection doesn't work with XEmacs 19.12 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
825 ;; in tty mode; use the lists `ps-italic-faces', `ps-bold-faces' and |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
826 ;; `ps-underlined-faces' instead. |
7257 | 827 ;; |
10683 | 828 ;; Still too slow; could use some hand-optimization. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
829 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
830 ;; Default background color isn't working. |
7257 | 831 ;; |
832 ;; Faces are always treated as opaque. | |
833 ;; | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
834 ;; Epoch and Emacs 18 not supported. At all. |
7257 | 835 ;; |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
836 ;; Fixed-pitch fonts work better for line folding, but are not required. |
7257 | 837 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
838 ;; `ps-nb-pages-buffer' and `ps-nb-pages-region' don't take care |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
839 ;; of folding lines. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
840 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
841 ;; |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
842 ;; Things to change: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
843 ;; ---------------- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
844 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
845 ;; Avoid page break inside a paragraph. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
846 ;; Add `ps-non-bold-faces' and `ps-non-italic-faces' (should be easy). |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
847 ;; Improve the memory management for big files (hard?). |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
848 ;; `ps-nb-pages-buffer' and `ps-nb-pages-region' should take care |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
849 ;; of folding lines. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
850 ;; |
7257 | 851 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
852 ;; Acknowledgements |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
853 ;; ---------------- |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
854 ;; |
23138
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
855 ;; Thanks to Kein'ichi Handa <handa@etl.go.jp> for multi-byte buffer handling. |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
856 ;; |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
857 ;; Thanks to Matthew O Persico <Matthew.Persico@lazard.com> for line number on |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
858 ;; empty columns. |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
859 ;; |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
860 ;; Thanks to Theodore Jump <tjump@cais.com> for adjust PostScript code order on |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
861 ;; last page. |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
862 ;; |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
863 ;; Thanks to Roland Ducournau <ducour@lirmm.fr> for |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
864 ;; `ps-print-control-characters' variable documentation. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
865 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
866 ;; Thanks to Marcus G Daniels <marcus@cathcart.sysc.pdx.edu> for a better |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
867 ;; database font management. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
868 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
869 ;; Thanks to Martin Boyer <gamin@videotron.ca> for some ideas on putting one |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
870 ;; header per page over the columns and correct line numbers when printing a |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
871 ;; region. |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
872 ;; |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
873 ;; Thanks to Steven L Baur <steve@miranova.com> for dynamic evaluation at |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
874 ;; print time of `ps-lpr-switches'. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
875 ;; |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
876 ;; Thanks to Kevin Rodgers <kevinr@ihs.com> for handling control characters |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
877 ;; (his code was severely modified, but the main idea was kept). |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
878 ;; |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
879 ;; Thanks to some suggestions on: |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
880 ;; * Face color map: Marco Melgazzi <marco@techie.com> |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
881 ;; * XEmacs compatibility: William J. Henney <will@astrosmo.unam.mx> |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
882 ;; * Check `ps-paper-type': Sudhakar Frederick <sfrederi@asc.corp.mot.com> |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
883 ;; |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
884 ;; Thanks to Jacques Duthen <duthen@cegelec-red.fr> (Jack) for the 3.4 version |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
885 ;; I started from. [vinicius] |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
886 ;; |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
887 ;; Thanks to Jim Thompson <?@?> for the 2.8 version I started from. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
888 ;; [jack] |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
889 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
890 ;; Thanks to Kevin Rodgers <kevinr@ihs.com> for adding support for |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
891 ;; color and the invisible property. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
892 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
893 ;; Thanks to Avishai Yacobi, avishaiy@mcil.comm.mot.com, for writing |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
894 ;; the initial port to Emacs 19. His code is no longer part of |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
895 ;; ps-print, but his work is still appreciated. |
7257 | 896 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
897 ;; Thanks to Remi Houdaille and Michel Train, michel@metasoft.fdn.org, |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
898 ;; for adding underline support. Their code also is no longer part of |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
899 ;; ps-print, but their efforts are not forgotten. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
900 ;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
901 ;; Thanks also to all of you who mailed code to add features to |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
902 ;; ps-print; although I didn't use your code, I still appreciate your |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
903 ;; sharing it with me. |
7257 | 904 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
905 ;; Thanks to all who mailed comments, encouragement, and criticism. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
906 ;; Thanks also to all who responded to my survey; I had too many |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
907 ;; responses to reply to them all, but I greatly appreciate your |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
908 ;; interest. |
7257 | 909 ;; |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
910 ;; Jim |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
911 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
7257 | 912 |
913 ;;; Code: | |
914 | |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
915 (unless (featurep 'lisp-float-type) |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
916 (error "`ps-print' requires floating point support")) |
7257 | 917 |
918 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
919 ;; User Variables: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
920 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
921 ;;; Interface to the command system |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
922 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
923 (defgroup ps-print nil |
20331 | 924 "PostScript generator for Emacs 19" |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
925 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
926 :group 'wp) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
927 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
928 (defgroup ps-print-horizontal nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
929 "Horizontal page layout" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
930 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
931 :tag "Horizontal" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
932 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
933 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
934 (defgroup ps-print-vertical nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
935 "Vertical page layout" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
936 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
937 :tag "Vertical" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
938 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
939 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
940 (defgroup ps-print-header nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
941 "Headers layout" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
942 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
943 :tag "Header" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
944 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
945 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
946 (defgroup ps-print-font nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
947 "Fonts customization" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
948 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
949 :tag "Font" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
950 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
951 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
952 (defgroup ps-print-color nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
953 "Color customization" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
954 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
955 :tag "Color" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
956 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
957 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
958 (defgroup ps-print-face nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
959 "Faces customization" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
960 :prefix "ps-" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
961 :tag "PS Faces" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
962 :group 'ps-print |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
963 :group 'faces) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
964 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
965 |
22680
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
966 (defcustom ps-printer-name printer-name |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
967 "*The name of a local printer for printing PostScript files. |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
968 |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
969 On Unix-like systems, a string value should be a name understood by |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
970 lpr's -P option; otherwise the value should be nil. |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
971 |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
972 On MS-DOS and MS-Windows systems, if the value is a string, then it is |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
973 taken as the name of the device to which PostScript files are written. |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
974 By default it is the same as `printer-name'; typical non-default |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
975 settings would be \"LPT1\" to \"LPT3\" for parallel printers, or |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
976 \"COM1\" to \"COM4\" or \"AUX\" for serial printers, or |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
977 \"//hostname/printer\" for a shared network printer. You can also set |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
978 it to a name of a file, in which case the output gets appended to that |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
979 file. \(Note that `ps-print' package already has facilities for |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
980 printing to a file, so you might as well use them instead of changing |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
981 the setting of this variable.\) If you want to silently discard the |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
982 printed output, set this to \"NUL\". |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
983 |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
984 On DOS/Windows, if the value is anything but a string, PostScript files |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
985 will be piped to the program given by `ps-lpr-command', with switches |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
986 given by `ps-lpr-switches', which see." |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
987 :type '(choice file (other :tag "Pipe to ps-lpr-command" pipe)) |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
988 :group 'ps-print) |
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
989 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
990 (defcustom ps-lpr-command lpr-command |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
991 "*The shell command for printing a PostScript file." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
992 :type 'string |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
993 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
994 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
995 (defcustom ps-lpr-switches lpr-switches |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
996 "*A list of extra switches to pass to `ps-lpr-command'." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
997 :type '(repeat string) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
998 :group 'ps-print) |
7257 | 999 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1000 ;;; Page layout |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1001 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1002 ;; All page dimensions are in PostScript points. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1003 ;; 1 inch == 2.54 cm == 72 points |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1004 ;; 1 cm == (/ 1 2.54) inch == (/ 72 2.54) points |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1005 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1006 ;; Letter 8.5 inch x 11.0 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1007 ;; Legal 8.5 inch x 14.0 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1008 ;; A4 8.26 inch x 11.69 inch = 21.0 cm x 29.7 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1009 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1010 ;; LetterSmall 7.68 inch x 10.16 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1011 ;; Tabloid 11.0 inch x 17.0 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1012 ;; Ledger 17.0 inch x 11.0 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1013 ;; Statement 5.5 inch x 8.5 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1014 ;; Executive 7.5 inch x 10.0 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1015 ;; A3 11.69 inch x 16.5 inch = 29.7 cm x 42.0 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1016 ;; A4Small 7.47 inch x 10.85 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1017 ;; B4 10.125 inch x 14.33 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1018 ;; B5 7.16 inch x 10.125 inch |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1019 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1020 (defcustom ps-page-dimensions-database |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1021 (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1022 (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1023 (list 'letter (* 72 8.5) (* 72 11.0)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1024 (list 'legal (* 72 8.5) (* 72 14.0)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1025 (list 'letter-small (* 72 7.68) (* 72 10.16)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1026 (list 'tabloid (* 72 11.0) (* 72 17.0)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1027 (list 'ledger (* 72 17.0) (* 72 11.0)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1028 (list 'statement (* 72 5.5) (* 72 8.5)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1029 (list 'executive (* 72 7.5) (* 72 10.0)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1030 (list 'a4small (* 72 7.47) (* 72 10.85)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1031 (list 'b4 (* 72 10.125) (* 72 14.33)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1032 (list 'b5 (* 72 7.16) (* 72 10.125))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1033 "*List associating a symbolic paper type to its width and height. |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1034 see `ps-paper-type'." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1035 :type '(repeat (list :tag "Paper Type" |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1036 (symbol :tag "Name") |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1037 (number :tag "Width") |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1038 (number :tag "Height"))) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1039 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1040 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1041 ;;;###autoload |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1042 (defcustom ps-paper-type 'letter |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1043 "*Specifies the size of paper to format for. |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1044 Should be one of the paper types defined in `ps-page-dimensions-database', for |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1045 example `letter', `legal' or `a4'." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1046 :type '(symbol :validate (lambda (wid) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1047 (if (assq (widget-value wid) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1048 ps-page-dimensions-database) |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1049 nil |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1050 (widget-put wid :error "Unknown paper size") |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1051 wid))) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1052 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1053 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1054 (defcustom ps-landscape-mode nil |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1055 "*Non-nil means print in landscape mode." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1056 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1057 :group 'ps-print) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1058 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1059 (defcustom ps-print-control-characters 'control-8-bit |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1060 "*Specifies the printable form for control and 8-bit characters. |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1061 That is, instead of sending, for example, a ^D (\004) to printer, |
23138
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
1062 it is sent the string \"^D\". |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1063 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1064 Valid values are: |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1065 |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
1066 `8-bit' This is the value to use when you want an ASCII encoding of |
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
1067 any control or non-ASCII character. Control characters are |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1068 encoded as \"^D\", and non-ascii characters have an |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1069 octal encoding. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1070 |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
1071 `control-8-bit' This is the value to use when you want an ASCII encoding of |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1072 any control character, whether it is 7 or 8-bit. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1073 European 8-bits accented characters are printed according |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1074 the current font. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1075 |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
1076 `control' Only ascii control characters have an ASCII encoding. |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1077 European 8-bits accented characters are printed according |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1078 the current font. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1079 |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
1080 nil No ASCII encoding. Any character is printed according the |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1081 current font. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
1082 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1083 Any other value is treated as nil." |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1084 :type '(choice (const 8-bit) (const control-8-bit) |
22596
b926b360d222
(ps-print-control-characters): Use `other' widget
Andreas Schwab <schwab@suse.de>
parents:
22397
diff
changeset
|
1085 (const control) (other :tag "nil" nil)) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1086 :group 'ps-print) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1087 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1088 (defcustom ps-number-of-columns (if ps-landscape-mode 2 1) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1089 "*Specifies the number of columns" |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1090 :type 'number |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1091 :group 'ps-print) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1092 |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
1093 (defcustom ps-zebra-stripes nil |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1094 "*Non-nil means print zebra stripes. |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1095 See also documentation for `ps-zebra-stripe-height'." |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1096 :type 'boolean |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1097 :group 'ps-print) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1098 |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
1099 (defcustom ps-zebra-stripe-height 3 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1100 "*Number of zebra stripe lines. |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1101 See also documentation for `ps-zebra-stripes'." |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1102 :type 'number |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1103 :group 'ps-print) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1104 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1105 (defcustom ps-line-number nil |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1106 "*Non-nil means print line number." |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1107 :type 'boolean |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1108 :group 'ps-print) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1109 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1110 (defcustom ps-print-background-image nil |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1111 "*EPS image list to be printed on background. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1112 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1113 The elements are: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1114 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1115 (FILENAME X Y XSCALE YSCALE ROTATION PAGES...) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1116 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1117 FILENAME is a file name which contains an EPS image or some PostScript |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1118 programming like EPS. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1119 FILENAME is ignored, if it doesn't exist or is read protected. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1120 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1121 X and Y are relative positions on paper to put the image. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1122 If X and Y are nil, the image is centralized on paper. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1123 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1124 XSCALE and YSCALE are scale factor to be applied to image before printing. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1125 If XSCALE and YSCALE are nil, the original size is used. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1126 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1127 ROTATION is the image rotation angle; if nil, the default is 0. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1128 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1129 PAGES designates the page to print background image. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1130 PAGES may be a number or a cons cell (FROM . TO) designating FROM page |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1131 to TO page. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1132 If PAGES is nil, print background image on all pages. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1133 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1134 X, Y, XSCALE, YSCALE and ROTATION may be a floating point number, |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1135 an integer number or a string. If it is a string, the string should contain |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1136 PostScript programming that returns a float or integer value. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1137 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1138 For example, if you wish to print an EPS image on all pages do: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1139 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1140 '((\"~/images/EPS-image.ps\"))" |
20019
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1141 :type '(repeat (list file |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1142 (choice :tag "X" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1143 (choice :tag "Y" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1144 (choice :tag "X Scale" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1145 (choice :tag "Y Scale" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1146 (choice :tag "Rotation" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1147 (repeat :tag "Pages" :inline t |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1148 (radio integer |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1149 (cons :tag "Range" |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1150 (integer :tag "From") |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1151 (integer :tag "To")))))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1152 :group 'ps-print) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1153 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1154 (defcustom ps-print-background-text nil |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1155 "*Text list to be printed on background. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1156 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1157 The elements are: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1158 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1159 (STRING X Y FONT FONTSIZE GRAY ROTATION PAGES...) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1160 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1161 STRING is the text to be printed on background. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1162 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1163 X and Y are positions on paper to put the text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1164 If X and Y are nil, the text is positioned at lower left corner. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1165 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1166 FONT is a font name to be used on printing the text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1167 If nil, \"Times-Roman\" is used. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1168 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1169 FONTSIZE is font size to be used, if nil, 200 is used. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1170 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1171 GRAY is the text gray factor (should be very light like 0.8). |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1172 If nil, the default is 0.85. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1173 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1174 ROTATION is the text rotation angle; if nil, the angle is given by |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1175 the diagonal from lower left corner to upper right corner. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1176 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1177 PAGES designates the page to print background text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1178 PAGES may be a number or a cons cell (FROM . TO) designating FROM page |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1179 to TO page. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1180 If PAGES is nil, print background text on all pages. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1181 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1182 X, Y, FONTSIZE, GRAY and ROTATION may be a floating point number, |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1183 an integer number or a string. If it is a string, the string should contain |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1184 PostScript programming that returns a float or integer value. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1185 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1186 For example, if you wish to print text \"Preliminary\" on all pages do: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1187 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1188 '((\"Preliminary\"))" |
20019
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1189 :type '(repeat (list string |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1190 (choice :tag "X" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1191 (choice :tag "Y" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1192 (choice :tag "Font" string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1193 (choice :tag "Fontsize" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1194 (choice :tag "Gray" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1195 (choice :tag "Rotation" number string (const nil)) |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1196 (repeat :tag "Pages" :inline t |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1197 (radio integer |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1198 (cons :tag "Range" |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1199 (integer :tag "From") |
d8e290881d8c
(ps-print-background-image): Fix customize type.
Karl Heuer <kwzh@gnu.org>
parents:
19879
diff
changeset
|
1200 (integer :tag "To")))))) |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1201 :group 'ps-print) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1202 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1203 ;;; Horizontal layout |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1204 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1205 ;; ------------------------------------------ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1206 ;; | | | | | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1207 ;; | lm | text | ic | text | ic | text | rm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1208 ;; | | | | | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1209 ;; ------------------------------------------ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1210 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1211 (defcustom ps-left-margin (/ (* 72 2.0) 2.54) ; 2 cm |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1212 "*Left margin in points (1/72 inch)." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1213 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1214 :group 'ps-print-horizontal) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1215 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1216 (defcustom ps-right-margin (/ (* 72 2.0) 2.54) ; 2 cm |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1217 "*Right margin in points (1/72 inch)." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1218 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1219 :group 'ps-print-horizontal) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1220 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1221 (defcustom ps-inter-column (/ (* 72 2.0) 2.54) ; 2 cm |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1222 "*Horizontal space between columns in points (1/72 inch)." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1223 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1224 :group 'ps-print-horizontal) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1225 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1226 ;;; Vertical layout |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1227 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1228 ;; |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1229 ;; | tm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1230 ;; |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1231 ;; | header | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1232 ;; |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1233 ;; | ho | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1234 ;; |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1235 ;; | text | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1236 ;; |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1237 ;; | bm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1238 ;; |--------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1239 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1240 (defcustom ps-bottom-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1241 "*Bottom margin in points (1/72 inch)." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1242 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1243 :group 'ps-print-vertical) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1244 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1245 (defcustom ps-top-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1246 "*Top margin in points (1/72 inch)." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1247 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1248 :group 'ps-print-vertical) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1249 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1250 (defcustom ps-header-offset (/ (* 72 1.0) 2.54) ; 1.0 cm |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1251 "*Vertical space in points (1/72 inch) between the main text and the header." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1252 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1253 :group 'ps-print-vertical) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1254 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1255 (defcustom ps-header-line-pad 0.15 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1256 "*Portion of a header title line height to insert between the header frame |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1257 and the text it contains, both in the vertical and horizontal directions." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1258 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1259 :group 'ps-print-vertical) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1260 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1261 ;;; Header setup |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1262 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1263 (defcustom ps-print-header t |
10493 | 1264 "*Non-nil means print a header at the top of each page. |
1265 By default, the header displays the buffer name, page number, and, if | |
1266 the buffer is visiting a file, the file's directory. Headers are | |
16949
18731f7e2c73
(ps-print-header): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
16870
diff
changeset
|
1267 customizable by changing variables `ps-left-header' and |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1268 `ps-right-header'." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1269 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1270 :group 'ps-print-header) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1271 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1272 (defcustom ps-print-only-one-header nil |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1273 "*Non-nil means print only one header at the top of each page. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1274 This is useful when printing more than one column, so it is possible |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1275 to have only one header over all columns or one header per column. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1276 See also `ps-print-header'." |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1277 :type 'boolean |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1278 :group 'ps-print-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1279 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1280 (defcustom ps-print-header-frame t |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1281 "*Non-nil means draw a gaudy frame around the header." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1282 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1283 :group 'ps-print-header) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1284 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1285 (defcustom ps-header-lines 2 |
20331 | 1286 "*Number of lines to display in page header, when generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1287 :type 'integer |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1288 :group 'ps-print-header) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1289 (make-variable-buffer-local 'ps-header-lines) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1290 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1291 (defcustom ps-show-n-of-n t |
10683 | 1292 "*Non-nil means show page numbers as N/M, meaning page N of M. |
20331 | 1293 NOTE: page numbers are displayed as part of headers, |
1294 see variable `ps-print-headers'." | |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1295 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1296 :group 'ps-print-header) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1297 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1298 (defcustom ps-spool-duplex nil ; Not many people have duplex |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1299 ; printers, so default to nil. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1300 "*Non-nil indicates spooling is for a two-sided printer. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1301 For a duplex printer, the `ps-spool-*' commands will insert blank pages |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1302 as needed between print jobs so that the next buffer printed will |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1303 start on the right page. Also, if headers are turned on, the headers |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1304 will be reversed on duplex printers so that the page numbers fall to |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1305 the left on even-numbered pages." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1306 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1307 :group 'ps-print-header) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1308 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1309 ;;; Fonts |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1310 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1311 (defcustom ps-font-info-database |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1312 '((Courier ; the family key |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1313 (fonts (normal . "Courier") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1314 (bold . "Courier-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1315 (italic . "Courier-Oblique") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1316 (bold-italic . "Courier-BoldOblique")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1317 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1318 (line-height . 10.55) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1319 (space-width . 6.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1320 (avg-char-width . 6.0)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1321 (Helvetica ; the family key |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1322 (fonts (normal . "Helvetica") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1323 (bold . "Helvetica-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1324 (italic . "Helvetica-Oblique") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1325 (bold-italic . "Helvetica-BoldOblique")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1326 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1327 (line-height . 11.56) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1328 (space-width . 2.78) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1329 (avg-char-width . 5.09243)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1330 (Times |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1331 (fonts (normal . "Times-Roman") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1332 (bold . "Times-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1333 (italic . "Times-Italic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1334 (bold-italic . "Times-BoldItalic")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1335 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1336 (line-height . 11.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1337 (space-width . 2.5) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1338 (avg-char-width 4.71432)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1339 (Palatino |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1340 (fonts (normal . "Palatino-Roman") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1341 (bold . "Palatino-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1342 (italic . "Palatino-Italic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1343 (bold-italic . "Palatino-BoldItalic")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1344 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1345 (line-height . 12.1) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1346 (space-width . 2.5) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1347 (avg-char-width . 5.08676)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1348 (Helvetica-Narrow |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1349 (fonts (normal . "Helvetica-Narrow") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1350 (bold . "Helvetica-Narrow-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1351 (italic . "Helvetica-Narrow-Oblique") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1352 (bold-italic . "Helvetica-Narrow-BoldOblique")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1353 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1354 (line-height . 11.56) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1355 (space-width . 2.2796) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1356 (avg-char-width . 4.17579)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1357 (NewCenturySchlbk |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1358 (fonts (normal . "NewCenturySchlbk-Roman") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1359 (bold . "NewCenturySchlbk-Bold") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1360 (italic . "NewCenturySchlbk-Italic") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1361 (bold-italic . "NewCenturySchlbk-BoldItalic")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1362 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1363 (line-height 12.15) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1364 (space-width . 2.78) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1365 (avg-char-width . 5.31162)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1366 ;; got no bold for the next ones |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1367 (AvantGarde-Book |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1368 (fonts (normal . "AvantGarde-Book") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1369 (italic . "AvantGarde-BookOblique")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1370 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1371 (line-height . 11.77) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1372 (space-width . 2.77) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1373 (avg-char-width . 5.45189)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1374 (AvantGarde-Demi |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1375 (fonts (normal . "AvantGarde-Demi") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1376 (italic . "AvantGarde-DemiOblique")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1377 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1378 (line-height . 12.72) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1379 (space-width . 2.8) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1380 (avg-char-width . 5.51351)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1381 (Bookman-Demi |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1382 (fonts (normal . "Bookman-Demi") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1383 (italic . "Bookman-DemiItalic")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1384 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1385 (line-height . 11.77) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1386 (space-width . 3.4) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1387 (avg-char-width . 6.05946)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1388 (Bookman-Light |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1389 (fonts (normal . "Bookman-Light") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1390 (italic . "Bookman-LightItalic")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1391 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1392 (line-height . 11.79) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1393 (space-width . 3.2) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1394 (avg-char-width . 5.67027)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1395 ;; got no bold and no italic for the next ones |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1396 (Symbol |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1397 (fonts (normal . "Symbol")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1398 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1399 (line-height . 13.03) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1400 (space-width . 2.5) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1401 (avg-char-width . 3.24324)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1402 (Zapf-Dingbats |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1403 (fonts (normal . "Zapf-Dingbats")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1404 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1405 (line-height . 9.63) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1406 (space-width . 2.78) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1407 (avg-char-width . 2.78)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1408 (Zapf-Chancery-MediumItalic |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1409 (fonts (normal . "Zapf-Chancery-MediumItalic")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1410 (size . 10.0) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1411 (line-height . 11.45) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1412 (space-width . 2.2) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1413 (avg-char-width . 4.10811)) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1414 ) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1415 "*Font info database: font family (the key), name, bold, italic, bold-italic, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1416 reference size, line height, space width, average character width. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1417 To get the info for another specific font (say Helvetica), do the following: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1418 - create a new buffer |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1419 - generate the PostScript image to a file (C-u M-x ps-print-buffer) |
20331 | 1420 - open this file and delete the leading `%' (which is the PostScript |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1421 comment character) from the line |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1422 `% 3 cm 20 cm moveto 10 /Courier ReportFontInfo showpage' |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1423 to get the line |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1424 `3 cm 20 cm moveto 10 /Helvetica ReportFontInfo showpage' |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1425 - add the values to `ps-font-info-database'. |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1426 You can get all the fonts of YOUR printer using `ReportAllFontInfo'." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1427 :type '(repeat (list :tag "Font Definition" |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1428 (symbol :tag "Font Family") |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1429 (cons (const fonts) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1430 (repeat (cons (choice (const normal) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1431 (const bold) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1432 (const italic) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1433 (const bold-italic) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1434 (symbol :tag "Face")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1435 (string :tag "Font Name")))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1436 (cons (const size) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1437 (number :tag "Reference Size")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1438 (cons (const line-height) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1439 (number :tag "Line Height")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1440 (cons (const space-width) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1441 (number :tag "Space Width")) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1442 (cons (const avg-char-width) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1443 (number :tag "Average Character Width")))) |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1444 :group 'ps-print-font) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1445 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1446 (defcustom ps-font-family 'Courier |
20331 | 1447 "Font family name for ordinary text, when generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1448 :type 'symbol |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1449 :group 'ps-print-font) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1450 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1451 (defcustom ps-font-size (if ps-landscape-mode 7 8.5) |
20331 | 1452 "Font size, in points, for ordinary text, when generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1453 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1454 :group 'ps-print-font) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1455 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1456 (defcustom ps-header-font-family 'Helvetica |
20331 | 1457 "Font family name for text in the header, when generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1458 :type 'symbol |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1459 :group 'ps-print-font) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1460 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1461 (defcustom ps-header-font-size (if ps-landscape-mode 10 12) |
20331 | 1462 "Font size, in points, for text in the header, when generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1463 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1464 :group 'ps-print-font) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1465 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1466 (defcustom ps-header-title-font-size (if ps-landscape-mode 12 14) |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
1467 "Font size, in points, for the top line of text in header, in PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1468 :type 'number |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1469 :group 'ps-print-font) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1470 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1471 ;;; Colors |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1472 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1473 ;; Printing color requires x-color-values. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1474 (defcustom ps-print-color-p (or (fboundp 'x-color-values) ; Emacs |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1475 (fboundp 'color-instance-rgb-components)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1476 ; XEmacs |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1477 "*If non-nil, print the buffer's text in color." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1478 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1479 :group 'ps-print-color) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1480 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1481 (defcustom ps-default-fg '(0.0 0.0 0.0) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1482 "*RGB values of the default foreground color. Defaults to black." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1483 :type '(list (number :tag "Red") (number :tag "Green") (number :tag "Blue")) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1484 :group 'ps-print-color) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1485 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1486 (defcustom ps-default-bg '(1.0 1.0 1.0) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1487 "*RGB values of the default background color. Defaults to white." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1488 :type '(list (number :tag "Red") (number :tag "Green") (number :tag "Blue")) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1489 :group 'ps-print-color) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1490 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1491 (defcustom ps-auto-font-detect t |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1492 "*Non-nil means automatically detect bold/italic face attributes. |
19843
0c9342c1054d
(ps-face-bold-p): Use face-bold-p.
Richard M. Stallman <rms@gnu.org>
parents:
19787
diff
changeset
|
1493 If nil, we rely solely on the lists `ps-bold-faces', `ps-italic-faces', |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1494 and `ps-underlined-faces'." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1495 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1496 :group 'ps-print-font) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1497 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1498 (defcustom ps-bold-faces |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1499 (unless ps-print-color-p |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1500 '(font-lock-function-name-face |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1501 font-lock-builtin-face |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1502 font-lock-variable-name-face |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1503 font-lock-keyword-face |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1504 font-lock-warning-face)) |
10493 | 1505 "*A list of the \(non-bold\) faces that should be printed in bold font. |
20331 | 1506 This applies to generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1507 :type '(repeat face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1508 :group 'ps-print-face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1509 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1510 (defcustom ps-italic-faces |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1511 (unless ps-print-color-p |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1512 '(font-lock-variable-name-face |
20331 | 1513 font-lock-type-face |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1514 font-lock-string-face |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1515 font-lock-comment-face |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1516 font-lock-warning-face)) |
10493 | 1517 "*A list of the \(non-italic\) faces that should be printed in italic font. |
20331 | 1518 This applies to generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1519 :type '(repeat face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1520 :group 'ps-print-face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1521 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1522 (defcustom ps-underlined-faces |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1523 (unless ps-print-color-p |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1524 '(font-lock-function-name-face |
20953
f3f9df46d008
Changed font-lock-reference-face to font-lock-constant-face.
Simon Marshall <simon@gnu.org>
parents:
20516
diff
changeset
|
1525 font-lock-constant-face |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1526 font-lock-warning-face)) |
10493 | 1527 "*A list of the \(non-underlined\) faces that should be printed underlined. |
20331 | 1528 This applies to generating PostScript." |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1529 :type '(repeat face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1530 :group 'ps-print-face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1531 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1532 (defcustom ps-left-header |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1533 (list 'ps-get-buffer-name 'ps-header-dirpart) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1534 "*The items to display (each on a line) on the left part of the page header. |
20331 | 1535 This applies to generating PostScript. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1536 |
10493 | 1537 The value should be a list of strings and symbols, each representing an |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1538 entry in the PostScript array HeaderLinesLeft. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1539 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1540 Strings are inserted unchanged into the array; those representing |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1541 PostScript string literals should be delimited with PostScript string |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1542 delimiters '(' and ')'. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1543 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1544 For symbols with bound functions, the function is called and should |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1545 return a string to be inserted into the array. For symbols with bound |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1546 values, the value should be a string to be inserted into the array. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1547 In either case, function or variable, the string value has PostScript |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1548 string delimiters added to it." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1549 :type '(repeat (choice string symbol)) |
17681 | 1550 :group 'ps-print-header) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1551 (make-variable-buffer-local 'ps-left-header) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1552 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1553 (defcustom ps-right-header |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
1554 (list "/pagenumberstring load" 'time-stamp-mon-dd-yyyy 'time-stamp-hh:mm:ss) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1555 "*The items to display (each on a line) on the right part of the page header. |
20331 | 1556 This applies to generating PostScript. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1557 |
10493 | 1558 See the variable `ps-left-header' for a description of the format of |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1559 this variable." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1560 :type '(repeat (choice string symbol)) |
17681 | 1561 :group 'ps-print-header) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1562 (make-variable-buffer-local 'ps-right-header) |
7257 | 1563 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1564 (defcustom ps-razzle-dazzle t |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1565 "*Non-nil means report progress while formatting buffer." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1566 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1567 :group 'ps-print) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1568 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1569 (defcustom ps-adobe-tag "%!PS-Adobe-3.0\n" |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1570 "*Contains the header line identifying the output as PostScript. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1571 By default, `ps-adobe-tag' contains the standard identifier. Some |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1572 printers require slightly different versions of this line." |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1573 :type 'string |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1574 :group 'ps-print) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1575 |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1576 (defcustom ps-build-face-reference t |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1577 "*Non-nil means build the reference face lists. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1578 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1579 Ps-print sets this value to nil after it builds its internal reference |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1580 lists of bold and italic faces. By settings its value back to t, you |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1581 can force ps-print to rebuild the lists the next time you invoke one |
10493 | 1582 of the ...-with-faces commands. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1583 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1584 You should set this value back to t after you change the attributes of |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1585 any face, or create new faces. Most users shouldn't have to worry |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1586 about its setting, though." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1587 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1588 :group 'ps-print-face) |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1589 |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1590 (defcustom ps-always-build-face-reference nil |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1591 "*Non-nil means always rebuild the reference face lists. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1592 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1593 If this variable is non-nil, ps-print will rebuild its internal |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1594 reference lists of bold and italic faces *every* time one of the |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
1595 ...-with-faces commands is called. Most users shouldn't need to set this |
17405
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1596 variable." |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1597 :type 'boolean |
1c2363f760ef
Add defgroup's; change use defcustom for user vars.
Richard M. Stallman <rms@gnu.org>
parents:
17377
diff
changeset
|
1598 :group 'ps-print-face) |
7257 | 1599 |
1600 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1601 ;; User commands |
7257 | 1602 |
10683 | 1603 ;;;###autoload |
7257 | 1604 (defun ps-print-buffer (&optional filename) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1605 "Generate and print a PostScript image of the buffer. |
7257 | 1606 |
10493 | 1607 When called with a numeric prefix argument (C-u), prompts the user for |
7257 | 1608 the name of a file to save the PostScript image in, instead of sending |
1609 it to the printer. | |
1610 | |
1611 More specifically, the FILENAME argument is treated as follows: if it | |
1612 is nil, send the image to the printer. If FILENAME is a string, save | |
1613 the PostScript image in a file with that name. If FILENAME is a | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1614 number, prompt the user for the name of the file to save in." |
10683 | 1615 (interactive (list (ps-print-preprint current-prefix-arg))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1616 (ps-print-without-faces (point-min) (point-max) filename)) |
7257 | 1617 |
1618 | |
10683 | 1619 ;;;###autoload |
7257 | 1620 (defun ps-print-buffer-with-faces (&optional filename) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1621 "Generate and print a PostScript image of the buffer. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1622 Like `ps-print-buffer', but includes font, color, and underline |
13807 | 1623 information in the generated image. This command works only if you |
1624 are using a window system, so it has a way to determine color values." | |
10683 | 1625 (interactive (list (ps-print-preprint current-prefix-arg))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1626 (ps-print-with-faces (point-min) (point-max) filename)) |
7257 | 1627 |
1628 | |
10683 | 1629 ;;;###autoload |
7257 | 1630 (defun ps-print-region (from to &optional filename) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1631 "Generate and print a PostScript image of the region. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1632 Like `ps-print-buffer', but prints just the current region." |
10683 | 1633 (interactive (list (point) (mark) (ps-print-preprint current-prefix-arg))) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1634 (ps-print-without-faces from to filename t)) |
7257 | 1635 |
1636 | |
10683 | 1637 ;;;###autoload |
7257 | 1638 (defun ps-print-region-with-faces (from to &optional filename) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1639 "Generate and print a PostScript image of the region. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1640 Like `ps-print-region', but includes font, color, and underline |
13807 | 1641 information in the generated image. This command works only if you |
1642 are using a window system, so it has a way to determine color values." | |
10683 | 1643 (interactive (list (point) (mark) (ps-print-preprint current-prefix-arg))) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1644 (ps-print-with-faces from to filename t)) |
7257 | 1645 |
1646 | |
10683 | 1647 ;;;###autoload |
7257 | 1648 (defun ps-spool-buffer () |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1649 "Generate and spool a PostScript image of the buffer. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1650 Like `ps-print-buffer' except that the PostScript image is saved in a |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1651 local buffer to be sent to the printer later. |
7257 | 1652 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1653 Use the command `ps-despool' to send the spooled images to the printer." |
7257 | 1654 (interactive) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1655 (ps-spool-without-faces (point-min) (point-max))) |
7257 | 1656 |
1657 | |
10683 | 1658 ;;;###autoload |
7257 | 1659 (defun ps-spool-buffer-with-faces () |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1660 "Generate and spool a PostScript image of the buffer. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1661 Like `ps-spool-buffer', but includes font, color, and underline |
13807 | 1662 information in the generated image. This command works only if you |
13828
612d7bd4b5d1
(ps-spool-buffer-with-faces): Fix typo in previous chg.
Richard M. Stallman <rms@gnu.org>
parents:
13807
diff
changeset
|
1663 are using a window system, so it has a way to determine color values. |
7257 | 1664 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1665 Use the command `ps-despool' to send the spooled images to the printer." |
7257 | 1666 (interactive) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1667 (ps-spool-with-faces (point-min) (point-max))) |
7257 | 1668 |
1669 | |
10683 | 1670 ;;;###autoload |
7257 | 1671 (defun ps-spool-region (from to) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1672 "Generate a PostScript image of the region and spool locally. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1673 Like `ps-spool-buffer', but spools just the current region. |
7257 | 1674 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1675 Use the command `ps-despool' to send the spooled images to the printer." |
7257 | 1676 (interactive "r") |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1677 (ps-spool-without-faces from to t)) |
7257 | 1678 |
1679 | |
10683 | 1680 ;;;###autoload |
7257 | 1681 (defun ps-spool-region-with-faces (from to) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1682 "Generate a PostScript image of the region and spool locally. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1683 Like `ps-spool-region', but includes font, color, and underline |
13807 | 1684 information in the generated image. This command works only if you |
13828
612d7bd4b5d1
(ps-spool-buffer-with-faces): Fix typo in previous chg.
Richard M. Stallman <rms@gnu.org>
parents:
13807
diff
changeset
|
1685 are using a window system, so it has a way to determine color values. |
7257 | 1686 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1687 Use the command `ps-despool' to send the spooled images to the printer." |
7257 | 1688 (interactive "r") |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1689 (ps-spool-with-faces from to t)) |
7257 | 1690 |
10683 | 1691 ;;;###autoload |
7257 | 1692 (defun ps-despool (&optional filename) |
1693 "Send the spooled PostScript to the printer. | |
1694 | |
1695 When called with a numeric prefix argument (C-u), prompt the user for | |
1696 the name of a file to save the spooled PostScript in, instead of sending | |
1697 it to the printer. | |
1698 | |
1699 More specifically, the FILENAME argument is treated as follows: if it | |
1700 is nil, send the image to the printer. If FILENAME is a string, save | |
1701 the PostScript image in a file with that name. If FILENAME is a | |
1702 number, prompt the user for the name of the file to save in." | |
10683 | 1703 (interactive (list (ps-print-preprint current-prefix-arg))) |
1704 (ps-do-despool filename)) | |
7257 | 1705 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1706 ;;;###autoload |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1707 (defun ps-line-lengths () |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1708 "Display the correspondence between a line length and a font size, |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1709 using the current ps-print setup. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1710 Try: pr -t file | awk '{printf \"%3d %s\n\", length($0), $0}' | sort -r | head" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1711 (interactive) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1712 (ps-line-lengths-internal)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1713 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1714 ;;;###autoload |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1715 (defun ps-nb-pages-buffer (nb-lines) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1716 "Display number of pages to print this buffer, for various font heights. |
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1717 The table depends on the current ps-print setup." |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1718 (interactive (list (count-lines (point-min) (point-max)))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1719 (ps-nb-pages nb-lines)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1720 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1721 ;;;###autoload |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1722 (defun ps-nb-pages-region (nb-lines) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1723 "Display number of pages to print the region, for various font heights. |
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
1724 The table depends on the current ps-print setup." |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1725 (interactive (list (count-lines (mark) (point)))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1726 (ps-nb-pages nb-lines)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1727 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1728 ;;;###autoload |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1729 (defun ps-setup () |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
1730 "Return the current PostScript-generation setup." |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1731 (format |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1732 " |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1733 \(setq ps-print-color-p %s |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1734 ps-lpr-command \"%s\" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1735 ps-lpr-switches %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1736 |
20331 | 1737 ps-paper-type '%s |
1738 ps-landscape-mode %s | |
1739 ps-number-of-columns %s | |
1740 | |
1741 ps-zebra-stripes %s | |
19787
4ea00387fb08
(ps-setup): ps-zebra-stripe => ps-zebra-stripes.
Richard M. Stallman <rms@gnu.org>
parents:
19773
diff
changeset
|
1742 ps-zebra-stripe-height %s |
20331 | 1743 ps-line-number %s |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1744 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1745 ps-print-control-characters %s |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1746 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1747 ps-print-background-image %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1748 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1749 ps-print-background-text %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1750 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1751 ps-left-margin %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1752 ps-right-margin %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1753 ps-inter-column %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1754 ps-bottom-margin %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1755 ps-top-margin %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1756 ps-header-offset %s |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1757 ps-header-line-pad %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1758 ps-print-header %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1759 ps-print-header-frame %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1760 ps-header-lines %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1761 ps-show-n-of-n %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1762 ps-spool-duplex %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1763 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1764 ps-font-family '%s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1765 ps-font-size %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1766 ps-header-font-family '%s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1767 ps-header-font-size %s |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1768 ps-header-title-font-size %s) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1769 " |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1770 ps-print-color-p |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1771 ps-lpr-command |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1772 ps-lpr-switches |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1773 ps-paper-type |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1774 ps-landscape-mode |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1775 ps-number-of-columns |
19787
4ea00387fb08
(ps-setup): ps-zebra-stripe => ps-zebra-stripes.
Richard M. Stallman <rms@gnu.org>
parents:
19773
diff
changeset
|
1776 ps-zebra-stripes |
4ea00387fb08
(ps-setup): ps-zebra-stripe => ps-zebra-stripes.
Richard M. Stallman <rms@gnu.org>
parents:
19773
diff
changeset
|
1777 ps-zebra-stripe-height |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1778 ps-line-number |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1779 ps-print-control-characters |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1780 ps-print-background-image |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1781 ps-print-background-text |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1782 ps-left-margin |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1783 ps-right-margin |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1784 ps-inter-column |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1785 ps-bottom-margin |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1786 ps-top-margin |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1787 ps-header-offset |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1788 ps-header-line-pad |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1789 ps-print-header |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1790 ps-print-header-frame |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1791 ps-header-lines |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1792 ps-show-n-of-n |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1793 ps-spool-duplex |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1794 ps-font-family |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1795 ps-font-size |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1796 ps-header-font-family |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1797 ps-header-font-size |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
1798 ps-header-title-font-size)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1799 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1800 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1801 ;; Utility functions and variables: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1802 |
12769
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1803 (defvar ps-print-emacs-type |
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1804 (cond ((string-match "XEmacs" emacs-version) 'xemacs) |
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1805 ((string-match "Lucid" emacs-version) 'lucid) |
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1806 ((string-match "Epoch" emacs-version) 'epoch) |
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1807 (t 'emacs))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1808 |
12769
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1809 (if (or (eq ps-print-emacs-type 'lucid) |
4a905565cfa6
(ps-print-emacs-type): Renamed from emacs-type.
Richard M. Stallman <rms@gnu.org>
parents:
12768
diff
changeset
|
1810 (eq ps-print-emacs-type 'xemacs)) |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
1811 (if (< emacs-minor-version 12) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
1812 (setq ps-print-color-p nil)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1813 (require 'faces)) ; face-font, face-underline-p, |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1814 ; x-font-regexp |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1815 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1816 ;; Return t if the device (which can be changed during an emacs session) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1817 ;; can handle colors. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1818 ;; This is function is not yet implemented for GNU emacs. |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1819 (cond ((and (eq ps-print-emacs-type 'xemacs) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1820 (>= emacs-minor-version 12)) ; xemacs |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1821 (defun ps-color-device () |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1822 (eq (device-class) 'color)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1823 ) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1824 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1825 (t ; emacs |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1826 (defun ps-color-device () |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1827 t) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1828 )) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1829 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
1830 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1831 (require 'time-stamp) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1832 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1833 (defvar ps-print-prologue-1 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1834 "% ISOLatin1Encoding stolen from ps_init.ps in GhostScript 2.6.1.4: |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1835 /ISOLatin1Encoding where { pop } { |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1836 % -- The ISO Latin-1 encoding vector isn't known, so define it. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1837 % -- The first half is the same as the standard encoding, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1838 % -- except for minus instead of hyphen at code 055. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1839 /ISOLatin1Encoding |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1840 StandardEncoding 0 45 getinterval aload pop |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1841 /minus |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1842 StandardEncoding 46 82 getinterval aload pop |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1843 %*** NOTE: the following are missing in the Adobe documentation, |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1844 %*** but appear in the displayed table: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1845 %*** macron at 0225, dieresis at 0230, cedilla at 0233, space at 0240. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1846 % 0200 (128) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1847 /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1848 /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1849 /dotlessi /grave /acute /circumflex /tilde /macron /breve /dotaccent |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1850 /dieresis /.notdef /ring /cedilla /.notdef /hungarumlaut /ogonek /caron |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1851 % 0240 (160) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1852 /space /exclamdown /cent /sterling |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1853 /currency /yen /brokenbar /section |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1854 /dieresis /copyright /ordfeminine /guillemotleft |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1855 /logicalnot /hyphen /registered /macron |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1856 /degree /plusminus /twosuperior /threesuperior |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1857 /acute /mu /paragraph /periodcentered |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1858 /cedilla /onesuperior /ordmasculine /guillemotright |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1859 /onequarter /onehalf /threequarters /questiondown |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1860 % 0300 (192) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1861 /Agrave /Aacute /Acircumflex /Atilde |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1862 /Adieresis /Aring /AE /Ccedilla |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1863 /Egrave /Eacute /Ecircumflex /Edieresis |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1864 /Igrave /Iacute /Icircumflex /Idieresis |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1865 /Eth /Ntilde /Ograve /Oacute |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1866 /Ocircumflex /Otilde /Odieresis /multiply |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1867 /Oslash /Ugrave /Uacute /Ucircumflex |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1868 /Udieresis /Yacute /Thorn /germandbls |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1869 % 0340 (224) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1870 /agrave /aacute /acircumflex /atilde |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1871 /adieresis /aring /ae /ccedilla |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1872 /egrave /eacute /ecircumflex /edieresis |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1873 /igrave /iacute /icircumflex /idieresis |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1874 /eth /ntilde /ograve /oacute |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1875 /ocircumflex /otilde /odieresis /divide |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1876 /oslash /ugrave /uacute /ucircumflex |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1877 /udieresis /yacute /thorn /ydieresis |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1878 256 packedarray def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1879 } ifelse |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1880 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1881 /reencodeFontISO { %def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1882 dup |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1883 length 12 add dict % Make a new font (a new dict the same size |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1884 % as the old one) with room for our new symbols. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1885 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1886 begin % Make the new font the current dictionary. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1887 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1888 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1889 { 1 index /FID ne |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1890 { def } { pop pop } ifelse |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1891 } forall % Copy each of the symbols from the old dictionary |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1892 % to the new one except for the font ID. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1893 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1894 currentdict /FontType get 0 ne { |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1895 /Encoding ISOLatin1Encoding def % Override the encoding with |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1896 % the ISOLatin1 encoding. |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1897 } if |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1898 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1899 % Use the font's bounding box to determine the ascent, descent, |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1900 % and overall height; don't forget that these values have to be |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1901 % transformed using the font's matrix. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1902 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1903 % ^ (x2 y2) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1904 % | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1905 % | v |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1906 % | +----+ - - |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1907 % | | | ^ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1908 % | | | | Ascent (usually > 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1909 % | | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1910 % (0 0) -> +--+----+--------> |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1911 % | | | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1912 % | | v Descent (usually < 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1913 % (x1 y1) --> +----+ - - |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1914 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1915 currentdict /FontType get 0 ne { |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1916 /FontBBox load aload pop % -- x1 y1 x2 y2 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1917 FontMatrix transform /Ascent exch def pop |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1918 FontMatrix transform /Descent exch def pop |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1919 } { |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1920 /PrimaryFont FDepVector 0 get def |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1921 PrimaryFont /FontBBox get aload pop |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1922 PrimaryFont /FontMatrix get transform /Ascent exch def pop |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1923 PrimaryFont /FontMatrix get transform /Descent exch def pop |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1924 } ifelse |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
1925 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1926 /FontHeight Ascent Descent sub def % use `sub' because descent < 0 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1927 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1928 % Define these in case they're not in the FontInfo |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1929 % (also, here they're easier to get to). |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1930 /UnderlinePosition Descent 0.70 mul def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1931 /OverlinePosition Descent UnderlinePosition sub Ascent add def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1932 /StrikeoutPosition Ascent 0.30 mul def |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1933 /LineThickness FontHeight 0.05 mul def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1934 /Xshadow FontHeight 0.08 mul def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
1935 /Yshadow FontHeight -0.09 mul def |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1936 /SpaceBackground Descent neg UnderlinePosition add def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1937 /XBox Descent neg def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1938 /YBox LineThickness 0.7 mul def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1939 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1940 currentdict % Leave the new font on the stack |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1941 end % Stop using the font as the current dictionary. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1942 definefont % Put the font into the font dictionary |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1943 pop % Discard the returned font. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1944 } bind def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1945 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1946 /DefFont { % Font definition |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1947 findfont exch scalefont reencodeFontISO |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1948 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1949 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1950 /F { % Font selection |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1951 findfont |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1952 dup /Ascent get /Ascent exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1953 dup /Descent get /Descent exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1954 dup /FontHeight get /FontHeight exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1955 dup /UnderlinePosition get /UnderlinePosition exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1956 dup /OverlinePosition get /OverlinePosition exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1957 dup /StrikeoutPosition get /StrikeoutPosition exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1958 dup /LineThickness get /LineThickness exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1959 dup /Xshadow get /Xshadow exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1960 dup /Yshadow get /Yshadow exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1961 dup /SpaceBackground get /SpaceBackground exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1962 dup /XBox get /XBox exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1963 dup /YBox get /YBox exch def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1964 setfont |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1965 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1966 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1967 /FG /setrgbcolor load def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1968 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1969 /bg false def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1970 /BG { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1971 dup /bg exch def |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1972 {mark 4 1 roll ]} |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1973 {[ 1.0 1.0 1.0 ]} |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1974 ifelse |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
1975 /bgcolor exch def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1976 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1977 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1978 % B width C |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1979 % +-----------+ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1980 % | Ascent (usually > 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1981 % A + + |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1982 % | Descent (usually < 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1983 % +-----------+ |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1984 % E width D |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1985 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1986 /dobackground { % width -- |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1987 currentpoint % -- width x y |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1988 gsave |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1989 newpath |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1990 moveto % A (x y) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1991 0 Ascent rmoveto % B |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1992 dup 0 rlineto % C |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1993 0 Descent Ascent sub rlineto % D |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
1994 neg 0 rlineto % E |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1995 closepath |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1996 bgcolor aload pop setrgbcolor |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1997 fill |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1998 grestore |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
1999 } def |
7257 | 2000 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2001 /eolbg { % dobackground until right margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2002 PrintWidth % -- x-eol |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2003 currentpoint pop % -- cur-x |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2004 sub % -- width until eol |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2005 dobackground |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2006 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2007 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2008 /PLN {PrintLineNumber {doLineNumber}if} def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2009 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2010 /SL { % Soft Linefeed |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2011 bg { eolbg } if |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2012 0 currentpoint exch pop LineHeight sub moveto |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2013 } def |
7257 | 2014 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2015 /HL {SL PLN} def % Hard Linefeed |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2016 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2017 % Some debug |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2018 /dcp { currentpoint exch 40 string cvs print (, ) print = } def |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2019 /dp { print 2 copy exch 40 string cvs print (, ) print = } def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2020 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2021 /W { |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2022 ( ) stringwidth % Get the width of a space in the current font. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2023 pop % Discard the Y component. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2024 mul % Multiply the width of a space |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2025 % by the number of spaces to plot |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2026 bg { dup dobackground } if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2027 0 rmoveto |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2028 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2029 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2030 /Effect 0 def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2031 /EF {/Effect exch def} def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2032 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2033 % stack: string |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2034 % effect: 1 - underline 2 - strikeout 4 - overline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2035 % 8 - shadow 16 - box 32 - outline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2036 /S { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2037 /xx currentpoint dup Descent add /yy exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2038 Ascent add /YY exch def def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2039 dup stringwidth pop xx add /XX exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2040 Effect 8 and 0 ne { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2041 /yy yy Yshadow add def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2042 /XX XX Xshadow add def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2043 } if |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2044 bg { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2045 true |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2046 Effect 16 and 0 ne |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2047 {SpaceBackground doBox} |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2048 {xx yy XX YY doRect} |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2049 ifelse |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2050 } if % background |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2051 Effect 16 and 0 ne {false 0 doBox}if % box |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2052 Effect 8 and 0 ne {dup doShadow}if % shadow |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2053 Effect 32 and 0 ne |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2054 {true doOutline} % outline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2055 {show} % normal text |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2056 ifelse |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2057 Effect 1 and 0 ne {UnderlinePosition Hline}if % underline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2058 Effect 2 and 0 ne {StrikeoutPosition Hline}if % strikeout |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2059 Effect 4 and 0 ne {OverlinePosition Hline}if % overline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2060 } bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2061 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2062 % stack: position |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2063 /Hline { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2064 currentpoint exch pop add dup |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2065 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2066 newpath |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2067 xx exch moveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2068 XX exch lineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2069 closepath |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2070 LineThickness setlinewidth stroke |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2071 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2072 } bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2073 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2074 % stack: fill-or-not delta |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2075 /doBox { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2076 /dd exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2077 xx XBox sub dd sub yy YBox sub dd sub |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2078 XX XBox add dd add YY YBox add dd add |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2079 doRect |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2080 } bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2081 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2082 % stack: fill-or-not lower-x lower-y upper-x upper-y |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2083 /doRect { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2084 /rYY exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2085 /rXX exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2086 /ryy exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2087 /rxx exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2088 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2089 newpath |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2090 rXX rYY moveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2091 rxx rYY lineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2092 rxx ryy lineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2093 rXX ryy lineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2094 closepath |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2095 % top of stack: fill-or-not |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2096 {FillBgColor} |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2097 {LineThickness setlinewidth stroke} |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2098 ifelse |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2099 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2100 } bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2101 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2102 % stack: string |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2103 /doShadow { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2104 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2105 Xshadow Yshadow rmoveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2106 false doOutline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2107 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2108 } bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2109 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2110 /st 1 string def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2111 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2112 % stack: string fill-or-not |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2113 /doOutline { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2114 /-fillp- exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2115 /-ox- currentpoint /-oy- exch def def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2116 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2117 LineThickness setlinewidth |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2118 { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2119 st 0 3 -1 roll put |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2120 st dup true charpath |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2121 -fillp- {gsave FillBgColor grestore}if |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2122 stroke stringwidth |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2123 -oy- add /-oy- exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2124 -ox- add /-ox- exch def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2125 -ox- -oy- moveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2126 } forall |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2127 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2128 -ox- -oy- moveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2129 } bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2130 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2131 % stack: -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2132 /FillBgColor {bgcolor aload pop setrgbcolor fill} bind def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2133 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2134 /L0 6 /Times-Italic DefFont |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2135 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2136 % stack: -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2137 /doLineNumber { |
22204
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2138 /LineNumber where |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2139 { |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2140 pop |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2141 currentfont |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2142 gsave |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2143 0.0 0.0 0.0 setrgbcolor |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2144 /L0 findfont setfont |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2145 LineNumber Lines ge |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2146 {(end )} |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2147 {LineNumber 6 string cvs ( ) strcat} |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2148 ifelse |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2149 dup stringwidth pop neg 0 rmoveto |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2150 show |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2151 grestore |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2152 setfont |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2153 /LineNumber LineNumber 1 add def |
e1921cd8a532
(ps-print-version): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
22093
diff
changeset
|
2154 } if |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2155 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2156 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2157 % stack: -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2158 /printZebra { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2159 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2160 0.985 setgray |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2161 /double-zebra ZebraHeight ZebraHeight add def |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2162 /yiter double-zebra LineHeight mul neg def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2163 /xiter PrintWidth InterColumn add def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2164 NumberOfColumns {LinesPerColumn doColumnZebra xiter 0 rmoveto}repeat |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2165 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2166 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2167 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2168 % stack: lines-per-column |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2169 /doColumnZebra { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2170 gsave |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2171 dup double-zebra idiv {ZebraHeight doZebra 0 yiter rmoveto}repeat |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2172 double-zebra mod |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2173 dup 0 le {pop}{dup ZebraHeight gt {pop ZebraHeight}if doZebra}ifelse |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2174 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2175 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2176 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2177 % stack: zebra-height (in lines) |- -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2178 /doZebra { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2179 /zh exch 0.05 sub LineHeight mul def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2180 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2181 0 LineHeight 0.65 mul rmoveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2182 PrintWidth 0 rlineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2183 0 zh neg rlineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2184 PrintWidth neg 0 rlineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2185 0 zh rlineto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2186 fill |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2187 grestore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2188 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2189 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2190 % tx ty rotation xscale yscale xpos ypos BeginBackImage |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2191 /BeginBackImage { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2192 /-save-image- save def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2193 /showpage {}def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2194 translate |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2195 scale |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2196 rotate |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2197 translate |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2198 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2199 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2200 /EndBackImage { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2201 -save-image- restore |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2202 } def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2203 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2204 % string fontsize fontname rotation gray xpos ypos ShowBackText |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2205 /ShowBackText { |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2206 gsave |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2207 translate |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2208 setgray |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2209 rotate |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2210 findfont exch dup /-offset- exch -0.25 mul def scalefont setfont |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2211 0 -offset- moveto |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2212 /-saveLineThickness- LineThickness def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2213 /LineThickness 1 def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2214 false doOutline |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2215 /LineThickness -saveLineThickness- def |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2216 grestore |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2217 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2218 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2219 /BeginDoc { |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2220 % ---- Remember space width of the normal text font `f0'. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2221 /SpaceWidth /f0 findfont setfont ( ) stringwidth pop def |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2222 % ---- save the state of the document (useful for ghostscript!) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2223 /docState save def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2224 % ---- [jack] Kludge: my ghostscript window is 21x27.7 instead of 21x29.7 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2225 /JackGhostscript where { |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2226 pop 1 27.7 29.7 div scale |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2227 } if |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2228 LandscapeMode { |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2229 % ---- translate to bottom-right corner of Portrait page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2230 LandscapePageHeight 0 translate |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2231 90 rotate |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2232 } if |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2233 /ColumnWidth PrintWidth InterColumn add def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2234 % ---- translate to lower left corner of TEXT |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2235 LeftMargin BottomMargin translate |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2236 % ---- define where printing will start |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2237 /f0 F % this installs Ascent |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2238 /PrintStartY PrintHeight Ascent sub def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2239 /ColumnIndex 1 def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2240 } def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2241 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2242 /EndDoc { |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2243 % ---- on last page but not last column, spit out the page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2244 ColumnIndex 1 eq not { showpage } if |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2245 % ---- restore the state of the document (useful for ghostscript!) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2246 docState restore |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2247 } def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2248 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2249 /BeginDSCPage { |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2250 % ---- when 1st column, save the state of the page |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2251 ColumnIndex 1 eq { /pageState save def } if |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2252 % ---- save the state of the column |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2253 /columnState save def |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2254 } def |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2255 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2256 /PrintHeaderWidth PrintOnlyOneHeader{PrintPageWidth}{PrintWidth}ifelse def |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2257 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2258 /BeginPage { |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2259 % ---- when 1st column, print all background effects |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2260 ColumnIndex 1 eq { |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2261 0 PrintStartY moveto % move to where printing will start |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2262 Zebra {printZebra}if |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2263 printGlobalBackground |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2264 printLocalBackground |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2265 } if |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2266 PrintHeader { |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2267 PrintOnlyOneHeader{ColumnIndex 1 eq}{true}ifelse { |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2268 PrintHeaderFrame {HeaderFrame}if |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2269 HeaderText |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2270 } if |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2271 } if |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2272 0 PrintStartY moveto % move to where printing will start |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2273 PLN |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2274 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2275 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2276 /EndPage { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2277 bg { eolbg } if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2278 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2279 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2280 /EndDSCPage { |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2281 ColumnIndex NumberOfColumns eq { |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2282 % ---- on last column, spit out the page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2283 showpage |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2284 % ---- restore the state of the page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2285 pageState restore |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2286 /ColumnIndex 1 def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2287 } { % else |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2288 % ---- restore the state of the current column |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2289 columnState restore |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2290 % ---- and translate to the next column |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2291 ColumnWidth 0 translate |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2292 /ColumnIndex ColumnIndex 1 add def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2293 } ifelse |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2294 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2295 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2296 /SetHeaderLines { % nb-lines -- |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2297 /HeaderLines exch def |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2298 % ---- bottom up |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2299 HeaderPad |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2300 HeaderLines 1 sub HeaderLineHeight mul add |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2301 HeaderTitleLineHeight add |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2302 HeaderPad add |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2303 /HeaderHeight exch def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2304 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2305 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2306 % |---------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2307 % | tm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2308 % |---------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2309 % | header | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2310 % |-+-------| <-- (x y) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2311 % | ho | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2312 % |---------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2313 % | text | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2314 % |-+-------| <-- (0 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2315 % | bm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2316 % |---------| |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2317 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2318 /HeaderFrameStart { % -- x y |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2319 0 PrintHeight HeaderOffset add |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2320 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2321 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2322 /HeaderFramePath { |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2323 PrintHeaderWidth 0 rlineto |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2324 0 HeaderHeight rlineto |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2325 PrintHeaderWidth neg 0 rlineto |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2326 0 HeaderHeight neg rlineto |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2327 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2328 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2329 /HeaderFrame { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2330 gsave |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2331 0.4 setlinewidth |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2332 % ---- fill a black rectangle (the shadow of the next one) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2333 HeaderFrameStart moveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2334 1 -1 rmoveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2335 HeaderFramePath |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2336 0 setgray fill |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2337 % ---- do the next rectangle ... |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2338 HeaderFrameStart moveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2339 HeaderFramePath |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2340 gsave 0.9 setgray fill grestore % filled with grey |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2341 gsave 0 setgray stroke grestore % drawn with black |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2342 grestore |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2343 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2344 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2345 /HeaderStart { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2346 HeaderFrameStart |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2347 exch HeaderPad add exch % horizontal pad |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2348 % ---- bottom up |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2349 HeaderPad add % vertical pad |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2350 HeaderDescent sub |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2351 HeaderLineHeight HeaderLines 1 sub mul add |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2352 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2353 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2354 /strcat { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2355 dup length 3 -1 roll dup length dup 4 -1 roll add string dup |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2356 0 5 -1 roll putinterval |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2357 dup 4 2 roll exch putinterval |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2358 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2359 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2360 /pagenumberstring { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2361 PageNumber 32 string cvs |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2362 ShowNofN { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2363 (/) strcat |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2364 PageCount 32 string cvs strcat |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2365 } if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2366 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2367 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2368 /HeaderText { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2369 HeaderStart moveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2370 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2371 HeaderLinesRight HeaderLinesLeft % -- rightLines leftLines |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2372 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2373 % ---- hack: `PN 1 and' == `PN 2 modulo' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2374 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2375 % ---- if duplex and even page number, then exchange left and right |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2376 Duplex PageNumber 1 and 0 eq and { exch } if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2377 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2378 { % ---- process the left lines |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2379 aload pop |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2380 exch F |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2381 gsave |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2382 dup xcheck { exec } if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2383 show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2384 grestore |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2385 0 HeaderLineHeight neg rmoveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2386 } forall |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2387 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2388 HeaderStart moveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2389 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2390 { % ---- process the right lines |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2391 aload pop |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2392 exch F |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2393 gsave |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2394 dup xcheck { exec } if |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2395 dup stringwidth pop |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2396 PrintHeaderWidth exch sub HeaderPad 2 mul sub 0 rmoveto |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2397 show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2398 grestore |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2399 0 HeaderLineHeight neg rmoveto |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2400 } forall |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2401 } def |
7257 | 2402 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2403 /ReportFontInfo { |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2404 2 copy |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2405 /t0 3 1 roll DefFont |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2406 /t0 F |
10683 | 2407 /lh FontHeight def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2408 /sw ( ) stringwidth pop def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2409 /aw (01234567890abcdefghijklmnopqrstuvwxyz) dup length exch |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2410 stringwidth pop exch div def |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2411 /t1 12 /Helvetica-Oblique DefFont |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2412 /t1 F |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2413 gsave |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2414 (For ) show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2415 128 string cvs show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2416 ( ) show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2417 32 string cvs show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2418 ( point, the line height is ) show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2419 lh 32 string cvs show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2420 (, the space width is ) show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2421 sw 32 string cvs show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2422 (,) show |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2423 grestore |
10683 | 2424 0 FontHeight neg rmoveto |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2425 gsave |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2426 (and a crude estimate of average character width is ) show |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2427 aw 32 string cvs show |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2428 (.) show |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2429 grestore |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2430 0 FontHeight neg rmoveto |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2431 } def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2432 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2433 /cm { % cm to point |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2434 72 mul 2.54 div |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2435 } def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2436 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2437 /ReportAllFontInfo { |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2438 FontDirectory |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2439 { % key = font name value = font dictionary |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2440 pop 10 exch ReportFontInfo |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2441 } forall |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2442 } def |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2443 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2444 % 3 cm 20 cm moveto 10 /Courier ReportFontInfo showpage |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2445 % 3 cm 20 cm moveto ReportAllFontInfo showpage |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2446 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2447 ") |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2448 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2449 (defvar ps-print-prologue-2 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2450 " |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2451 % ---- These lines must be kept together because... |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2452 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2453 /h0 F |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2454 /HeaderTitleLineHeight FontHeight def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2455 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2456 /h1 F |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2457 /HeaderLineHeight FontHeight def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2458 /HeaderDescent Descent def |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2459 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2460 % ---- ...because `F' has a side-effect on `FontHeight' and `Descent' |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2461 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2462 ") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2463 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2464 ;; Start Editing Here: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2465 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2466 (defvar ps-source-buffer nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2467 (defvar ps-spool-buffer-name "*PostScript*") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2468 (defvar ps-spool-buffer nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2469 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2470 (defvar ps-output-head nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2471 (defvar ps-output-tail nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2472 |
22397 | 2473 (defvar ps-page-postscript 0) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2474 (defvar ps-page-count 0) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2475 (defvar ps-showline-count 1) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2476 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2477 (defvar ps-control-or-escape-regexp nil) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2478 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2479 (defvar ps-background-pages nil) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2480 (defvar ps-background-all-pages nil) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2481 (defvar ps-background-text-count 0) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2482 (defvar ps-background-image-count 0) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2483 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2484 (defvar ps-current-font 0) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2485 (defvar ps-default-color (if ps-print-color-p ps-default-fg)) ; black |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2486 (defvar ps-current-color ps-default-color) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2487 (defvar ps-current-bg nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2488 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2489 (defvar ps-razchunk 0) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2490 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2491 (defvar ps-color-format |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2492 (if (eq ps-print-emacs-type 'emacs) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2493 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2494 ;; Emacs understands the %f format; we'll use it to limit color RGB |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2495 ;; values to three decimals to cut down some on the size of the |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2496 ;; PostScript output. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2497 "%0.3f %0.3f %0.3f" |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2498 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2499 ;; Lucid emacsen will have to make do with %s (princ) for floats. |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2500 "%s %s %s")) |
7257 | 2501 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2502 ;; These values determine how much print-height to deduct when headers |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2503 ;; are turned on. This is a pretty clumsy way of handling it, but |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2504 ;; it'll do for now. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2505 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2506 (defvar ps-header-pad 0 |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
2507 "Vertical and horizontal space between the header frame and the text. |
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
2508 This is in units of points (1/72 inch).") |
7257 | 2509 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2510 ;; Define accessors to the dimensions list. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2511 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2512 (defmacro ps-page-dimensions-get-width (dims) `(nth 0 ,dims)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2513 (defmacro ps-page-dimensions-get-height (dims) `(nth 1 ,dims)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2514 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2515 (defvar ps-landscape-page-height nil) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2516 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2517 (defvar ps-print-width nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2518 (defvar ps-print-height nil) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2519 |
20331 | 2520 (defvar ps-height-remaining nil) |
2521 (defvar ps-width-remaining nil) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2522 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2523 (defvar ps-print-color-scale nil) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
2524 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2525 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2526 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2527 ;; Internal Variables |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2528 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2529 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2530 (defvar ps-print-face-extension-alist nil |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2531 "Alist of symbolic faces *WITH* extension features (box, outline, etc). |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2532 An element of this list has the following form: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2533 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2534 (FACE . [BITS FG BG]) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2535 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2536 FACE is a symbol denoting a face name |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2537 BITS is a bit vector, where each bit correspond |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2538 to a feature (bold, underline, etc) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2539 (see documentation for `ps-print-face-map-alist') |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2540 FG foreground color (string or nil) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2541 BG background color (string or nil) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2542 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2543 Don't change this list directly; instead, |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2544 use `ps-extend-face' and `ps-extend-face-list'. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2545 See documentation for `ps-extend-face' for valid extension symbol.") |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2546 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2547 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2548 (defvar ps-print-face-alist nil |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2549 "Alist of symbolic faces *WITHOUT* extension features (box, outline, etc). |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2550 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2551 An element of this list has the same form as an element of |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2552 `ps-print-face-extension-alist'. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2553 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2554 Don't change this list directly; this list is used by `ps-face-attributes', |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2555 `ps-map-face' and `ps-build-reference-face-lists'.") |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2556 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2557 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2558 (defconst ps-print-face-map-alist |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2559 '((bold . 1) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2560 (italic . 2) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2561 (underline . 4) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2562 (strikeout . 8) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2563 (overline . 16) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2564 (shadow . 32) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2565 (box . 64) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2566 (outline . 128)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2567 "Alist of all features and the corresponding bit mask. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2568 Each symbol correspond to one bit in a bit vector.") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2569 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2570 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2571 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2572 ;; Remapping Faces |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2573 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2574 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2575 ;;;###autoload |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2576 (defun ps-extend-face-list (face-extension-list &optional merge-p) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2577 "Extend face in `ps-print-face-extension-alist'. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2578 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2579 If optional MERGE-P is non-nil, extensions in FACE-EXTENSION-LIST are merged |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2580 with face extension in `ps-print-face-extension-alist'; otherwise, overrides. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2581 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2582 The elements in FACE-EXTENSION-LIST is like those for `ps-extend-face'. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2583 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2584 See `ps-extend-face' for documentation." |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2585 (while face-extension-list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2586 (ps-extend-face (car face-extension-list) merge-p) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2587 (setq face-extension-list (cdr face-extension-list)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2588 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2589 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2590 ;;;###autoload |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2591 (defun ps-extend-face (face-extension &optional merge-p) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2592 "Extend face in `ps-print-face-extension-alist'. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2593 |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2594 If optional MERGE-P is non-nil, extensions in FACE-EXTENSION list are merged |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2595 with face extensions in `ps-print-face-extension-alist'; otherwise, overrides. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2596 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2597 The elements of FACE-EXTENSION list have the form: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2598 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2599 (FACE-NAME FOREGROUND BACKGROUND EXTENSION...) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2600 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2601 FACE-NAME is a face name symbol. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2602 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2603 FOREGROUND and BACKGROUND may be nil or a string that denotes the |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2604 foreground and background colors respectively. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2605 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2606 EXTENSION is one of the following symbols: |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2607 bold - use bold font. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2608 italic - use italic font. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2609 underline - put a line under text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2610 strikeout - like underline, but the line is in middle of text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2611 overline - like underline, but the line is over the text. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2612 shadow - text will have a shadow. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2613 box - text will be surrounded by a box. |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2614 outline - print characters as hollow outlines. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2615 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2616 If EXTENSION is any other symbol, it is ignored." |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2617 (let* ((face-name (nth 0 face-extension)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2618 (foreground (nth 1 face-extension)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2619 (background (nth 2 face-extension)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2620 (ps-face (cdr (assq face-name ps-print-face-extension-alist))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2621 (face-vector (or ps-face (vector 0 nil nil))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2622 (face-bit (ps-extension-bit face-extension))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2623 ;; extend face |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2624 (aset face-vector 0 (if merge-p |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2625 (logior (aref face-vector 0) face-bit) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2626 face-bit)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2627 (and foreground (stringp foreground) (aset face-vector 1 foreground)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2628 (and background (stringp background) (aset face-vector 2 background)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2629 ;; if face does not exist, insert it |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2630 (or ps-face |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2631 (setq ps-print-face-extension-alist |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2632 (cons (cons face-name face-vector) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2633 ps-print-face-extension-alist))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2634 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2635 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2636 (defun ps-extension-bit (face-extension) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2637 (let ((face-bit 0)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2638 ;; map valid symbol extension to bit vector |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2639 (setq face-extension (cdr (cdr face-extension))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2640 (while (setq face-extension (cdr face-extension)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2641 (setq face-bit (logior face-bit |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2642 (or (cdr (assq (car face-extension) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2643 ps-print-face-map-alist)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2644 0)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2645 face-bit)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2646 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2647 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2648 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2649 ;; Adapted from font-lock: |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2650 ;; Originally face attributes were specified via `font-lock-face-attributes'. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2651 ;; Users then changed the default face attributes by setting that variable. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2652 ;; However, we try and be back-compatible and respect its value if set except |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2653 ;; for faces where M-x customize has been used to save changes for the face. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2654 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2655 (defun ps-font-lock-face-attributes () |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2656 (and (boundp 'font-lock-mode) (symbol-value 'font-lock-mode) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2657 (boundp 'font-lock-face-attributes) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2658 (let ((face-attributes font-lock-face-attributes)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2659 (while face-attributes |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2660 (let* ((face-attribute |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2661 (car (prog1 face-attributes |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2662 (setq face-attributes (cdr face-attributes))))) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2663 (face (car face-attribute))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2664 ;; Rustle up a `defface' SPEC from a |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2665 ;; `font-lock-face-attributes' entry. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2666 (unless (get face 'saved-face) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2667 (let ((foreground (nth 1 face-attribute)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2668 (background (nth 2 face-attribute)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2669 (bold-p (nth 3 face-attribute)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2670 (italic-p (nth 4 face-attribute)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2671 (underline-p (nth 5 face-attribute)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2672 face-spec) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2673 (when foreground |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2674 (setq face-spec (cons ':foreground |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2675 (cons foreground face-spec)))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2676 (when background |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2677 (setq face-spec (cons ':background |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2678 (cons background face-spec)))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2679 (when bold-p |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2680 (setq face-spec (append '(:bold t) face-spec))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2681 (when italic-p |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2682 (setq face-spec (append '(:italic t) face-spec))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2683 (when underline-p |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2684 (setq face-spec (append '(:underline t) face-spec))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2685 (custom-declare-face face (list (list t face-spec)) nil) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2686 ))))))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2687 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2688 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2689 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2690 ;; Internal functions and variables |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2691 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2692 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2693 (make-local-hook 'ps-print-hook) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2694 (make-local-hook 'ps-print-begin-page-hook) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2695 (make-local-hook 'ps-print-begin-column-hook) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2696 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2697 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2698 (defun ps-print-without-faces (from to &optional filename region-p) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2699 (ps-spool-without-faces from to region-p) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2700 (ps-do-despool filename)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2701 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2702 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2703 (defun ps-spool-without-faces (from to &optional region-p) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2704 (run-hooks 'ps-print-hook) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2705 (ps-printing-region region-p) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2706 (ps-generate (current-buffer) from to 'ps-generate-postscript)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2707 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2708 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2709 (defun ps-print-with-faces (from to &optional filename region-p) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2710 (ps-spool-with-faces from to region-p) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2711 (ps-do-despool filename)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2712 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2713 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2714 (defun ps-spool-with-faces (from to &optional region-p) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2715 (run-hooks 'ps-print-hook) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2716 (ps-printing-region region-p) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2717 (ps-generate (current-buffer) from to 'ps-generate-postscript-with-faces)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2718 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2719 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2720 (defsubst ps-count-lines (from to) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2721 (+ (count-lines from to) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2722 (save-excursion |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2723 (goto-char to) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
2724 (if (= (current-column) 0) 1 0)))) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2725 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2726 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2727 (defvar ps-printing-region nil |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
2728 "Variable used to indicate if ps-print is printing a region. |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2729 If non-nil, it is a cons, the car of which is the line number |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2730 where the region begins, and its cdr is the total number of lines |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2731 in the buffer. Formatting functions can use this information |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2732 to print the original line number (and not the number of lines printed), |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2733 and to indicate in the header that the printout is of a partial file.") |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2734 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2735 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2736 (defun ps-printing-region (region-p) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2737 (setq ps-printing-region |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2738 (and region-p |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2739 (cons (ps-count-lines (point-min) (region-beginning)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
2740 (ps-count-lines (point-min) (point-max)))))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2741 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
2742 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2743 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2744 ;; Internal functions |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
2745 |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
2746 (defsubst ps-font-alist (font-sym) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2747 (get font-sym 'fonts)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2748 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2749 (defun ps-font (font-sym font-type) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2750 "Font family name for text of `font-type', when generating PostScript." |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
2751 (let* ((font-list (ps-font-alist font-sym)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2752 (normal-font (cdr (assq 'normal font-list)))) |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2753 (while (and font-list (not (eq font-type (car (car font-list))))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2754 (setq font-list (cdr font-list))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
2755 (or (cdr (car font-list)) normal-font))) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2756 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2757 (defun ps-fonts (font-sym) |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
2758 (mapcar 'cdr (ps-font-alist font-sym))) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2759 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2760 (defun ps-font-number (font-sym font-type) |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
2761 (or (ps-alist-position font-type (ps-font-alist font-sym)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2762 0)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2763 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2764 (defsubst ps-line-height (font-sym) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2765 "The height of a line, for generating PostScript. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2766 This is the value that ps-print uses to determine the height, |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2767 y-dimension, of the lines of text it has printed, and thus affects the |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2768 point at which page-breaks are placed. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2769 The line-height is *not* the same as the point size of the font." |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2770 (get font-sym 'line-height)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2771 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2772 (defsubst ps-title-line-height (font-sym) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2773 "The height of a `title' line, for generating PostScript. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2774 This is the value that ps-print uses to determine the height, |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2775 y-dimension, of the lines of text it has printed, and thus affects the |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2776 point at which page-breaks are placed. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2777 The title-line-height is *not* the same as the point size of the font." |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2778 (get font-sym 'title-line-height)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2779 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2780 (defsubst ps-space-width (font-sym) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2781 "The width of a space character, for generating PostScript. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2782 This value is used in expanding tab characters." |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2783 (get font-sym 'space-width)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2784 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2785 (defsubst ps-avg-char-width (font-sym) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2786 "The average width, in points, of a character, for generating PostScript. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2787 This is the value that ps-print uses to determine the length, |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2788 x-dimension, of the text it has printed, and thus affects the point at |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2789 which long lines wrap around." |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2790 (get font-sym 'avg-char-width)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
2791 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2792 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2793 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2794 ;; For handling multibyte characters. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2795 ;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2796 ;; The following comments apply only to this part (through the next ^L). |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2797 ;; Author: Kenichi Handa <handa@etl.go.jp> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2798 ;; Maintainer: Kenichi Handa <handa@etl.go.jp> |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2799 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2800 (eval-and-compile |
23204
70e635407161
To make it work also on Emacs 20.2 and the earlier
Kenichi Handa <handa@m17n.org>
parents:
23167
diff
changeset
|
2801 (if (not (string< mule-version "4.0")) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2802 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2803 (defalias 'ps-mule-next-point '1+) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2804 (defalias 'ps-mule-chars-in-string 'length) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2805 (defalias 'ps-mule-string-char 'aref) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2806 (defsubst ps-mule-next-index (str i) (1+ i))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2807 (defun set-buffer-multibyte (arg) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2808 (setq enable-multibyte-characters arg)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2809 (defun string-as-unibyte (arg) arg) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2810 (defun string-as-multibyte (arg) arg) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2811 (defun charset-after (&optional arg) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2812 (char-charset (char-after arg))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2813 (defun ps-mule-next-point (arg) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2814 (save-excursion (goto-char arg) (forward-char 1) (point))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2815 (defun ps-mule-chars-in-string (string) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2816 (/ (length string) (char-bytes (sref string 0)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2817 (defalias 'ps-mule-string-char 'sref) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2818 (defun ps-mule-next-index (str i) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2819 (+ i (char-bytes (sref str i))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2820 ) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2821 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2822 (defvar ps-mule-font-info-database |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2823 '((latin-iso8859-1 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2824 (normal nil nil iso-latin-1))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2825 "Alist of charsets vs the corresponding font information. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2826 Each element has the form: |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2827 (CHARSET (FONT-TYPE FONT-SRC FONT-NAME ENCODING BYTES) ...) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2828 where |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2829 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2830 CHARSET is a charset (symbol) for this font family, |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2831 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2832 FONT-TYPE is a type of font: normal, bold, italic, or bold-italic. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2833 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2834 FONT-SRC is a source of font: builtin, bdf, vflib, or nil. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2835 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2836 If FONT-SRC is builtin, FONT-NAME is a buitin PostScript font name. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2837 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2838 If FONT-SRC is bdf, FONT-NAME is a BDF font file name. To use this |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2839 font, the external library `bdf' is required. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2840 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2841 If FONT-SRC is vflib, FONT-NAME is name of font VFlib knows. To use |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2842 this font, the external library `vflib' is required. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2843 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2844 If FONT-SRC is nil, a proper ASCII font in the variable |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2845 `ps-font-info-database' is used. This is useful for Latin-1 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2846 characters. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2847 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2848 ENCODING is a coding system to encode a string of characters of |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2849 CHARSET into a proper string matching an encoding of the specified |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2850 font. ENCODING may be a function to call to do this encoding. In |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2851 this case, the function is called with one arguemnt, the string to |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2852 encode, and it should return an encoded string. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2853 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2854 BYTES specifies how many bytes in encoded byte sequence construct esch |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2855 character, it should be 1 or 2. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2856 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2857 All multibyte characters are printed by fonts specified in this |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2858 database regardless of a font family of ASCII characters. The |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2859 exception is Latin-1 characters which are printed by the same font as |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2860 ASCII characters, thus obey font family. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2861 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2862 See also the variable `ps-font-info-database'.") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2863 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2864 (defconst ps-mule-font-info-database-ps |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2865 '((katakana-jisx0201 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2866 (normal builtin "Ryumin-Light.Katakana" ps-mule-encode-7bit 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2867 (bold builtin "GothicBBB-Medium.Katakana" ps-mule-encode-7bit 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2868 (bold-italic builtin "GothicBBB-Medium.Katakana" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2869 (latin-jisx0201 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2870 (normat builtin "Ryumin-Light.Hankaku" ps-mule-encode-7bit 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2871 (bold builtin "GothicBBB-Medium.Hankaku" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2872 (japanese-jisx0208 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2873 (normal builtin "Ryumin-Light-H" ps-mule-encode-7bit 2) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2874 (bold builtin "GothicBBB-Medium-H" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2875 (korean-ksc5601 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2876 (normal builtin "Batang-Medium-KSC-H" ps-mule-encode-7bit 2) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2877 (bold builtin " Gulim-Medium-KSC-H" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2878 ) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2879 "Sample setting of the `ps-mule-font-info-database' to use builtin PS font. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2880 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2881 Currently, data for Japanese and Korean PostScript printers are listed.") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2882 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2883 (defconst ps-mule-font-info-database-bdf |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2884 '((ascii |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2885 (normal bdf "etl24-latin1.bdf" nil 1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2886 (bold bdf "etl16b-latin1.bdf" iso-latin-1 1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2887 (italic bdf "etl16i-latin1.bdf" iso-latin-1 1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2888 (bold-italic bdf "etl16bi-latin1.bdf" iso-latin-1 1)) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2889 (latin-iso8859-1 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2890 (normal bdf "etl24-latin1.bdf" iso-latin-1 1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2891 (bold bdf "etl16b-latin1.bdf" iso-latin-1 1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2892 (italic bdf "etl16i-latin1.bdf" iso-latin-1 1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2893 (bold-italic bdf "etl16bi-latin1.bdf" iso-latin-1 1)) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2894 (latin-iso8859-1 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2895 (normal nil nil iso-latin-1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2896 (latin-iso8859-2 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2897 (normal bdf "etl24-latin2.bdf" iso-latin-2 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2898 (latin-iso8859-3 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2899 (normal bdf "etl24-latin3.bdf" iso-latin-3 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2900 (latin-iso8859-4 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2901 (normal bdf "etl24-latin4.bdf" iso-latin-4 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2902 (thai-tis620 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2903 (normal bdf "thai-24.bdf" thai-tis620 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2904 (greek-iso8859-7 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2905 (normal bdf "etl24-greek.bdf" greek-iso-8bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2906 ;; (arabic-iso8859-6 nil) ; not yet available |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2907 (hebrew-iso8859-8 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2908 (normal bdf "etl24-hebrew.bdf" hebrew-iso-8bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2909 (katakana-jisx0201 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2910 (normal bdf "12x24rk.bdf" ps-mule-encode-8bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2911 (latin-jisx0201 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2912 (normal bdf "12x24rk.bdf" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2913 (cyrillic-iso8859-5 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2914 (normal bdf "etl24-cyrillic.bdf" cyrillic-iso-8bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2915 (latin-iso8859-9 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2916 (normal bdf "etl24-latin5.bdf" iso-latin-5 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2917 (japanese-jisx0208-1978 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2918 (normal bdf "jiskan24.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2919 (chinese-gb2312 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2920 (normal bdf "gb24st.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2921 (japanese-jisx0208 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2922 (normal bdf "jiskan24.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2923 (korean-ksc5601 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2924 (normal bdf "hanglm24.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2925 (japanese-jisx0212 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2926 (normal bdf "jisksp40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2927 (chinese-cns11643-1 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2928 (normal bdf "cns-1-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2929 (chinese-cns11643-2 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2930 (normal bdf "cns-2-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2931 (chinese-big5-1 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2932 (normal bdf "taipei24.bdf" chinese-big5 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2933 (chinese-big5-2 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2934 (normal bdf "taipei24.bdf" chinese-big5 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2935 (chinese-sisheng |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2936 (normal bdf "etl24-sisheng.bdf" ps-mule-encode-8bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2937 (ipa |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2938 (normal bdf "etl24-ipa.bdf" ps-mule-encode-8bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2939 (vietnamese-viscii-lower |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2940 (normal bdf "etl24-viscii.bdf" vietnamese-viscii 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2941 (vietnamese-viscii-upper |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2942 (normal bdf "etl24-viscii.bdf" vietnamese-viscii 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2943 (arabic-digit |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2944 (normal bdf "etl24-arabic0.bdf" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2945 (arabic-1-column |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2946 (normal bdf "etl24-arabic1.bdf" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2947 ;; (ascii-right-to-left nil) ; not yet available |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2948 (lao |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2949 (normal bdf "mule-lao-24.bdf" lao 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2950 (arabic-2-column |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2951 (normal bdf "etl24-arabic2.bdf" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2952 (indian-is13194 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2953 (normal bdf "mule-iscii-24.bdf" ps-mule-encode-7bit 1)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2954 (indian-1-column |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2955 (normal bdf "mule-indian-1col-24.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2956 (tibetan-1-column |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2957 (normal bdf "mule-tibmdx-1col-24.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2958 (ethiopic |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2959 (normal bdf "ethiomx24f-uni.bdf" ps-mule-encode-ethiopic 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2960 (chinese-cns11643-3 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2961 (normal bdf "cns-3-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2962 (chinese-cns11643-4 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2963 (normal bdf "cns-4-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2964 (chinese-cns11643-5 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2965 (normal bdf "cns-5-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2966 (chinese-cns11643-6 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2967 (normal bdf "cns-6-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2968 (chinese-cns11643-7 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2969 (normal bdf "cns-7-40.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2970 (indian-2-column |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2971 (normal bdf "mule-indian-24.bdf" ps-mule-encode-7bit 2)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2972 (tibetan |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2973 (normal bdf "mule-tibmdx-24.bdf" ps-mule-encode-7bit 2))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2974 "Sample setting of the `ps-mule-font-info-database' to use BDF fonts. |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2975 BDF (Bitmap Distribution Format) is a format used for distributing |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2976 X's font source file. |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2977 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2978 Current default value lists BDF fonts included in `intlfonts-1.1' |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
2979 which is a collection of X11 fonts for all characters supported by |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2980 Emacs. |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2981 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2982 With the default value, all characters including ASCII and Latin-1 are |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2983 printed by BDF fonts. See also `ps-mule-font-info-database-ps-bdf'.") |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2984 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2985 (defconst ps-mule-font-info-database-ps-bdf |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2986 (cons '(latin-iso8859-1 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2987 (normal nil nil iso-latin-1)) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2988 (cdr (cdr ps-mule-font-info-database-bdf))) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2989 "Sample setting of the `ps-mule-font-info-database to use BDF fonts. |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2990 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2991 Current default value lists BDF fonts included in `intlfonts-1.1' |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2992 which is a collection of X11 fonts for all characters supported by |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2993 Emacs. |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2994 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2995 With the default value, all characters except for ASCII and Latin-1 are |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2996 printed by BDF fonts. ASCII and Latin-1 charcaters are printed by |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2997 PostScript font specified by `ps-font-family'. |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2998 |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
2999 See also `ps-mule-font-info-database-bdf'.") |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3000 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3001 ;; Two typical encoding functions for PostScript fonts. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3002 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3003 (defun ps-mule-encode-7bit (string) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3004 (let* ((dim (charset-dimension |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3005 (char-charset (ps-mule-string-char string 0)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3006 (len (* (ps-mule-chars-in-string string) dim)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3007 (str (make-string len 0)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3008 (i 0) (j 0)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3009 (if (= dim 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3010 (while (< j len) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3011 (aset str j (nth 1 (split-char (ps-mule-string-char string i)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3012 (setq i (ps-mule-next-index string i) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3013 j (1+ j))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3014 (while (< j len) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3015 (let ((split (split-char (ps-mule-string-char string i)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3016 (aset str j (nth 1 split)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3017 (aset str (1+ j) (nth 2 split)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3018 (setq i (ps-mule-next-index string i) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3019 j (+ j 2))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3020 str)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3021 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3022 (defun ps-mule-encode-8bit (string) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3023 (let* ((dim (charset-dimension |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3024 (char-charset (ps-mule-string-char string 0)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3025 (len (* (ps-mule-chars-in-string string) dim)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3026 (str (make-string len 0)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3027 (i 0) (j 0)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3028 (if (= dim 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3029 (while (< j len) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3030 (aset str j |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3031 (+ (nth 1 (split-char (ps-mule-string-char string i))) 128)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3032 (setq i (ps-mule-next-index string i) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3033 j (1+ j))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3034 (while (< j len) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3035 (let ((split (split-char (ps-mule-string-char string i)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3036 (aset str j (+ (nth 1 split) 128)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3037 (aset str (1+ j) (+ (nth 2 split) 128)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3038 (setq i (ps-mule-next-index string i) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3039 j (+ j 2))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3040 str)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3041 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3042 ;; Special encoding function for Ethiopic. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3043 (define-ccl-program ccl-encode-ethio-unicode |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3044 `(1 |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3045 ((read r2) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3046 (loop |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3047 (if (r2 == ,leading-code-private-22) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3048 ((read r0) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3049 (if (r0 == ,(charset-id 'ethiopic)) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3050 ((read r1 r2) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3051 (r1 &= 127) (r2 &= 127) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3052 (call ccl-encode-ethio-font) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3053 (write r1) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3054 (write-read-repeat r2)) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3055 ((write r2 r0) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3056 (repeat)))) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3057 (write-read-repeat r2)))))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3058 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3059 (defun ps-mule-encode-ethiopic (string) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3060 (ccl-execute-on-string (symbol-value 'ccl-encode-ethio-unicode) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3061 (make-vector 9 nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3062 string)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3063 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3064 ;; A charset which we are now processing. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3065 (defvar ps-mule-current-charset nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3066 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3067 (defun ps-mule-get-font-spec (charset font-type) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3068 "Return FONT-SPEC for printing characters CHARSET with FONT-TYPE. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3069 FONT-SPEC is a list of FONT-SRC, FONT-NAME, ENCODING, and BYTES, |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3070 this information is extracted from `ps-mule-font-info-database' |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3071 See the documentation of `ps-mule-font-info-database' for the meaning |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3072 of each element of the list." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3073 (let ((slot (cdr (assq charset ps-mule-font-info-database)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3074 (if slot |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3075 (cdr (or (assq font-type slot) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3076 (and (eq font-type 'bold-italic) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3077 (or (assq 'bold slot) (assq 'italic slot))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3078 (assq 'normal slot)))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3079 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3080 ;; Functions to access each element of FONT-SPEC. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3081 (defsubst ps-mule-font-spec-src (font-spec) (car font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3082 (defsubst ps-mule-font-spec-name (font-spec) (nth 1 font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3083 (defsubst ps-mule-font-spec-encoding (font-spec) (nth 2 font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3084 (defsubst ps-mule-font-spec-bytes (font-spec) (nth 3 font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3085 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3086 (defsubst ps-mule-printable-p (charset) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3087 "Non-nil if characters in CHARSET is printable." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3088 (ps-mule-get-font-spec charset 'normal)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3089 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3090 (defconst ps-mule-external-libraries |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3091 '((builtin nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3092 nil nil nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3093 (bdf nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3094 bdf-generate-prologue bdf-generate-font bdf-generate-glyphs) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3095 (pcf nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3096 pcf-generate-prologue pcf-generate-font pcf-generate-glyphs) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3097 (vflib nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3098 vflib-generate-prologue vflib-generate-font vflib-generate-glyphs)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3099 "Alist of information of external libraries to support PostScript printing. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3100 Each element has the form: |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3101 (FONT-SRC INITIALIZED-P PROLOGUE-FUNC FONT-FUNC GLYPHS-FUNC) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3102 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3103 FONT-SRC is a source of font: builtin, bdf, pcf, or vflib. Except for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3104 builtin, libraries of the same names are necessary, but currently, we |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3105 only have the library `bdf'. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3106 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3107 INITIALIZED-P is a flag to tell this library is initialized or not. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3108 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3109 PROLOGUE-FUNC is a function to call to get a PostScript codes which |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3110 define procedures to use this library. It is called with no argument, |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3111 and should return a list of strings. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3112 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3113 FONT-FUNC is a function to call to get a PostScript codes which define |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3114 a new font. It is called with one argument FONT-SPEC, and should |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3115 return a list of strings. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3116 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3117 GLYPHS-FUNC is a function to call to get a PostScript codes which |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3118 define glyphs of characters. It is called with three arguments |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3119 FONT-SPEC, CODE-LIST, and BYTES, and should return a list of strings.") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3120 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3121 (defun ps-mule-init-external-library (font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3122 "Initialize external librarie specified in FONT-SPEC for PostScript printing. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3123 See the documentation of `ps-mule-get-font-spec' for the meaning of |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3124 each element of the list." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3125 (let* ((font-src (ps-mule-font-spec-src font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3126 (slot (assq font-src ps-mule-external-libraries))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3127 (or (not font-src) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3128 (nth 1 slot) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3129 (let ((func (nth 2 slot))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3130 (if func |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3131 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3132 (or (featurep font-src) (require font-src)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3133 (ps-output-prologue (funcall func)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3134 (setcar (cdr slot) t))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3135 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3136 ;; Cached glyph information of fonts, alist of: |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3137 ;; (FONT-NAME ((FONT-TYPE-NUMBER . SCALED-FONT-NAME) ...) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3138 ;; cache CODE0 CODE1 ...) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3139 (defvar ps-mule-font-cache nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3140 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3141 (defun ps-mule-generate-font (font-spec charset) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3142 "Generate PostScript codes to define a new font in FONT-SPEC for CHARSET." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3143 (let* ((font-cache (assoc (ps-mule-font-spec-name font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3144 ps-mule-font-cache)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3145 (font-src (ps-mule-font-spec-src font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3146 (font-name (ps-mule-font-spec-name font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3147 (func (nth 3 (assq font-src ps-mule-external-libraries))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3148 (scaled-font-name |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3149 (if (eq charset 'ascii) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3150 (format "f%d" ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3151 (format "f%02x-%d" |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3152 (charset-id charset) ps-current-font)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3153 (if (and func (not font-cache)) |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3154 (ps-output-prologue (funcall func charset font-spec))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3155 (ps-output-prologue |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3156 (list (format "/%s %f /%s Def%sFontMule\n" |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3157 scaled-font-name ps-font-size font-name |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3158 (if (eq ps-mule-current-charset 'ascii) "Ascii" "")))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3159 (if font-cache |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3160 (setcar (cdr font-cache) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3161 (cons (cons ps-current-font scaled-font-name) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3162 (nth 1 font-cache))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3163 (setq font-cache (list font-name |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3164 (list (cons ps-current-font scaled-font-name)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3165 'cache)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3166 (setq ps-mule-font-cache (cons font-cache ps-mule-font-cache))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3167 font-cache)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3168 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3169 (defun ps-mule-generate-glyphs (font-spec code-list) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3170 "Generate PostScript codes which generate glyphs for CODE-LIST of FONT-SPEC." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3171 (let* ((font-src (ps-mule-font-spec-src font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3172 (func (nth 4 (assq font-src ps-mule-external-libraries)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3173 (if func |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3174 (ps-output-prologue |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3175 (funcall func font-spec code-list |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3176 (ps-mule-font-spec-bytes font-spec)))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3177 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3178 (defvar ps-last-font nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3179 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3180 (defun ps-mule-prepare-font (font-spec string charset &optional no-setfont) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3181 "Generate PostScript codes to print STRING of CHARSET by font in FONT-SPEC. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3182 The generated codes goes to prologue part except for a code for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3183 setting the current font (using PostScript procedure `FM'). |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3184 If optional arg NO-SETFONT is non-nil, don't generate the code for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3185 setting the current font." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3186 (let ((font-cache (assoc (ps-mule-font-spec-name font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3187 ps-mule-font-cache))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3188 (or (and font-cache (assq ps-current-font (nth 1 font-cache))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3189 (setq font-cache (ps-mule-generate-font font-spec charset))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3190 (or no-setfont |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3191 (let ((new-font (cdr (assq ps-current-font (nth 1 font-cache))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3192 (or (equal new-font ps-last-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3193 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3194 (ps-output (format "/%s FM\n" new-font)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3195 (setq ps-last-font new-font))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3196 (if (nth 4 (assq (ps-mule-font-spec-src font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3197 ps-mule-external-libraries)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3198 ;; We have to generate PostScript codes which define glyphs. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3199 (let* ((cached-codes (nthcdr 2 font-cache)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3200 (newcodes nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3201 (bytes (ps-mule-font-spec-bytes font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3202 (len (length string)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3203 (i 0) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3204 code) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3205 (while (< i len) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3206 (setq code |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3207 (if (= bytes 1) (aref string i) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3208 (+ (* (aref string i) 256) (aref string (1+ i))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3209 (or (memq code cached-codes) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3210 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3211 (setq newcodes (cons code newcodes)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3212 (setcdr cached-codes (cons code (cdr cached-codes))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3213 (setq i (+ i bytes))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3214 (if newcodes |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3215 (ps-mule-generate-glyphs font-spec newcodes)))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3216 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3217 ;; List of charsets of multibyte characters in a text being printed. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3218 ;; If the text doesn't contain any multibyte characters (i.e. only |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3219 ;; ASCII), the value is nil. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3220 (defvar ps-mule-charset-list nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3221 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3222 ;; This constant string is a PostScript code embeded as is in the |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3223 ;; header of generated PostScript. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3224 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3225 (defvar ps-mule-prologue-generated nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3226 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3227 (defconst ps-mule-prologue |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3228 "%%%% Start of Mule Section |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3229 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3230 %% Working dictionaly for general use. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3231 /MuleDict 10 dict def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3232 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3233 %% Define already scaled font for non-ASCII character sets. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3234 /DefFontMule { % fontname size basefont |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3235 findfont exch scalefont definefont pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3236 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3237 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3238 %% Define already scaled font for ASCII character sets. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3239 /DefAsciiFontMule { % fontname size basefont |- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3240 MuleDict begin |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3241 findfont dup /Encoding get /ISOLatin1Encoding exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3242 exch scalefont reencodeFontISO |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3243 end |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3244 } def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3245 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3246 %% Set the specified non-ASCII font to use. It doesn't install |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3247 %% Ascent, etc. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3248 /FM { % fontname |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3249 findfont setfont |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3250 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3251 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3252 %% Show vacant box for characters which don't have appropriate font. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3253 /SB { % count column |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3254 SpaceWidth mul /w exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3255 1 exch 1 exch { %for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3256 pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3257 gsave |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3258 0 setlinewidth |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3259 0 Descent rmoveto w 0 rlineto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3260 0 LineHeight rlineto w neg 0 rlineto closepath stroke |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3261 grestore |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3262 w 0 rmoveto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3263 } for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3264 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3265 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3266 %% Flag to tell if we are now handling a composite character. This is |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3267 %% defined here because both composite character handler and bitmap font |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3268 %% handler require it. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3269 /Cmpchar false def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3270 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3271 %%%% End of Mule Section |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3272 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3273 " |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3274 "PostScript code for printing multibyte characters.") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3275 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3276 (defun ps-mule-skip-same-charset (charset) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3277 "Skip characters of CHARSET following the current point." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3278 (while (eq (charset-after) charset) (forward-char 1))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3279 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3280 (defun ps-mule-find-wrappoint (from to char-width) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3281 "Find a longest sequence at FROM which is printable in the current line. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3282 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3283 TO limits the sequence. It is assumed that all characters between |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3284 FROM and TO belong to a charset set in `ps-mule-current-charset'. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3285 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3286 CHAR-WIDTH is an average width of ASCII characters in the current font. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3287 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3288 The return value is a cons of ENDPOS and RUN-WIDTH, where |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3289 ENDPOS is an end position of the sequence, |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3290 RUN-WIDTH is the width of the sequence." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3291 (let (run-width) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3292 (if (eq ps-mule-current-charset 'composition) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3293 ;; We must draw one char by one. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3294 (let ((ch (char-after from))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3295 (setq run-width (* (char-width ch) char-width)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3296 (if (> run-width ps-width-remaining) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3297 (setq run-width ps-width-remaining) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3298 (setq from (ps-mule-next-point from)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3299 ;; We assume that all characters in this range have the same width. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3300 (let ((width (charset-width ps-mule-current-charset))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3301 (setq run-width (* (- to from) char-width width)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3302 (if (> run-width ps-width-remaining) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3303 (setq from (min |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3304 (+ from (truncate (/ ps-width-remaining char-width))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3305 to) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3306 run-width ps-width-remaining) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3307 (setq from to)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3308 (cons from run-width))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3309 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3310 (defun ps-mule-plot-string (from to &optional bg-color) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3311 "Generate PostScript code for ploting characters in the region FROM and TO. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3312 It is assumed that all characters in this region belong to the |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3313 charset `ps-mule-current-charset'. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3314 Optional arg BG-COLOR specifies background color. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3315 The return value is a cons of ENDPOS and WIDTH of the sequence |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3316 actually plotted by this function." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3317 (let* ((wrappoint (ps-mule-find-wrappoint |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3318 from to (ps-avg-char-width 'ps-font-for-text))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3319 (to (car wrappoint)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3320 (font-type (car (nth ps-current-font |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3321 (ps-font-alist 'ps-font-for-text)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3322 (font-spec (ps-mule-get-font-spec ps-mule-current-charset font-type)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3323 (encoding (ps-mule-font-spec-encoding font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3324 (string (buffer-substring-no-properties from to))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3325 (cond |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3326 ((= from to) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3327 ;; We can't print any more characters in the current line. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3328 nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3329 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3330 (font-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3331 ;; We surely have a font for printing this character set. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3332 (if (coding-system-p encoding) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3333 (setq string (encode-coding-string string encoding)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3334 (if (functionp encoding) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3335 (setq string (funcall encoding string)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3336 (if encoding |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3337 (error "Invalid coding system or function: %s" encoding)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3338 (setq string (string-as-unibyte string)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3339 (if (ps-mule-font-spec-src font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3340 (ps-mule-prepare-font font-spec string ps-mule-current-charset) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3341 (ps-set-font ps-current-font)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3342 (ps-output-string string) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3343 (ps-output " S\n")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3344 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3345 ((eq ps-mule-current-charset 'latin-iso8859-1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3346 ;; Latin-1 can be printed by a normal ASCII font. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3347 (ps-set-font ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3348 (ps-output-string |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3349 (string-as-unibyte (encode-coding-string string 'iso-latin-1))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3350 (ps-output " S\n")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3351 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3352 ((eq ps-mule-current-charset 'composition) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3353 (let* ((ch (char-after from)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3354 (width (char-width ch)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3355 (ch-list (decompose-composite-char ch 'list t))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3356 (if (consp (nth 1 ch-list)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3357 (ps-mule-plot-rule-cmpchar ch-list width font-type) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3358 (ps-mule-plot-cmpchar ch-list width t font-type)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3359 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3360 (t |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3361 ;; No way to print this charset. Just show a vacant box of an |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3362 ;; appropriate width. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3363 (ps-output (format "%d %d SB\n" |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3364 (length string) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3365 (if (eq ps-mule-current-charset 'composition) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3366 (char-width (char-after from)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3367 (charset-width ps-mule-current-charset)))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3368 wrappoint)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3369 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3370 ;; Composite font support |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3371 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3372 (defvar ps-mule-cmpchar-prologue-generated nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3373 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3374 (defconst ps-mule-cmpchar-prologue |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3375 "%%%% Composite character handler |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3376 /CmpcharWidth 0 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3377 /CmpcharRelativeCompose 0 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3378 /CmpcharRelativeSkip 0.4 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3379 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3380 %% Get a bounding box (relative to currentpoint) of STR. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3381 /GetPathBox { % str |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3382 gsave |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3383 currentfont /FontType get 3 eq { %ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3384 stringwidth pop pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3385 } { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3386 currentpoint /y exch def pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3387 false charpath flattenpath pathbbox |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3388 y sub /URY exch def pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3389 y sub /LLY exch def pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3390 } ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3391 grestore |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3392 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3393 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3394 %% Beginning of composite char. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3395 /BC { % str xoff width |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3396 /Cmpchar true def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3397 /CmpcharWidth exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3398 currentfont /RelativeCompose known { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3399 /CmpcharRelativeCompose currentfont /RelativeCompose get def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3400 } { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3401 /CmpcharRelativeCompose false def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3402 } ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3403 /bgsave bg def /bgcolorsave bgcolor def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3404 /Effectsave Effect def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3405 gsave % Reflect effect only at first |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3406 /Effect Effect 1 2 add 4 add 16 add and def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3407 /f0 findfont setfont ( ) 0 CmpcharWidth getinterval S |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3408 grestore |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3409 /Effect Effectsave 8 32 add and def % enable only shadow and outline |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3410 false BG |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3411 gsave SpaceWidth mul 0 rmoveto dup GetPathBox S grestore |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3412 /y currentpoint exch pop def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3413 /HIGH URY y add def /LOW LLY y add def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3414 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3415 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3416 %% End of composite char. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3417 /EC { % -- |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3418 /bg bgsave def /bgcolor bgcolorsave def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3419 /Effect Effectsave def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3420 /Cmpchar false def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3421 CmpcharWidth SpaceWidth mul 0 rmoveto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3422 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3423 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3424 %% Rule base composition |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3425 /RBC { % str xoff gref nref |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3426 /nref exch def /gref exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3427 gsave |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3428 SpaceWidth mul 0 rmoveto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3429 dup |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3430 GetPathBox |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3431 [ HIGH currentpoint exch pop LOW HIGH LOW add 2 div ] gref get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3432 [ URY LLY sub LLY neg 0 URY LLY sub 2 div ] nref get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3433 sub /btm exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3434 /top btm URY LLY sub add def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3435 top HIGH gt { /HIGH top def } if |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3436 btm LOW lt { /LOW btm def } if |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3437 currentpoint pop btm LLY sub moveto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3438 S |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3439 grestore |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3440 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3441 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3442 %% Relative composition |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3443 /RLC { % str |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3444 gsave |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3445 dup GetPathBox |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3446 CmpcharRelativeCompose type /integertype eq { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3447 LLY CmpcharRelativeCompose gt { % compose on top |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3448 currentpoint pop HIGH LLY sub CmpcharRelativeSkip add moveto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3449 /HIGH HIGH URY LLY sub add CmpcharRelativeSkip add def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3450 } { URY 0 le { % compose under bottom |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3451 currentpoint pop LOW LLY add CmpcharRelativeSkip sub moveto |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3452 /LOW LOW URY LLY sub sub CmpcharRelativeSkip sub def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3453 } if } ifelse } if |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3454 S |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3455 grestore |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3456 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3457 %%%% End of composite character handler |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3458 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3459 " |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3460 "PostScript code for printing composite characters.") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3461 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3462 (defun ps-mule-plot-rule-cmpchar (ch-rule-list total-width font-type) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3463 (let* ((leftmost 0.0) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3464 (rightmost (float (char-width (car ch-rule-list)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3465 (l (cons '(3 . 3) ch-rule-list)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3466 (cmpchar-elements nil)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3467 (while l |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3468 (let* ((this (car l)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3469 (gref (car this)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3470 (nref (cdr this)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3471 ;; X-axis info (0:left, 1:center, 2:right) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3472 (gref-x (% gref 3)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3473 (nref-x (% nref 3)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3474 ;; Y-axis info (0:top, 1:base, 2:bottom, 3:center) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3475 (gref-y (if (= gref 4) 3 (/ gref 3))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3476 (nref-y (if (= nref 4) 3 (/ nref 3))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3477 (width (float (char-width (car (cdr l))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3478 left) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3479 (setq left (+ leftmost |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3480 (/ (* (- rightmost leftmost) gref-x) 2.0) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3481 (- (/ (* nref-x width) 2.0)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3482 (setq cmpchar-elements |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3483 (cons (list (car (cdr l)) left gref-y nref-y) cmpchar-elements)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3484 (if (< left leftmost) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3485 (setq leftmost left)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3486 (if (> (+ left width) rightmost) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3487 (setq rightmost (+ left width))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3488 (setq l (nthcdr 2 l)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3489 (if (< leftmost 0) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3490 (let ((l cmpchar-elements)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3491 (while l |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3492 (setcar (cdr (car l)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3493 (- (nth 1 (car l)) leftmost)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3494 (setq l (cdr l))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3495 (ps-mule-plot-cmpchar (nreverse cmpchar-elements) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3496 total-width nil font-type))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3497 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3498 (defun ps-mule-plot-cmpchar (elements total-width relativep font-type) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3499 (let* ((ch (if relativep (car elements) (car (car elements)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3500 (str (ps-mule-prepare-cmpchar-font ch font-type))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3501 (ps-output-string str) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3502 (ps-output (format " %d %d BC " |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3503 (if relativep 0 (nth 1 (car elements))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3504 total-width))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3505 (setq elements (cdr elements)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3506 (while elements |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3507 (let* ((elt (car elements)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3508 (ch (if relativep elt (car elt))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3509 (str (ps-mule-prepare-cmpchar-font ch font-type))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3510 (if relativep |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3511 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3512 (ps-output-string str) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3513 (ps-output " RLC ")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3514 (ps-output-string str) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3515 (ps-output (format " %d %d %d RBC " |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3516 (nth 1 elt) (nth 2 elt) (nth 3 elt))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3517 (setq elements (cdr elements))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3518 (ps-output "EC\n")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3519 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3520 (defun ps-mule-prepare-cmpchar-font (char font-type) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3521 (let* ((ps-mule-current-charset (char-charset char)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3522 (font-spec (ps-mule-get-font-spec ps-mule-current-charset font-type)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3523 (encoding (ps-mule-font-spec-encoding font-spec)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3524 (str (char-to-string char))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3525 (cond (font-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3526 (if (coding-system-p encoding) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3527 (setq str (encode-coding-string str encoding)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3528 (if (functionp encoding) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3529 (setq str (funcall encoding str)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3530 (if encoding |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3531 (error "Invalid coding system or function: %s" encoding)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3532 (setq str (string-as-unibyte str)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3533 (if (ps-mule-font-spec-src font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3534 (ps-mule-prepare-font font-spec str ps-mule-current-charset) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3535 (ps-set-font ps-current-font))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3536 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3537 ((eq ps-mule-current-charset 'latin-iso8859-1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3538 (ps-set-font ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3539 (setq str |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3540 (string-as-unibyte (encode-coding-string str 'iso-latin-1)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3541 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3542 (t |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3543 ;; No font for CHAR. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3544 (ps-set-font ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3545 (setq str " "))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3546 str)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3547 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3548 ;; Bitmap font support |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3549 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3550 (defvar ps-mule-bitmap-prologue-generated nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3551 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3552 (defconst ps-mule-bitmap-prologue |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3553 "%%%% Bitmap font handler |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3554 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3555 /str7 7 string def % working area |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3556 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3557 %% We grow the dictionary one bunch (1024 entries) by one. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3558 /BitmapDictArray 256 array def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3559 /BitmapDictLength 1024 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3560 /BitmapDictIndex -1 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3561 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3562 /NewBitmapDict { % -- |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3563 /BitmapDictIndex BitmapDictIndex 1 add def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3564 BitmapDictArray BitmapDictIndex BitmapDictLength dict put |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3565 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3566 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3567 %% Make at least one dictionary. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3568 NewBitmapDict |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3569 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3570 /AddBitmap { % gloval-charname bitmap-data |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3571 BitmapDictArray BitmapDictIndex get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3572 dup length BitmapDictLength ge { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3573 pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3574 NewBitmapDict |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3575 BitmapDictArray BitmapDictIndex get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3576 } if |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3577 3 1 roll put |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3578 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3579 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3580 /GetBitmap { % gloval-charname |- bitmap-data |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3581 0 1 BitmapDictIndex { BitmapDictArray exch get begin } for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3582 load |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3583 0 1 BitmapDictIndex { pop end } for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3584 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3585 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3586 %% Return a global character name which can be used as a key in the |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3587 %% bitmap dictionary. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3588 /GlobalCharName { % fontidx code1 code2 |- gloval-charname |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3589 exch 256 mul add exch 65536 mul add 16777216 add 16 str7 cvrs 0 66 put |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3590 str7 cvn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3591 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3592 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3593 %% Character code holder for a 2-byte character. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3594 /FirstCode -1 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3595 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3596 %% Glyph rendering procedure |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3597 /BuildGlyphCommon { % fontdict charname |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3598 1 index /FontDimension get 1 eq { /FirstCode 0 store } if |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3599 NameIndexDict exch get % STACK: fontdict charcode |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3600 FirstCode 0 lt { %ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3601 %% This is the first byte of a 2-byte character. Just |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3602 %% remember it for the moment. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3603 /FirstCode exch store |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3604 pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3605 0 0 setcharwidth |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3606 } { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3607 1 index /FontSize get /size exch def |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3608 1 index /FontSpaceWidthRatio get /ratio exch def |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3609 1 index /FontIndex get exch FirstCode exch |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3610 GlobalCharName GetBitmap /bmp exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3611 %% bmp == [ DWIDTH BBX-WIDTH BBX-HEIGHT BBX-XOFF BBX-YOFF BITMAP ] |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3612 Cmpchar { %ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3613 /FontMatrix get [ exch { size div } forall ] /mtrx exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3614 bmp 3 get bmp 4 get mtrx transform |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3615 /LLY exch def pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3616 bmp 1 get bmp 3 get add bmp 2 get bmp 4 get add mtrx transform |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3617 /URY exch def pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3618 } { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3619 pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3620 } ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3621 /FirstCode -1 store |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3622 |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3623 bmp 0 get SpaceWidthRatio ratio div mul size div 0 % wx wy |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3624 setcharwidth % We can't use setcachedevice here. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3625 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3626 bmp 1 get 0 gt bmp 2 get 0 gt and { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3627 bmp 1 get bmp 2 get % width height |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3628 true % polarity |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3629 [ size 0 0 size neg bmp 3 get neg bmp 2 get bmp 4 get add ] % matrix |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3630 bmp 5 1 getinterval cvx % datasrc |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3631 imagemask |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3632 } if |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3633 } ifelse |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3634 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3635 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3636 /BuildCharCommon { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3637 1 index /Encoding get exch get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3638 1 index /BuildGlyph get exec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3639 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3640 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3641 %% Bitmap font creater |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3642 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3643 %% Common Encoding shared by all bitmap fonts. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3644 /EncodingCommon 256 array def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3645 %% Mapping table from character name to character code. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3646 /NameIndexDict 256 dict def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3647 0 1 255 { %for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3648 /idx exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3649 /idxname idx 256 add 16 (XXX) cvrs dup 0 67 put cvn def % `C' == 67 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3650 EncodingCommon idx idxname put |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3651 NameIndexDict idxname idx put |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3652 } for |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3653 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3654 /GlobalFontIndex 0 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3655 |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3656 %% fontname dim col fontsize relative-compose baseline-offset fbbx |- -- |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3657 /BitmapFont { |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3658 15 dict begin |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3659 /FontBBox exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3660 /BaselineOffset exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3661 /RelativeCompose exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3662 /FontSize exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3663 /FontBBox [ FontBBox { FontSize div } forall ] def |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3664 FontBBox 2 get FontBBox 0 get sub exch div |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3665 /FontSpaceWidthRatio exch def |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3666 /FontDimension exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3667 /FontIndex GlobalFontIndex def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3668 /FontType 3 def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3669 /FontMatrix matrix def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3670 /Encoding EncodingCommon def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3671 /BuildGlyph { BuildGlyphCommon } def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3672 /BuildChar { BuildCharCommon } def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3673 currentdict end |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3674 definefont pop |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3675 /GlobalFontIndex GlobalFontIndex 1 add def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3676 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3677 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3678 %% Define a new bitmap font. |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3679 %% fontname dim col fontsize relative-compose baseline-offset fbbx |- -- |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3680 /NF { |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3681 /fbbx exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3682 %% Convert BDF's FontBoundingBox to PostScript's FontBBox |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3683 [ fbbx 2 get fbbx 3 get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3684 fbbx 2 get fbbx 0 get add fbbx 3 get fbbx 1 get add ] |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3685 BitmapFont |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3686 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3687 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3688 %% Define a glyph for the specified font and character. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3689 /NG { % fontname charcode bitmap-data |- -- |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3690 /bmp exch def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3691 exch findfont dup /BaselineOffset get bmp 4 get add bmp exch 4 exch put |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3692 /FontIndex get exch |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3693 dup 256 idiv exch 256 mod GlobalCharName |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3694 bmp AddBitmap |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3695 } bind def |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3696 %%%% End of bitmap font handler |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3697 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3698 ") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3699 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3700 ;; External library support. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3701 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3702 ;; The following three functions are to be called from external |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3703 ;; libraries which support bitmap fonts (e.g. `bdf') to get |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3704 ;; appropriate PostScript code. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3705 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3706 (defun ps-mule-generate-bitmap-prologue () |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3707 (unless ps-mule-bitmap-prologue-generated |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3708 (setq ps-mule-bitmap-prologue-generated t) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3709 (list ps-mule-bitmap-prologue))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3710 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3711 (defun ps-mule-generate-bitmap-font (&rest args) |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
3712 (list (apply 'format "/%s %d %d %f %S %d %S NF\n" args))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3713 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3714 (defun ps-mule-generate-bitmap-glyph (font-name code dwidth bbx bitmap) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3715 (format "/%s %d [ %d %d %d %d %d <%s> ] NG\n" |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3716 font-name code |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3717 dwidth (aref bbx 0) (aref bbx 1) (aref bbx 2) (aref bbx 3) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3718 bitmap)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3719 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3720 ;; Mule specific initializers. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3721 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3722 (defun ps-mule-initialize () |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3723 "Produce Poscript code in the prologue part for multibyte characters." |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3724 (setq ps-mule-current-charset 'ascii |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3725 ps-mule-font-cache nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3726 ps-mule-prologue-generated nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3727 ps-mule-cmpchar-prologue-generated nil |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3728 ps-mule-bitmap-prologue-generated nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3729 (mapcar (function (lambda (x) (setcar (cdr x) nil))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3730 ps-mule-external-libraries)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3731 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3732 (defun ps-mule-begin (from to) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3733 (if (and (boundp 'enable-multibyte-characters) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3734 enable-multibyte-characters) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3735 ;; Initialize `ps-mule-charset-list'. If some characters aren't |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3736 ;; printable, warn it. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3737 (let ((charsets (delete 'ascii (find-charset-region from to)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3738 (setq ps-mule-charset-list charsets) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3739 (save-excursion |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3740 (goto-char from) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3741 (if (search-forward "\200" to t) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3742 (setq ps-mule-charset-list |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3743 (cons 'composition ps-mule-charset-list)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3744 (if (and (catch 'tag |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3745 (while charsets |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3746 (if (or (eq (car charsets) 'composition) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3747 (ps-mule-printable-p (car charsets))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3748 (setq charsets (cdr charsets)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3749 (throw 'tag t)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3750 (not (y-or-n-p "Font for some characters not found, continue anyway? "))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3751 (error "Printing cancelled")))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3752 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3753 (if ps-mule-charset-list |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3754 (let ((l ps-mule-charset-list) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3755 font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3756 (unless ps-mule-prologue-generated |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3757 (ps-output-prologue ps-mule-prologue) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3758 (setq ps-mule-prologue-generated t)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3759 ;; If external functions are necessary, generate prologues for them. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3760 (while l |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3761 (if (and (eq (car l) 'composition) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3762 (not ps-mule-cmpchar-prologue-generated)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3763 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3764 (ps-output-prologue ps-mule-cmpchar-prologue) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3765 (setq ps-mule-cmpchar-prologue-generated t)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3766 (if (setq font-spec (ps-mule-get-font-spec (car l) 'normal)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3767 (ps-mule-init-external-library font-spec))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3768 (setq l (cdr l))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3769 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3770 ;; If ASCII font is also specified in ps-mule-font-info-database, |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3771 ;; use it istead of what specified in ps-font-info-database. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3772 (let ((font-spec (ps-mule-get-font-spec 'ascii 'normal))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3773 (if font-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3774 (progn |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3775 (unless ps-mule-prologue-generated |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3776 (ps-output-prologue ps-mule-prologue) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3777 (setq ps-mule-prologue-generated t)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3778 (ps-mule-init-external-library font-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3779 (let ((font (ps-font-alist 'ps-font-for-text)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3780 (i 0)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3781 (while font |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3782 (let ((ps-current-font i)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3783 ;; Be sure to download a glyph for SPACE in advance. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3784 (ps-mule-prepare-font |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3785 (ps-mule-get-font-spec 'ascii (car font)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3786 " " 'ascii 'no-setfont)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3787 (setq font (cdr font) i (1+ i)))))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3788 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3789 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3790 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
3791 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3792 (defun ps-line-lengths-internal () |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
3793 "Display the correspondence between a line length and a font size, |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3794 using the current ps-print setup. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3795 Try: pr -t file | awk '{printf \"%3d %s\n\", length($0), $0}' | sort -r | head" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3796 (let ((buf (get-buffer-create "*Line-lengths*")) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3797 (ifs ps-font-size) ; initial font size |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3798 (icw (ps-avg-char-width 'ps-font-for-text)) ; initial character width |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3799 (print-width (progn (ps-get-page-dimensions) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3800 ps-print-width)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3801 (ps-setup (ps-setup)) ; setup for the current buffer |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3802 (fs-min 5) ; minimum font size |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3803 cw-min ; minimum character width |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3804 nb-cpl-max ; maximum nb of characters per line |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3805 (fs-max 14) ; maximum font size |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3806 cw-max ; maximum character width |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3807 nb-cpl-min ; minimum nb of characters per line |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3808 fs ; current font size |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3809 cw ; current character width |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3810 nb-cpl ; current nb of characters per line |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3811 ) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3812 (setq cw-min (/ (* icw fs-min) ifs) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3813 nb-cpl-max (floor (/ print-width cw-min)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3814 cw-max (/ (* icw fs-max) ifs) |
20331 | 3815 nb-cpl-min (floor (/ print-width cw-max)) |
3816 nb-cpl nb-cpl-min) | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3817 (set-buffer buf) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3818 (goto-char (point-max)) |
20331 | 3819 (or (bolp) (insert "\n")) |
3820 (insert ps-setup | |
3821 "nb char per line / font size\n") | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3822 (while (<= nb-cpl nb-cpl-max) |
20331 | 3823 (setq cw (/ print-width (float nb-cpl)) |
3824 fs (/ (* ifs cw) icw)) | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3825 (insert (format "%3s %s\n" nb-cpl fs)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3826 (setq nb-cpl (1+ nb-cpl))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3827 (insert "\n") |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3828 (display-buffer buf 'not-this-window))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3829 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3830 (defun ps-nb-pages (nb-lines) |
21955
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
3831 "Display correspondence between font size and the number of pages. |
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
3832 The correspondence is based on having NB-LINES lines of text, |
c4de7c7bc14a
(ps-header-title-font-size): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
21954
diff
changeset
|
3833 and on the current ps-print setup." |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3834 (let ((buf (get-buffer-create "*Nb-Pages*")) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3835 (ifs ps-font-size) ; initial font size |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3836 (ilh (ps-line-height 'ps-font-for-text)) ; initial line height |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3837 (page-height (progn (ps-get-page-dimensions) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3838 ps-print-height)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3839 (ps-setup (ps-setup)) ; setup for the current buffer |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3840 (fs-min 4) ; minimum font size |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3841 lh-min ; minimum line height |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3842 nb-lpp-max ; maximum nb of lines per page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3843 nb-page-min ; minimum nb of pages |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3844 (fs-max 14) ; maximum font size |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3845 lh-max ; maximum line height |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3846 nb-lpp-min ; minimum nb of lines per page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3847 nb-page-max ; maximum nb of pages |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3848 fs ; current font size |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3849 lh ; current line height |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3850 nb-lpp ; current nb of lines per page |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3851 nb-page ; current nb of pages |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3852 ) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3853 (setq lh-min (/ (* ilh fs-min) ifs) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3854 nb-lpp-max (floor (/ page-height lh-min)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3855 nb-page-min (ceiling (/ (float nb-lines) nb-lpp-max)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3856 lh-max (/ (* ilh fs-max) ifs) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3857 nb-lpp-min (floor (/ page-height lh-max)) |
20331 | 3858 nb-page-max (ceiling (/ (float nb-lines) nb-lpp-min)) |
3859 nb-page nb-page-min) | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3860 (set-buffer buf) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3861 (goto-char (point-max)) |
20331 | 3862 (or (bolp) (insert "\n")) |
3863 (insert ps-setup | |
3864 (format "%d lines\n" nb-lines) | |
3865 "nb page / font size\n") | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3866 (while (<= nb-page nb-page-max) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3867 (setq nb-lpp (ceiling (/ nb-lines (float nb-page))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3868 lh (/ page-height nb-lpp) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3869 fs (/ (* ifs lh) ilh)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3870 (insert (format "%s %s\n" nb-page fs)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3871 (setq nb-page (1+ nb-page))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3872 (insert "\n") |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3873 (display-buffer buf 'not-this-window))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3874 |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3875 ;; macros used in `ps-select-font' |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3876 (defmacro ps-lookup (key) `(cdr (assq ,key font-entry))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3877 (defmacro ps-size-scale (key) `(/ (* (ps-lookup ,key) font-size) size)) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3878 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3879 (defun ps-select-font (font-family sym font-size title-font-size) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3880 (let ((font-entry (cdr (assq font-family ps-font-info-database)))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3881 (or font-entry |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3882 (error "Don't have data to scale font %s. Known fonts families are %s" |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3883 font-family |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3884 (mapcar 'car ps-font-info-database))) |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3885 (let ((size (ps-lookup 'size))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3886 (put sym 'fonts (ps-lookup 'fonts)) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3887 (put sym 'space-width (ps-size-scale 'space-width)) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3888 (put sym 'avg-char-width (ps-size-scale 'avg-char-width)) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3889 (put sym 'line-height (ps-size-scale 'line-height)) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3890 (put sym 'title-line-height |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
3891 (/ (* (ps-lookup 'line-height) title-font-size) size))))) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3892 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
3893 (defun ps-get-page-dimensions () |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3894 (let ((page-dimensions (cdr (assq ps-paper-type ps-page-dimensions-database))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3895 page-width page-height) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3896 (cond |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3897 ((null page-dimensions) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3898 (error "`ps-paper-type' must be one of:\n%s" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3899 (mapcar 'car ps-page-dimensions-database))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3900 ((< ps-number-of-columns 1) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3901 (error "The number of columns %d should be positive" |
20331 | 3902 ps-number-of-columns))) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3903 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3904 (ps-select-font ps-font-family 'ps-font-for-text |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3905 ps-font-size ps-font-size) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3906 (ps-select-font ps-header-font-family 'ps-font-for-header |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3907 ps-header-font-size ps-header-title-font-size) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3908 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3909 (setq page-width (ps-page-dimensions-get-width page-dimensions) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3910 page-height (ps-page-dimensions-get-height page-dimensions)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3911 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3912 ;; Landscape mode |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3913 (if ps-landscape-mode |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3914 ;; exchange width and height |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3915 (setq page-width (prog1 page-height (setq page-height page-width)))) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3916 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3917 ;; It is used to get the lower right corner (only in landscape mode) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3918 (setq ps-landscape-page-height page-height) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3919 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3920 ;; | lm | text | ic | text | ic | text | rm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3921 ;; page-width == lm + n * pw + (n - 1) * ic + rm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3922 ;; => pw == (page-width - lm -rm - (n - 1) * ic) / n |
20331 | 3923 (setq ps-print-width (/ (- page-width |
3924 ps-left-margin ps-right-margin | |
3925 (* (1- ps-number-of-columns) ps-inter-column)) | |
3926 ps-number-of-columns)) | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3927 (if (<= ps-print-width 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3928 (error "Bad horizontal layout: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3929 page-width == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3930 ps-left-margin == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3931 ps-right-margin == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3932 ps-inter-column == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3933 ps-number-of-columns == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3934 | lm | text | ic | text | ic | text | rm | |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3935 page-width == lm + n * print-width + (n - 1) * ic + rm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3936 => print-width == %d !" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3937 page-width |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3938 ps-left-margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3939 ps-right-margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3940 ps-inter-column |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3941 ps-number-of-columns |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3942 ps-print-width)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3943 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3944 (setq ps-print-height |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3945 (- page-height ps-bottom-margin ps-top-margin)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3946 (if (<= ps-print-height 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3947 (error "Bad vertical layout: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3948 ps-top-margin == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3949 ps-bottom-margin == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3950 page-height == bm + print-height + tm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3951 => print-height == %d !" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3952 ps-top-margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3953 ps-bottom-margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3954 ps-print-height)) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3955 ;; If headers are turned on, deduct the height of the header from |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3956 ;; the print height. |
20331 | 3957 (if ps-print-header |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3958 (setq ps-header-pad (* ps-header-line-pad |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3959 (ps-title-line-height 'ps-font-for-header)) |
20331 | 3960 ps-print-height (- ps-print-height |
3961 ps-header-offset | |
3962 ps-header-pad | |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3963 (ps-title-line-height 'ps-font-for-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3964 (* (ps-line-height 'ps-font-for-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3965 (1- ps-header-lines)) |
20331 | 3966 ps-header-pad))) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3967 (if (<= ps-print-height 0) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3968 (error "Bad vertical layout: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3969 ps-top-margin == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3970 ps-bottom-margin == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3971 ps-header-offset == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3972 ps-header-pad == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3973 header-height == %s |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3974 page-height == bm + print-height + tm - ho - hh |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3975 => print-height == %d !" |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3976 ps-top-margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3977 ps-bottom-margin |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3978 ps-header-offset |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3979 ps-header-pad |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3980 (+ ps-header-pad |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3981 (ps-title-line-height 'ps-font-for-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3982 (* (ps-line-height 'ps-font-for-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
3983 (1- ps-header-lines)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3984 ps-header-pad) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
3985 ps-print-height)))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
3986 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
3987 (defun ps-print-preprint (&optional filename) |
20331 | 3988 (and filename |
3989 (or (numberp filename) | |
3990 (listp filename)) | |
3991 (let* ((name (concat (buffer-name) ".ps")) | |
3992 (prompt (format "Save PostScript to file: (default %s) " name)) | |
3993 (res (read-file-name prompt default-directory name nil))) | |
3994 (if (file-directory-p res) | |
3995 (expand-file-name name (file-name-as-directory res)) | |
3996 res)))) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
3997 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
3998 ;; The following functions implement a simple list-buffering scheme so |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
3999 ;; that ps-print doesn't have to repeatedly switch between buffers |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4000 ;; while spooling. The functions `ps-output' and `ps-output-string' build |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4001 ;; up the lists; the function `ps-flush-output' takes the lists and |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4002 ;; insert its contents into the spool buffer (*PostScript*). |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4003 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4004 (defvar ps-string-escape-codes |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4005 (let ((table (make-vector 256 nil)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4006 (char ?\000)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4007 ;; control characters |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4008 (while (<= char ?\037) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4009 (aset table char (format "\\%03o" char)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4010 (setq char (1+ char))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4011 ;; printable characters |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4012 (while (< char ?\177) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4013 (aset table char (format "%c" char)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4014 (setq char (1+ char))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4015 ;; DEL and 8-bit characters |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4016 (while (<= char ?\377) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4017 (aset table char (format "\\%o" char)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4018 (setq char (1+ char))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4019 ;; Override ASCII formatting characters with named escape code: |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4020 (aset table ?\n "\\n") ; [NL] linefeed |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4021 (aset table ?\r "\\r") ; [CR] carriage return |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4022 (aset table ?\t "\\t") ; [HT] horizontal tab |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4023 (aset table ?\b "\\b") ; [BS] backspace |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4024 (aset table ?\f "\\f") ; [NP] form feed |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4025 ;; Escape PostScript escape and string delimiter characters: |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4026 (aset table ?\\ "\\\\") |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4027 (aset table ?\( "\\(") |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4028 (aset table ?\) "\\)") |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4029 table) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4030 "Vector used to map characters to PostScript string escape codes.") |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4031 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4032 (defun ps-output-string-prim (string) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4033 (insert "(") ;insert start-string delimiter |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4034 (save-excursion ;insert string |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4035 (insert (string-as-unibyte string))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4036 ;; Find and quote special characters as necessary for PS |
23138
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
4037 ;; This skips everything except control chars, nonascii chars, (, ) and \. |
21642
d33cd398d663
(ps-output-string-prim): Use skip-chars-forward.
Richard M. Stallman <rms@gnu.org>
parents:
21571
diff
changeset
|
4038 (while (progn (skip-chars-forward " -'*-[]-~") (not (eobp))) |
d33cd398d663
(ps-output-string-prim): Use skip-chars-forward.
Richard M. Stallman <rms@gnu.org>
parents:
21571
diff
changeset
|
4039 (let ((special (following-char))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4040 (delete-char 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4041 (insert (aref ps-string-escape-codes special)))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4042 (goto-char (point-max)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4043 (insert ")")) ;insert end-string delimiter |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4044 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4045 (defun ps-init-output-queue () |
20331 | 4046 (setq ps-output-head '("") |
4047 ps-output-tail ps-output-head)) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4048 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4049 (defun ps-output (&rest args) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4050 (setcdr ps-output-tail args) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4051 (while (cdr ps-output-tail) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4052 (setq ps-output-tail (cdr ps-output-tail)))) |
7257 | 4053 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4054 (defun ps-output-string (string) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4055 (ps-output t string)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4056 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4057 (defun ps-output-list (the-list) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4058 (mapcar 'ps-output the-list)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4059 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4060 ;; Output strings in the list ARGS in the PostScript prologue part. |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4061 (defun ps-output-prologue (args) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4062 (ps-output 'prologue (if (stringp args) (list args) args))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4063 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4064 (defun ps-flush-output () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4065 (save-excursion |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4066 (set-buffer ps-spool-buffer) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4067 (goto-char (point-max)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4068 (while ps-output-head |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4069 (let ((it (car ps-output-head))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4070 (cond |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4071 ((eq t it) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4072 (setq ps-output-head (cdr ps-output-head)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4073 (ps-output-string-prim (car ps-output-head))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4074 ((eq 'prologue it) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4075 (setq ps-output-head (cdr ps-output-head)) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4076 (save-excursion |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4077 (search-backward "\nBeginDoc") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4078 (forward-char 1) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4079 (apply 'insert (car ps-output-head)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4080 (t |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4081 (insert it)))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4082 (setq ps-output-head (cdr ps-output-head)))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4083 (ps-init-output-queue)) |
7257 | 4084 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4085 (defun ps-insert-file (fname) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4086 (ps-flush-output) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4087 ;; Check to see that the file exists and is readable; if not, throw |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4088 ;; an error. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4089 (or (file-readable-p fname) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4090 (error "Could not read file `%s'" fname)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4091 (save-excursion |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4092 (set-buffer ps-spool-buffer) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4093 (goto-char (point-max)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4094 (insert-file fname))) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4095 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4096 ;; These functions insert the arrays that define the contents of the |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4097 ;; headers. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4098 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4099 (defun ps-generate-header-line (fonttag &optional content) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4100 (ps-output " [ " fonttag " ") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4101 (cond |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4102 ;; Literal strings should be output as is -- the string must |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4103 ;; contain its own PS string delimiters, '(' and ')', if necessary. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4104 ((stringp content) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4105 (ps-output content)) |
7257 | 4106 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4107 ;; Functions are called -- they should return strings; they will be |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4108 ;; inserted as strings and the PS string delimiters added. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4109 ((and (symbolp content) (fboundp content)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4110 (ps-output-string (funcall content))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4111 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4112 ;; Variables will have their contents inserted. They should |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4113 ;; contain strings, and will be inserted as strings. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4114 ((and (symbolp content) (boundp content)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4115 (ps-output-string (symbol-value content))) |
7257 | 4116 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4117 ;; Anything else will get turned into an empty string. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4118 (t |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4119 (ps-output-string ""))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4120 (ps-output " ]\n")) |
7257 | 4121 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4122 (defun ps-generate-header (name contents) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4123 (ps-output "/" name " [\n") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4124 (if (> ps-header-lines 0) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4125 (let ((count 1)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4126 (ps-generate-header-line "/h0" (car contents)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4127 (while (and (< count ps-header-lines) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4128 (setq contents (cdr contents))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4129 (ps-generate-header-line "/h1" (car contents)) |
20331 | 4130 (setq count (1+ count))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4131 (ps-output "] def\n")))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4132 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4133 (defun ps-output-boolean (name bool) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4134 (ps-output (format "/%s %s def\n" name (if bool "true" "false")))) |
7257 | 4135 |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4136 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4137 (defun ps-background-pages (page-list func) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4138 (if page-list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4139 (mapcar |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4140 '(lambda (pages) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4141 (let ((start (if (consp pages) (car pages) pages)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4142 (end (if (consp pages) (cdr pages) pages))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4143 (and (integerp start) (integerp end) (<= start end) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4144 (add-to-list 'ps-background-pages (vector start end func))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4145 page-list) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4146 (setq ps-background-all-pages (cons func ps-background-all-pages)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4147 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4148 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4149 (defun ps-get-boundingbox () |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4150 (save-excursion |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4151 (set-buffer ps-spool-buffer) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4152 (save-excursion |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4153 (if (re-search-forward |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4154 "^%%BoundingBox:\\s-+\\([0-9.]+\\)\\s-+\\([0-9.]+\\)\\s-+\\([0-9.]+\\)\\s-+\\([0-9.]+\\)" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4155 nil t) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4156 (vector (string-to-number ; lower x |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4157 (buffer-substring (match-beginning 1) (match-end 1))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4158 (string-to-number ; lower y |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4159 (buffer-substring (match-beginning 2) (match-end 2))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4160 (string-to-number ; upper x |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4161 (buffer-substring (match-beginning 3) (match-end 3))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4162 (string-to-number ; upper y |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4163 (buffer-substring (match-beginning 4) (match-end 4)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4164 (vector 0 0 0 0))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4165 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4166 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4167 ;; Emacs understands the %f format; we'll use it to limit color RGB values |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4168 ;; to three decimals to cut down some on the size of the PostScript output. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4169 ;; Lucid emacsen will have to make do with %s (princ) for floats. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4170 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4171 (defvar ps-float-format (if (eq ps-print-emacs-type 'emacs) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4172 "%0.3f " ; emacs |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4173 "%s ")) ; Lucid emacsen |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4174 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4175 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4176 (defun ps-float-format (value &optional default) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4177 (let ((literal (or value default))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4178 (if literal |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4179 (format (if (numberp literal) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4180 ps-float-format |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4181 "%s ") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4182 literal) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4183 " "))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4184 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4185 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4186 (defun ps-background-text () |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4187 (mapcar |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4188 '(lambda (text) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4189 (setq ps-background-text-count (1+ ps-background-text-count)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4190 (ps-output (format "/ShowBackText-%d {\n" ps-background-text-count)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4191 (ps-output-string (nth 0 text)) ; text |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4192 (ps-output |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4193 "\n" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4194 (ps-float-format (nth 4 text) 200.0) ; font size |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4195 (format "/%s " (or (nth 3 text) "Times-Roman")) ; font name |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4196 (ps-float-format (nth 6 text) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4197 "PrintHeight PrintPageWidth atan") ; rotation |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4198 (ps-float-format (nth 5 text) 0.85) ; gray |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4199 (ps-float-format (nth 1 text) "0") ; x position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4200 (ps-float-format (nth 2 text) "BottomMargin") ; y position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4201 "\nShowBackText} def\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4202 (ps-background-pages (nthcdr 7 text) ; page list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4203 (format "ShowBackText-%d\n" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4204 ps-background-text-count))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4205 ps-print-background-text)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4206 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4207 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4208 (defun ps-background-image () |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4209 (mapcar |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4210 '(lambda (image) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4211 (let ((image-file (expand-file-name (nth 0 image)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4212 (if (file-readable-p image-file) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4213 (progn |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4214 (setq ps-background-image-count (1+ ps-background-image-count)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4215 (ps-output |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4216 (format "/ShowBackImage-%d {\n--back-- " ps-background-image-count) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4217 (ps-float-format (nth 5 image) 0.0) ; rotation |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4218 (ps-float-format (nth 3 image) 1.0) ; x scale |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4219 (ps-float-format (nth 4 image) 1.0) ; y scale |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4220 (ps-float-format (nth 1 image) ; x position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4221 "PrintPageWidth 2 div") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4222 (ps-float-format (nth 2 image) ; y position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4223 "PrintHeight 2 div BottomMargin add") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4224 "\nBeginBackImage\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4225 (ps-insert-file image-file) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4226 ;; coordinate adjustment to centralize image |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4227 ;; around x and y position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4228 (let ((box (ps-get-boundingbox))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4229 (save-excursion |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4230 (set-buffer ps-spool-buffer) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4231 (save-excursion |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4232 (if (re-search-backward "^--back--" nil t) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4233 (replace-match |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4234 (format "%s %s" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4235 (ps-float-format |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4236 (- (+ (/ (- (aref box 2) (aref box 0)) 2.0) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4237 (aref box 0)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4238 (ps-float-format |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4239 (- (+ (/ (- (aref box 3) (aref box 1)) 2.0) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4240 (aref box 1))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4241 t))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4242 (ps-output "\nEndBackImage} def\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4243 (ps-background-pages (nthcdr 6 image) ; page list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4244 (format "ShowBackImage-%d\n" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4245 ps-background-image-count)))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4246 ps-print-background-image)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4247 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4248 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4249 (defun ps-background (page-number) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4250 (let (has-local-background) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4251 (mapcar '(lambda (range) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4252 (and (<= (aref range 0) page-number) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4253 (<= page-number (aref range 1)) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4254 (if has-local-background |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4255 (ps-output (aref range 2)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4256 (setq has-local-background t) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4257 (ps-output "/printLocalBackground {\n" |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4258 (aref range 2))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4259 ps-background-pages) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4260 (and has-local-background (ps-output "} def\n")))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4261 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4262 |
21800
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4263 ;; Return a list of the distinct elements of LIST. |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4264 ;; Elements are compared with `equal'. |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4265 (defun ps-remove-duplicates (list) |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4266 (let (new (tail list)) |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4267 (while tail |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4268 (or (member (car tail) new) |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4269 (setq new (cons (car tail) new))) |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4270 (setq tail (cdr tail))) |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4271 (nreverse new))) |
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4272 |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4273 ;; Find the first occurrence of ITEM in LIST. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4274 ;; Return the index of the matching item, or nil if not found. |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4275 ;; Elements are compared with `eq'. |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
4276 (defun ps-alist-position (item list) |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4277 (let ((tail list) (index 0) found) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4278 (while tail |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
4279 (if (setq found (eq (car (car tail)) item)) |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4280 (setq tail nil) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4281 (setq index (1+ index) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4282 tail (cdr tail)))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4283 (and found index))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4284 |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4285 |
7257 | 4286 (defun ps-begin-file () |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4287 (ps-get-page-dimensions) |
22397 | 4288 (setq ps-page-postscript 0 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4289 ps-background-text-count 0 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4290 ps-background-image-count 0 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4291 ps-background-pages nil |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4292 ps-background-all-pages nil) |
7257 | 4293 |
20331 | 4294 (ps-output ps-adobe-tag |
4295 "%%Title: " (buffer-name) ; Take job name from name of | |
4296 ; first buffer printed | |
4297 "\n%%Creator: " (user-full-name) | |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4298 " (using ps-print v" ps-print-version |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4299 ")\n%%CreationDate: " |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4300 (time-stamp-hh:mm:ss) " " (time-stamp-mon-dd-yyyy) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4301 "\n%%Orientation: " |
20331 | 4302 (if ps-landscape-mode "Landscape" "Portrait") |
4303 "\n%% DocumentFonts: Times-Roman Times-Italic " | |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4304 (mapconcat 'identity |
21800
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4305 (ps-remove-duplicates |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4306 (append (ps-fonts 'ps-font-for-text) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4307 (list (ps-font 'ps-font-for-header 'normal) |
21800
d4b4f44ce8da
(ps-remove-duplicates): New function.
Eli Zaretskii <eliz@gnu.org>
parents:
21642
diff
changeset
|
4308 (ps-font 'ps-font-for-header 'bold)))) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4309 " ") |
20331 | 4310 "\n%%Pages: (atend)\n" |
4311 "%%EndComments\n\n") | |
7257 | 4312 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4313 (ps-output-boolean "LandscapeMode" ps-landscape-mode) |
20331 | 4314 (ps-output (format "/NumberOfColumns %d def\n" ps-number-of-columns) |
4315 | |
4316 (format "/LandscapePageHeight %s def\n" ps-landscape-page-height) | |
4317 (format "/PrintPageWidth %s def\n" | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4318 (- (* (+ ps-print-width ps-inter-column) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4319 ps-number-of-columns) |
20331 | 4320 ps-inter-column)) |
4321 (format "/PrintWidth %s def\n" ps-print-width) | |
4322 (format "/PrintHeight %s def\n" ps-print-height) | |
4323 | |
4324 (format "/LeftMargin %s def\n" ps-left-margin) | |
4325 (format "/RightMargin %s def\n" ps-right-margin) ; not used | |
4326 (format "/InterColumn %s def\n" ps-inter-column) | |
4327 | |
4328 (format "/BottomMargin %s def\n" ps-bottom-margin) | |
4329 (format "/TopMargin %s def\n" ps-top-margin) ; not used | |
4330 (format "/HeaderOffset %s def\n" ps-header-offset) | |
4331 (format "/HeaderPad %s def\n" ps-header-pad)) | |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4332 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4333 (ps-output-boolean "PrintHeader" ps-print-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4334 (ps-output-boolean "PrintOnlyOneHeader" ps-print-only-one-header) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4335 (ps-output-boolean "PrintHeaderFrame" ps-print-header-frame) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4336 (ps-output-boolean "ShowNofN" ps-show-n-of-n) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4337 (ps-output-boolean "Duplex" ps-spool-duplex) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4338 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4339 (let ((line-height (ps-line-height 'ps-font-for-text))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4340 (ps-output (format "/LineHeight %s def\n" line-height) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4341 (format "/LinesPerColumn %d def\n" |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4342 (round (/ (+ ps-print-height |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4343 (* line-height 0.45)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4344 line-height))))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4345 |
19485
eab8baa19dfa
(ps-zebra-stripes): Renamed from ps-zebra-stripe.
Richard M. Stallman <rms@gnu.org>
parents:
19446
diff
changeset
|
4346 (ps-output-boolean "Zebra" ps-zebra-stripes) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4347 (ps-output-boolean "PrintLineNumber" ps-line-number) |
22397 | 4348 (ps-output (format "/ZebraHeight %d def\n" ps-zebra-stripe-height)) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4349 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4350 (ps-background-text) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4351 (ps-background-image) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4352 (setq ps-background-all-pages (nreverse ps-background-all-pages) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4353 ps-background-pages (nreverse ps-background-pages)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4354 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4355 (ps-output ps-print-prologue-1) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4356 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4357 (ps-output "/printGlobalBackground {\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4358 (ps-output-list ps-background-all-pages) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4359 (ps-output "} def\n/printLocalBackground {\n} def\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4360 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4361 ;; Header fonts |
20331 | 4362 (ps-output (format "/h0 %s /%s DefFont\n" ; /h0 14 /Helvetica-Bold DefFont |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4363 ps-header-title-font-size (ps-font 'ps-font-for-header |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4364 'bold)) |
20331 | 4365 (format "/h1 %s /%s DefFont\n" ; /h1 12 /Helvetica DefFont |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4366 ps-header-font-size (ps-font 'ps-font-for-header |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4367 'normal))) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4368 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4369 (ps-output ps-print-prologue-2) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4370 |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4371 ;; Text fonts |
21999
35efe9eafc6c
(ps-alist-position): Renamed from ps-position.
Richard M. Stallman <rms@gnu.org>
parents:
21955
diff
changeset
|
4372 (let ((font (ps-font-alist 'ps-font-for-text)) |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4373 (i 0)) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4374 (while font |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4375 (ps-output (format "/f%d %s /%s DefFont\n" |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4376 i |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4377 ps-font-size |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4378 (ps-font 'ps-font-for-text (car (car font))))) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4379 (setq font (cdr font) |
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4380 i (1+ i)))) |
20331 | 4381 |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
4382 (let ((font-entry (cdr (assq ps-font-family ps-font-info-database)))) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
4383 (ps-output (format "/SpaceWidthRatio %f def\n" |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
4384 (/ (ps-lookup 'space-width) (ps-lookup 'size))))) |
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
4385 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4386 (ps-mule-initialize) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4387 |
20331 | 4388 (ps-output "\nBeginDoc\n\n" |
4389 "%%EndPrologue\n")) | |
7257 | 4390 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4391 (defun ps-header-dirpart () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4392 (let ((fname (buffer-file-name))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4393 (if fname |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4394 (if (string-equal (buffer-name) (file-name-nondirectory fname)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4395 (file-name-directory fname) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4396 fname) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4397 ""))) |
7257 | 4398 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4399 (defun ps-get-buffer-name () |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4400 (cond |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4401 ;; Indulge Jim this little easter egg: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4402 ((string= (buffer-name) "ps-print.el") |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4403 "Hey, Cool! It's ps-print.el!!!") |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4404 ;; Indulge Jack this other little easter egg: |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4405 ((string= (buffer-name) "sokoban.el") |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4406 "Super! C'est sokoban.el!") |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4407 (t (concat |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4408 (and ps-printing-region "Subset of: ") |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4409 (buffer-name) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4410 (and (buffer-modified-p) " (unsaved)"))))) |
7257 | 4411 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4412 (defun ps-begin-job () |
22397 | 4413 (save-excursion |
4414 (set-buffer ps-spool-buffer) | |
4415 (goto-char (point-max)) | |
4416 (and (re-search-backward "^%%Trailer$" nil t) | |
4417 (delete-region (match-beginning 0) (point-max)))) | |
4418 (setq ps-showline-count (if ps-printing-region (car ps-printing-region) 1) | |
4419 ps-page-count 0 | |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4420 ps-control-or-escape-regexp |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4421 (if ps-mule-charset-list |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4422 (cond ((eq ps-print-control-characters '8-bit) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4423 "[^\040-\176]") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4424 ((eq ps-print-control-characters 'control-8-bit) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4425 (string-as-multibyte "[^\040-\176\240-\377]")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4426 ((eq ps-print-control-characters 'control) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4427 (string-as-multibyte "[^\040-\176\200-\377]")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4428 (t (string-as-multibyte "[^\000-\011\013\015-\377"))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4429 (cond ((eq ps-print-control-characters '8-bit) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4430 (string-as-unibyte "[\000-\037\177-\377]")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4431 ((eq ps-print-control-characters 'control-8-bit) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4432 (string-as-unibyte "[\000-\037\177-\237]")) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4433 ((eq ps-print-control-characters 'control) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4434 "[\000-\037\177]") |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4435 (t "[\t\n\f]"))))) |
7257 | 4436 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4437 (defmacro ps-page-number () |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4438 `(1+ (/ (1- ps-page-count) ps-number-of-columns))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4439 |
7257 | 4440 (defun ps-end-file () |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
4441 (ps-output "\n%%Trailer\n%%Pages: " |
22397 | 4442 (format "%d" ps-page-postscript) |
22093
5818374d88e7
(ps-file-end): Put Trailer and Pages before EndDoc.
Richard M. Stallman <rms@gnu.org>
parents:
21999
diff
changeset
|
4443 "\n\nEndDoc\n\n%%EOF\n")) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4444 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4445 |
7257 | 4446 (defun ps-next-page () |
4447 (ps-end-page) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4448 (ps-flush-output) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4449 (ps-begin-page)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4450 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4451 (defun ps-header-page () |
22397 | 4452 ;; set total line and page number when printing has finished |
4453 ;; (see `ps-generate') | |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4454 (if (prog1 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4455 (zerop (mod ps-page-count ps-number-of-columns)) |
21954
73f9f4219198
Some doc fixes, eliminate (require cl).
Richard M. Stallman <rms@gnu.org>
parents:
21801
diff
changeset
|
4456 (setq ps-page-count (1+ ps-page-count))) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4457 ;; Print only when a new real page begins. |
22397 | 4458 (progn |
4459 (setq ps-page-postscript (1+ ps-page-postscript)) | |
4460 (ps-output (format "\n%%%%Page: %d %d\n" | |
4461 ps-page-postscript ps-page-postscript)) | |
4462 (ps-output "/Lines 0 def\n/PageCount 0 def\nBeginDSCPage\n") | |
4463 (ps-background ps-page-postscript) | |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4464 (run-hooks 'ps-print-begin-page-hook)) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4465 ;; Print when any other page begins. |
22397 | 4466 (ps-output "/Lines 0 def\n/PageCount 0 def\nBeginDSCPage\n") |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4467 (run-hooks 'ps-print-begin-column-hook))) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4468 |
20331 | 4469 (defun ps-begin-page () |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4470 (ps-get-page-dimensions) |
20331 | 4471 (setq ps-width-remaining ps-print-width |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4472 ps-height-remaining ps-print-height |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4473 ps-mule-current-charset 'ascii) |
7257 | 4474 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4475 (ps-header-page) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4476 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4477 (ps-output (format "/LineNumber %d def\n" ps-showline-count) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4478 (format "/PageNumber %d def\n" (if ps-print-only-one-header |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4479 (ps-page-number) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4480 ps-page-count))) |
7257 | 4481 |
16870
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
4482 (when ps-print-header |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
4483 (ps-generate-header "HeaderLinesLeft" ps-left-header) |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
4484 (ps-generate-header "HeaderLinesRight" ps-right-header) |
4a5fa29f79d6
(ps-print-version): Fix value.
Richard M. Stallman <rms@gnu.org>
parents:
16361
diff
changeset
|
4485 (ps-output (format "%d SetHeaderLines\n" ps-header-lines))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4486 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4487 (ps-output "BeginPage\n") |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4488 (ps-set-font ps-current-font) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4489 (ps-set-bg ps-current-bg) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4490 (ps-set-color ps-current-color)) |
7257 | 4491 |
4492 (defun ps-end-page () | |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4493 (ps-output "EndPage\nEndDSCPage\n")) |
7257 | 4494 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4495 (defun ps-dummy-page () |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4496 (ps-header-page) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4497 (ps-output "/PrintHeader false def |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4498 BeginPage |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4499 EndPage |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4500 EndDSCPage\n")) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4501 |
7257 | 4502 (defun ps-next-line () |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4503 (setq ps-showline-count (1+ ps-showline-count)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4504 (let ((lh (ps-line-height 'ps-font-for-text))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4505 (if (< ps-height-remaining lh) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4506 (ps-next-page) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4507 (setq ps-width-remaining ps-print-width |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4508 ps-height-remaining (- ps-height-remaining lh)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4509 (ps-output "HL\n")))) |
7257 | 4510 |
4511 (defun ps-continue-line () | |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4512 (let ((lh (ps-line-height 'ps-font-for-text))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4513 (if (< ps-height-remaining lh) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4514 (ps-next-page) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4515 (setq ps-width-remaining ps-print-width |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4516 ps-height-remaining (- ps-height-remaining lh)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4517 (ps-output "SL\n")))) |
7257 | 4518 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4519 (defun ps-find-wrappoint (from to char-width) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4520 (let ((avail (truncate (/ ps-width-remaining char-width))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4521 (todo (- to from))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4522 (if (< todo avail) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4523 (cons to (* todo char-width)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4524 (cons (+ from avail) ps-width-remaining)))) |
7257 | 4525 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4526 (defun ps-basic-plot-string (from to &optional bg-color) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4527 (let* ((wrappoint (ps-find-wrappoint from to |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4528 (ps-avg-char-width 'ps-font-for-text))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4529 (to (car wrappoint)) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4530 (string (buffer-substring-no-properties from to)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4531 (font-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4532 (ps-mule-get-font-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4533 'ascii |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4534 (car (nth ps-current-font (ps-font-alist 'ps-font-for-text)))))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4535 (and font-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4536 (ps-mule-prepare-font font-spec string 'ascii)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4537 (ps-output-string string) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
4538 (ps-output " S\n") |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4539 wrappoint)) |
7257 | 4540 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4541 (defun ps-basic-plot-whitespace (from to &optional bg-color) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4542 (let* ((wrappoint (ps-find-wrappoint from to |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4543 (ps-space-width 'ps-font-for-text))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4544 (to (car wrappoint))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4545 (ps-output (format "%d W\n" (- to from))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4546 wrappoint)) |
7257 | 4547 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4548 (defun ps-plot (plotfunc from to &optional bg-color) |
7257 | 4549 (while (< from to) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4550 (let* ((wrappoint (funcall plotfunc from to bg-color)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4551 (plotted-to (car wrappoint)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4552 (plotted-width (cdr wrappoint))) |
20331 | 4553 (setq from plotted-to |
4554 ps-width-remaining (- ps-width-remaining plotted-width)) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4555 (if (< from to) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4556 (ps-continue-line)))) |
7257 | 4557 (if ps-razzle-dazzle |
4558 (let* ((q-todo (- (point-max) (point-min))) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4559 (q-done (- (point) (point-min))) |
7257 | 4560 (chunkfrac (/ q-todo 8)) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4561 (chunksize (min chunkfrac 1000))) |
7257 | 4562 (if (> (- q-done ps-razchunk) chunksize) |
20331 | 4563 (progn |
7257 | 4564 (setq ps-razchunk q-done) |
20331 | 4565 (message "Formatting...%3d%%" |
4566 (if (< q-todo 100) | |
4567 (/ (* 100 q-done) q-todo) | |
4568 (/ q-done (/ q-todo 100))) | |
4569 )))))) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4570 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4571 (defun ps-set-font (font) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4572 (setq ps-last-font (format "f%d" (setq ps-current-font font))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4573 (ps-output (format "/%s F\n" ps-last-font))) |
7257 | 4574 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4575 (defun ps-set-bg (color) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4576 (if (setq ps-current-bg color) |
20331 | 4577 (ps-output (format ps-color-format |
4578 (nth 0 color) (nth 1 color) (nth 2 color)) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4579 " true BG\n") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4580 (ps-output "false BG\n"))) |
7257 | 4581 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4582 (defun ps-set-color (color) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4583 (setq ps-current-color (or color ps-default-fg)) |
20331 | 4584 (ps-output (format ps-color-format |
4585 (nth 0 ps-current-color) | |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4586 (nth 1 ps-current-color) (nth 2 ps-current-color)) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4587 " FG\n")) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4588 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4589 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4590 (defvar ps-current-effect 0) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4591 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4592 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4593 (defun ps-plot-region (from to font &optional fg-color bg-color effects) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4594 (if (not (equal font ps-current-font)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4595 (ps-set-font font)) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4596 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4597 ;; Specify a foreground color only if one's specified and it's |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4598 ;; different than the current. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4599 (if (not (equal fg-color ps-current-color)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4600 (ps-set-color fg-color)) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4601 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4602 (if (not (equal bg-color ps-current-bg)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4603 (ps-set-bg bg-color)) |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4604 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4605 ;; Specify effects (underline, overline, box, etc) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4606 (cond |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4607 ((not (integerp effects)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4608 (ps-output "0 EF\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4609 (setq ps-current-effect 0)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4610 ((/= effects ps-current-effect) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4611 (ps-output (number-to-string effects) " EF\n") |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4612 (setq ps-current-effect effects))) |
7257 | 4613 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4614 (setq ps-mule-current-charset 'ascii) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4615 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4616 ;; Starting at the beginning of the specified region... |
7257 | 4617 (save-excursion |
4618 (goto-char from) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4619 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4620 ;; ...break the region up into chunks separated by tabs, linefeeds, |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4621 ;; pagefeeds, control characters, and plot each chunk. |
7257 | 4622 (while (< from to) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4623 (if (re-search-forward ps-control-or-escape-regexp to t) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4624 ;; region with some control characters or some multibyte characters |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4625 (let* ((match-point (match-beginning 0)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4626 (match (char-after match-point))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4627 (when (< from match-point) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4628 (unless (eq ps-mule-current-charset 'ascii) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4629 (ps-set-font ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4630 (setq ps-mule-current-charset 'ascii)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4631 (ps-plot 'ps-basic-plot-string from match-point bg-color)) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4632 (cond |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4633 ((= match ?\t) ; tab |
23167
ada869918064
(ps-mule-font-info-database-bdf): The include ASCII
Kenichi Handa <handa@m17n.org>
parents:
23138
diff
changeset
|
4634 (let ((linestart (line-beginning-position))) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4635 (forward-char -1) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4636 (setq from (+ linestart (current-column))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4637 (when (re-search-forward "[ \t]+" to t) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4638 (unless (eq ps-mule-current-charset 'ascii) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4639 (ps-set-font ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4640 (setq ps-mule-current-charset 'ascii)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4641 (ps-plot 'ps-basic-plot-whitespace |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4642 from (+ linestart (current-column)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4643 bg-color)))) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4644 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4645 ((= match ?\n) ; newline |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4646 (ps-next-line)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4647 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4648 ((= match ?\f) ; form feed |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4649 ;; do not skip page if previous character is NEWLINE and |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4650 ;; it is a beginning of page. |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4651 (or (and (= (char-after (1- match-point)) ?\n) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4652 (= ps-height-remaining ps-print-height)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4653 (ps-next-page))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4654 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4655 ((> match 255) ; a multibyte character |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4656 (let ((charset (char-charset match))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4657 (or (eq charset 'composition) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4658 (ps-mule-skip-same-charset charset)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4659 (setq ps-mule-current-charset charset) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4660 (ps-plot 'ps-mule-plot-string match-point (point) bg-color))) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4661 ; characters from ^@ to ^_ and |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4662 (t ; characters from 127 to 255 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4663 (ps-control-character match))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4664 (setq from (point))) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4665 ;; region without control characters nor multibyte characters |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4666 (when (not (eq ps-mule-current-charset 'ascii)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4667 (ps-set-font ps-current-font) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4668 (setq ps-mule-current-charset 'ascii)) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4669 (ps-plot 'ps-basic-plot-string from to bg-color) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4670 (setq from to))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4671 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4672 (defvar ps-string-control-codes |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4673 (let ((table (make-vector 256 nil)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4674 (char ?\000)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4675 ;; control character |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4676 (while (<= char ?\037) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4677 (aset table char (format "^%c" (+ char ?@))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4678 (setq char (1+ char))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4679 ;; printable character |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4680 (while (< char ?\177) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4681 (aset table char (format "%c" char)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4682 (setq char (1+ char))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4683 ;; DEL |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4684 (aset table char "^?") |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4685 ;; 8-bit character |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4686 (while (<= (setq char (1+ char)) ?\377) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4687 (aset table char (format "\\%o" char))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4688 table) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4689 "Vector used to map characters to a printable string.") |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4690 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4691 (defun ps-control-character (char) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4692 (let* ((str (aref ps-string-control-codes char)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4693 (from (1- (point))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4694 (len (length str)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4695 (to (+ from len)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4696 (char-width (ps-avg-char-width 'ps-font-for-text)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4697 (wrappoint (ps-find-wrappoint from to char-width))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4698 (if (< (car wrappoint) to) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4699 (ps-continue-line)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4700 (setq ps-width-remaining (- ps-width-remaining (* len char-width))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4701 (ps-output-string str) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4702 (ps-output " S\n"))) |
7257 | 4703 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4704 (defun ps-color-value (x-color-value) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4705 ;; Scale 16-bit X-COLOR-VALUE to PostScript color value in [0, 1] interval. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4706 (/ x-color-value ps-print-color-scale)) |
7257 | 4707 |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4708 (defun ps-color-values (x-color) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4709 (cond ((fboundp 'x-color-values) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4710 (x-color-values x-color)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4711 ((and (fboundp 'color-instance-rgb-components) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4712 (ps-color-device)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4713 (color-instance-rgb-components |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4714 (if (color-instance-p x-color) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4715 x-color |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4716 (make-color-instance |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4717 (if (color-specifier-p x-color) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4718 (color-name x-color) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4719 x-color))))) |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4720 (t (error "No available function to determine X color values.")))) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4721 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4722 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4723 (defun ps-face-attributes (face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4724 "Return face attribute vector. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4725 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4726 If FACE is not in `ps-print-face-extension-alist' or in |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4727 `ps-print-face-alist', insert it on `ps-print-face-alist' and |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4728 return the attribute vector. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4729 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4730 If FACE is not a valid face name, it is used default face." |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4731 (cdr (or (assq face ps-print-face-extension-alist) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4732 (assq face ps-print-face-alist) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4733 (let* ((the-face (if (facep face) face 'default)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4734 (new-face (ps-screen-to-bit-face the-face))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4735 (or (and (eq the-face 'default) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4736 (assq the-face ps-print-face-alist)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4737 (setq ps-print-face-alist (cons new-face ps-print-face-alist))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4738 new-face)))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4739 |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4740 |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4741 (defun ps-face-attribute-list (face-or-list) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4742 (if (listp face-or-list) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4743 ;; list of faces |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4744 (let ((effects 0) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4745 foreground background face-attr) |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4746 (while face-or-list |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4747 (setq face-attr (ps-face-attributes (car face-or-list)) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4748 effects (logior effects (aref face-attr 0))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4749 (or foreground (setq foreground (aref face-attr 1))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4750 (or background (setq background (aref face-attr 2))) |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4751 (setq face-or-list (cdr face-or-list))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4752 (vector effects foreground background)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4753 ;; simple face |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4754 (ps-face-attributes face-or-list))) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4755 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4756 |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4757 (defconst ps-font-type (vector nil 'bold 'italic 'bold-italic)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4758 |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4759 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4760 (defun ps-plot-with-face (from to face) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4761 (cond |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4762 ((null face) ; print text with null face |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4763 (ps-plot-region from to 0)) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4764 ((eq face 'emacs--invisible--face)) ; skip invisible text!!! |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4765 (t ; otherwise, text has a valid face |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4766 (let* ((face-bit (ps-face-attribute-list face)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4767 (effect (aref face-bit 0)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4768 (foreground (aref face-bit 1)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4769 (background (aref face-bit 2)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4770 (fg-color (if (and ps-print-color-p foreground (ps-color-device)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4771 (mapcar 'ps-color-value |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4772 (ps-color-values foreground)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4773 ps-default-color)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4774 (bg-color (and ps-print-color-p background (ps-color-device) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4775 (mapcar 'ps-color-value |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4776 (ps-color-values background))))) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4777 (ps-plot-region |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4778 from to |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4779 (ps-font-number 'ps-font-for-text |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4780 (or (aref ps-font-type (logand effect 3)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4781 face)) |
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
4782 fg-color bg-color (lsh effect -2))))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4783 (goto-char to)) |
7257 | 4784 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4785 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4786 (defun ps-xemacs-face-kind-p (face kind kind-regex kind-list) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4787 (let* ((frame-font (or (face-font-instance face) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4788 (face-font-instance 'default))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4789 (kind-cons (and frame-font |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4790 (assq kind (font-instance-properties frame-font)))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4791 (kind-spec (cdr-safe kind-cons)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4792 (case-fold-search t)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4793 (or (and kind-spec (string-match kind-regex kind-spec)) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4794 ;; Kludge-compatible: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4795 (memq face kind-list)))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4796 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4797 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4798 (cond ((eq ps-print-emacs-type 'emacs) ; emacs |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4799 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4800 (defun ps-face-bold-p (face) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4801 (or (face-bold-p face) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4802 (memq face ps-bold-faces))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4803 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4804 (defun ps-face-italic-p (face) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4805 (or (face-italic-p face) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4806 (memq face ps-italic-faces))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4807 ) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4808 ; xemacs |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4809 ; lucid |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4810 ; epoch |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4811 (t ; epoch |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4812 (defun ps-face-bold-p (face) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4813 (ps-xemacs-face-kind-p face 'WEIGHT_NAME "bold\\|demibold" ps-bold-faces)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4814 |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4815 (defun ps-face-italic-p (face) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4816 (or (ps-xemacs-face-kind-p face 'ANGLE_NAME "i\\|o" ps-italic-faces) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4817 (ps-xemacs-face-kind-p face 'SLANT "i\\|o" ps-italic-faces))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4818 )) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4819 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4820 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4821 (defun ps-face-underlined-p (face) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4822 (or (face-underline-p face) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4823 (memq face ps-underlined-faces))) |
7257 | 4824 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4825 |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4826 ;; Ensure that face-list is fbound. |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4827 (or (fboundp 'face-list) (defalias 'face-list 'list-faces)) |
7257 | 4828 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4829 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4830 (defun ps-build-reference-face-lists () |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4831 ;; Ensure that face database is updated with faces on |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4832 ;; `font-lock-face-attributes' (obsolete stuff) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4833 (ps-font-lock-face-attributes) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4834 ;; Now, rebuild reference face lists |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4835 (setq ps-print-face-alist nil) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4836 (if ps-auto-font-detect |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4837 (mapcar 'ps-map-face (face-list)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4838 (mapcar 'ps-set-face-bold ps-bold-faces) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4839 (mapcar 'ps-set-face-italic ps-italic-faces) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4840 (mapcar 'ps-set-face-underline ps-underlined-faces)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4841 (setq ps-build-face-reference nil)) |
7257 | 4842 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4843 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4844 (defun ps-set-face-bold (face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4845 (ps-set-face-attribute face 1)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4846 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4847 (defun ps-set-face-italic (face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4848 (ps-set-face-attribute face 2)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4849 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4850 (defun ps-set-face-underline (face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4851 (ps-set-face-attribute face 4)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4852 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4853 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4854 (defun ps-set-face-attribute (face effect) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4855 (let ((face-bit (cdr (ps-map-face face)))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4856 (aset face-bit 0 (logior (aref face-bit 0) effect)))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4857 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4858 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4859 (defun ps-map-face (face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4860 (let* ((face-map (ps-screen-to-bit-face face)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4861 (ps-face-bit (cdr (assq (car face-map) ps-print-face-alist)))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4862 (if ps-face-bit |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4863 ;; if face exists, merge both |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4864 (let ((face-bit (cdr face-map))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4865 (aset ps-face-bit 0 (logior (aref ps-face-bit 0) (aref face-bit 0))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4866 (or (aref ps-face-bit 1) (aset ps-face-bit 1 (aref face-bit 1))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4867 (or (aref ps-face-bit 2) (aset ps-face-bit 2 (aref face-bit 2)))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4868 ;; if face does not exist, insert it |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4869 (setq ps-print-face-alist (cons face-map ps-print-face-alist))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4870 face-map)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4871 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4872 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4873 (defun ps-screen-to-bit-face (face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4874 (cons face |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4875 (vector (logior (if (ps-face-bold-p face) 1 0) ; bold |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4876 (if (ps-face-italic-p face) 2 0) ; italic |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4877 (if (ps-face-underlined-p face) 4 0)) ; underline |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4878 (face-foreground face) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4879 (face-background face)))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4880 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
4881 |
7257 | 4882 (defun ps-mapper (extent list) |
4883 (nconc list (list (list (extent-start-position extent) 'push extent) | |
19879
87952270ceeb
(ps-emacs-face-kind-p): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
19843
diff
changeset
|
4884 (list (extent-end-position extent) 'pull extent))) |
7257 | 4885 nil) |
4886 | |
10683 | 4887 (defun ps-extent-sorter (a b) |
4888 (< (extent-priority a) (extent-priority b))) | |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4889 |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4890 (defun ps-print-ensure-fontified (start end) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4891 (and (boundp 'lazy-lock-mode) (symbol-value 'lazy-lock-mode) |
20331 | 4892 (if (fboundp 'lazy-lock-fontify-region) |
4893 (lazy-lock-fontify-region start end) ; the new | |
4894 (lazy-lock-fontify-buffer)))) ; the old | |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4895 |
7257 | 4896 (defun ps-generate-postscript-with-faces (from to) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4897 ;; Some initialization... |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4898 (setq ps-current-effect 0) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4899 |
10683 | 4900 ;; Build the reference lists of faces if necessary. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4901 (if (or ps-always-build-face-reference |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4902 ps-build-face-reference) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4903 (progn |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4904 (message "Collecting face information...") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4905 (ps-build-reference-face-lists))) |
10683 | 4906 ;; Set the color scale. We do it here instead of in the defvar so |
4907 ;; that ps-print can be dumped into emacs. This expression can't be | |
4908 ;; evaluated at dump-time because X isn't initialized. | |
4909 (setq ps-print-color-scale | |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
4910 (if (and ps-print-color-p (ps-color-device)) |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4911 (float (car (ps-color-values "white"))) |
10683 | 4912 1.0)) |
4913 ;; Generate some PostScript. | |
7257 | 4914 (save-restriction |
4915 (narrow-to-region from to) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4916 (let ((face 'default) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4917 (position to)) |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
4918 (ps-print-ensure-fontified from to) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4919 (cond |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4920 ((or (eq ps-print-emacs-type 'lucid) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4921 (eq ps-print-emacs-type 'xemacs)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4922 ;; Build the list of extents... |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4923 (let ((a (cons 'dummy nil)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4924 record type extent extent-list) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4925 (map-extents 'ps-mapper nil from to a) |
20331 | 4926 (setq a (sort (cdr a) 'car-less-than-car) |
4927 extent-list nil) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4928 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4929 ;; Loop through the extents... |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4930 (while a |
20331 | 4931 (setq record (car a) |
4932 | |
4933 position (car record) | |
4934 record (cdr record) | |
4935 | |
4936 type (car record) | |
4937 record (cdr record) | |
4938 | |
4939 extent (car record)) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4940 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4941 ;; Plot up to this record. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4942 ;; XEmacs 19.12: for some reason, we're getting into a |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4943 ;; situation in which some of the records have |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4944 ;; positions less than 'from'. Since we've narrowed |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4945 ;; the buffer, this'll generate errors. This is a |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4946 ;; hack, but don't call ps-plot-with-face unless from > |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4947 ;; point-min. |
20331 | 4948 (and (>= from (point-min)) (<= position (point-max)) |
4949 (ps-plot-with-face from position face)) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4950 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4951 (cond |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4952 ((eq type 'push) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4953 (if (extent-face extent) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4954 (setq extent-list (sort (cons extent extent-list) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4955 'ps-extent-sorter)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4956 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4957 ((eq type 'pull) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4958 (setq extent-list (sort (delq extent extent-list) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4959 'ps-extent-sorter)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4960 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4961 (setq face |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4962 (if extent-list |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4963 (extent-face (car extent-list)) |
20331 | 4964 'default) |
4965 | |
4966 from position | |
4967 a (cdr a))))) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4968 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4969 ((eq ps-print-emacs-type 'emacs) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4970 (let ((property-change from) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4971 (overlay-change from) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4972 (save-buffer-invisibility-spec buffer-invisibility-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4973 (buffer-invisibility-spec |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4974 (and (listp buffer-invisibility-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4975 (let ((seq buffer-invisibility-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4976 elt res) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4977 (while seq |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4978 (setq elt (car seq) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4979 seq (cdr seq)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4980 (or (eq elt 'invisible) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4981 (and (listp elt) (eq (car elt) 'invisible)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4982 (setq res (cons elt res)))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
4983 (nreverse seq))))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4984 (while (< from to) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4985 (if (< property-change to) ; Don't search for property change |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4986 ; unless previous search succeeded. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4987 (setq property-change |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4988 (next-property-change from nil to))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4989 (if (< overlay-change to) ; Don't search for overlay change |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
4990 ; unless previous search succeeded. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4991 (setq overlay-change |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4992 (min (next-overlay-change from) to))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4993 (setq position |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4994 (min property-change overlay-change)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4995 ;; The code below is not quite correct, |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4996 ;; because a non-nil overlay invisible property |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4997 ;; which is inactive according to the current value |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4998 ;; of buffer-invisibility-spec nonetheless overrides |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
4999 ;; a face text property. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5000 (setq face |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5001 (cond ((let ((prop (get-text-property from 'invisible))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5002 ;; Decide whether this invisible property |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5003 ;; really makes the text invisible. |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5004 (if (eq save-buffer-invisibility-spec t) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5005 (not (null prop)) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5006 (or (memq prop save-buffer-invisibility-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5007 (assq prop save-buffer-invisibility-spec)))) |
21086
12ecaaaea144
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20953
diff
changeset
|
5008 'emacs--invisible--face) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5009 ((get-text-property from 'face)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5010 (t 'default))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5011 (let ((overlays (overlays-at from)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5012 (face-priority -1)) ; text-property |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5013 (while overlays |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5014 (let* ((overlay (car overlays)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5015 (overlay-face (overlay-get overlay 'face)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5016 (overlay-invisible (overlay-get overlay 'invisible)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5017 (overlay-priority (or (overlay-get overlay |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5018 'priority) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5019 0))) |
20331 | 5020 (and (or overlay-invisible overlay-face) |
5021 (> overlay-priority face-priority) | |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5022 (setq face |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5023 (cond ((if (eq save-buffer-invisibility-spec t) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5024 (not (null overlay-invisible)) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5025 (or (memq overlay-invisible |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5026 save-buffer-invisibility-spec) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5027 (assq overlay-invisible |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5028 save-buffer-invisibility-spec))) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5029 nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5030 ((and face overlay-face))) |
20331 | 5031 face-priority overlay-priority))) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5032 (setq overlays (cdr overlays)))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5033 ;; Plot up to this record. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5034 (ps-plot-with-face from position face) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5035 (setq from position))))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5036 (ps-plot-with-face from to face)))) |
7257 | 5037 |
5038 (defun ps-generate-postscript (from to) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5039 (ps-plot-region from to 0 nil)) |
7257 | 5040 |
5041 (defun ps-generate (buffer from to genfunc) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5042 (save-excursion |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5043 (let ((from (min to from)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5044 (to (max to from)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5045 ;; This avoids trouble if chars with read-only properties |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5046 ;; are copied into ps-spool-buffer. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5047 (inhibit-read-only t)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5048 (save-restriction |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5049 (narrow-to-region from to) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5050 (and ps-razzle-dazzle |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5051 (message "Formatting...%3d%%" (setq ps-razchunk 0))) |
20331 | 5052 (setq ps-source-buffer buffer |
5053 ps-spool-buffer (get-buffer-create ps-spool-buffer-name)) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5054 (ps-init-output-queue) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5055 (let (safe-marker completed-safely needs-begin-file) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5056 (unwind-protect |
10683 | 5057 (progn |
5058 (set-buffer ps-spool-buffer) | |
22397 | 5059 (set-buffer-multibyte nil) |
23138
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
5060 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5061 ;; Get a marker and make it point to the current end of the |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5062 ;; buffer, If an error occurs, we'll delete everything from |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5063 ;; the end of this marker onwards. |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5064 (setq safe-marker (make-marker)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5065 (set-marker safe-marker (point-max)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5066 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5067 (goto-char (point-min)) |
20331 | 5068 (or (looking-at (regexp-quote ps-adobe-tag)) |
5069 (setq needs-begin-file t)) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5070 (save-excursion |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5071 (set-buffer ps-source-buffer) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5072 (if needs-begin-file (ps-begin-file)) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5073 (ps-mule-begin from to) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5074 (ps-begin-job) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5075 (ps-begin-page)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5076 (set-buffer ps-source-buffer) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5077 (funcall genfunc from to) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5078 (ps-end-page) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5079 |
20331 | 5080 (and ps-spool-duplex (= (mod ps-page-count 2) 1) |
5081 (ps-dummy-page)) | |
22397 | 5082 (ps-end-file) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5083 (ps-flush-output) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5084 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5085 ;; Back to the PS output buffer to set the page count |
22397 | 5086 (let ((total-lines (if ps-printing-region |
5087 (cdr ps-printing-region) | |
5088 (ps-count-lines (point-min) (point-max)))) | |
5089 (total-pages (if ps-print-only-one-header | |
5090 (ps-page-number) | |
5091 ps-page-count))) | |
5092 (set-buffer ps-spool-buffer) | |
5093 (goto-char (point-min)) | |
5094 (while (re-search-forward "^/Lines 0 def\n/PageCount 0 def$" | |
5095 nil t) | |
5096 (replace-match (format "/Lines %d def\n/PageCount %d def" | |
5097 total-lines total-pages) t))) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5098 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5099 ;; Setting this variable tells the unwind form that the |
20331 | 5100 ;; the PostScript was generated without error. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5101 (setq completed-safely t)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5102 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5103 ;; Unwind form: If some bad mojo occurred while generating |
20331 | 5104 ;; PostScript, delete all the PostScript that was generated. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5105 ;; This protects the previously spooled files from getting |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5106 ;; corrupted. |
20331 | 5107 (and (markerp safe-marker) (not completed-safely) |
5108 (progn | |
5109 (set-buffer ps-spool-buffer) | |
5110 (delete-region (marker-position safe-marker) (point-max)))))) | |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5111 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5112 (and ps-razzle-dazzle (message "Formatting...done")))))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5113 |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5114 ;; To avoid compilation gripes |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5115 (defvar dos-ps-printer nil) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5116 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5117 ;; Permit dynamic evaluation at print time of `ps-lpr-switches'. |
7257 | 5118 (defun ps-do-despool (filename) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5119 (if (or (not (boundp 'ps-spool-buffer)) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5120 (not (symbol-value 'ps-spool-buffer))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5121 (message "No spooled PostScript to print") |
7257 | 5122 (if filename |
5123 (save-excursion | |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5124 (and ps-razzle-dazzle (message "Saving...")) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5125 (set-buffer ps-spool-buffer) |
7257 | 5126 (setq filename (expand-file-name filename)) |
21571
add6627452a5
(ps-do-despool): Bind coding-system-for-write to
Eli Zaretskii <eliz@gnu.org>
parents:
21086
diff
changeset
|
5127 (let ((coding-system-for-write 'raw-text-unix)) |
add6627452a5
(ps-do-despool): Bind coding-system-for-write to
Eli Zaretskii <eliz@gnu.org>
parents:
21086
diff
changeset
|
5128 (write-region (point-min) (point-max) filename)) |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5129 (and ps-razzle-dazzle (message "Wrote %s" filename))) |
7257 | 5130 ;; Else, spool to the printer |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5131 (and ps-razzle-dazzle (message "Printing...")) |
7257 | 5132 (save-excursion |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5133 (set-buffer ps-spool-buffer) |
22751
75c35003c69f
(ps-do-despool): Bind ps-printer-name to printer-name if the former is
Andrew Innes <andrewi@gnu.org>
parents:
22680
diff
changeset
|
5134 (let* ((coding-system-for-write 'raw-text-unix) |
75c35003c69f
(ps-do-despool): Bind ps-printer-name to printer-name if the former is
Andrew Innes <andrewi@gnu.org>
parents:
22680
diff
changeset
|
5135 (ps-printer-name (or ps-printer-name printer-name)) |
75c35003c69f
(ps-do-despool): Bind ps-printer-name to printer-name if the former is
Andrew Innes <andrewi@gnu.org>
parents:
22680
diff
changeset
|
5136 (ps-lpr-switches |
23138
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
5137 (append (and (stringp ps-printer-name) |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
5138 (list (concat "-P" ps-printer-name))) |
14e74d2a49cb
(ps-print-control-characters): Doc-string modified.
Kenichi Handa <handa@m17n.org>
parents:
23091
diff
changeset
|
5139 ps-lpr-switches))) |
22680
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
5140 (if (and (memq system-type '(ms-dos windows-nt)) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5141 (or (stringp dos-ps-printer) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5142 (stringp ps-printer-name))) |
21571
add6627452a5
(ps-do-despool): Bind coding-system-for-write to
Eli Zaretskii <eliz@gnu.org>
parents:
21086
diff
changeset
|
5143 (write-region (point-min) (point-max) |
23091
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5144 (if (stringp dos-ps-printer) |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5145 dos-ps-printer |
25c95d9da0af
Multi-byte buffer handling.
Kenichi Handa <handa@m17n.org>
parents:
22751
diff
changeset
|
5146 ps-printer-name) |
22680
3cf03f32956c
(ps-printer-name): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
22596
diff
changeset
|
5147 t 0) |
14190
395b22713872
(ps-do-despool): On MS-DOS, allow both the usual and
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
5148 (apply 'call-process-region |
395b22713872
(ps-do-despool): On MS-DOS, allow both the usual and
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
5149 (point-min) (point-max) ps-lpr-command nil |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5150 (and (fboundp 'start-process) 0) |
14190
395b22713872
(ps-do-despool): On MS-DOS, allow both the usual and
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
5151 nil |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5152 (ps-flatten-list ; dynamic evaluation |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5153 (mapcar 'ps-eval-switch ps-lpr-switches)))))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5154 (and ps-razzle-dazzle (message "Printing...done"))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5155 (kill-buffer ps-spool-buffer))) |
7257 | 5156 |
20516
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5157 ;; Dynamic evaluation |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5158 (defun ps-eval-switch (arg) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5159 (cond ((stringp arg) arg) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5160 ((functionp arg) (apply arg nil)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5161 ((symbolp arg) (symbol-value arg)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5162 ((consp arg) (apply (car arg) (cdr arg))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5163 (t nil))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5164 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5165 ;; `ps-flatten-list' is defined here (copied from "message.el" and |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5166 ;; enhanced to handle dotted pairs as well) until we can get some |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5167 ;; sensible autoloads, or `flatten-list' gets put somewhere decent. |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5168 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5169 ;; (ps-flatten-list '((a . b) c (d . e) (f g h) i . j)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5170 ;; => (a b c d e f g h i j) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5171 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5172 (defun ps-flatten-list (&rest list) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5173 (ps-flatten-list-1 list)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5174 |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5175 (defun ps-flatten-list-1 (list) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5176 (cond ((null list) nil) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5177 ((consp list) (append (ps-flatten-list-1 (car list)) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5178 (ps-flatten-list-1 (cdr list)))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5179 (t (list list)))) |
d33438261904
Some comment, doc and bug fixes.
Richard M. Stallman <rms@gnu.org>
parents:
20332
diff
changeset
|
5180 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5181 (defun ps-kill-emacs-check () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5182 (let (ps-buffer) |
20331 | 5183 (and (setq ps-buffer (get-buffer ps-spool-buffer-name)) |
5184 (buffer-modified-p ps-buffer) | |
5185 (y-or-n-p "Unprinted PostScript waiting; print now? ") | |
5186 (ps-despool)) | |
5187 (and (setq ps-buffer (get-buffer ps-spool-buffer-name)) | |
5188 (buffer-modified-p ps-buffer) | |
5189 (not (yes-or-no-p "Unprinted PostScript waiting; exit anyway? ")) | |
5190 (error "Unprinted PostScript")))) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5191 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5192 (if (fboundp 'add-hook) |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5193 (funcall 'add-hook 'kill-emacs-hook 'ps-kill-emacs-check) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5194 (if kill-emacs-hook |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5195 (message "Won't override existing kill-emacs-hook") |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5196 (setq kill-emacs-hook 'ps-kill-emacs-check))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5197 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5198 ;;; Sample Setup Code: |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5199 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5200 ;; This stuff is for anybody that's brave enough to look this far, |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5201 ;; and able to figure out how to use it. It isn't really part of |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5202 ;; ps-print, but I'll leave it here in hopes it might be useful: |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5203 |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5204 ;; WARNING!!! The following code is *sample* code only. Don't use it |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5205 ;; unless you understand what it does! |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5206 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5207 (defmacro ps-prsc () |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5208 `(if (eq ps-print-emacs-type 'emacs) [f22] 'f22)) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5209 (defmacro ps-c-prsc () |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5210 `(if (eq ps-print-emacs-type 'emacs) [C-f22] '(control f22))) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5211 (defmacro ps-s-prsc () |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5212 `(if (eq ps-print-emacs-type 'emacs) [S-f22] '(shift f22))) |
10683 | 5213 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5214 ;; A hook to bind to `rmail-mode-hook' to locally bind prsc and set the |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5215 ;; `ps-left-headers' specially for mail messages. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5216 (defun ps-rmail-mode-hook () |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5217 (local-set-key (ps-prsc) 'ps-rmail-print-message-from-summary) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5218 (setq ps-header-lines 3 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5219 ps-left-header |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5220 ;; The left headers will display the message's subject, its |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5221 ;; author, and the name of the folder it was in. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5222 '(ps-article-subject ps-article-author buffer-name))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5223 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5224 ;; See `ps-gnus-print-article-from-summary'. This function does the |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5225 ;; same thing for rmail. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5226 (defun ps-rmail-print-message-from-summary () |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5227 (interactive) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5228 (ps-print-message-from-summary 'rmail-summary-buffer "RMAIL")) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5229 |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5230 ;; Used in `ps-rmail-print-article-from-summary', |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5231 ;; `ps-gnus-print-article-from-summary' and `ps-vm-print-message-from-summary'. |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5232 (defun ps-print-message-from-summary (summary-buffer summary-default) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5233 (let ((ps-buf (or (and (boundp summary-buffer) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5234 (symbol-value summary-buffer)) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5235 summary-default))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5236 (and (get-buffer ps-buf) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5237 (save-excursion |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5238 (set-buffer ps-buf) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5239 (ps-spool-buffer-with-faces))))) |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5240 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5241 ;; Look in an article or mail message for the Subject: line. To be |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5242 ;; placed in `ps-left-headers'. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5243 (defun ps-article-subject () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5244 (save-excursion |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5245 (goto-char (point-min)) |
15620
7844c0f756d0
(ps-article-subject): Don't die if no subject header.
Karl Heuer <kwzh@gnu.org>
parents:
15163
diff
changeset
|
5246 (if (re-search-forward "^Subject:[ \t]+\\(.*\\)$" nil t) |
17588
0054114145ca
change all buffer-substring to buffer-substring-no-properties.
Simon Marshall <simon@gnu.org>
parents:
17440
diff
changeset
|
5247 (buffer-substring-no-properties (match-beginning 1) (match-end 1)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5248 "Subject ???"))) |
7257 | 5249 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5250 ;; Look in an article or mail message for the From: line. Sorta-kinda |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5251 ;; understands RFC-822 addresses and can pull the real name out where |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5252 ;; it's provided. To be placed in `ps-left-headers'. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5253 (defun ps-article-author () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5254 (save-excursion |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5255 (goto-char (point-min)) |
15621
6be6d1990543
(ps-article-author, ps-info-file, ps-info-node): Don't die if header is missing.
Karl Heuer <kwzh@gnu.org>
parents:
15620
diff
changeset
|
5256 (if (re-search-forward "^From:[ \t]+\\(.*\\)$" nil t) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5257 (let ((fromstring (buffer-substring-no-properties (match-beginning 1) |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5258 (match-end 1)))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5259 (cond |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5260 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5261 ;; Try first to match addresses that look like |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5262 ;; thompson@wg2.waii.com (Jim Thompson) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5263 ((string-match ".*[ \t]+(\\(.*\\))" fromstring) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5264 (substring fromstring (match-beginning 1) (match-end 1))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5265 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5266 ;; Next try to match addresses that look like |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5267 ;; Jim Thompson <thompson@wg2.waii.com> |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5268 ((string-match "\\(.*\\)[ \t]+<.*>" fromstring) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5269 (substring fromstring (match-beginning 1) (match-end 1))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5270 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5271 ;; Couldn't find a real name -- show the address instead. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5272 (t fromstring))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5273 "From ???"))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5274 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5275 ;; A hook to bind to `gnus-article-prepare-hook'. This will set the |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5276 ;; `ps-left-headers' specially for gnus articles. Unfortunately, |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5277 ;; `gnus-article-mode-hook' is called only once, the first time the *Article* |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5278 ;; buffer enters that mode, so it would only work for the first time |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5279 ;; we ran gnus. The second time, this hook wouldn't get set up. The |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5280 ;; only alternative is `gnus-article-prepare-hook'. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5281 (defun ps-gnus-article-prepare-hook () |
20331 | 5282 (setq ps-header-lines 3 |
5283 ps-left-header | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5284 ;; The left headers will display the article's subject, its |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5285 ;; author, and the newsgroup it was in. |
20331 | 5286 '(ps-article-subject ps-article-author gnus-newsgroup-name))) |
7257 | 5287 |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5288 ;; A hook to bind to `vm-mode-hook' to locally bind prsc and set the |
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5289 ;; `ps-left-headers' specially for mail messages. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5290 (defun ps-vm-mode-hook () |
10683 | 5291 (local-set-key (ps-prsc) 'ps-vm-print-message-from-summary) |
20331 | 5292 (setq ps-header-lines 3 |
5293 ps-left-header | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5294 ;; The left headers will display the message's subject, its |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5295 ;; author, and the name of the folder it was in. |
20331 | 5296 '(ps-article-subject ps-article-author buffer-name))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5297 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5298 ;; Every now and then I forget to switch from the *Summary* buffer to |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5299 ;; the *Article* before hitting prsc, and a nicely formatted list of |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5300 ;; article subjects shows up at the printer. This function, bound to |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5301 ;; prsc for the gnus *Summary* buffer means I don't have to switch |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5302 ;; buffers first. |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5303 ;; sb: Updated for Gnus 5. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5304 (defun ps-gnus-print-article-from-summary () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5305 (interactive) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5306 (ps-print-message-from-summary 'gnus-article-buffer "*Article*")) |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5307 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5308 ;; See `ps-gnus-print-article-from-summary'. This function does the |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5309 ;; same thing for vm. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5310 (defun ps-vm-print-message-from-summary () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5311 (interactive) |
19773
24853e0e38d6
Some comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19485
diff
changeset
|
5312 (ps-print-message-from-summary 'vm-mail-buffer "")) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5313 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5314 ;; A hook to bind to bind to `gnus-summary-setup-buffer' to locally bind |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5315 ;; prsc. |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5316 (defun ps-gnus-summary-setup () |
10683 | 5317 (local-set-key (ps-prsc) 'ps-gnus-print-article-from-summary)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5318 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5319 ;; Look in an article or mail message for the Subject: line. To be |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5320 ;; placed in `ps-left-headers'. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5321 (defun ps-info-file () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5322 (save-excursion |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5323 (goto-char (point-min)) |
15621
6be6d1990543
(ps-article-author, ps-info-file, ps-info-node): Don't die if header is missing.
Karl Heuer <kwzh@gnu.org>
parents:
15620
diff
changeset
|
5324 (if (re-search-forward "File:[ \t]+\\([^, \t\n]*\\)" nil t) |
17588
0054114145ca
change all buffer-substring to buffer-substring-no-properties.
Simon Marshall <simon@gnu.org>
parents:
17440
diff
changeset
|
5325 (buffer-substring-no-properties (match-beginning 1) (match-end 1)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5326 "File ???"))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5327 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5328 ;; Look in an article or mail message for the Subject: line. To be |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5329 ;; placed in `ps-left-headers'. |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5330 (defun ps-info-node () |
7257 | 5331 (save-excursion |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5332 (goto-char (point-min)) |
15621
6be6d1990543
(ps-article-author, ps-info-file, ps-info-node): Don't die if header is missing.
Karl Heuer <kwzh@gnu.org>
parents:
15620
diff
changeset
|
5333 (if (re-search-forward "Node:[ \t]+\\([^,\t\n]*\\)" nil t) |
17588
0054114145ca
change all buffer-substring to buffer-substring-no-properties.
Simon Marshall <simon@gnu.org>
parents:
17440
diff
changeset
|
5334 (buffer-substring-no-properties (match-beginning 1) (match-end 1)) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5335 "Node ???"))) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5336 |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5337 (defun ps-info-mode-hook () |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5338 (setq ps-left-header |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5339 ;; The left headers will display the node name and file name. |
20331 | 5340 '(ps-info-node ps-info-file))) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5341 |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5342 ;; WARNING! The following function is a *sample* only, and is *not* |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5343 ;; meant to be used as a whole unless you understand what the effects |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5344 ;; will be! (In fact, this is a copy of Jim's setup for ps-print -- |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5345 ;; I'd be very surprised if it was useful to *anybody*, without |
11799
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5346 ;; modification.) |
4a04c7799790
Miscellaneous fixes for better compatibility with
Karl Heuer <kwzh@gnu.org>
parents:
10738
diff
changeset
|
5347 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5348 (defun ps-jts-ps-setup () |
10683 | 5349 (global-set-key (ps-prsc) 'ps-spool-buffer-with-faces) ;f22 is prsc |
5350 (global-set-key (ps-s-prsc) 'ps-spool-region-with-faces) | |
5351 (global-set-key (ps-c-prsc) 'ps-despool) | |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5352 (add-hook 'gnus-article-prepare-hook 'ps-gnus-article-prepare-hook) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5353 (add-hook 'gnus-summary-mode-hook 'ps-gnus-summary-setup) |
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5354 (add-hook 'vm-mode-hook 'ps-vm-mode-hook) |
10683 | 5355 (add-hook 'vm-mode-hooks 'ps-vm-mode-hook) |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5356 (add-hook 'Info-mode-hook 'ps-info-mode-hook) |
20331 | 5357 (setq ps-spool-duplex t |
5358 ps-print-color-p nil | |
5359 ps-lpr-command "lpr" | |
5360 ps-lpr-switches '("-Jjct,duplex_long")) | |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5361 'ps-jts-ps-setup) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5362 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5363 ;; WARNING! The following function is a *sample* only, and is *not* |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5364 ;; meant to be used as a whole unless it corresponds to your needs. |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5365 ;; (In fact, this is a copy of Jack's setup for ps-print -- |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5366 ;; I would not be that surprised if it was useful to *anybody*, |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5367 ;; without modification.) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5368 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5369 (defun ps-jack-setup () |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5370 (setq ps-print-color-p nil |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5371 ps-lpr-command "lpr" |
20331 | 5372 ps-lpr-switches nil |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5373 |
19445
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5374 ps-paper-type 'a4 |
94a54fbffb3e
A lot of comment and doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
19011
diff
changeset
|
5375 ps-landscape-mode t |
16361
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5376 ps-number-of-columns 2 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5377 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5378 ps-left-margin (/ (* 72 1.0) 2.54) ; 1.0 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5379 ps-right-margin (/ (* 72 1.0) 2.54) ; 1.0 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5380 ps-inter-column (/ (* 72 1.0) 2.54) ; 1.0 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5381 ps-bottom-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5382 ps-top-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5383 ps-header-offset (/ (* 72 1.0) 2.54) ; 1.0 cm |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5384 ps-header-line-pad .15 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5385 ps-print-header t |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5386 ps-print-header-frame t |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5387 ps-header-lines 2 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5388 ps-show-n-of-n t |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5389 ps-spool-duplex nil |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5390 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5391 ps-font-family 'Courier |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5392 ps-font-size 5.5 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5393 ps-header-font-family 'Helvetica |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5394 ps-header-font-size 6 |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5395 ps-header-title-font-size 8) |
032601b9959b
(ps-print-prologue-1): Fix bug in postscript comment lines.
Richard M. Stallman <rms@gnu.org>
parents:
16186
diff
changeset
|
5396 'ps-jack-setup) |
7257 | 5397 |
5398 (provide 'ps-print) | |
10738
e7d5b119b583
(ps-print-version): Add caveat about version number.
Richard M. Stallman <rms@gnu.org>
parents:
10683
diff
changeset
|
5399 |
10492
a0f38717d82d
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
7257
diff
changeset
|
5400 ;;; ps-print.el ends here |