如何让 OS X 上的 lpr 打印带边距和较小字体的文本?

如何让 OS X 上的 lpr 打印带边距和较小字体的文本?

使用 打印文本文件会产生带有大 Monaco 字体和极薄边距的输出。在OS X 上lpr使用时,有办法更改字体和边距吗?lpr

答案1

lp允许您指定边距和文本大小。根据man lp

-o cpi=N
     Sets the number of characters per inch to use when printing a text file. The default is 10.

-o lpi=N
     Sets the number of lines per inch to use when printing a text file. The default is 6.

-o page-bottom=N

-o page-left=N

-o page-right=N

-o page-top=N
     Sets the page margins when printing text files. The values are in points - there are 72 points to the inch.

EXAMPLES

Print a double-sided legal document to a printer called "foo":
    lp -d foo -o media=legal -o sides=two-sided-long-edge filename

Print an image across 4 pages:
    lp -d bar -o scaling=200 filename

Print a text file with 12 characters per inch, 8 lines per inch, and a 1 inch left margin:
    lp -d bar -o cpi=12 -o lpi=8 -o page-left=72 filename

答案2

mylpr在~/bin 中定义了一个命令,如下所示:

#!/bin/bash
ENSCRIPT="--no-header --margins=36:36:36:36 --font=Courier11 --word-wrap --media=Letter"
export ENSCRIPT
/usr/bin/enscript -p - $1 | /usr/bin/lpr

然后我还添加了几行

(require 'lpr)
(setq my-print-command "~/bin/mylpr")
(setq lpr-command my-print-command)

到我的~/.emacs~/.xemacs/custom.el文件。这解决了我所有使用 12 pt Monaco 进行无边距打印的情况。

相关内容