PDFを修復
開けなくなったPDFを救出します。ファイルの索引を作り直し、文書をまったく解析できない場合でも、バイト列の中でまだ読めるものはすべて復旧します。何も保存されません。
- 保存しません
- 順番待ちなし
- 登録不要・透かしなし
使い方
壊れたPDFを追加
開けないファイルをドロップします。ほかのアプリで開けないファイルでもかまいません。
修復
ファイルの索引を作り直します。解析できない場合は、オブジェクトを1つずつ拾って再構築します。
確認してダウンロード
何ページ戻ったか、どんな処理をしたかが表示されたあと、修復したファイルをダウンロードできます。
たいてい壊れているのはどこか、そして2つの復旧方法
開けないPDFのほとんどは、意味のある形では壊れていません。PDFの末尾には相互参照テーブルがあります。ファイル内のすべてのオブジェクトのバイト位置を記録した索引で、閲覧ソフトは何を探すにもこれを使います。この索引が壊れると、中身はすべて揃っているのに何も見つけられなくなり、まったく無傷の文書が開けなくなります。ダウンロードの中断、途中で止まった保存、アプリのクラッシュ、位置情報を更新しないソフトによる編集、改行コードを崩してしまった転送。どれも索引を壊しますが、内容には手を付けていません。
最初の処理は、まさにこの点を突きます。ファイルを寛容に解析し、記載された位置が実際の内容と食い違っていればそれを無視して、正しい索引、正しいストリーム長、きれいなトレーラーで新たに書き出します。ほとんどのファイルはこの方法で復旧でき、処理も速く、ページには何の変更も加えません。結果は、使える目次を付け直したあなたの文書です。
ファイルをまったく解析できない場合は、2つ目の処理がデスクトップの復旧ツールと同じことを行います。生のバイト列を最初から最後までスキャンしてオブジェクトのヘッダーを探し、まだPDFのオブジェクトらしく見えるものをすべて集め、ファイルの自己申告ではなく実際に存在するものから索引を作り直します。どちらの処理を行ったかはページに表示されます。これは重要な情報です。再構築したということは元の構造が読めなかったということで、結果を信用する前に一度確認する価値があります。
どちらの処理も、存在しないデータを作り出すことはできません。それはどのツールにも不可能です。ダウンロードが60%で止まっていたら、残りの40%のページはファイルの中に存在しません。復旧で見つかるのは届いたページまでです。圧縮ストリームの内部が壊れていれば、そのストリームは展開できず、それが描いていたページは白紙で戻りますが、前後のページは問題ありません。文書の一部を取り戻せれば、ここではそれが普通の上出来な結果です。途中で切れたコピーを修復するより、元のファイルをもう一度入手するほうが常に確実です。
ほかの目的には
この用途の定番ツールはqpdfで、最初の処理と同じことをより徹底的に行います。qpdf --replace-input damaged.pdfは正しい索引でファイルを書き直し、寛容な解析ではつまずくことのある暗号化文書、オブジェクトストリーム、リニアライズされたファイルにも対応します。mutool clean -ggg in.pdf out.pdfはさらに踏み込み、ページツリーを作り直して参照されていないものを破棄します。どちらも無料で、ブラウザのタブでは扱えないほど大きなファイルでも動作し、何を修正する必要があったかを教えてくれます。
オブジェクトのスキャンしか手がないほどひどく壊れたファイルには、Ghostscriptがいちばん粘り強いことがよくあります。gs -o repaired.pdf -sDEVICE=pdfwrite broken.pdfは索引を作り直すだけでなくページの内容を解釈するため、ほかのツールが諦めたページを再構成できることがあります。その代わりにすべてを書き直すので、出力は生き残った部分とバイト単位で同一ではなくなります。
よくある質問
実際には何を修復するのですか?
「壊れた」PDFのほとんどは、構造そのものは無傷で、相互参照テーブル(各オブジェクトの位置を示す索引)だけが壊れています。ダウンロードの途中切れ、保存の中断、不具合のある作成ソフトが主な原因で、内容はまだ残っているのに閲覧ソフトはファイルを開きません。この索引を作り直せば、文書はそのまま元に戻ります。
ファイルをまったく解析できない場合は?
その場合は生のバイト列からオブジェクトのヘッダーを探し、まだ残っているものをすべて集めて、そのまわりに新しい索引とトレーラーを書き込みます。デスクトップのツールが行う復旧と同じ処理です。結果はお渡しする前にもう一度開いて確認するので、それでも読み込めないファイルはダウンロードではなく報告の対象になります。
壊れたファイルはどこかに保存されますか?
いいえ。復旧のためのスキャンでも何も保存されません。どこにも送信されません。
ダウンロードの途中で切れたファイルも復旧できますか?
多くの場合はできます。ただし、データが途切れた地点までです。ダウンロードされなかったページを作り出すことはできないので、文書の全体ではなく前半部分だけが戻ることもあります。
パスワード付きのPDFも修復できますか?
修復中は暗号化を無視するため、保護されたファイルは、パスワードもお持ちの場合に限って読める状態で戻ることがあります。パスワードの解除には、別途PDFパスワード解除を使ってください。
ご注意: 修復で復旧できるのは、ファイルにまだ残っているものだけです。本当に失われたデータを再現することはできません。途中で切れた文書なら、切れた位置より後のページは完全に失われています。圧縮ストリームの内部が壊れたファイルは、一部のページが白紙の状態で復旧されることがあります。
このツールをあなたのサイトに設置
ブログ、授業のページ、ヘルプ記事などに無料で設置できます。コードを1つ貼り付けるだけで、訪問者がそのページ上でツールを使えるようになります。