Word控件Spire.Doc 【图像形状】教程(2) ;在 C#、VB.NET 中从 Word 中提取图像

news2024/10/7 2:21:22

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转换和打印Word/PDF/Excel等格式文件处理,小巧便捷。在 C#、VB.NET 中从 Word 中提取图像。

Spire.Doc for.NET 最新下载icon-default.png?t=M85Bhttps://www.evget.com/product/3368/download

本指南中的解决方案演示了如何从现有 Word 文档中提取图像,并通过Spire.Doc for .NET将它们保存到 C# 和 VB.NET 中的指定路径。

图像是属于段落项的一种文档对象。Spire.Doc for .NET 提供了一个DocumentObject类来将图像存储在 Document 中。并且还提供了一个DocPicture类来获取和设置文档的图像。下载并安装 Spire.Doc for .NET。按照步骤从 Word 中提取图像。

  • 获取文档中每个部分的每个段落。
  • 获取 Paragraph 中 ChildObjects 的每个 DocumentObject。
  • 如果获取的 DocumentObjectType 为 Picture,则初始化一个 DocPicture 类实例,并将 DocumentObject 赋值为该实例的值。
  • 通过调用 String.Format(String format, object arg0) 初始化 String 类实例以命名提取的图像而不是其原始名称
  • 调用 DocPictrue.Image.Save(String, ImageFormat) 方法保存图像。

【C#】

using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using System;
namespace ExtractImage
{

class Program
{
static void Main(string[] args)
{
//Load document
Document document = new Document(@"E:\Work\Documents\WordDocuments\Spire.Doc for .NET.docx");
int index = 0;

//Get Each Section of Document
foreach (Section section in document.Sections)
{
//Get Each Paragraph of Section
foreach (Paragraph paragraph in section.Paragraphs)
{
//Get Each Document Object of Paragraph Items
foreach (DocumentObject docObject in paragraph.ChildObjects)
{
//If Type of Document Object is Picture, Extract.
if (docObject.DocumentObjectType == DocumentObjectType.Picture)
{
DocPicture picture = docObject as DocPicture;

//Name Image
String imageName = String.Format(@"images\Image-{0}.png", index);

//Save Image
picture.Image.Save(imageName, System.Drawing.Imaging.ImageFormat.Png);
index++;
}
}
}
}
}
}
}

【VB.NET】

Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields
Namespace ExtractImage

Class Program
Private Shared Sub Main(args As String())
'Load document
Dim document As New Document("E:\Work\Documents\WordDocuments\Spire.Doc for .NET.docx")
Dim index As Integer = 0

'Get Each Section of Document
For Each section As Section In document.Sections
'Get Each Paragraph of Section
For Each paragraph As Paragraph In section.Paragraphs
'Get Each Document Object of Paragraph Items
For Each docObject As DocumentObject In paragraph.ChildObjects
'If Type of Document Object is Picture, Extract.
If docObject.DocumentObjectType = DocumentObjectType.Picture Then
Dim picture As DocPicture = TryCast(docObject, DocPicture)

'Name Image
Dim imageName As [String] = [String].Format("images\Image-{0}.png", index)

'Save Image
picture.Image.Save(imageName, System.Drawing.Imaging.ImageFormat.Png)
index += 1
End If
Next
Next
Next
End Sub
End Class
End Namespace

调试后,所有提取的图像都保存在指定路径中。打开目录,就会找到图片。

Spire.Doc 是一个易于使用的 Word 文档操作组件,允许开发人员在 C# 和 VB.NET for .NET 中快速生成、编写、编辑和保存 Word(Word 97-2003、Word 2007、Word 2010), Silverlight 和 WPF。

