当您运行其中一个可执行命令 GS[win##][c] -h (= help)
它会回复
“Ghostscript 是 PostScript® 和便携式文档的解释器
格式化 (PDF) 文件。”
然后继续描述选项,例如
输入格式:PostScript PostScriptLevel1 PostScriptLevel2
PostScriptLevel3 PDF
因此我们看到它被设计为接受 filename.ps 或 filename.pdf 即不是 filename.txt 因此对您的问题的非常简短的回答是 NO!
然而,有很多方法可以向 Ghostscript 提供文本,因为它是一个名为 GhostPDL 的更大包的一部分,其中包括可以输出为不同格式的打印驱动程序,我们可以使用 PDL 打印来构建多格式转换器。
另一种方法是使用 PostScript 程序来处理文本文件,How to modify this plaintext-to-PDF-converting PostScript from 1992 to actually specify a page size? 中描述了一个示例
我们还可以使用 PostScript 可编程标题构建特定的多语言文本,以通过 Ghostscript 进行处理,例如文本.PS。但人生苦短……
上述方法类似于将文本文件简单地打印到 file.pdf 中。因此,Windows 中最简单的方法是使用基于 Ghostscript 的打印驱动程序,或者更简单的是,如果“Microsoft Print to PDF”驱动程序是默认的,则默认为右键单击 TXT 文件并选择打印。然后它应该作为默认文本处理程序在记事本中闪烁。
此时大多数 Windows 用户都说,但我希望它使用 xyz 格式自动生成!好吧,Windows 用户有两个内置的文本处理程序,而 WordPad 是更强大的一个,它允许 RichTextFormatting (RTF)。
所以在第一阶段尝试
C:\Windows\NOTEPAD.EXE /pt test.txt "Microsoft Print to PDF"
通常会要求您提供文件夹和文件名并且可以将您自己的 MS PDF 驱动程序副本设置为固定文件名,以避免 端口输出提示。
但是使用 WordPad 我们可以更轻松地指定输出文件名:-
"%ProgramFiles%\Windows NT\Accessories\WORDPAD.EXE" /pt "c:\path\test.txt" "Microsoft Print to PDF" "Microsoft Print to PDF" "c:\path\test.pdf"
输入可以是.txt,也可以是.rtf、.doc、.docx、.odt等。但是,只有在写字板中可以很好查看的文件才能用带样式的文本和图像。
所以回答原始问题如何使用 Ghostscript 将 TXT 转换为 PDF?如果您安装了高分辨率 4000dpi Ghostscript 打印驱动程序您可以使用只需两行:-
"%ProgramFiles%\Windows NT\Accessories\WORDPAD.EXE" /pt "c:\path\test.txt" "Ghostscript PS" "Ghostscript PS" "c:\path\test.ps"
gswin64c.exe -dNOSAFER -sDEVICE=pdfwrite -o "c:\path\test.pdf" "c:\path\test.ps"
注意:- 在第二行我使用 gswin64C.exe 和 -o 不需要批处理或暂停,我保留你的 -dNOSAFER 因为我相信你的 .txt 没有炸弹.
但是使用带有 单行命令 的 600dpi Microsoft 内置 PDF 驱动程序要容易得多,特别是如果它是 %1 拖放快捷方式和/或将其添加为任何 txt/rtf/odt/doc(x) 文件的右键单击上下文动词。