印刷時にのみ透かしが表示されるPDFの作成

この記事は InDesignSecrets - Add a "Print Only" Watermark to PDFs CS6日本語版に対応させたものです。

全くコンピュータを知らないクライアントと来たら、「表示できるけどコピーさせない」(いや表示しただけでメモリとキャッシュに保存されますから)だの「プリントできるけど保存させない」(いやプリンタ出力時はたいがspoolerフォルダにいったん保存しますから)、だの「プリントできるけどそれをコピーできなくしたい」(いや複数枚プリントすれば意味ないでしょ)だの訳わからん。

そんなわけで「画面表示のときは表示されなくて、印刷時のみ透かしを表示すPDF」という、はっきり言って、それなら印刷を許可させなければいいのに、という作業にチャレンジしました。

スクリプトでwatermarkPreferenceというオブジェクトがあって、watermarkDoPrint と watermarkVisibility で設定すると思われるのですが、VBSではどうもうまくいってない感じなのでネットで調べたら InDesignSecrets が引っかかったという訳。コメント26個ついてるって事はそれなりの需要があるってことなのかねえ。

で、結局は作らずに済んだのだけれど、元記事が英語でバージョンCS3なので、試行錯誤しなくちCS6で再現できない。ということで記事になるほどのボリュームになりました。


まずマスターページに適当に図形なり文字なり作ってください。

作ったオブジェクトPDFで表示したときに最前面に来ます。そのため、隠れる部分が全く見えなくなるのを避けるため、オブジェクトに透明効果を与えておきます。

ここでは乗算を設定しました。

次にこのオブジェクトをボタンに変換します。
オブジェクト上を右クリック(Windowsなので)して[インタラクティブ]-[ボタンに変換]をクリックします。

ボタンに変換されたら勝手に[ボタンとフォーム]パネルが表示されるんですが、表示されない人はメニューの[ウィンドウ]から表示してください。

パネル上で次の設定を行います。

  • ロールオーバー]の外観をチェック(目を表示)
  • クリック]の外観をチェック(目を表示)
  • トリガーされるまで非表示]をチェック
  • プリント可能]をチェック

ドキュメント上の設定は以上です。

次に、PDFへの書き出しを行います。が、注意してほしいのは(CS3と異なるところ)、ここで「インタラクティPDF」に書き出すということです。プリンPDFでは実現できません。

また、インタラクティPDFではボタンは常に最前面に置かれます(当然ですが)。そのため、その下に隠れる文字や画像を見せるためには、予め透明を設定しておかないといけないということです。

メニューの[ファイル]-[書き出し]をクリックして、書き出しダイアログが表示されたら、[ファイルの種類]を「Adobe PDF (インタラクティブ)」にしてください。ファイル名は任意です。そして[保存]ボタンをクリックすると、インタラクティPDFの書き出しオプションダイアログが表示されます。

この画面で必要な設定は「フォームとメディア」を「すべて含める」に設定すること。あとは任意です。[OK]ボタンをクリックすると、環境によっては次のダイアログが出ますが、気にせず[OK]ボタンをクリックしてください。

以上で完了です。

では確認してみましょう。PDFファイルを開きます。

ボタンは表示されません。では印刷プレビューを見てみましょう。

ということで、印刷したら出てくる透かしの出来上がりです。


記事を書き始めて今日まで1か月間ほど手を付けられなかったので、記憶違いの部分があるかもしれません。ご了承ください。