如何用vba把word中的图片导出为独立的图片格式文件?

在word中的图形对象有InlineShape对象和Shape对象,其中InlineShape对象表示的是嵌入到文本层的图片,就像是文字的一部分一样,而Shape对象是悬浮于文本之上位于图形层,两者有区别。

如果想要把所有的图形对象导出为独立的图片格式文件,可以借组EnhMetaFileBits属性。

EnhMetaFileBits属性返回的是把word中的选择区域当做是一个图片,然后返回该图片的增强型图元文件字节流。

它相当于API函数GetEnhMetaFileBits ,由于增强型图元文件的文件格式默认是emf,所以在将字节流保存为图片时,默认指定扩展名为emf。

以下代码可以实现将word中的各种图形导出为独立的图片格式的

vbnet 复制代码
Sub QQ527524938()
    Const adTypeBinary = 1
    '默认文本数据
    Const adTypeText = 2
    '指定保存到文件时不覆盖,只新建
    Const adSaveCreateNotExist = 1
    '指定保存到文件时覆盖原文件,没有则新建
    Const adSaveCreateOverWrite = 2
    Dim oStream As Object
    Dim arr() As Byte
    Set oStream = VBA.CreateObject("adodb.stream")
    i = 1
    Dim oDoc As Document
    Set oDoc = Word.ActiveDocument
    Dim oSP As Shape
    Dim sPath As String
    sPath = oDoc.Path & "\"
    Dim oInLineSp As InlineShape
    With oDoc
        For Each oSP In .Shapes
            oSP.Select
            arr = Word.Selection.EnhMetaFileBits
            With oStream
                .Open
                .Type = adTypeBinary
                .Write arr
                .SaveToFile sPath & i & ".emf", adSaveCreateOverWrite
                .Close
            End With
            i = i + 1
        Next
        For Each oInLineSp In .InlineShapes
            arr = oInLineSp.Range.EnhMetaFileBits
            With oStream
                .Open
                .Type = adTypeBinary
                .Write arr
                .SaveToFile sPath & i & ".emf", adSaveCreateOverWrite
                .Close
            End With
            i = i + 1
        Next
    End With
End Sub

文件。

相关推荐
诸神缄默不语1 天前
Python 3中的win32com使用教程+示例:从Excel读取数据生成Word格式报告批量发邮件
python·word·excel
你挚爱的强哥1 天前
【sgSelectExportDocumentType】自定义组件:弹窗dialog选择导出文件格式word、pdf,支持配置图标和格式名称,触发导出事件
vue.js·pdf·word
温轻舟2 天前
Python自动办公工具06-设置Word文档中表格的格式
开发语言·python·word·自动化工具·温轻舟
温轻舟3 天前
Python自动办公工具05-Word表中相同内容的单元格自动合并
开发语言·python·word·自动化办公·温轻舟
亮子AI3 天前
如何做一个类似Word的编辑器?要有修改标记功能
编辑器·word
低调电报3 天前
在WPS可以显示图片,word中不能显示的原因及解决
经验分享·word·wps
shouchaobao4 天前
免费PDF工具:PDF转Word/Excel/图片+AI总结+合并拆分+OCR识别,多端无广告!
pdf·word·excel
lqz19935 天前
根据html导出excel和word
html·word·excel
缺点内向5 天前
C# 中 Word 文档目录的插入与删除指南
开发语言·c#·word·.net
诸神缄默不语6 天前
如何用Python处理文件:Word导出PDF & 如何用Python从Word中提取数据:以处理简历为例
python·pdf·word