EPPlus - 在循环中添加多个图像非常慢

时间:2018-02-14 08:44:36

标签: c# epplus

我的EPPlus存在很大问题。当我使用本地资源(磁盘C :)创建20个图像的简单Excel文件时 - 一切正常 - 它持续约3秒。但是当我尝试使用> 200张图片时 - 我必须等待~20秒才能生成文件。有500件物品,我要等~4分钟......为什么?我能做些什么来解决这个问题? 那是我的代码:

            Image image = Image.FromFile(filePath);
            string name = "pic" + rowIndex.ToString() + columnIndex.ToString();
            using (ExcelPicture picture = ws.Drawings.AddPicture(name, image)) 
            {
                image.Dispose();
                picture.From.Column = columnIndex;
                picture.To.Column = columnIndex;

                picture.From.Row = rowIndex;
                picture.To.Row = rowIndex;

                picture.From.ColumnOff = Pixel2MTU(3);
                picture.From.RowOff = Pixel2MTU(2);

                picture.SetSize(width, height);
                if (position > 0)
                {
                    picture.SetPosition(0, position);
                }
            }

1 个答案:

答案 0 :(得分:0)

我已经注意到,尽管AddPicture在最新更新后速度有所提高-但是,设置图片的行和列偏移量正逐渐变慢。而且,当我分析源代码时,似乎对于每个此属性而言,XML上都在进行大量后台工作。