OOXMLと向き合う人にオススメな「Office Open XMLフォーマットガイド」を読んだ

2019.12.02

最近、PowerPointファイルを生成するツールを作っています。 「PowerPointを作る」というと難しいと思われるかもしれません。しかし、OOXMLという仕様に従いXMLを作ってZIP形式で圧縮するだけでPowerPointファイルを作ることができます。 しかし、OOXMLはWeb上に仕様書以外の情報がほとんどありません。

そこで、OOXMLについて書かれた希少な本、「Office Open XMLフォーマットガイド」を読んだので紹介します。

https://www.amazon.co.jp/gp/product/B07ZJ4ZZZB

この本の良かったところ

取り扱っている内容

OOXMLでサポートしている形式としてはWordprocessingML、SpreadseetML、PresentationMLとある。この本では、3つの形式について触りを行った上で、WordprocessingMLを中心に深堀りする内容になっています。

自分が読んで気に入った箇所について紹介します。

第1章 Office Open XMLとは

OOXMLの概要や仕様書について取り扱っています。OOXMLに今から取り組みたいという人にピッタリの内容です。仕様をダウンロードしたときのファイルの解説まで書いてくれているのがよかったです。

第2章 導入(HelloWorld)

WordprocessingML、SpreadseetML、PresentationMLのそれぞれについて最小構造のファイルを作って内容を確認していく章です。 最小構造といってもPresentationMLではSlideMaster、SlideLayoutといった要素にも言及しておりかなりボリュームのある内容になっていました。

第4章 文章(WordprocessingML)

Wordファイルを構成するWordprocessingMLの章です。第2章では最小構造のファイルを作りましたが、この章では段落番号・箇条書き、共通の文字スタイル、図形などの踏み込んだトピックについて解説しています。特に、(見落としがちな)日本語の扱いについて説明しているのが良かったです。

第5章 描画(DrawingML)

図形描写を行うDrawingMLについての章です。最初に図形の基本単位であるEMUについて取り上げ、テーマや色、フォント、グラデーション、図形などの要素について取り上げています。 特に図形に関しては多く取り上げられていて、図解も多くわかりやすかったです。

感想

OOXMLを利用したツールを開発するのであれば必読の一冊だと思います。 自分が目的としていたPresentationMLについては触り程度しかありせんが、それでも十分に役にたつ内容でした。(ツールを開発する前に読みたかった気持ちはあります)

ちなみにKindleで技術書を読むときは、iPad 12.9インチが便利です。