python-docxライブラリを使用して.docxファイルから画像インデックスを取得しようとしています。イメージの名前、イメージの高さと幅を抽出できます。しかし、ではない、それは言葉であるインデックスは、ファイルpython-docxを使用して.docxファイルから画像位置を抽出します
import docx
doc = docx.Document(filename)
for s in doc.inline_shapes:
print (s.height.cm,s.width.cm,s._inline.graphic.graphicData.pic.nvPicPr.cNvPr.name)
出力 21.228 15.920 IMG_20160910_220903848.jpg私はイメージ名を取得する任意の簡単な方法があればのように、知っていただきたいと思います実際に
s.height.cm私の高さをcm単位で取得しました。私の主な要件は、画像を抽出してその上で何か作業をしてから再び同じ場所に戻す必要があるため、画像が文書内のどこにあるかを知ることです。
あなたは完全なMSをサポートするwin32comを使用してかなり簡単にこれを行うことができますワードオブジェクトモデル。 python-docxライブラリは特に限定されているようですが、Shapeオブジェクトの操作やアクセスには特に注意が必要です。また、 'InlineShapes'シーケンスはインデックス付きアクセス([read the dox](https://python-docx.readthedocs.io/en/latest/api/shape.html#docx.shape.InlineShapes)をサポートしています) s'は 'index'プロパティを持っていませんので、インデックス付きのシーケンスとして扱うことができます。 –
@DavidZemensでは、索引付けされたシーケンスの概念について詳しく説明できますか? –
これは、 'inline_shapes'シーケンスが順序付けされ、例えば' doc.inline_shapes [0] 'などのインデックスでアクセスできることを意味します。 https://docs.python.org/3/tutorial/datastructures.html#tuples-and-sequences –