fbpx

PDFの目次(しおり/ブックマーク)を移行する方法

OCR処理を行ったり、ページサイズを変更することで、消えてしまうPDFの目次(しおり/ブックマーク)データをそのリンクもそのままに移行する方法をJPedalを使って簡単なコードで実現する方法を解説します。
PDFの目次(しおり/ブックマーク)を移行する方法

意外に難しいPDFの目次(しおり/ブックマーク)データの移行

紙のドキュメントをスキャナーで処理しPDFファイルにした、テキストがデジタルでは無いPDFのドキュメントには、よく目次(しおり/ブックマーク)が付けられていることがあります。最近ではテキストをOCR(Optical Character Recognition/Reader、オーシーアール、光学的文字認識)を使って文字をデジタル化することも多くなってきました。

ところがPDFはOCR処理をしたり、PDFのページサイズを変更したりすると、新たにPDFファイルが書き出されるために、ほとんどの場合は目次がなくなってしまいます。

目次テキストは書き出せても、リンクが失われてしまう

Adobe社のAcrobatやPDFツールを使うことで、目次のテキストデータはPDFから書き出すことができ、新しいPDFへインポートすることはできます。ところが肝心な目次を押してリンク先へ飛ぶ機能は失われてしまうので、また、手作業で一つ一つリンクを設定しなければなりません。

1つや2つのファイルであれば手作業でも可能ですが、何百のファイルやページ数が数百ページあると手作業でやり直すのは非常に時間がかかり効率的ではありません。

JPedalを使えば簡単にPDFの目次(しおり/ブックマーク)を移行できます

JPedalは、開発者が簡単にJavaでPDFファイルを表示、変換、印刷、解析できるようにするJava SDKです。JPedalを使うことで、元のPDFの目次のデータを抽出し、新しいPDFへ目次を書き込むことが可能になります。目次はリンクも元のPDFと同様に新しいPDFへ移行しますので、数百ページのPDFの目次(しおり)の移行が簡単に行えます

Javaを使って目次(しおり/ブックマーク)をコピーするサンプルコード

まず、目次をDocumentオブジェクトに読み込みます:

				
					// 読み込み
final ExtractOutline extract = new ExtractOutline("source.pdf");
extract.openPDFFile();
final Document outlines = extract.getPDFTextOutline();
extract.closePDFfile();

				
			

そして、Documentオブジェクトを出力先PDFに書き込みます:

				
					// 書き込み
final OutlineWriter writer = new OutlineWriter("destination.pdf", outlines);
writer.writeOutline();
				
			
コマンドラインを使った目次(しおり/ブックマーク)の移行方法のサンプルコード

JPedalは、PDFファイル間でしおりをコピーする便利なコマンドラインメソッドも提供しています:

				
					// 読み込み
final ExtractOutline extract = new ExtractOutline("source.pdf");
extract.openPDFFile();
final Document outlines = extract.getPDFTextOutline();
extract.closePDFfile();

				
			

JPedalはPDFをシステムで扱う時に、非常に役立つJavaのSDKです。

JavaのPDFビューア、PDFファイルを画像に変換、PDFファイルの検索、PDFファイルの印刷、画像の抽出、テキストの抽出、メタデータの抽出、アノテーションの編集と追加などが数行のコマンドで実行できます。

無料のトライアルも提供していますので、ぜひ一度お試しください。

JavaでPDFを扱う開発には多機能・高性能な開発ライブラリー(SDK) JPedalがきっとお役に立つことと思います。JPedalは無料で試用していただけます。まずはご自身の環境で機能や品質をご確認のうえ、ぜひ導入をご検討ください。

取り扱い製品について

PDF規格は複雑なうえに、過去からの積み重ねで非常にわかりにくくなっています。PDF連携ソフトウェアの開発では、英国IDRsolutions 社のPDF関連製品(変換ツール、ライブラリ、ソフトウェア部品など)を、ぜひご検討ください。
IDRsolutions はPDF関連ツールを20年以上に渡って開発・提供し続けています。PDF分野の老舗企業として、世界中の企業や公的機関にご活用いただいています。
日本では株式会社インターワークがIDRsolutions社の日本総代理店として取り扱っていますので、お気軽にご相談ください。

VIEWING PRODUCTS
BuildVu

PDFをHTML5やSVGに変換

PDFのフォームをHTML5に変換

SDK PRODUCTS
JPEDAL

PDFファイルの表示、変換、抽出

多くの画像ファイル形式を読み書き、変換、操作、処理

    Facebook
    Twitter
    Email
    公式ブログロゴ

    製品に関する記事や開発者のブログ

    robot

    PDFソフトウェアの開発に役立つ情報をメールでお届けします

    PDFに最適な圧縮形式は?

    Portable Document Format(PDF)には、ファイルサイズと品質の最適なバランスを実現するための複数の圧縮オプションが用意されています。圧縮の選択は、PDF内のコンテンツの種類や希望する出力品質など、さまざまな要因によって異なります。この記事では、こうした要素についてご紹介します。

    LZW圧縮とは?

    LZWは可逆データ圧縮です。Abraham Lempel、Jacob Ziv、Terry Welchによって開発されたLZWアルゴリズムは、動的に作成される辞書を使用してデータ文字列をコードに変換します。LWZは、GIF画像形式、特定のTIFF画像形式、PDFファイルで一般的に使用されています。

    CCITT圧縮とは?

    CCITTは、2色の画像(通常は白黒)を圧縮するために使用される可逆圧縮フォーマットです。これは、TIFF圧縮に使用されます。

    JavaでマルチTIFFファイルを表示する方法

    TIFF(タグ・イメージ・ファイル・フォーマット)ファイルは、複数の画像を含むことができます。これがマルチTIFFファイルと呼ばれるものです。この記事では、JavaでマルチTIFFファイルを読み込んで表示する方法を紹介します。

    MENU
    PAGE TOP
    ロボット
    PDFソフトウェアの開発に役立つ情報をメールでお届けします