最近、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を中心に深堀りする内容になっています。
自分が読んで気に入った箇所について紹介します。
OOXMLの概要や仕様書について取り扱っています。OOXMLに今から取り組みたいという人にピッタリの内容です。仕様をダウンロードしたときのファイルの解説まで書いてくれているのがよかったです。
WordprocessingML、SpreadseetML、PresentationMLのそれぞれについて最小構造のファイルを作って内容を確認していく章です。
最小構造といってもPresentationMLではSlideMaster、SlideLayoutといった要素にも言及しておりかなりボリュームのある内容になっていました。
Wordファイルを構成するWordprocessingMLの章です。第2章では最小構造のファイルを作りましたが、この章では段落番号・箇条書き、共通の文字スタイル、図形などの踏み込んだトピックについて解説しています。特に、(見落としがちな)日本語の扱いについて説明しているのが良かったです。
図形描写を行うDrawingMLについての章です。最初に図形の基本単位であるEMUについて取り上げ、テーマや色、フォント、グラデーション、図形などの要素について取り上げています。
特に図形に関しては多く取り上げられていて、図解も多くわかりやすかったです。
OOXMLを利用したツールを開発するのであれば必読の一冊だと思います。
自分が目的としていたPresentationMLについては触り程度しかありせんが、それでも十分に役にたつ内容でした。(ツールを開発する前に読みたかった気持ちはあります)
ちなみにKindleで技術書を読むときは、iPad 12.9インチが便利です。
ここ最近、Web技術を利用した画像生成に興味があります。本記事では、日本語における表現の一種である縦書きに焦点を当て、Web技術を使った縦書きを含む画像生成方法についての調査をまとめました。 > 現
追記(2022/12/29): 問い合わせに対応する窓口をTwitterに統一したいので、フォームページは削除しました。 当ブログは静的サイトホスティングサービスのNetlifyでホスティングされ
毎年10月に開催されるHacktoberfestに参加しました。このイベントはOSSへの貢献を行い、期間中に規定数(4つ)の貢献を行った人に特典がプレゼントされるものになっています。 自分はドキュメ