draw.ioはフリーのクラウド型ドローイング・アプリケーションで、diagrams.netがサービスを提供しています。またこのアプリケーションにはデスクトップ版もあり、githubからインストーラをダウンロードできます。
draw.ioのデスクトップ版はGUIで操作をできるほかにコマンドラインでの操作も可能で、これを使うとドロー図形をPDFに変換できます。draw.ioから変換されたPDF図面は図形をベクター形式で持っており拡大縮小をしても劣化しないため、TeX文書の図形のソースとして利用すると拡大倍率にかかわらず綺麗に表示することが出来ます。
デスクトップ版のdraw.ioアプリケーションの実行ファイル名はdrawioです。Ubuntuの場合、コマンドラインから以下のコマンドを実行することでオプション一覧を表示できます。
drawio -h
PDFを変換するには以下のコマンドを実行します。
drawio -xf pdf --crop -b 10 -o out_file_name input_file_name
ここでオプションの意味は以下の通りです。
- -x : エクスポート。draw.ioファイルを別の形式に変換する。
- -f : エクスポートの変換先ファイル形式。引数としてpdf, pngといった文字列を受け取る。
- –crop : 図形だけを切り取って出力する。これを付けないと、PDFは用紙1ページ分が出力されてしまう。
- -b : 図形の周囲の余白サイズ。数字を引数に取るが、どうやら単位はptに固定されていて図形自身の単位設定(mmやinch)に左右されない。また、100pt=1inch固定の模様
- -o : 出力ファイル名。省略すると、入力ファイル名に応じた拡張子を付けたファイル名を生成する
v17.2.4には「-bオプションを付けると不要な2ページ目が出力される」という不具合があります。これは報告済みです。また、手元のtex liveで確認した範囲ではLaTeXの \includegraphics コマンドを使ってPDF図形を読み込む場合、余分な2ページ目は無視されるようです。