掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイルのプロパティ参照方法 (ID:51857)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
<AcrobatSDKを使わずにベタで取得する方法> 〜 タイトル、サブタイトル、作成者、 キーワード作成、変換、作成日時、変換日時を取得 〜 1)まず、相互参照テーブル(個々のPDFオブジェクトの位置情報)をPDFファイルから取得 2)「trailer」から「/Info」で示されるPDFオブジェクト番号を取得 3) 2)で取得したPDFオブジェクトから「/Title /Subject /Author /Keywords /Creator /Producer /CreationDate /ModDate」 オブジェクトを取得(「trailer」に「/Info」が無い場合は情報はないということになる) 個々のオブジェクトからテキスト情報を取得するには 基本的に「/??? ()」で括られている括弧内(xxx)の部分を抜き取ればよい。 ただし、その部分のテキストは「8進数表記、Unicode(Normal/AsciiHexEncodnig)、PDFDocEncoding」と 「エスケープ処理(AsciiHexEncodnigの場合は処理なし)」を行っている場合があるので 若干、手間取るのが通例。詳細はPDFの仕様書を参照してください。 個々のオブジェクトとプロパティ情報との関連性は以下の通りです。 ------------------------------ /Title (タイトル) /Subject (サブタイトル) /Author (作成者) /Keywords (キーワード) /Creator (作成) /Producer (変換) /CreationDate (作成日時) /ModDate (変換日時) ------------------------------ (例) 30869 0 obj << /Producer (Acrobat Distiller 5.00 for Macintosh) /Subject (Adobe Portable Document Format \(PDF\)) /Creator (FrameMaker 6.0) /Title (PDF Reference, Third Edition) /Author (Adobe Systems Incorporated) /ModDate (D:20011129091656-08'00') /CreationDate (D:20011117171008Z) >> endobj 〜暗号化の有無〜 「trailer」に「/Encrypt」があれば暗号化された PDFファイル。無い場合は暗号化されていないPDFファイルである。 〜PDFのバージョン〜 ファイルの先頭にPDFファイルのバージョン が必ず記述されるのでそれを取得するだけでよい。 (例) %PDF-1.3 ← バージョン 1.3 %PDF-1.4 ← バージョン 1.4 %PDF-1.5 ← バージョン 1.5 〜WEB表示用に最適化〜 最初の「xref」の位置がファイルの先頭から173バイト目であれば そのPDFファイルは「WEB表示用に最適化」されている。(反則的手法) # SDK情報じゃないので、役に立たなかったらごめんなさい。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.