C# Aspose.Words 删除word中的图片操作

作者:郭老师的小迷弟雅思莫了 时间:2023-07-29 12:01:43 

今天介绍下 Aspose.Words 对 word 中的图片进行删除


string tempFile = Application.StartupPath + "\\resource\\templete\\项目建议书模板.doc";
Document doc = new Document(tempFile);
NodeCollection shapes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape item in shapes)
{
if (item.HasImage)
{
 item.Remove();
}
}
doc.Save(docPath);

补充:C#word插入图片在指定标签位置(附加图片上下左右移动)

这一篇我就直接讲讲图片的添加和移动了

C# Aspose.Words 删除word中的图片操作

如上图是直接插入,插入位置是镶嵌类型,我想让它浮动在文字下面,且大小也想调动一下


object Nothing = System.Reflection.Missing.Value;
  try
  {
   //定义该插入图片是否为外部链接
   object linkToFile = false;
   //定义插入图片是否随word文档一起保存
   object saveWithDocument = true;

//图片
   string replacePic = picture;
   if (doc.Bookmarks.Exists(bookMark_text) == true)
   {
    object bookMark = bookMark_text;
    //查找书签
    doc.Bookmarks.get_Item(ref bookMark).Select();
    //设置图片位置
    worldApp.Selection.ParagraphFormat.Alignment = Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphCenter;

//在书签的位置添加图片
    InlineShape inlineShape = worldApp.Selection.InlineShapes.AddPicture(replacePic, ref linkToFile, ref saveWithDocument, ref Nothing);
    //设置图片大小
    inlineShape.Width = 100;
    inlineShape.Height = 100;
    inlineShape.Select();
    inlineShape.ConvertToShape().IncrementLeft(-60.0f);
    //将图片设置浮动在文字上方
    inlineShape.ConvertToShape().WrapFormat.Type = Microsoft.Office.Interop.Word.WdWrapType.wdWrapBehind;

}
  }
  catch
  {
   doc.Saved = false;
   //word文档中不存在该书签,关闭文档
   doc.Close(ref Nothing, ref Nothing, ref Nothing);
  }

其中inlineShape.ConvertToShape()可以理解为选中这个图片

IncrementLeft();方法是要素水平移动,正值 代表向右移动,负值代表向左移动

IncrementTop(); 方法是要素垂直移动,正值代表向下移动,负值代表向上移动

WdWrapType是一个枚举器,里面有镶嵌类型,即

C# Aspose.Words 删除word中的图片操作

通过插入和移动就可以达到插入图片到自己想要的位置了

结果:

C# Aspose.Words 删除word中的图片操作

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

来源:https://caozhen.blog.csdn.net/article/details/78225817

标签:C#,Aspose.Words,word,图片
0
投稿

猜你喜欢

  • Android自定义图片选择器简单版

    2022-05-11 02:38:59
  • JDK动态代理,代理接口没有实现类,实现动态代理方式

    2021-12-21 11:55:22
  • GC调优实战之过早提升Premature Promotion

    2023-10-22 10:07:55
  • Android图片识别应用详解

    2022-01-13 15:37:31
  • JVM内存参数配置详解

    2022-05-20 19:17:57
  • MyBatis中resultType和parameterType和resultMap使用总结

    2023-04-01 05:43:42
  • C#使用GDI绘制直线的方法

    2022-08-16 09:45:17
  • 基于C#实现Windows服务状态启动和停止服务的方法

    2022-07-27 12:17:57
  • C#如何使用Task执行异步操作

    2023-01-12 03:34:41
  • java 线程创建多线程详解

    2021-08-06 22:02:22
  • C#中缓存System.Web.Caching用法总结

    2021-09-05 04:41:11
  • C#中FormClosing与FormClosed的区别详细解析

    2023-01-26 16:28:13
  • 详解如何在Java中加密和解密zip文件

    2022-12-07 12:26:46
  • IntelliJ IDEA的代码搁置功能实现

    2022-03-28 07:32:52
  • formfile文件上传使用示例

    2023-06-23 03:41:58
  • Android调用前后摄像头同时工作实例代码

    2021-09-10 05:34:45
  • C#图像处理之木刻效果实现方法

    2022-05-20 04:28:13
  • android手机获取gps和基站的经纬度地址实现代码

    2022-04-05 03:03:00
  • 一文带你彻底理解Java序列化和反序列化

    2021-12-23 05:24:12
  • Android开发之merge结合include优化布局

    2022-07-18 07:22:51
  • asp之家 软件编程 m.aspxhome.com