AcroExch.AVDoc: SetTextSelection メソッド

TOP > AcroExch.AVDoc > SetTextSelection      [...]


説明

PDFドキュメントの指定範囲(四角形)をテキスト選択します。

画面に見える位置とは限りません。

 

形式

VARIANT_BOOL SetTextSelection(LPDISPATCH iAcroPDTextSelect);

 

引数

  1. 第1引数(LPDISPATCH iAcroPDTextSelect) :
    AcroRectオブジェクト(Top,bottom,Right,Left)

 

戻り値

  • -1 : 成功
  • 0 : 失敗。PDFドキュメントがOpenされてないか、PDTextSelectオブジェクトがNullの時

 

動作するバージョン

Version Adobe
Acrobat
備考
4
-
Acrobat 4.0    ※Windows 98SE + Excel 2000
5
-

Acrobat 5.0.5
6
-

Acrobat 6.0.3 Pro
7
-
Acrobat 7.0.9 Pro
Acrobat 7.1.4 Pro
8
OK
Acrobat 8.1.2 Pro
9
-
Acrobat 9.3.2 Extended
10
-
Acrobat X (10.1.8) Extended
11
-
Acrobat XI (11.0.04) Extended
  • OK = 動作する。
  • NO = 動作しない。 戻り値が0を返す。
  • - = 未確認。

 






サンプル:ExcelのVBA

説明:PDFドキュメントの指定範囲(四角形)をテキスト選択します。

  • F8キーでステップ実行しながら動作確認する。
  • 事前に参照設定をする。

 

Sub AcroExch_AVDoc_SetTextSelection()

    Dim objAcroApp      As New Acrobat.AcroApp
    Dim objAcroAVDoc    As New Acrobat.AcroAVDoc
    Dim objAcroPDDoc    As Acrobat.AcroPDDoc
    Dim objAcroPageView As Acrobat.AcroAVPageView
    Dim objAcroRect     As New Acrobat.AcroRect
    Dim objPDTextSelect As Acrobat.AcroPDTextSelect
    Dim lRet            As Long     '戻り値
    Const lPageNumber   As Long = 2 'ページ番号
  
    'Acrobatアプリケーションを起動する
    lRet = objAcroApp.Show
    'PDFファイルを開いて表示する
    lRet = objAcroAVDoc.Open("E:¥Test01.pdf", "")
    'PDDocオブジェクトを取得する
    Set objAcroPDDoc = objAcroAVDoc.GetPDDoc()
    'AVPageViewオブジェクトを取得する
    Set objAcroPageView = objAcroAVDoc.GetAVPageView()
    '指定ページ(4頁)に移動します。※0が開始頁
    lRet = objAcroPageView.Goto(lPageNumber)
    
    '選択を示す長方形を作成する。頁左下部を起点。
    objAcroRect.Top = 400       '上
    objAcroRect.bottom = 100    '下
    objAcroRect.Right = 300     '右
    objAcroRect.Left = 100      '左
  
    '該当ページのobjAcroRectで指定された範囲の
    'PDTextSelectオブジェクトを取得する
    Set objPDTextSelect = _
        objAcroPDDoc.CreateTextSelect(lPageNumber, objAcroRect)
    If objPDTextSelect Is Nothing Then
        MsgBox "テキストが選択出来ませんでした", _
        vbOKOnly + vbCritical, "実行エラー"
        GoTo Skip_Test_AVDoc_SetTextSelection
    End If
    'テキストを選択状態にする
    lRet = objAcroAVDoc.SetTextSelection(objPDTextSelect)
    'テキスト選択状態を見やすい位置表示にする
    lRet = objAcroAVDoc.ShowTextSelect()
    
Skip_Test_AVDoc_SetTextSelection:

    'PDFファイルを保存しないで閉じます
    lRet = objAcroAVDoc.Close(1)

    'Acrobatアプリケーションを終了する
    lRet = objAcroApp.Hide
    lRet = objAcroApp.Exit
    
    'オブジェクトを強制開放する
    Set objPDTextSelect = Nothing
    Set objAcroPageView = Nothing
    Set objAcroRect = Nothing
    Set objAcroPDDoc = Nothing
    Set objAcroAVDoc = Nothing
    Set objAcroApp = Nothing

End Sub

 

補足

  • 事前にobjPDTextSelectオブジェクトがNullかのチェックが必要です。
  • テキスト選択状態にするだけであって、PDFドキュメントの表示位置によっては、そのテキスト選択状態が見えるとは限りません。見えるようにするには、ShowTextSelectメソッドを次に実行する必要があります。

 

動作確認環境

  • WindowsXP Pro(+ SP3) +
    Acrobat 8.1.2 Pro + Office 2003 + MicrosoftUpdate

 

戻る


キーボード

ブラウザ画面の文字サイズを変更するショートカットキー

  1. [ CTRL ] + [ + ]  :  文字を大きく
  2. [ CTRL ] + [ - ]  :  文字を小さく

Shortcut Keys

  1. [ CTRL ] + [ + ]  :  Up the font size
  2. [ CTRL ] + [ - ]  :  Down the font size

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


出来るだけ早く返答する様には心がけています。
が、遅くなる時もありますのでご了承ください。


SAMURAI Plugin

コメントをする時は出来れば以下もお願いします。

  • OS名 バージョン
  • Acrobat バージョン
  • ツール(Excel等) バージョン
コメントにサンプルコードを入れるとエラーになる場合が有ります。その時はコードの前後に <code> ・・・</code> タグを入れてください。