TOP > サンプル / 関数 > PDFの各ページのサイズをチェックする [...]
解説
PDFドキュメントの表紙のサイズと、残りのページザイズ(x,y)が全て同じかチェックする。
全てが縦になっているかのチェックにもなる。
サンプル Excel VBA
- F8キーでステップ実行しながら動作確認出来ます。
- 参照設定を事前にする。
001 Sub TEST_Check_PageSize()
002
003 Debug.Print "TEST_Check_PageSize:" & Now
004
005 Dim objAcroApp As New Acrobat.AcroApp
006 Dim objAcroAVDoc As New Acrobat.AcroAVDoc
007 Dim objAcroPDDoc As Acrobat.AcroPDDoc
008 Dim objAcroPDPage As Acrobat.AcroPDPage
009 Dim objAcroAVPageView As Acrobat.AcroAVPageView
010 Dim objAcroPoint As Acrobat.AcroPoint
011 Dim lRet As Long
012 Dim j As Long
013 Dim lPageCnt As Long
014 Dim lErrCnt As Long
015 Dim x As Long
016 Dim y As Long
017
018 lErrCnt = 0
019 'Acrobatを起動表示する
020 lRet = objAcroApp.Show '(TEST用)
021 'PDFドキュメントを開いて表示する。
022 lRet = objAcroAVDoc.Open("E:¥Test01.pdf", "")
023 Set objAcroAVPageView = objAcroAVDoc.GetAVPageView()
024 Set objAcroPDDoc = objAcroAVDoc.GetPDDoc()
025
026 lPageCnt = objAcroPDDoc.GetNumPages - 1
027 Debug.Print "全頁数 = " & (lPageCnt + 1)
028
029 For j = 0 To lPageCnt
030 lRet = objAcroAVPageView.Goto(j)
031 Set objAcroPDPage = objAcroAVPageView.GetPage()
032 Set objAcroPoint = objAcroPDPage.GetSize
033 If j = 0 Then
034 '1ページ目
035 x = objAcroPoint.x
036 y = objAcroPoint.y
037 Else
038 If Not (x = objAcroPoint.x) Or _
039 Not (y = objAcroPoint.y) Then
040 'サイズが違う
041 Debug.Print "サイズが異なる頁 = " & j
042 lErrCnt = lErrCnt + 1
043 End If
044 End If
045 Next j
046
047 '先頭頁とサイズが違う頁数
048 Debug.Print "先頭頁とサイズが違う頁数 = " & lErrCnt
049
050 'PDFファイルを保存しないで閉じる
051 lRet = objAcroAVDoc.Close(1)
052 'Acrobatを閉じる
053 ' lRet = objAcroApp.Hide '(TEST用)
054 ' lRet = objAcroApp.Exit '(TEST用)
055
056 'オブジェクトを強制解放する
057 Set objAcroPoint = Nothing
058 Set objAcroAVPageView = Nothing
059 Set objAcroPDPage = Nothing
060 Set objAcroPDDoc = Nothing
061 Set objAcroAVDoc = Nothing
062 Set objAcroApp = Nothing
063 End Sub
Highlight:プログラミング言語のソースコードを構文で色分け (GUI編)
動作確認環境
- WindowsXP Pro + SP3 +
Acrobat 8.1.2 Pro + Office 2003
< 戻る >