在 C# 中将 excel 文件转换为 jpg

Convert excel file to jpg in c#

我正在尝试使用 Spire dll 将 excel 文件转换为 jpg 文件。

所以我有一个这样的 xlsm 文件:

我使用此代码将其转换为 jpg 格式:

    Workbook workbook = new Workbook();
    workbook.LoadFromFile(@"D:\a.xlsm");
    Worksheet sheet = workbook.Worksheets[1];
    sheet.SaveToImage("exceltoimage.jpg");
    System.Diagnostics.Process.Start("exceltoimage.jpg");

但是输出是这样的,有些单元格无法转换为什么我的意思是 (#name)?

我的页面中有此警告:

我终于用上了Aspose :

http://www.aspose.com/community/files/51/.net-components/aspose.cells-for-.net/category1129.aspx

示例:

http://www.aspose.com/docs/display/cellsnet/Converting+Worksheet+to+Image

我的示例代码:

 Workbook workbook = new Workbook(@"D:\a.xlsm");
            //Get the first worksheet.
            Worksheet sheet = workbook.Worksheets[12];

            //Define ImageOrPrintOptions
            ImageOrPrintOptions imgOptions = new ImageOrPrintOptions();
            //Specify the image format
            imgOptions.ImageFormat = System.Drawing.Imaging.ImageFormat.Jpeg;
            //Only one page for the whole sheet would be rendered
            imgOptions.OnePagePerSheet = true;

            //Render the sheet with respect to specified image/print options
            SheetRender sr = new SheetRender(sheet, imgOptions);
            //Render the image for the sheet
            Bitmap bitmap = sr.ToImage(0);

            //Save the image file specifying its image format.
            bitmap.Save(@"d:\SheetImage.jpg");

对我来说效果很好。