-
はじめに
-
JPedalを実行する
-
JPedalの使い方
-
機能
-
JPedal Viewer
- JPedalのBase ViewerでPDFを見る
- カスタマイズ可能なビューアでのPDFファイルを表示する
- JavaのコードからPDF Viewerの機能にアクセス
- Java PDF Viewerでユーザーインターフェイスをカスタマイズ
- ビューアにオブジェクトを描画
- JavaアプリケーションにPDFビューアを追加する方法
- ビューアの機能をカスタマイズする
- JPedalインスペクタでPDFファイルの内容を検査
- PDFビューアの通知ポップアップを独自のものに置き換える
- JPedal のアクセシビリティオプション
- Java PDF Viewerを使ってポートフォリオファイルを表示
- Java PDF Viewerでテキストを選択
- JPedal ViewerはJavaFXで使用できますか?
- JPedal ViewerはSWTで使用できますか?
- JPedal ビューアでダークモードを設定する
- 線の太さを非表示にする
- すべての記事を表示 ( 1 ) 記事を折り畳む
-
テキスト関連
-
画像への変換
-
画像の抽出
-
PDF画像変換のWebサービスAPI
-
フォームについて
-
PDFの注釈(アノテーション)
-
PDFの操作
-
印刷について
-
メタデータ
-
フォントについて
-
JPedalをクラウド上で実行する
-
アップデート情報
< 戻る
印刷
Java PDF Viewerでテキストを選択
作成日2024年1月12日
最終更新日2024年1月12日
JPedal APIには、ユーザーがページ上に表示されるハイライトを制御するためのメソッドが含まれています。これはPdfDecoderInt.getTextLines()でアクセスできるTextLinesクラスで処理されます。
ハイライトの追加
ビューア内でマウスを使ってテキストをハイライトする以外に、TextLines.addHighlights(int[][] highlights, boolean areaSelect, int page) を使ってプログラムでハイライトを追加することもできます。3つの入力機能は以下のとおりです。
- highlights – ハイライトを定義する整数配列の配列で、それぞれ x、y、width、height の順に 4 つの値を含みます。
《注》ページの左下を原点(0,0)として扱うPDF座標が使用され、Java座標(原点は左上)は使用されません。JavaのPDFビューアで表示されるPDF座標を簡単に確認できます。 - areaSelect – ハイライト領域をハイライトする領域として使うか (true)、連続テキストを選択する始点と終点として使うかを定義するブーリアン値。
- page – ハイライトを追加するページのページ番号を表す整数。ハイライトは、ページが変わったり、マウスをクリックしたり、検索したり、その他のマウス操作をしたりするたびに削除されることに注意しましょう。新しいハイライトが追加されると、TextLines.hasHighlightAreasUpdated() は、後述のメソッドでハイライトが返されるまで true を返します。
ハイライトの取得
ハイライトは2つのメソッドのいずれかから返されます。
- TextLines.getAllHighlights()を使えば、現在設定されているすべてのハイライトを、ページ番号をキーとしてMapとして取得することができます。
- TextLines.getHighlightedAreasAs2DArray(int page) を使えば、指定したページのすべてのハイライトを得ることができます。
マップと TextLines.getHighlightedAreasAs2DArray(int page) が返す整数配列は、ハイライトを定義する整数配列の配列であり、それぞれが x,y,width,height の順に 4 つの値を含んでいます。
《注》PDF の座標は、 ページの左下を原点 (0,0) と し て扱い、 Java の座標 (原点は左上) は用いません。Java PDFビューアで表示されるPDF座標を簡単に確認できます。
これらのメソッドを呼び出すと、TextLines.hasHighlightAreasUpdated() は false を返すようになります。
ハイライトカラーを選択する方法
ハイライトのカラーは2つの方法があります。半透明のカラーをテキストの上に重ねる方法と、ハイライト部分の色を反転させる方法です。
どちらのオプションも、PdfDecoder.modifyJPedalParameters(Map<Integer,Object> values)を使って設定することができます。
- マップのキーとしてJPedalSettings.TEXT_HIGHLIGHT_COLOURを使用し、RGB値の整数表現(Color.getRGB()で取得可能)でハイライトの色を設定します。
Color color = new Color(0, 255, 0); Map mapValues=new HashMap(); mapValues.put(JPedalSettings.TEXT_HIGHLIGHT_COLOUR, Color.getRGB()); PdfDecoder.modifyJPedalParameters(mapValues);
- マップのキーとしてJPedalSettings.INVERT_HIGHLIGHTを使用し、ブーリアン値でページカラーを反転するようにハイライトを設定します。
Map mapValues=new HashMap(); mapValues.put(JPedalSettings.INVERT_HIGHLIGHT, Boolean.TRUE); PdfDecoder.modifyJPedalParameters(mapValues);