アップロードせずにPDFを結合
結合したい順序でPDFを追加し、ファイル選択で順序が崩れていればドラッグで並べ直して、結合を実行します。pdf-libがWeb Workerの中で各ページのオブジェクトグラフをローカルに再構築するため、ページ数の上限も透かしもアップロードもありません。残る上限はメモリだけです。ファイルあたり100 MB、合計250 MBです。
アップロードせずにPDFを結合とは
人が結合するのはチラシのようなものではまずありません。署名済みの契約書とその添付資料、1か月分の給与明細、パスポートのスキャンとその裏付けとなる書類、住宅ローン申請のための1年分の銀行明細。まさに他人のサーバーに預けたくない類の資料です。だからこそ「PDF結合 無料 オンライン」系の検索結果の多くは、料金を明かす前にアップロードを求めてくるのです。
ここで無料なのは構造的な理由からで、販促ではありません。結合はブラウザ内で動作します。Web Workerに読み込まれたpdf-libが、各ページを依存関係グラフ全体ごと新しいドキュメントへコピーするため、帯域を支払うサーバーも、それを賄うための待ち行列も存在しません。転嫁するコストがないということは、ページ数の上限も1日の制限もなく、有料プランへ誘導するための透かしを1ページ目に押し込むこともない、ということです。
このページでは、結合結果が実際に使えるものになるかを左右する部分を扱います。ファイルを結合する順序、処理を経ても残るもの(ページの内容、注釈、フォームフィールド)と意図的に残さないもの(ブックマークのアウトライン)、結合後のファイルが入力の合計と一致することがめったにない理由、そしてデスクトップツールが依然として適切な選択であり続ける正直なケースです。
作業はすべてPDF結合ツール内で完結します。ファイルをドロップして順序を整えれば、結合はすでに開いているタブの中で実行されます。
オブジェクトグラフやクロスリファレンステーブルが初めてという方は、PDFの構造を解説したガイドで、結合が実際に何を書き換えるのかを確認できます。
順序こそが結合の要
ファイルはリストの上から下へ、並んでいる順に結合されます。並べ替え矢印があるのは、ファイル選択が意味を考慮しないためです。OSは通常ファイルをアルファベット順に返すので、「page-10」が「page-2」より先に、付録が契約書本体より先に並んでしまいます。結合する前にリストを確認してください。これは結合ツールへの苦情として最も多いもので、何かが間違っていた証拠はずっと後になって、ドキュメントの10ページ目あたりで初めて見つかります。
出力ファイル名は、無個性なmerged.pdfではなく最初のファイルに従います。contract-signed.pdfに添付2件を加えるとcontract-merged.pdfになり、半年後でもどの契約書のものかがわかります。
ページ数制限も透かしもない理由
他のサイトにページ数上限、透かし、1日の制限があるのは、結合するページごとにサーバーの帯域とストレージのコストがかかるからです。ここではそのコストを、自分のタブの中で自分のCPUが支払います。したがって、割り当てるものも、誘導したい有料プランも存在しません。残る制限は商用のものではなく物理的なものです。
- ファイルあたり100 MB、1回の選択あたり250 MBまで――結合の過程でPDFはメモリ上に何度も展開され、これを超えるとブラウザのタブが結合の途中で落ち、作業が失われます。そのような事態を起こさないよう、ツール側で受け付けを断ります。
- 1回の結合あたり100ファイルまで――月次明細なら1年分です。それ以上はリスト自体が扱いにくくなります。
- 暗号化されたPDFは受け付けません――パスワードで保護されたドキュメントは、パスワードなしでは読めません。パスワードがあれば先に解除してください。なければ、何も開けられません。
ブラウザとデスクトップ:正直な比較
どちらの列が常に勝つということはありません。日常的な結合――数百ページ未満の文書を数件――であれば、プライバシーと手間の点でブラウザが優れます。数ギガバイトのスキャンアーカイブや夜間の自動処理にはデスクトップツールが適切な道具であり、それ以外を装うのが、このページの不誠実な版になってしまいます。
| 観点 | ブラウザでの結合 | デスクトップアプリケーション |
|---|---|---|
| プライバシー | ファイルがマシンの外に出ない。DevToolsで検証可能 | ベンダーを信頼するか、完全オフラインのツールを使う |
| セットアップ | 不要――ただのWebページ | インストール、ライセンス、場合によってはアカウント |
| 超大容量のドキュメント | メモリが上限。1回の選択でおよそ250 MB | ディスクサイズのアーカイブでも問題なし |
| ブックマークのアウトライン | 結合されない――ドキュメントレベルの構造のため | 通常は正しく結合される |
| 自動化 | 手動・対話型 | スクリプト化、監視フォルダ、バッチ処理に対応 |
きれいに結合できるもの――意図的に結合しないもの
すべてのページは、フォント、画像、カラースペース、ベクターコンテンツといった依存関係グラフ全体ごとコピーされ、オブジェクト参照はすべて宛先ドキュメント向けに番号を振り直されます。ページの内容、ページサイズ、ページに属する注釈とフォームフィールドは、まったくそのまま残ります。ページと一緒に移動するからです。
ブックマークのアウトラインは話が別で、正直に言えば結合されません。アウトラインはルートが1つのドキュメントレベルの構造です。2つのドキュメントにはそれぞれ別のツリーがあり、それをつなぎ合わせると、誤ったページを指す宛先が生まれます。クリックするまで正しく見える壊れたアウトラインを出力するより、いっそ出力しない――ドキュメントレベルのAcroForm辞書と同じ方針です。アウトラインの保持こそが本当の要件なら、それは上の表のデスクトップの列の出番です。
ファイルサイズの意外な結果
2 MBと3 MBのPDFを結合しても、出力は5 MBになるとは限りません。たいていは少し小さく、時には目に見えて小さくなります。PDFにはページ以上のものが含まれています。過去の編集が残した未参照オブジェクト、増分保存による古いリビジョン、同じ埋め込みフォントの重複コピーです。結合では宛先ドキュメントを新規に書き出すため、共有リソースは1度だけ書き込まれ、無駄なデータは持ち越されません。逆に言えば、結合は圧縮ではありません――ページの内容は再エンコードされずコピーされる――ので、すでに無駄のないファイルはおおむね入力の合計サイズのまま結合されます。
よくある質問
ここで結合すると、ドキュメントはアップロードされますか?
いいえ。ファイルはpdf-libを実行するWeb Workerによって、お使いのブラウザのタブの中で読み込まれ、結合されます。アップロード先のエンドポイントは存在しません。確認するには、DevToolsを開いてNetworkパネルに切り替え、結合を実行してください。ドキュメントを運ぶリクエストは一切表示されません。このページのContent-Security-Policyはconnect-src 'self'を設定しているため、コードが試みてもブラウザ自身が外向きのアップロードを拒否します。
本当にページ数制限はないのですか?
人工的な制限はありません。他のサイトのページ数上限はサーバーの予算を守るためのものであり、この結合にはサーバーがありません。物理的な上限は、ファイルあたり100 MB、1回の選択あたり250 MB、100ファイルまでです。ドキュメントはメモリ上に何度も展開され、メモリが尽きたブラウザのタブは作業ごと落ちるためです。その代わり、ツールの方で丁寧に受け付けを断ります。
結合したPDFが、入力の合計より小さくなるのはなぜですか?
PDFにはページ以上のものが含まれているからです。未参照オブジェクト、増分保存で残った古いリビジョン、同じ埋め込みフォントの重複コピーは、新しく書き出される宛先ドキュメントには引き継がれません。共有リソースは1度だけ書き込まれます。編集と再保存を何度も繰り返したファイルなら、結合するだけで目に見えて小さくなることがあります。
結合後のファイルにブックマークやフォームフィールドは残りますか?
フォームフィールドと注釈は、ページに属しているものなら残ります。ブックマークのアウトラインは残りません。アウトラインはルートが1つのドキュメントレベルの構造であり、2つのドキュメントを結合すると、誤ったページを指す宛先が生じてしまうためです。見た目は完全なのにクリックすると誤動作するアウトラインを出力するより、何も出力しない方がましです。
パスワードで保護されたPDFを結合できますか?
直接はできません。ドキュメントにユーザーパスワードが設定されている場合、その内容は本当に暗号化されており、パスワードなしでは読めません。どのツールにも読めません。それ以外を謳うサイトは、嘘をついているか、あなたのファイルを解析サービスにアップロードしているどちらかです。パスワードがわかっているなら、まずPDFロック解除ツールで解除し、その結果を結合してください。
結合すると元のファイルは変わりますか?
いいえ。元のファイルは読み取り専用で、出力はダウンロードとして届く新しいドキュメントです。ブックマークやメタデータを含め、ソースファイルはディスク上に元のまま残ります。だからこそ、結合は出力を使わなければ簡単に元に戻せるのです。