マルチページTIFFを自動で分割したい

ある冊子の全ページをコピー機でスキャン(特定フォルダへTIFFで保存。ファイル名は連番)したのですが、

一部の見開きページだけが、マルチページTIFFとして保存されてしまいました。


これを、下記のように自動的に処理したいです。

・全て、単ページのTIFFにする

・上記で分けられたファイル名は、枝番の連番にする(例えば、1.tiff → 1-1.tiff / 1-2.tiff)


方法は、アプリケーションでもOSの機能を使用するのでも、いずれでも構いません(一つ一つ手作業でやるのでなければ良い)。

どなたかご教示いただければと存じます。よろしくお願いいたします。

MacBook Pro 13″, macOS 11.1

投稿日 2021/01/07 08:24

返信
スレッドに付いたマーク ランキングトップの返信

投稿日 2021/01/12 20:57

以下はマルチページ TIFF を分割する Automator ワークフローです。ワークフローを実行するとダイアログが表示されるので、TIFF ファイルを選択 (複数選択可) してください。


動作確認は Mojave 10.14.6。Big Sur は未導入なので確認できません。ダメな場合はご勘弁を。(tiffutil による枚数の取得のところが超手抜きなので、同コマンドのバージョンアップで期待通りに動かなくなる可能性があります)



ーーーーー


コードはこんな感じ。


AppleScript を実行

on run
    choose file of type "public.tiff" with multiple selections allowed
end run


ーーーーー


シェルスクリプトを実行

シェル: /bin/zsh    入力の引き渡し方法: 引数として


#!/bin/zsh

[[ $# > 0 ]] || { echo "usage: zsh $0 file1.tiff file2.tiff ..." >&2; exit 1; }

for f in "$@"; do
    c=$(tiffutil -info "$f" 2>/dev/null | grep -c '^Directory')
    [[ $c > 1 ]] || continue    
    for (( i = 0; i < c; i++ )); do
        n=$(printf '%03d' $(( i + 1 )))
        o="${f%.*}-${n}.tiff"
        if [[ ! -e "$o" ]]; then
            tiffutil -extract "$i" "$f" -out "$o" 2>/dev/null
            # echo "$o"
        fi
    done
done


返信: 6

返信はありません。

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

マルチページTIFFを自動で分割したい

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。