我对 shell 脚本很陌生。
我需要创建一个脚本或重用一个将 PDF 转换为 PS(Post Script)文件的脚本,有办法做到这一点吗?
答案1
我需要创建一个脚本或重用一个将 PDF 转换为 PS (PostScript) 文件的脚本
工具有很多,但每种工具也各有利弊。
pdf2ps是我的首选工具,因为我的需求很低。这是一个简单的单行命令。
pdf2ps [options] input.pdf [output.ps]
如果您不提供output.ps,它将保留输入文件名,只是将扩展名从pdf更改为ps。
pdf2ps 将转换文件,文件可能比 pdftops 更大并且需要更长的时间。 pdf2ps 将字体转换为位图字体。
波普勒的pdftops是 Xpdf(Ubuntu 中的 poppler-utils)的后继者。它运行速度快,能够更好地呈现字体,并且拥有大量简洁的工具。其调用 synopsys 与 pdf2ps 相同:
pdftops [options] input.pdf [output.ps]
维基百科说:
poppler-utils 是基于 Poppler 库 API 构建的命令行实用程序集合,用于管理 PDF 和提取内容:
- pdfattach – 将新的嵌入文件(附件)添加到现有 PDF
- pdfdetach – 从 PDF 中提取嵌入文档
- pdffonts – 列出 PDF 中使用的字体
- pdfimages – 从 PDF 中提取原始分辨率的所有嵌入图像
- pdfinfo – 列出 PDF 的所有信息
- pdfseparate – 从 PDF 中提取单页
- pdftocairo – 使用 cairo 将单页从 PDF 转换为矢量或位图格式
- pdftohtml – 将 PDF 转换为 HTML 格式并保留格式
- pdftoppm – 将 PDF 页面转换为位图
- pdftops – 将 PDF 转换为可打印的 PS 格式
- pdftotext – 从 PDF 中提取所有文本
- pdfunite – 合并多个 PDF
要使其成为将所有 pdf 转换为 ps 的 bash 脚本,仅转换扩展名:
#1/bin/bash
clear
find . -type f -iname '*.pdf' -print0 |
while IFS= read -r -d '' file
do pdftops "${file}" "${file%.*}.ps"
done
答案2
从:https://stackoverflow.com/questions/3403485/pdf-to-ps-conversion
显然有一个实用程序叫做pdf2ps(部分鬼脚本)可以做到这一点。还有另一个实用程序称为pdftops(部分xPDF)也可以做同样的事情。