sphinxcontrib-xlsxtableの画像対応
Excelファイルから表を作るSphinx拡張について、埋め込み画像に対応しました。
特にオプションなどは必要なく、画像が使用されたExcelファイルを指定すれば、そのまま画像が利用されます。
.. xlsx-table:: :file: path/to/xlsx/embedded-images.xlsx
以下のようにレンダリングされます。
内部処理
内部処理としては、以下のようにしています。
- xlsxファイルを解析して、画像データを抜き出し、ファイルに保存
Ezcelファイル名.xlsx.media
のフォルダを作成し、保存します
- 画像アンカーの位置からセル (表の位置) を特定し、
image
ディレクティブを追加する
モジュール実行すると、以下のようになります。
% python -m sphinxcontrib.xlsxtable sample-images.xlsx --sheet v +-------+------------------------------------------------+ | Red | .. image:: sample-images.xlsx.media/image1.png | +-------+------------------------------------------------+ | Green | .. image:: sample-images.xlsx.media/image2.png | +-------+------------------------------------------------+ | Blue | .. image:: sample-images.xlsx.media/image3.png | +-------+------------------------------------------------+