PDFファイルのページを並べ替えるためにブックマーク/概要を使用していますが、出力ファイルの元のファイルpdftk
のブックマークが失われます。
私の注文はですpdftk in.pdf cat 1-22 43 23-42 44-end output out.pdf
。
ページの順序を変更するときにブックマークを維持する方法を知りたいです。
ベストアンサー1
これが可能な解決策です。ただし、ニーズに合わせて調整する必要があります。
この例では、PDFの最初のページを削除してから正しい場所を指すようにブックマークを更新する必要がありました。
in.pdfから1ページを削除します。
pdftk A=in.pdf cat A2-end output temp.pdf
in.pdfからin.infoファイルを作成します。
pdftk in.pdf dump_data > in.info
私の場合はページを削除する予定なので、in.infoを修正する必要があります。
したがって、ブックマークが正しいページを指すようにするには、BookmarkPageNumberを1ずつ減らす必要があります。
PHPコード:
$file = "in.info"; $data = file_get_contents($file); foreach (explode("\n", $data) as $row) { $tmp = explode(": ", $row); if ($tmp[0] == "BookmarkPageNumber") { if ($tmp[1] != "1") $tmp[1]--; echo $tmp[0].": ".$tmp[1]."\n"; } else { echo $row."\n"; } }
最終的なout.pdfを作成します。
pdftk temp.pdf update_info in2.info output out.pdf
pdftk 2.01を使用してDebianでテストされました。