【问题标题】:Combine single page tiffs into multipage tiff using a batch script使用批处理脚本将单页 tiff 组合成多页 tiff
【发布时间】:2016-10-04 22:18:00
【问题描述】:

我的文档扫描仪只能扫描到单页 tiff,我需要将它们组合成多页 tiff。我知道 Irfanview 可以做到这一点,但我愿意接受其他选择。

输入,C:\Scans

20161001115151800_0001.tif
20161001115151800_0002.tif
...
up to
...
20161001115151800_0021.tif

...和...:

20161002130918260_0001.tif
20161002130918260_0002.tif
...
up to
...
20161002130918260_0025.tif

所需的输出,C:\Output:

20161001115151800.tif
20161002130918260.tif

我正在寻找类似于Bulk Combine TIFFs Based on Common File Name Using IrfanviewImageMagick: how to batch combine multiple TIFF file to a single TIFF file in a directory? 的解决方案,但是我无法弄清楚如何使用我的文件结构将第一个解决方案实现为批处理文件,而第二个解决方案使用我无法生成的顺序文件名。

非常感谢任何帮助!

【问题讨论】:

  • 你有什么尝试,你有什么问题?请分享你的努力!

标签: batch-file imagemagick batch-processing tiff irfanview


【解决方案1】:

IrfanView 的程序文件文件夹中,有一个文本文件i_options.txt 列出并解释了可用的命令行选项。此文件中还包含创建多页 TIFF 文件的示例。

我建议在下面批处理代码的 IrfanView 命令行中的 /cmdexit 之后额外使用选项 /tifc=X 来定义用于多页 TIFF 文件的压缩.

@echo off
if not exist "C:\Output\" md "C:\Output"
for %%I in ("C:\Scans\*_*.tif") do (
    for /F "delims=_" %%J in ("%%~nI") do (
        if not exist "C:\Output\%%J.tif" (
            "%ProgramFiles(x86)%\IrfanView\i_view32.exe" /cmdexit "/multitif=(C:\Output\%%J.tif,C:\Scans\%%J_*.tif)"
        )
    )
)

/multitif 选项用双引号括起来,以避免转义括号并将整个选项作为一个参数字符串传递给 IrfanView,即使当前文件的名称包含空格字符或其他通常需要使用双引号的字符。在命令提示符窗口cmd /? 中运行,并至少阅读输出帮助中关于双引号用法的最后一页的最后一段。

要了解所使用的命令及其工作原理,请打开命令提示符窗口,在其中执行以下命令,并仔细阅读每个命令显示的所有帮助页面。

  • echo /?
  • for /?
  • if /?
  • md /?

【讨论】:

  • Mofi,非常感谢您的回复。它工作得很好!正如您所建议的,我确实使用了 /tifc 命令来压缩组合的 tiff。谢谢!
猜你喜欢
  • 1970-01-01
  • 2019-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多