【小ネタ】draw.ioで作成した図をMicrosoft Officeドキュメントにキレイに貼り付ける
データ事業本部の松村です。
皆さんはdraw.io使ってますか?
私も特にAWS構成図を描くのに非常に愛用していましたが、せっかく作った図がMicrosoft Officeのドキュメント内に綺麗に貼れないのが悩みでした。
もちろんPNGなどのイメージにしてから貼り付けることはできるんですが、せっかくだから描画オブジェクトとして貼り付けたい!という願いを持っていました。試行錯誤の結果、他のツールの力を借りてうまくいったので書き残しておきます。
ちなみにですが、なぜこれでうまくいくかの原理は良くわかっていないため、手順のみのご紹介になります。
投稿中のスクショはWindowsのものですが、macOSでも同様の手順で再現可能です。
draw.ioのイメージをPDFとして書き出す
題材として、draw.ioのテンプレートとして付属されているこのAWS構成図を使ってみます。

これを、メニューの[ファイル] - [形式を指定してエクスポート] - [PDF...]でPDFに書き出しを行います。
このときに『切り落とす』を選択しておくと、図が過不足なくぴったり収まるサイズになります。

InkscapeでPDFからSVGに変換する
PDFで保存した図を、今度はInkscapeを使って、SVG形式に変換します。
Inkscapeはフリーのドローツールで、公式サイトは以下になります。
Inkscapeを起動したら、メニューから[ファイル] - [開く]を選択し、先ほどdraw.ioから書き出したPDFを開きます。

インポート設定のダイアログが開きます。
ここで重要なのは、『Poppler/Cairo をインポート』を選択することです。冒頭にも記したとおり、この理屈は良くわかっていないのですが、とにかくこうしたらうまくいきました。

取込が完了しました。この後は、普通にファイルに保存します。

保存時のダイアログです。ファイルの種類は、SVGでさえあれば、Inkscape SVGでもプレーンSVGでもOKなようです。

Microsoft OfficeドキュメントでSVGを取り込む
SVGができたら、いよいよMicrosoft Officeのドキュメントに取り込みます。
ここではPowerPointを使います。
挿入リボンから[画像] - [このデバイス...]を選択し、先ほどのSVGファイルを選択します。

取込が完了しました!

これだけでも十分かもしれませんが、Officeドキュメント上でちょっとだけ手を入れたいことがあるかもしれません。
というよりは、どちらかというと自分の手を離れた後も誰かが編集できるようにしておきたい、というニーズの方が多いかもしれません。
そんなときは、Microsoft Office描画オブジェクトに変換してしまいましょう。インポートした図を右クリックして、コンテキストメニューから[グループ化] - [グループ解除]を選択します。
以下のようなダイアログが出るので、『はい』をクリックします。

これでイメージが個別のオブジェクトに分解されました!

これはCloudWatchのラベルを選択したところです。こうやってMicrosoft Officeドキュメント上で直接編集をすることができるので、ドキュメントを引き継いだ人にも優しいですね。

さいごに
何年かぶりのブログ投稿なので、リハビリ的に非常に軽いネタで行ってみました。
こんなネタでもどなたかのお役に立てば幸いです。







