我想知道为什么以下生成 ps 文件而不是 pdf 文件?我怎样才能让它生成pdf文件?谢谢。
$ enscript -B -PPDF code/bloom.c -o bloom.pdf
[ 2 pages * 1 copy ] left in bloom.pdf
$ file bloom.pdf
bloom.pdf: PostScript document text conforming DSC level 3.0
我已经安装了 cups-pdf
sudo apt install cups-pdf
答案1
默认情况下,enscript
仅生成 postscipt 文件 (ps)。
您的命令行缺少两个标志:小的 -p
和首都 -P
。命令行必须是这样的:
enscript -B -P <PDF_PRINTER_NAME> code/bloom.c -p myfile.ps
根据enscript
联机帮助页
-P name, --printer=name
Spool the output to the printer name.
-p file, --output=file
Leave the output to file file. If the file is `-', enscript sends the output to the standard output stdout.
如果系统中没有 pdf 打印机,则鬼脚本可以将ps文件转换为pdf文件,如下:
sudo apt install ghostscript
ps2pdf myfile.ps myfile.pdf
或者
enscript file -o - | ps2pdf - output.pdf
当系统默认使用 pdf 打印机时,类似以下命令将输出 pdf 文件而不是 ps 文件:
enscript -2 -r -j --font=Times-Roman11 --word-wrap --mark-wrapped=arrow '%f' && sleep 2 && evince ~/PDF/_stdin_.pdf
- The `%f` designates the filename parameter.
- The `&& sleep 2 && evince ~/PDF/_stdin_.pdf` commands will wait two seconds for the print job to finish, then run the Evince PDF viewer to display the file _stdin_.pdf you just generated in the user’s PDF subdirectory.