Adobe Acrobat が Form XObject と ADBE_MIP 辞書を使用して、PDF における Microsoft Purview Information Protection(MPIP)コンテンツマーキングを表示する方法について説明します。
概要
この記事では、Microsoft Purview Information Protection(MPIP)コンテンツマーキングを含む PDF を作成または処理する場合に、Adobe Acrobat でそれらのマーキングが保存される方法について説明します。 MPIP は Microsoft のサービスです。 透かし、ヘッダー、フッターなどのマーキングをドキュメントに追加できます。Acrobat は、他の PDF ツールとの互換性を維持した状態で、各マーキングを保存します。 また、Acrobat が引き続き認識できるように、各マーキングを保存します。 マーキングが正しく保存されると、Acrobat は文書の機密度ラベルを維持するため、後でラベルを更新または削除しても問題が発生しません。
マーキングの保存方法
- Form Xobject:各マーキングは各マーキングは Form Xobject として保存されます。 これは、ページが再利用できる標準的で自己完結型の PDF コンテンツです。 ページ上でのマーキングの外観を保持します。
- ADBE_MIP 辞書:各マーキングには ADBE_MIP 辞書も含まれます。 この小さなデータセットは、マーキング固有の詳細を保持します。 その存在により、Acrobat はオブジェクトが MPIP マーキングであることを認識します。 Acrobat は、後のラベル付けでマーキングを認識して管理できます。
辞書スキーマ
指定された /ADBE_MIP 辞書には 6 つのキーが含まれています。5 つは 3 つのマーキングタイプすべてに共通で、6 つ目は透かしの場合は /MIP_Layout、ヘッダーとフッターの場合は /MIP_Allignment です。
| キー | Cos タイプ | 保持する内容 | 適用対象 | MIP SDK API ソース |
|---|---|---|---|---|
| MIP_Type | 名前 | マーキングを識別する判別子:/Watermark、/Header、または /Footer。 | すべて | SDK によって返されません。Acrobat は、返されたアクションクラスから派生させます。mip::AddWatermarkAction / mip::AddContentHeaderAction / mip::AddContentFooterAction (mip::Action::GetType())。 |
| MIP_Text | 名前 | マーキングの表示テキスト。 | すべて | アクションの GetText()。 |
| MIP_Font | 名前 | フォントファミリ名(例:Calibri)。 | すべて | GetFontName()。SDK に記載されたデフォルト「Calibri」。 |
| MIP_FontSize | Real | ポイント単位のフォントサイズ。 | すべて | GetFontSize()(整数を返し、実数として保存)。 |
| MIP_Color | 配列(RGB) | マーキングテキストのフォントカラー。 | すべて | GetFontColor()。SDK は "#000000" などの 16 進文字列を返します。Acrobat は 16 進カラー値を DeviceRGB カラー配列に変換します(表下の注記を参照)。 |
| MIP_Layout | 整数 | 透かしの向き(度):0 = 水平、45 = 対角。 | 透かしのみ | GetLayout() → mip::WatermarkLayout (HORIZONTAL=0, DIAGONAL=1); mapped 0→0°, 1→45°。 |
| MIP_Allignment | 整数 | ヘッダー/フッターテキストの水平方向の位置。 | ヘッダーとフッターのみ | GetAlignment() → mip::ContentMarkAlignment (LEFT=0, RIGHT=1, CENTER=2)。 |
Acrobat は 16 進カラー値を DeviceRGB 配列に変換します。6 つの 16 進数字から赤、緑、青のコンポーネントを読み取ります。各コンポーネントを 0~255 の 10 進値に変換します。その後、各値を 255 で割って 0.0 から 1.0 の範囲に正規化します。Acrobat は 3 つの結果を /MIP_Color 配列に保存します。
例えば、青いマーキングカラーの場合:
| GetFontColor() Conversion |
|---|
GetFontColor() = "#4472C4"
R = 0x44 = 68 -> 68 / 255 = 0.26666 G = 0x72 = 114 -> 114 / 255 = 0.44708 B = 0xC4 = 196 -> 196 / 255 = 0.76869
として保存されます /MIP_Color [0.26666 0.44708 0.76869] (PDF 実数、小数点以下 5 桁まで) |
例
| 透かし | ヘッダー | フッター |
|---|---|---|
| /ADBE_MIP << /MIP_Type /Watermark /MIP_Text /CONFIDENTIAL /MIP_Font /Calibri /MIP_FontSize 24.0 /MIP_Color [0.0 0.0 0.0] /MIP_Layout 45 % 45 = Diagonal, 0 = Horizontal >> |
/ADBE_MIP << /MIP_Type /Header /MIP_Text /Contoso\040Confidential /MIP_Font /Calibri /MIP_FontSize 8.0 /MIP_Color [0.0 0.0 0.0] /MIP_Allignment 2 % 0 = Left, 1 = Right, 2 = Center >> |
ヘッダーの例と形状は同じですが、 /MIP_Type が /Footer に設定されています。 |
PDF の生成と印刷
一部のワークフローでは、MPIP ラベル付き文書を PDF に変換します。 例として、PDF として保存および PDF に印刷があります。 これらのいずれかが出力でマーキングを保持する場合、マーキングの ADBE_MIP 辞書も作成する必要があります。
表示されるマーキングが ADBE_MIP 辞書なしで保持された場合、Acrobat はそのマーキングを認識できません。 Acrobat は、マーキングをマーキングではなく通常のオブジェクトとして扱います。 文書の MPIP ラベルが変更されたときに、マーキングが正しく保持、更新、置換、または削除されない場合があります。