以上便是如何在 Word 中插入图像(C#/VB.NET),如果您有其他问题也可以继续浏览本系列文章,获取相关教程,你还可以给我留言或者加入我们的官方技术交流群。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/25391.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码演示GC回收

JVM配置 -XX:NewSize5m 初始新生代大小 -XX:MaxNewSize5m 最大新生代大小 -XX:InitialHeapSize10m 初始堆大小 等同于Xms -XX:MaxHeapSize10m 最大堆大小 等同于Xmx -XX:SurvivorRatio8 Eden区占80% -XX:PretenureSizeThreshold10m 大对象阈值 -XX:UseParNewGC 新生代使用ParN…

最新最全面的Spring详解(五)——事务管理

前言 本文为 【Spring】事务管理 相关知识,下边将对Spring框架事务支持模型的优点,Spring框架的事务抽象的理解(包含TransactionManager、TransactionDefinition、TransactionStatus,编程式事务管理(包含使用 Transact…

(七)笔记.net core学习之反射、加载dll、读取moudle、类、方法、特性

1.反射加载dll、读取moudle、类、方法、特性 (1)模块信息获取 (2)方法调用 2.反射创建对象、反射简单工厂配置文件(破坏单例,创建泛型) (1)程序的可配置可扩展&#xf…

【MEIF:ℓ1-ℓ0混合分解】

Multimodal Medical Image Fusion Using Hybrid Layer Decomposition With CNN-Based Feature Mapping and Structural Clustering (基于CNN的特征映射和结构聚类的混合层分解的多模态医学图像融合) 本文提出了一种特征级多模态医学图像融合&#xff0c…

springboot获取不到客户端ip问题排查

一、现象 springboot从2.0.2升级到 2.5.7后线上环境无法通过request.getHeader("x-forwarded-for")获取客户端ip地址,测试环境正常,开发环境也异常 二、结论 springboot 2.5.7版本中CloudPlatform多了Kubernetes platform的类型识别&#x…

SpringCloud整合Nacos最全教程(简介及安装部署整合)

目录 一、Nacos简介 Nacos与eureka的共同点 Nacos与Eureka的区别 二、Nacos安装配置 在windows中的安装教程 1.首先将windows安装版本的zip解压: 2.如果8848端口被占用,可以修改端口 3.进入到bin目录下,在cmd中运行以下命令启动 4.启…

Webpack 5 超详细解读(二)

11.importLoaders 属性 问题: test.css的内容如下: .title {transition: all .5s;user-select: none; }login.css的内容如下: /* 导入test.css */ import ./test.css; .title {color: #12345678; }再次npm run build发现运行之后的test.c…

外汇天眼:想通过外汇交易在几个月内成为亿万富翁吗?你必须知道的七大交易法则

WikiFX 策略 -这里有七个交易规则,将在不同程度上让您受益。 1.交易不是儿戏 这是一项业务,如果没有适当的计划、战略和有效的运营,就不可能取得长期的成功。 2.损失不可避免 由于市场始终存在风险,因此在您的交易中从多头转为…

C++:项目相互依赖调用解决方法两种方法

Bmodel依赖于Amodel,但是Amodel又需要BModel的信息。这样就会导致相互依赖。 方法一:采用静态变量static 链接:C开发中一个解决方案里,两个项目的相互引用,相互依赖的实现方法(解决方法)_Capri…

P物质肽[DArg1, DTrp5, 7, 9, Leu11]

这种物质P类似物是一种非常有效的小细胞肺癌(SCLC)细胞体外生长的广谱神经肽抑制剂(IC₅₀ 5M)。此外,它在体外有效地抑制信号转导通路,并在体内显著延缓SCLC异种移植物的生长。因此,它可能对SCLC有治疗价值。 编号: 139994中文名称: P物质肽…

数据结构学习笔记(Ⅰ):绪论

课程链接:【旧版】1.0_开篇_数据结构在学什么_哔哩哔哩_bilibili 目录 1 数据结构的基本概念 2 算法 2.1 算法的基本概念 1.算法概念 2.算法的特性 3.好算法特质 2.2 算法的时间复杂度 2.3 算法的空间复杂度 1 数据结构的基本概念 数据:能输入到计算机中并…

Android StudioJNI开发之NDK环境的搭建以及添加JNI支持(图文解释 简单易懂)

有问题可以评论区留言讨论~~~ 一、NDK环境搭建 Android系统的所谓原生开发是在App中调用C/C代码,鉴于这两个语言具有跨平台的特性,如果某项功能使用C/C实现,就很容易在不同平台之间移植。 完整的Android环境包括三个开发工具。分别是JDK SD…

如何缩减layout电路面积?减少晶体管的数量——以全加器为例【VLSI】

如何缩减layout电路面积?减少晶体管的数量——以全加器为例【VLSI】What is Full adder ?全加器的设计方法1. 32T 原始表达式不经过化简的电路图2. 28个晶体管 最基本的静态互补CMOS电路的全加器静态互补CMOS静态互补CMOS的优势与劣势28T 电路图28T的棒状图Stick D…

彻底搞明白概率论:随机事件,样本空间,必然事件,不可能事件

文章目录样本空间样本点随机事件,必然事件,不可能事件参考视频样本空间 随机试验E的一切可能基本结果(或实验过程如取法或分配法)组成的集合称为E的样本空间,记为S 注意,对于不同的实验,样本空间…

【构建ML驱动的应用程序】第 3 章 :构建您的第一个端到端管道

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

FastDFS安装

fastdfs架构图 准备安装包 libfastcommon-1.0.43.tar.gz fastdfs-6.06.tar.gz fastdfs-nginx-module-1.22.tar.gz 一 、FastDFS--tracker安装 FastDFS安装环境 FastDFS是C语言开发,建议在linux上运行,本教程使用Centos7.4作为安装环境。 安装gcc …

如何使用做一个弹幕效果

效果展示 前置准备 背景图 图片素材 具体步骤 添加一个图片背景 添加一个水平滚动容器 添加一个容器 制作弹幕字体 制作弹幕动画效果 步骤分解 添加一个图片背景 拖拽 图片组件 到 编辑区 选中 图片组件 点击 检查面板 中的 样式 调整 图片组件 的 样式 添加一个水平滚动容…

餐饮机器人AB面:有人离场、有人挺进

民以食为天,餐饮生意是一颗“常青树”。 餐饮行业“常青”不代表没有变化,近年来Z世代消费者对餐饮口味、餐饮效率和餐饮安全提出更高要求。与此同时,在新消费、新技术、新模式的推动下,餐饮行业衍生出多元化趋势,外卖…

详解环境变量

目录前言一、什么是环境变量?二、查看环境变量的方法三、查看环境变量的内容四、普通变量VS环境变量五、导出环境变量六、常见的环境变量七、set命令:查看普通变量或环境变量八、C/C语言中main函数中的参数1、main函数的第一个和第二个参数应用&#xff…

IDEA提交本地项目到Gitee远程仓库

上一篇【Git的安装、配置、使用02【Idea对GitHub支持使用】】https://liush.blog.csdn.net/article/details/123446538 1. 新建仓库 2. IDEA登录gitee账号 3. 选择当前的项目作为本地库(相当于初始化) 4. 将项目添加到暂存区中 5. 将暂存区项目文件提交…