PDFをHTMLに変換する方法(Excel VBAサンプル/3)

TOP > サンプル / 関数 > *      [...]


Method of conversion from PDF to HTML.

 

説明

Acrobat PDF を HTML に変換します。

Acrobat OLE の JSObject とExcel VBA OLE の機能を利用します。

 

サンプル:ExcelのVBA

  • F8キーでステップ実行しながら動作確認出来ます。
  • 事前に参照設定もして下さい。

 

Option Explicit
Sub CommandButton9_Click()

    Dim objAcroApp As New Acrobat.AcroApp
    Dim objAcroAVDoc As New Acrobat.AcroAVDoc
    Dim objAcroPDDoc As Acrobat.AcroPDDoc
    Dim lRet As Long
    Dim jso As Object
    
    'Acrobatアプリケーションを起動する。
    lRet = objAcroApp.Show
    'PDFファイルを開いて表示する。
    lRet = objAcroAVDoc.Open("E:¥Test01.pdf", "")
    'PDDocオブジェクトを取得する
    Set objAcroPDDoc = objAcroAVDoc.GetPDDoc()
    'JavaScriptオブジェクトを作成する。
    Set jso = objAcroPDDoc.GetJSObject
    jso.SaveAs "E:¥test-01.html", "com.adobe.acrobat.html-4-01-css-1-00"
    
    'PDFファイルを変更無しで閉じます。
    lRet = objAcroAVDoc.Close(1)
    'Acrobatアプリケーションを終了する。
    lRet = objAcroApp.Hide
    lRet = objAcroApp.Exit
    'OLEを行うとAcrobatが不安定になるので、一応オブジェクトを強制開放する。
    Set jso = Nothing
    Set objAcroAVDoc = Nothing
    Set objAcroApp = Nothing

End Sub

 





 

補足

  1. Acrobat Readerでは出来ません。
    Acrobat本体がデフォルトでインストールされているパソコン環境だけです。
      
  2. 上記サンプルでは objAcroApp.Show でAcrobatアプリ本体を起動表示しています。
    これはjso.SaveAs メソッドを連続で行うときに発生する不可解なエラー回避策です。
    高速化したいのならば objAcroApp.CloseAllDocs に置き換えて下さい。
     
  3. 当サンプルよりも以下の関数を利用してのHTML変換をおすすめします。
    関数:PDFを特定のフォーマットに変換する」 
    当ページのサンプルよりも安全にHTML変換が可能になります。
      
  4. PDFをHTMLへ変換する上でのイメージファイルを扱う注意事項」も参照
     

 

注意

  1. Acrobat SDK 8.1 に書かれている第2引数の説明が一部間違っています。
    以下が正解です。

    SDK:com.adobe.Acrobat.html-4-01-css-1-00 ※間違い
    正解:com.adobe.acrobat.html-4-01-css-1-00 ※「a」の1文字が違う
    この情報は、"C:¥Program Files¥Adobe¥Acrobat 8.0¥Acrobat¥ExportTask.xml"ファイルに入っている内容から当サイト管理者が勝手に判断したものです。
    この「ExportTask.xml」ファイルに関する説明はAcrobat SDKにはありません。
     
  2. PDFをHTMLに変換するには、前提条件が1つあります。
    Acrobat本体ファイルメニューの「名前を付けて保存」ダイアログ表示->「ファイルの種類」を「HTML 4.1~」に一旦します。
    そして「設定」ボタンが有効になるので「設定」ボタンを押して、「HTML 4.1 -CSS 1.0準拠としての設定」画面で「サブホルダを使用」チェックをオフにします。
    そうしないと、連続でPDFをHTML変換する時に画像イメージが固定フォルダ名で上書きされてしまいます。
    なお、この設定はAcrobat本体が終了しても保存されます。
      
  3. OSがインストールされているC:ドライブへの保存は出来ません
    詳細は、「Acrobat JavaScript における「Safe Path」についての注意事項」を参照。
     

 

動作確認環境

  • WindowsXP Pro + SP3 +
    Acrobat 8.1.6 Pro + Office 2003 + フルMicrosoftUpdate

 

サンプル一覧

コメントを残す

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

CAPTCHA


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


SAMURAI Plugin