JPEGをフォルダーからPDFにバッチ結合する方法


18

画像が入った約500個のフォルダーがあります。これをバッチ変換して、すべての画像をページとして含む.pdfファイルを取得する方法はありますか?

編集:

500個のPDFが作成され、それぞれに含まれるフォルダーの名前があり、それぞれにページとして画像が含まれています。


3
何のOS?CLIまたはGUIツールが必要ですか?ファイルの名前は同じですか、一貫性があり、順序は重要ですか?
ジャーニーマンオタク

Mac OS X、どんな種類のツールでもかまいませんし、Acrobat Proを所有していますが、そのオプションが見つかりません。ファイルはアルファベット順に整理されており、その順序を維持したいと思います。ありがとう
スカ

回答:


16

OS Xには、画像処理とPDF作成を自動化するためのツールがいくつか組み込まれています。

Automator.appを開いて、新しいアプリケーションを作成します。

Automator.app

左ペインから右ペインにアクションをドラッグして、以下に示すように変更します。

第一歩

  • [ 繰り返し ]オプションを有効にしてフォルダーの内容取得すると、サブディレクトリ内からでもすべてのファイルが取得されます。

  • 画像からの新しいPDFは、各ページが1つの画像で構成される1つのPDFファイルをデスクトップに作成します。

アプリをどこかに保存します(例:/ Applicationsまたはデスクトップ)。「Image.appからPDFを作成」などの適切な名前を付けます。次に、アイコン上でフォルダをドラッグできます。ワークフローに任せてください。


上記は、すべての画像に対して1つのPDFファイルを作成します。フォルダーごとに1つ必要な場合は、さらに複雑になります。

最初に、Dispense Items Incrementallyアクションが必要です。それをインストールします。次に、Automatorを再度開き、新しいワークフロー(アプリケーションではない)を作成します。

便宜上、ここからワークフローダウンロードできます。リンクが破損した場合は、次のように変更してください。

ワークフローのスクリーンショット

または、テキスト形式で:

  • 選択したファインダーアイテムを取得
  • アイテムをインクリメンタルに分配する(以前にインストールしたもの)
  • 変数の値を設定して、現在のフォルダーを記憶します
  • フォルダの内容を取得し、画像を取得します
  • PDFを作成するための画像からの新しいPDF。ここで、下部の[変数]パネルから変数を取得し、[出力を保存...]フィールドにドラッグします。これにより、PDFが属するフォルダーに作成されます。静的ファイル名を設定する以外に、ファイルの名前を変更する簡単な方法はありません。ただし、Finderアイテムの名前変更アクションを追加して設定することもできます。
  • ループ、開始から開始し、次のフォルダーで実行します。確認を求める部分を無効にすることができます。

ワークフローとして保存します。次に、実行方法を示します。Finderでフォルダーを選択します。

ファインダーのスクリーンショット

次に、Automator.appに移動し、右上隅の[ 実行 ]をクリックします


500個のフォルダーでは、時間がかかる場合があります。特に高解像度の画像では、PDFが巨大になる可能性があります。ただし、最初に小さい選択で試してから、ワークフローが完了するまで実行することができます。


しかし、すべての画像が1つのPDFになりました。含まれるフォルダーごとに個別のPDFを作成することはできますか?Automatorで何ができるのかさえ知りませんでした。
スカ

@Ska更新された回答をご覧ください。それがあなたのために働くことを願っています。これはAutomatorでトリッキーになる場所であり、AppleScriptまたはAppleScriptと組み合わせた単純なBashスクリプトに移行することを考える場所です。
slhck

心配しないで、後でbashスクリプトで名前を変更します。ただし、Get Folder Contents(フォルダー名)の出力を渡して変数を作成するアプリケーションを作成することはできませんか?
スカ

@Skaはい、それが変数の設定方法ですが、PDFの出力名で変数を使用することはできません。少なくとも簡単な方法ではありません。
slhck

それは素晴らしいワークフローです。これについて助けてくれてありがとう。私は先週、National Geographicのすべての号のJPGを時間の初めに解読するのに費やしており、250,000ページすべてをPDFに変換してOCRして検索可能にする方法が必要でした。あなたは私に大量の肉体労働を救っただけです。スクリプトで行った変更の1つは、デフォルトの0分よりも長いタイムアウト期間を設定することでした。それ以外の場合、作成されたPDFは1つだけです。私は手動のループでそれをしましたが、それは自動化されたプロセスにあまりにも多く関与しています。また、それらを単一のフォルダーに保存するように指示しました

22

OS Xで

自作それはImageMagickのをインストールするためのスナップです。

brew install imagemagick

convert *.jpg output.pdf

結果のPDFが少し大きすぎる場合は、次を試してください:

convert -quality 60 *.jpg output.pdf

Linux、Unix、Windows

もちろん、ImageMagickはapt-get install imagemagick、DebianやUbuntuなどの他のUnixシステムにもインストールできます。また、Windows上でもGNU / CygwinまたはChocolatelyを使用します。


3
プレビューでそわそわするよりもずっと速い!
DK_

1
+1これと受け入れられた答えとの比較は、この種の状況におけるコマンドラインツール(特にimagemagick)の力を本当に示していると思います!
ビルチートハム14

1
これはWindowsでも可能です。chocolatey(Windowsのパッケージマネージャー)を使用している場合:choco install imagemagick.tool、@ KasperSourenの「変換」コマンドに従います。
ギスカードビアンビー


2

最適なソリューションでこれを実行するほとんどすべてのシステムで、ImageMagickを使用できます。* nix、Mac、およびWindowsで使用でき、ワイルドカード(別名ファイル名グロビング)と入力ファイルのリスト(@ ImagesToProcess.txtなど)の指定、高度なファイル指定オプション、強力なコマンドラインなどの両方をサポートしています。


また、GhostScriptと、依存関係管理の数を知っている人とプログラミングを行う必要があります。それを行う簡単なツールがあると思います。結局、ユースケースはかなり単純です。
スカ

ImageMagickとGhostScriptの両方がインストールされており、ImageMagickがGSを検出できる限り、スクリプトを簡単にするIMコマンドラインを使用することができます。これは、ファイル名のグロビングがファイルを正しい順序で処理することを前提としていますが、そうでない場合は、とにかく複雑になります。Windowsの場合、それらを連携させるための1つのガイド:stackoverflow.com/questions/3243361/…。それでも、他の答えは、Macのためのより良いです
fencepost

IM、fencepostのすばらしいヒントをありがとう。毎日何か新しいことを学びます。元の質問については、最初にslhckの解決策を試します。
スカ

どういたしまして。A)あなたがMacを使用しており、B)MacでのGhostscriptサポートが何らかの理由で明らかに弱い-または少なくともWindowsと* nixに追いついていないことに気づかずに投稿しました。
フェンスポスト
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.