;;; ps-mule.el --- provide multi-byte character facility to ps-print
;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-;; 2005 Free Software Foundation, Inc.
+;; 2005, 2006 Free Software Foundation, Inc.
;; Author: Vinicius Jose Latorre <vinicius@cpqd.com.br>
;; Kenichi Handa <handa@etl.go.jp> (multi-byte characters)
(ps-output-prologue (format "/EscChar %d def\n" ps-mule-esc-char))
(setq ps-mule-prologue-generated t)))
-(defsubst ps-mule-eight-bit-char (byte)
- (if (< byte 128)
- byte
- (decode-char 'eight-bit byte)))
-
(defun ps-mule-encode-region (from to font-spec-table)
"Generate PostScript code for plotting characters in the region FROM and TO.
(aset str i char)
(let* ((code (ps-mule-encode-char char font-spec)))
(if (= (ps-mule-font-spec-bytes font-spec) 1)
- (aset str i (ps-mule-eight-bit-char code))
- (aset str i (ps-mule-eight-bit-char (/ code 256)))
+ (aset str i code)
+ (aset str i (/ code 256))
(setq i (1+ i))
- (aset str i (ps-mule-eight-bit-char (% code 256))))))
+ (aset str i (% code 256)))))
(setq i (1+ i))
(forward-char 1)))
(nreverse (cons (substring str 0 i) string-list))))
(font-id (ps-mule-font-spec-font-id font-spec))
(str (make-string (if (= font-id 0) 1 (+ 2 bytes)) 0)))
(if (= font-id 0)
- (aset str 0 (ps-mule-eight-bit-char code))
+ (aset str 0 code)
(aset str 0 ps-mule-esc-char)
- (aset str 1 (ps-mule-eight-bit-char font-id))
+ (aset str 1 font-id)
(if (= bytes 1)
- (aset str 2 (ps-mule-eight-bit-char code))
- (aset str 2 (ps-mule-eight-bit-char (/ code 256)))
- (aset str 3 (ps-mule-eight-bit-char (% code 256)))))
+ (aset str 2 code)
+ (aset str 2 (/ code 256))
+ (aset str 3 (% code 256))))
(ps-output "[")
(ps-output-string str)
(ps-output (if (eq (ps-mule-font-spec-src font-spec) 'bdf)