TOP > AcroExch.PDTextSelect > *
説明
テキスト選択状態を解除します。
形式
VARIANT_BOOL Destroy();
引数
- 無し。
戻り値
- 常に-1が返されます。
動作するバージョン
| 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ファイルの2ページ目の指定テキストを一旦選択状態にします。そして直ぐに解除します。
- 事前に参照設定をします。
- F8キーでステップ実行しながら動作確認します。
001 Private Sub AcroExc_PDPage_Destroy()
002
003 Debug.Print "AcroExc_PDPage_Destroy:" & Now
004 Dim objAcroApp As New Acrobat.AcroApp
005 Dim objAcroHiliteList As New Acrobat.AcroHiliteList
006 Dim objAcroAVDoc As New Acrobat.AcroAVDoc
007 Dim objAcroPDPage As Acrobat.AcroPDPage
008 Dim objAcroPDTextSelect As Acrobat.AcroPDTextSelect
009 Dim objAcroAVPageView As Acrobat.AcroAVPageView
010 Dim lRet As Long
011
012 'PDFドキュメントを開いて表示する。
013 lRet = objAcroAVDoc.Open("E:\Test01.pdf", "")
014 Set objAcroAVPageView = objAcroAVDoc.GetAVPageView()
015 '2ページ目に移動表示する。
016 lRet = objAcroAVPageView.Goto(1)
017 'ハイライトリストを作る。※「テキストのハイライト」では無い
018 '※10文字目から、50文字のハイライトリストを作る。
019 lRet = objAcroHiliteList.Add(10, 50)
020
021 '検索して見つかったページのAVPageViewオブジェクトを作成
022 Set objAcroAVPageView = objAcroAVDoc.GetAVPageView()
023 '検索して見つかったページのPDPageオブジェクトを作成
024 Set objAcroPDPage = objAcroAVPageView.GetPage()
025 '1文字単位で文字をHiliteListの範囲に従って
026 'PDTextSelectオブジェクトを作成する。
027 Set objAcroPDTextSelect = _
028 objAcroPDPage.CreatePageHilite(objAcroHiliteList)
029 'AcroPDTextSelectオブジェクトに従って、
030 '該当PDFページを選択状態にする。
031 lRet = objAcroAVDoc.SetTextSelection(objAcroPDTextSelect)
032 'テキスト選択状態を解除します。
033 lRet = objAcroPDTextSelect.Destroy()
034
035 'PDFファイルを保存しないで閉じる
036 lRet = objAcroAVDoc.Close(1)
037
038 'Acrobatを閉じる
039 lRet = objAcroApp.Hide '(TEST用)
040 lRet = objAcroApp.Exit '(TEST用)
041
042 'オブジェクトを強制解放する
043 Set objAcroHiliteList = Nothing
044 Set objAcroPDPage = Nothing
045 Set objAcroPDTextSelect = Nothing
046 Set objAcroAVPageView = Nothing
047 Set objAcroAVDoc = Nothing
048 Set objAcroApp = Nothing
049
050 End Sub
実行結果
TEST_PDPage_Destroy:2008/08/02 10:25:04
R AcrobatR
Rect.Top=735
Rect.bottom=724
Rect.Left=61
Rect.Right=100
※下記は実行途中のPDFビュアーの画面の一部です。
透明テキストがページ全体選択状態になっています。

補足
- 再度CreatePageHiliteメソッドを実行すると選択状態はDestroy メソッドと同じように解除されます。
- CreateWordHiliteメソッド、CreatePageHiliteメソッド、
CreateTextSelectionメソッドも参考にして下さい。
Adobe Web 解説
OLE Automation / AcroExch.PDTextSelect / Destroy (公式サイト・英語)
動作確認環境
- WindowsXP Pro(+ SP3) +
Acrobat 8.1.2 Pro + Office 2003 + MicrosoftUpdate
< 戻る >