3つのフォルダがあります。
Folder 1
Folder 2
Folder 3
各フォルダーに5つのPDFファイルがあります。
Folder 1
file1.pdf
file2.pdf
Folder 2
file1.pdf
file2.pdf
Folder 3
file1.pdf
file2.pdf
各フォルダーに、これら2つのファイルを組み合わせたファイルを作成します。
Folder 1
binder.pdf
Folder 2
binder.pdf
Folder 3
binder.pdf
何か案が?手動で行うように指示しないでください。このケースはあなたに私の問題を説明するためのものです。何百ものフォルダがあると思います。 :)たぶん、Adobe Acrobatの代わりに別のツールを使用できますか?
これは、短いバッチファイルとpdftk.exe(GUIバージョンの pdftk Builder ではありません)で実行できます。
何もインストールする必要はありません。
準備
新しいテキストファイルを作成し、次のコードを貼り付けます
@ echo off setlocal enabledelayedexpansion FOR %% A IN(%*)DO(set command =!command!%% A) pdftk.exe% command%cat output "%〜dp1binder.pdf"
使用方法
新しいbinderPDFが作成され、選択したすべてのPDFが1つにマージされます
Update:生成されたPDFのファイル名として現在のフォルダー名を使用するバージョン
@echo off
setlocal enabledelayedexpansion
:: Concat all paths fromselected files and save it as command
FOR %%A IN (%*) DO (set command=!command! %%A)
:: Take path from first selected file and save it as path
set path=%~dp1
echo %path%
:: Check if a trailing slash is present. If yes, remove it
IF %path:~-1%==\ SET path=%path:~0,-1%
:: Get last folder from path
FOR %%F in ("%path%") do (set lastFolder=%%~nxF)
:: Call pdftk, pass on command. use lastFolder as filename
pdftk.exe %command% cat output "%path%\%lastFolder%.pdf"
Linux(またはMac、またはそれがインストールされている任意の環境)を使用している場合は、ghostscriptというコマンドラインツールを使用してそれらを組み合わせることができます。
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=combinedpdf.pdf -dBATCH file1.pdf file2.pdf file3.pdf
以下を使用して、現在のフォルダー内のすべてのファイルを結合することもできます
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=combinedpdf.pdf -dBATCH *.pdf
Ghostscript here をダウンロードできます。 Windowsバージョンもありますが、テストしていません。
上記のソリューションをうまく使用しました。ただし、私のシステム(Windows 7 64ビット)では、コードはそのままPDFを(見かけ上)ランダムな順序で追加します。ファイル名のアルファベット順ではありません。
ファイルをアルファベット順に追加するには、sort-objectパラメーターをDIR(別名Get-ChildItem)コマンドに追加する必要があります(ファイル名/アルファベット順がデフォルトであるため、sort-objectはここではパラメーターを取りません)。
dir $inputfolder -r -include *.pdf -exclude $outputfile | sort-object | group DirectoryName % {& $PDFtk $.group CAT OUTPUT "$($.Name)\$outputfile" verbose}
01.pdf 02.pdf .. 10.pdfではなく1.pdf 2.pdf ... 10.pdfなどの形式のファイル名を持っている人も、このバリエーションを試してみたい場合があります。
pdftk *?.pdf *??.pdf *???.pdf *????.pdf cat output out.pdf
おそらく、バッチシナリオを使用する方が良いでしょう。すべてのPDFファイルを作成し、xxxx.abcdef.pdfとして収集します。
最初の部分は、いわゆるバッチタグです。 2番目の部分はファイル識別子(ファイル名)です。それぞれの背部のタグは長さと値が似ています。ファイルの名前はポイントの後に来ます。
たとえば、最初のバッチは1111.3425.pdf、1111.76501.pdfなどで構成されます。 2番目のバッチは22222.1432.pdf、22222.4398などです。他のバッチについても同様です。
次に、何千ものファイルを処理できる自動マージソフトウェアを使用して、バッチごとに個別のマージを作成できます。私はこれを見つけました Dysprosium コマンドラインやバッチスクリプトを必要としないフリーソフトウェア。ポータブルJARファイルとしてダウンロードできます。さまざまな自動シナリオがあります。 1つはこの回答でタグ付けとして説明されており、もう1つは必要なフォルダとして分離されています。
ハードウェアによっては、何千ものファイルを事前に定義されたバッチにバッチマージできます。
新しいオンラインAdvanced PDFと呼ばれる操作ツールSej-daがまだベータ版であり、無数にありますのPDF関数(複数のpdfをマージする機能を含む)。無料であり、ニーズを十分に支援できます。
その機能の簡単なレビューは、わずか2週間前にリビジョン3によって実行されました。
私はこのかなり長いコマンドラインを書きました
tree -fai . | grep -P ".pdf$" | xargs -L1 -I {} dirname {} | uniq | xargs -L1 -I {} bash -c 'cd "$0" && pdftk *.pdf cat output binder.pdf' {}
しかし、それは仕事をします、私はそれをテストしました、それはあなたが持っているフォルダのいくつのレベルでも働きます。フォルダ構造のルートで実行することを確認してください。
これにはpdftk
とtree
が必要であり、Ubuntu Linuxではaptを使用してインストールできます。
Sudo apt install pdftk tree
Macを使用している場合は、Automatorスクリプトを作成してこのタスクを実行できます。フォルダーアクションとして作成し、そこにPDFをドロップして、それが発生するのを確認します。どのように見せたいかは、Macを実行していますか?
PDFMerge を試してください。ただし、しないでください各ファイルを1つずつ選択する必要がある初期フォームを使用します。代わりに、サイトがJavaインストールをチェックするのを待ってから、「PDFMergeを試すJavaアプレット」リンクをクリックしてください。アプレットがロードされて実行し、Choose filesボタンをクリックすると、複数のファイルを選択できます(1つのファイルにマージするため)。
マージは非常に高速で、何もWebサイトにアップロードされないため、多数のファイルを処理できます。 Javaインストールを使用して、コンピュータ自体ですべてが行われます。
PS:複数のフォルダに単一のPDFファイルを作成するようにカスタマイズできるオフラインソフトウェアを探している場合は、申し訳ありません。