如何使用pywin32从.docx文档生成图像缩略图

时间:2014-03-18 12:38:52

标签: python ms-word vsto word-vba pywin32

我在Microsoft Word 2013中使用Mark Hammond的pywin32扩展。我的目标很简单: 我需要获取任何给定的.docx文件的-first页面,并将其保存为jpeg文件(或任何其他图像文件),基本上生成缩略图。

我应该怎么做?

这是我目前的进展:

from time import sleep
import win32com.client as win32

def word():
    word = win32.gencache.EnsureDispatch('Word.Application')
    doc = word.Documents.Open("myFile.docx")
    word.Visible = False
    sleep(1)
    ...
    ## CODE I NEED ##
    ...
    doc.Close(False)
    word.Application.Quit()

if __name__ == '__main__':
    word()

提前致谢。

1 个答案:

答案 0 :(得分:2)

MS Office的文档以OOXML格式保存,基本上是“不同文件”的压缩存档。

要提取拇指,只需在ZIP(ok,docx)存档中查找名为“thumbnail”的文件,其中包含任何扩展名。 (目前是thumbnail.emf(对于docx),wmf(对于xlsx)和jpeg(对于pptx))。此外,如果用户选择将文件从Word / Excel / PowerPoint保存为不包含缩略图时,请注意拇指(文件)可能会丢失。