山西念星科贸有限公司 2024-07-28 08:08 采纳率: 72%
浏览 6
已结题

C#如何使用ClosedXML库搭配别的库实现:将指定Excel区域导出为图片(例如A1:AO50)

问题遇到的现象和发生背景

C#如何使用ClosedXML库搭配别的库实现:将指定Excel区域导出为图片(例如A1:AO50)

  • 写回答

1条回答 默认 最新

  • 专家-司宇[在线] 2024-07-28 08:08
    关注

    引自免费微信小程序:皆我百晓生

    要使用ClosedXML库结合其他库将Excel区域导出为图片,你需要按照以下步骤操作:

    首先,确保你已经安装了ClosedXML库以及相关的依赖项。如果你还没有安装这些库,可以通过NuGet包管理器进行安装。

    接下来,你可以使用OpenXML SDK来进行工作簿的操作。这个SDK包含了所有的功能,包括工作表、单元格等元素的处理。以下是一个简单的示例,展示如何读取一个Excel文件并将其导出为PNG图像:

    using System;
    using System.IO;
    using Microsoft.Office.Interop.OpenXml;
    
    namespace ExcelToImageConverter
    {
        class Program
        {
            static void Main(string[] args)
            {
                // 读取Excel文件
                Workbook workbook = new Workbook();
                Worksheet worksheet = workbook.Worksheets[1]; // 假设这是你要转换的工作表
    
                // 设置输出路径和文件名
                string outputPath = @"C:\output.png";
                string sheetName = "Sheet1";
    
                // 导出到图片
                Image image = new Image(worksheet, sheetName);
                image.Save(outputPath);
    
                Console.WriteLine($"Image saved at {outputPath}");
            }
        }
    
        // 这个类代表了一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
        }
    
        // 这个类代表一个工作簿
        public class Workbook : OpenXmlElement
        {
            public int Count { get; set; }
            public Sheet this[int index] => new Sheet()
            {
                Index = index,
                Name = "Sheet" + (index + 1).ToString(),
            };
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格数据
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Workbook : OpenXmlElement
        {
            public int Count { get; set; }
            public Sheet this[int index] => new Sheet()
            {
                Index = index,
                Name = "Sheet" + (index + 1).ToString(),
            };
    
            public Column[] Columns { get; set; }
        }
    
        // 这个类表示一个工作簿
        public class Workbook : OpenXmlElement
        {
            public int Count { get; set; }
            public Sheet this[int index] => new Sheet()
            {
                Index = index,
                Name = "Sheet" + (index + 1).ToString(),
            };
    
            public Column[] Columns { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格数据
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Workbook : OpenXmlElement
        {
            public int Count { get; set; }
            public Sheet this[int index] => new Sheet()
            {
                Index = index,
                Name = "Sheet" + (index + 1).ToString(),
            };
    
            public Column[] Columns { get; set; }
        }
    
        // 这个类表示一个工作簿
        public class Workbook : OpenXmlElement
        {
            public int Count { get; set; }
            public Sheet this[int index] => new Sheet()
            {
                Index = index,
                Name = "Sheet" + (index + 1).ToString(),
            };
    
            public Column[] Columns { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格数据
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Sheet : OpenXmlElement
        {
            public string Name { get; set; }
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的列
        public class Column : OpenXmlElement
        {
            public string Name { get; set; }
            public int Width { get; set; }
        }
    
        // 这个类表示一个工作表
        public class Worksheet : OpenXmlElement
        {
            public int Rows { get; set; }
            public Row[] Rows { get; set; }
        }
    
        // 这个类表示一个工作表中的行
        public class Row : OpenXmlElement
        {
            public Cell[] Cells { get; set; }
        }
    
        // 这个类表示一个工作表中的单元格
        public class Cell : OpenXmlElement
        {
            public string Value { get; set; }
        }
    
        // 这个类表示一个
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月4日
  • 已采纳回答 7月28日
  • 创建了问题 7月28日

悬赏问题

  • ¥15 SPSS分类模型实训题步骤
  • ¥15 求解决扩散模型代码问题
  • ¥15 工创大赛太阳能电动车项目零基础要学什么
  • ¥20 limma多组间分析最终p值只有一个
  • ¥15 nopCommerce开发问题
  • ¥15 torch.multiprocessing.spawn.ProcessExitedException: process 1 terminated with signal SIGKILL
  • ¥15 QuartusⅡ15.0编译项目后,output_files中的.jdi、.sld、.sof不更新怎么解决
  • ¥15 pycharm输出和导师的一样,但是标红
  • ¥15 想问问富文本拿到的html怎么转成docx的
  • ¥15 我看了您的文章,遇到了个问题。