用于将.TIFF转换为.PDF的shell脚本

时间:2013-10-11 19:06:40

标签: shell unix pdf tiff

我想要浏览目录的子目录,并将.TIF图像转换或放入pdf。我有一个像这样的目录结构:

folder
   item_one
       file1.TIF
       file2.TIF
       ...
       fileN.TIF
   item_two
       file1.TIF
       file2.TIF
       ...
   ...

我正在使用Mac并考虑使用sips将我的.TIF文件更改为.PNG文件,然后使用pdfjoin将所有.PNG文件连接到每个文件夹的单个.PDF文件中。

我用过:

for filename in *; do sips -s format png $filename --out $filename.png; done

但这仅适用于单个目录中的.TIF文件。如何编写一个shellcript来推进一系列目录呢?

创建.PNG文件后我会做同样的事情,但使用:

pdfjoin --a4paper --fitpaper false --rotateoversize false *.png

这是一种有效的方法吗?是否有更好,更有效的方式来执行此类操作?或者我是一个白痴,应该用某种软件,比如ImageMagick或其他什么来做这件事?

1 个答案:

答案 0 :(得分:1)

尝试使用find命令和exec开关调用图像转换解决方案。或者,您可以将exec的输出传输到find,而不是使用xargs开关。有很多关于使用find的信息。这是StackOverflow中的一个example

就图像转换而言,我认为这实际上取决于您对速度和效率的要求。如果你已经验证了你描述的过程,这是一个一次性的过程,只需要几秒或几分钟就可以运行,那么你可能没问题。另一方面,如果您需要经常这样做,那么花时间寻找一步转换解决方案可能值得花费比现有的双通解决方案更少的时间。

请注意,您可以将sips的输出管道传输到pdfjoin,而不是两次传递;但是,这需要一些调查来验证。