第5章 PresentationML

comment

スライド上の文字や単語、またはスライド全体に対してメモを付けられます。これをコメントと呼びます。スライドに対してコメントを作成したとき、commentsフォルダが作成され、その中にコメントのパーツが作成されます。コメントパーツのファイルはスライドごとに分割して作成され、ファイル名はcomment1.xml、comment2.xmlのように番号付けされたファイル名になっています。コメントのパーツはプレゼンテーションでコメントを作成したときのみ作成されるパーツです。

もう1つ、コメントに関するパーツがあります。コメントの作成者を列挙したパーツです。pptフォルダにcommentAuthors.xmlとして1つ作成されます。

コメント例
コメント例

コメントのパーツが作成されると、スライドの関連付けにはコメントパーツを定義したRelationship要素が追加されます。

slides/_rels/slide1.xml.relsファイルに追加された要素
<Relationship Id="rId3"
  Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments"
  Target="../comments/comment1.xml"/>

コメントのパーツはcmLst要素をルートとしてcm要素がコメントの数だけ列挙されています。1つのcm要素が1つのコメントを表しています。

コメントパーツの例
<p:cmLst
  xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"
  xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
  xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main">
  <p:cm authorId="0" dt="2007-02-01T19:19:39.109" idx="3">
    <p:pos x="2701" y="2470"/>
    <p:text>1ページ目のコメント</p:text>
  </p:cm>
  <p:cm authorId="0" dt="2007-06-06T22:20:00.921" idx="4">
    <p:pos x="4819" y="1594"/>
    <p:text>次のコメント</p:text>
  </p:cm>
</p:cmLst>

cm要素は3つの属性を持っています。authorId属性はcommentAuthors.xmlに列挙されたコメント作成者へのインデックスです。dt属性はコメントの作成日時です。idxはコメントのインデックスです。

cm要素はふたつの子要素を持ちます。pos要素とtext要素です。pos要素はコメントの位置情報です。x属性とy属性の座標によってコメントの位置を表しています。text要素の内容がコメントのテキストデータです。

コメントを挿入したスライド側にはコメント挿入の情報はありません。そのため、コメントのpos要素でその位置を情報として持っています。