Qpdf : PDFにパスワードとセキュリティ設定をコピーするVBA関数

TOP へ > Qpdf  > *


CJTF-HOA veterinary experts team with Uganda to treat 30,000 animals [Image 9 of 16]

概要

PDFのユーザーパスワード、オーナーパスワードとセキュリティ設定の情報のみを別のPDFへコピーするVBA関数です。コピー後は別名で保存されます。

コピーを受け取るPDFのユーザーパスワードとオーナーパスワードのセキュリティ設定の情報は全て上書きされて残りません。また元のPDFへの上書き保存はできません。

Acrobat OLE を使わずに Qpdf を使用して行います。

 

注記

当処理は正当な理由の元で行う必要が有ります。

 

Qpdf とは

フリーソフト Qpdf を知らない人は先にコチラを御覧ください。

 

形式

 

引数

  1. 第1引数:qpdfPara_EncryptPdfPath As String  (In)
    コピー元のPDFファイルのフルパス
  2. 第2引数:qpdfPara_EncryptPdfPassword As String  (In)
    コピー元のPDFファイルのユーザーパスワード。無ければ””。
  3. 第3引数:qpdfPara_InPdfPath As String  (In)
    入力のPDFファイルのフルパス
  4. 第4引数:qpdfPara_InPdfPassword As String  (In)
    入力のPDFファイルのユーザーパスワード。無ければ””。
  5. 第5引数:qpdfPara_OutPdfPath As String  (In)
    出力のPDFファイルのフルパス
  6. 第6引数:qpdfPara_OrverWrite As Boolean  (In)
    出力のPDFファイルが存在した時に上書きをするか?
    True:上書きをする
    False:上書きをしない
  7. 第7引数:strErr As String  (Out)
    エラーメッセージ。エラー無しは””

 

戻り値

無し。

 

関数 / サンプル





事前設定

  1. コチラを参考にQpdf のダウンロードとインストールを行う。
  2. Qpdf.exe のフルパスをCON_QPDF_PATHにセット。
  3. gDebugMode = True のデバッグモードをFalseにセット。

サンプル

ユーザーパスワード「cp3u」のcopy3.pdf からユーザーパスワードとオーナーパスワードのセキュリティ情報を抜き出します。その情報を in1.pdf のユーザーパスワードとオーナーパスワードの情報に上書きします。結果はcopy3-in1.pdf  ファイルで保存します。

 

 

備考

  • VBAのShell 関数の第一引数の文字数に制限が有るみたいだが、255文字で無いことは確かです。それよりも大きい数値でもOKです。
  • VBAのDir 関数でもファイルの存在チックが出来ますがパス長が256文字以上に未対応です。そこで "Scripting.FileSystemObject" のFileExists を使ってファイルの存在チェックを行います。Dir 関数は使わない方がいいです。

 

PDFのセキュリティ

 

< Qpdf へ戻る >

コメントを残す

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

CAPTCHA


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


SAMURAI Plugin