C# 获取Word中的指定图片坐标位置(附VB.NET) word怎么批量调整图片位置

来源:搜狗指南时间:2022-04-19 18:06:58

    C# 获取word中的指定图片坐标位置(附) word怎么批量调整图片位置。以下内容通过C#以及代码示例来介绍获取Word文档中指定图片的坐标位置。

    工具/材料
    .NetFramework4.8
    VisualStudio2013
    FreeSpire.Docfor.NET7.11
    Word测试文档:.docx2013
    操作方法
    01
    指定文件路径,本次测试代码路径为项目文件夹路径。即在VisualStudio项目文件下存入用于测试的Word文档,如:C:\Users\Administrator\Documents\VisualStudio2013\Projects\ExtractTextandImage_Doc\GetCoordinatesOfImg\bin\Debug\test.docx。文件路径也可自定义为其他路径。
    02
    在“解决方案资源管理器”中引入必要程序集文件,如下图:
    03
    在程序中键入如下C#代码:
    usingSpire.Doc;
    usingSpire.Doc.Documents;
    usingSpire.Doc.Fields;
    usingSystem;
    namespaceGetCoordinatesOfImg
    {
    classProgram
    {
    staticvoidMain(string[]args)
    {
    //加载Word测试文档
    Documentdoc=newDocument();
    doc.LoadFromFile("test.docx");
    //遍历section
    for(inta=doc.Sections.Count-1;a>=0;a--)
    {
    Sectionsection=doc.Sections[a];
    //遍历paragraph段落
    for(intj=section.Paragraphs.Count-1;j>=0;j--)
    {
    Paragraphparagraph=section.Paragraphs[j];
    //遍历段落中的对象
    for(inti=0;i<paragraph.ChildObjects.Count;i++)
    {
    DocumentObjectdocobj=paragraph.ChildObjects[i];

    //判断对象是否为图片
    if(docobj.DocumentObjectType==DocumentObjectType.Picture)
    {
    DocPicturepicture=docobjasDocPicture;
    if(picture.Title.Equals("图片4"))//定位标题为“图片4”的图片
    {
    //获取图片坐标位置
    floatx=picture.HorizontalPosition;
    floaty=picture.VerticalPosition;
    Console.WriteLine("坐标位置为:\nX="+x+"\nY="+y);
    Console.ReadLine();
    }
    }
    }
    }
    }
    }
    }
    }
    04
    完成代码后,执行程序,输出图片坐标获取结果,如下图:
    05
    附代码:
    ImportsSpire.Doc
    ImportsSpire.Doc.Documents
    ImportsSpire.Doc.Fields
    NamespaceGetCoordinatesOfImg
    ClassProgram
    PrivateSharedSubMain(argsAsString())
    '加载Word测试文档
    DimdocAsNewDocument()
    doc.LoadFromFile("test.docx")
    '遍历section
    ForaAsInteger=doc.Sections.Count-1To0Step-1
    DimsectionAsSection=doc.Sections(a)
    '遍历paragraph段落
    ForjAsInteger=section.Paragraphs.Count-1To0Step-1
    DimparagraphAsParagraph=section.Paragraphs(j)
    '遍历段落中的对象
    ForiAsInteger=0Toparagraph.ChildObjects.Count-1
    DimdocobjAsDocumentObject=paragraph.ChildObjects(i)
    '判断对象是否为图片
    Ifdocobj.DocumentObjectType=DocumentObjectType.PictureThen
    DimpictureAsDocPicture=TryCast(docobj,DocPicture)
    Ifpicture.Title.Equals("图片4")Then

    '定位标题为“图片4”的图片
    '获取图片坐标位置
    DimxAsSingle=picture.HorizontalPosition
    DimyAsSingle=picture.VerticalPosition
    Console.WriteLine("坐标位置为:"&vbLf&"X="+x+vbLf&"Y="+y)
    Console.ReadLine()
    EndIf
    EndIf
    Next
    Next
    Next
    EndSub
    EndClass
    EndNamespace
文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站) 联系邮箱:9145908@qq.com