如果您曾经使用过 emacs,您就会知道它有多么强大,以及有多么没用。
全面披露:我的 4800 行初始化文件(很快就会达到 3000 行)确实能够在 27.5 秒内加载 125 个有用的包,这要归功于 org-babel 和 use-package —— 但我仍然无法让它打印 pdf。哦,emacs,最简单的东西对吧?
因此,由于显而易见的原因,emacs 专家的数量正在减少,尽管如此,我猜这里至少有几人已经完全征服了 emacs。唉,我还不是你们中的一员。(至少是!)
我的配置是 2019-04-17 的 26.2(build 1,x86_64-w64-mingw32),使用 ImageMagic 7 支持、pdftools、aspell 6(我没有使用)和许多其他适用于 Windows 的 gem 进行编译,仍然将直接 postscript 推送到我的非 postscript 兼容激光打印机中,该打印机立即吐出了 28 页垃圾。BLLLLpt。
诚然,我对打印的底层原理知之甚少,但我知道 emacs 仍然处于末位 - 打印 pdf 并不难。因此,设置如下:
已安装 Windows 版 Ghostscript 和 ghostview,并将其添加到路径中。Pdftools 运行良好,在打开 pdf 时覆盖 docview。初始化代码很短。
(require 'printing)
为了更好的衡量:
(add-to-list 'load-path "C:/Program Files(x86)/Ghostgum/gsview/gsview32.exe")
(add-to-list 'load-path "C:/Program Files/gs/gs9.26/bin/gswin64c.exe")
命令(我更喜欢通过 pr-path-alist 来设置它们,但是,这没有多大意义)。
(setq pr-gs-command "C:/Program Files/gs/gs9.26/bin/gswin64c.exe")
(setq pr-ps-command "C:/Program Files/gs/gs9.26/bin/gswin64c.exe")
(setq lpr-command "C:/Program Files/gs/gs9.26/bin/gswin64c.exe")
(setq ps-lpr-command "C:/Program Files/gs/gs9.26/bin/gswin64c.exe")
(setq ps-lpr-switches '("-q" "-dNOPAUSE" "-dBATCH" "-sDEVICE=mswinpr2" "-sPAPERSIZE=a4"))
(setq pr-temp-dir "c:/emacs/.emacs.d/temp/")
我尝试过两种方法,ps-print.el 方法和 printing.el 方法。我更喜欢使用 printing.els pr-interface,因为它足够简单。
lpr-buffer and lpr-region
将打印作业发送到后台处理程序,再也找不到它了。我的打印机是兄弟激光打印机,是网络上唯一的打印机,lpr 难道不应该比 postscript 更好吗?好吧,这里什么也没发生。
打印缓冲区打印区域使用选项进入后台处理程序,但没有任何内容发送到打印机(后台处理程序也不执行任何操作)。
ps-print-buffer
打印文本文档!但是它输出的是 28 页带有 pdf 的垃圾文件。
pr-ps-print-buffer
后台处理,无任何反应
pr-ps-buffer-preview
打开 gsview(弹出一个烦人的注册窗口)并预览打印作业
pr-ps-region-using-ghostscript
28页垃圾。
所以看来我可能缺少一些基本知识。Ghostscript 应该填补 postscript 和非 postscript 或 pcl 驱动程序之间的空白,对吗?
我是不是缺少了某个库?还是我只需要更好地配置初始化?
有谁知道我在说什么吗?