C#/VB.NET获取Excel中图片所在的行、列坐标位置

博客 分享
0 147
优雅殿下
优雅殿下 2022-04-24 11:58:21
悬赏:0 积分 收藏

C#/VB.NET 获取Excel中图片所在的行、列坐标位置

本文以C#和vb.net代码示例展示如何来获取Excel工作表中图片的坐标位置。这里的坐标位置是指图片左上角顶点所在的单元格行和列位置,横坐标即顶点所在的第几列、纵坐标即顶点所在的第几行。下面是获取图片位置的详细方法及步骤。

【程序环境】

按照如下方法来引用Spire.Xls.dll 版本:12.2

方法1:将 Free Spire.XLS for .NET 包下载到本地,解压,安装到指定路径。完成安装后,在安装路径下找到BIN文件夹下的Spire.Xls.dll文件;然后在Visual Studio 中打开“解决方案资源管理器”,点击“引用”,“添加引用”,将安装路径下的dll文件引入VS程序。

方法2:通过 NuGet 安装。在Visual Studio 中打开“解决方案资源管理器”,点击“管理NuGet包”,搜索“Free Spire.XLS”,点击安装。

或者通过PM控制台安装:Install-Package FreeSpire.XLS -Version 12.2.0

 

【获取图片所在行、列位置】

下面是详细步骤:

  • 创建Workbook类的对象。
  • 调用Workbook.LoadFromFile(string fileName)方法加载Excel文件。
  • 通过Workbook.Worksheets[int]属性获取指定工作表。
  • 通过Worksheet.Pictures[int]获取指定图片。
  • 通过ExcelPicture.TopRow属性和ExcelPicture.LeftColumn属性获取图片所在行、列位置。
  • 最后,通过System.Console.Write()及System.Console.ReadLine()方法输出获取的结果。

以下是完成代码,供参考:

C#

using Spire.Xls;namespace GetImgLocation{    class Program    {        static void Main(string[] args)        {            //加载测试文档            Workbook wb = new Workbook();            wb.LoadFromFile("test.xlsx");            //获取第2个工作表            Worksheet sheet = wb.Worksheets[1];            //获取工作表中的第一张图片            ExcelPicture picture = sheet.Pictures[0];            //获取图片所在行、列位置            string row = picture.TopRow.ToString();            string column = picture.LeftColumn.ToString();            //输出获取结果            System.Console.Write("location:(" + row + "," + column + ")");            System.Console.ReadLine();        }    }}

vb.net

Imports Spire.XlsNamespace GetImgLocation    Class Program        Private Shared Sub Main(args As String())            '加载测试文档            Dim wb As New Workbook()            wb.LoadFromFile("test.xlsx")            '获取第2个工作表            Dim sheet As Worksheet = wb.Worksheets(1)            '获取工作表中的第一张图片            Dim picture As ExcelPicture = sheet.Pictures(0)            '获取图片所在行、列位置            Dim row As String = picture.TopRow.ToString()            Dim column As String = picture.LeftColumn.ToString()            '输出获取结果            System.Console.Write((Convert.ToString((Convert.ToString("location:(") & row) + ",") & column) + ")")            System.Console.ReadLine()        End Sub    End ClassEnd Namespace

读取结果如图,图片所在位置为第八行、第四列:

 

—END—

 

posted @ 2022-04-24 11:06 E-iceblue 阅读(0) 评论(0) 编辑 收藏 举报
回帖
    优雅殿下

    优雅殿下 (王者 段位)

    2018 积分 (2)粉丝 (47)源码

    小小码农,大大世界

     

    温馨提示

    亦奇源码

    最新会员