changeset 75702:78d94b04f6aa

Fix background color printing
author Vinicius Jose Latorre <viniciusjl@ig.com.br>
date Wed, 07 Feb 2007 13:40:10 +0000
parents 744efaecbd36
children 374c5b932d28
files lisp/ChangeLog lisp/ps-print.el
diffstat 2 files changed, 40 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Wed Feb 07 00:26:17 2007 +0000
+++ b/lisp/ChangeLog	Wed Feb 07 13:40:10 2007 +0000
@@ -1,3 +1,13 @@
+2007-02-07  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
+
+	* ps-print.ps: The ps-print commands without face printing should not
+	print background color.  Reported by Leo <sdl.web@gmail.com>.
+	(ps-print-version): New version 6.7.3.
+	(ps-begin-job): New arg.  Fix ps-default-background and
+	ps-default-foreground initialization.
+	(ps-face-attributes): Fix doc string.
+	(ps-face-background, ps-generate-postscript, ps-generate): Fix code.
+
 2007-02-06  Chong Yidong  <cyd@stupidchicken.com>
 
 	* faces.el (face-set-after-frame-default): Compile attributes to
--- a/lisp/ps-print.el	Wed Feb 07 00:26:17 2007 +0000
+++ b/lisp/ps-print.el	Wed Feb 07 13:40:10 2007 +0000
@@ -10,11 +10,11 @@
 ;; Maintainer: Kenichi Handa <handa@m17n.org> (multi-byte characters)
 ;;	Vinicius Jose Latorre <viniciusjl@ig.com.br>
 ;; Keywords: wp, print, PostScript
-;; Version: 6.7.2
+;; Version: 6.7.3
 ;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
 
-(defconst ps-print-version "6.7.2"
-  "ps-print.el, v 6.7.2 <2007/01/26 vinicius>
+(defconst ps-print-version "6.7.3"
+  "ps-print.el, v 6.7.3 <2007/02/06 vinicius>
 
 Vinicius's last change version -- this file may have been edited as part of
 Emacs without changes to the version number.  When reporting bugs, please also
@@ -5838,7 +5838,7 @@
 	))
 
 
-(defun ps-begin-job ()
+(defun ps-begin-job (genfunc)
   ;; prologue files
   (or (equal ps-mark-code-directory ps-postscript-code-directory)
       (setq ps-print-prologue-0    (ps-prologue-file 0)
@@ -5909,6 +5909,8 @@
 	      (t "[\t\n\f]"))
 	ps-default-background (ps-rgb-color
 			       (cond
+				((eq genfunc 'ps-generate-postscript)
+				 nil)
 				((eq ps-default-bg 'frame-parameter)
 				 (ps-frame-parameter 'background-color))
 				((eq ps-default-bg t)
@@ -5918,6 +5920,8 @@
 			       1.0)
 	ps-default-foreground (ps-rgb-color
 			       (cond
+				((eq genfunc 'ps-generate-postscript)
+				 nil)
 				((eq ps-default-fg 'frame-parameter)
 				 (ps-frame-parameter 'foreground-color))
 				((eq ps-default-fg t)
@@ -6321,7 +6325,7 @@
 `ps-print-face-alist', insert it on `ps-print-face-alist' and
 return the attribute vector.
 
-If FACE is not a valid face name, it is used default face."
+If FACE is not a valid face name, use default face."
   (cond
    (ps-black-white-faces-alist
     (or (and (symbolp face)
@@ -6346,23 +6350,25 @@
 
 
 (defun ps-face-background (face background)
-  (and (or (eq ps-use-face-background t)
-	   (cond ((symbolp face)
-		  (memq face ps-use-face-background))
-		 ((listp face)
-		  (or (memq (car face) '(foreground-color background-color))
-		      (let (ok)
-			(while face
-			  (if (or (memq (car face) ps-use-face-background)
-				  (memq (car face)
-					'(foreground-color background-color)))
-			      (setq face nil
-				    ok   t)
-			    (setq face (cdr face))))
-			ok)))
-		 (t
-		  nil)
-		 ))
+  (and (cond ((eq ps-use-face-background t))	; always
+	     ((null ps-use-face-background) nil) ; never
+	     ;; ps-user-face-background is a symbol face list
+	     ((symbolp face)
+	      (memq face ps-use-face-background))
+	     ((listp face)
+	      (or (memq (car face) '(foreground-color background-color))
+		  (let (ok)
+		    (while face
+		      (if (or (memq (car face) ps-use-face-background)
+			      (memq (car face)
+				    '(foreground-color background-color)))
+			  (setq face nil
+				ok   t)
+			(setq face (cdr face))))
+		    ok)))
+	     (t
+	      nil)
+	     )
        background))
 
 
@@ -6629,7 +6635,7 @@
       (ps-plot-with-face from to face))))
 
 (defun ps-generate-postscript (from to)
-  (ps-plot-region from to 0 nil))
+  (ps-plot-region from to 0))
 
 (defun ps-generate (buffer from to genfunc)
   (save-excursion
@@ -6665,7 +6671,7 @@
 		(save-excursion
 		  (let ((ps-print-page-p t)
 			ps-even-or-odd-pages)
-		    (ps-begin-job)
+		    (ps-begin-job genfunc)
 		    (when needs-begin-file
 		      (ps-begin-file)
 		      (ps-mule-initialize))