#region 测试EPPlus插入图片
        public static void Createsheel2()
        {          
            WebClient client = new WebClient();
            var downloadUrl = FileOperater.GetDownloadUrl("f736cf1950e64400b3ba69001b0b5a1b");
            var excelData = client.DownloadData(downloadUrl);
            var bytes = client.DownloadData("http://img1.soufunimg.com/message/images/card/tuanproj/201511/2015112703584458_s.jpg");
           
            using (Stream ms = new MemoryStream(excelData))
            {
                ExcelPackage excel;
                try
                {   
                    excel = new ExcelPackage(ms);
                    ExcelWorksheet ws = excel.Workbook.Worksheets[1];
                    ExcelWorkbook wb = excel.Workbook;
                    for (int i = 1; i < 7; i++)
                    {
                        excel.Workbook.Worksheets.Copy(ws.Name, ws.Name+"_"+i);//复制模板sheet
                        var drawings = excel.Workbook.Worksheets[i].Drawings;
                        foreach (ExcelDrawing excelDrawing in drawings)
                        {
                            ExcelPicture excelPicture = excelDrawing as ExcelPicture;
                            var name = excelPicture.Name;
                            //var aa = excelPicture.Image;
                            //var cc = excelPicture.ImageFormat;
                            //excelPicture.Image.Save(imgms, System.Drawing.Imaging.ImageFormat.Jpeg);
                        }
                    }
                    int vSheetCount = excel.Workbook.Worksheets.Count; //获取总Sheet页    
                    for (int i = 1; i <= vSheetCount; i++)
                    {
                        ws = excel.Workbook.Worksheets[i];
                        using (Stream imgms = new MemoryStream(bytes))
                        {
                            System.Drawing.Bitmap myimge = new System.Drawing.Bitmap(imgms);
                            ExcelPicture picture = null;
                            for (int j = 0; j <4; j++)
                            {
                                picture = ws.Drawings.AddPicture("a" + j, myimge);//插入图片
                                if (j >1)
                                {
                                    picture.SetPosition(560, 250 * (j - 2) + (j - 1) * 40);//设置图片的位置
                                }
                                else
                                {
                                    picture.SetPosition(330, 250 * j +(j+1)*40);//设置图片的位置
                                }
                                // picture.SetPosition(100*j, 100*j);//设置图片的位置                            
                                picture.SetSize(250, 220);//设置图片的大小
                            }
                        }
                    }
                    FileOperater.FileUpdate("f736cf1950e64400b3ba69001b0b5a1b", excel.GetAsByteArray());
                }
                catch (Exception ex)
                {
                    throw;
                }
            }             
        }
        #endregion

EPPlus批量插入图片到Excel的更多相关文章

  1. Python多线程Threading爬取图片,保存本地,openpyxl批量插入图片到Excel表中

    之前用过openpyxl库保存数据到Excel文件写入不了,换用xlsxwriter 批量插入图片到Excel表中 1 import os 2 import requests 3 import re ...

  2. 【VBA】批量插入图片

    解决如下问题: 需要批量导入图片到Excel 图片放在一个文件夹中 图片有严格的顺序关系,即按照:共通名_编号的方式命名. 图片格式统一,即均为同一格式. 有两种方式可以插入图片到Excel中,其一为 ...

  3. POI插入图片至Excel使用固定的长宽

    使用POI在Excel里插入图片,如何使插入的图片使用固定的大小?先介绍原有的两种方式: 一种是指定开始和结尾单元格,然后从头画到尾,相当于平铺 还有一种就是仅指定开始的单元格,图片的大小跟这个单元格 ...

  4. NPOI插入图片到excel指定单元格

    先看效果图 下载NPOI组件(2.0以上支持.xlsx和.xls的excel,2.0以下只支持.xls) NPOI下载官网http://npoi.codeplex.com 下载解压,里面有个dotne ...

  5. 20170813pptVBA批量插入图片

    Sub AddSldIn() Dim Pre As Presentation Dim NewSld As Slide Set Pre = Application.ActivePresentation ...

  6. Excel催化剂开源第40波-Excel插入图片做到极致的效果

    不知道是开发人员的自我要求不高还是用户的使用宽容度足够大,在众多Excel插入图片的版本中,都没有考虑到许多的可大幅度提升用户体验的细节处理. Excel催化剂虽然开发水平有限,但也在有限的能力下,尽 ...

  7. 个人永久性免费-Excel催化剂功能第89波-批量多图片转PDF

    前一篇展示了从PDF中提取到有用信息如图片.文本.表格等功能,部分人可能对自己手中的转PDF格式的保护性有所顾虑,此篇从反向角度,提供数据保护作用,让PDF文件的数据保护更彻底,让文本型的PDF文件彻 ...

  8. 个人永久性免费-Excel催化剂功能第32波-空行空列批量插入和删除

    批量操作永远是效率提升的王道,也是Excel用户们最喜欢能够实现的操作虽说有些批量操作不一定合适Excel的最佳实践操作,但万千世界,无奇不有,特别是在国人眼中领导最大的等级森严的职场环境下.Exce ...

  9. python 向excel 插入图片

    这是工作中一个真实的需求. 要做gt excel 表,表中要插入图片. 1.要把图片resize 基本相同的大小. 2.通过一下脚本插入图片到excel #!/usr/bin/env python3 ...

随机推荐

  1. Ubuntu下mount命令的好用处

    mount,也就是挂载.如果是让电脑自己挂载Windows的分区,也就是你直接在文件管理器里点击那些Windows的盘符,系统就会帮助你自动挂载,不过其挂载后的名称太长太复杂,不方便终端操作.所以还是 ...

  2. git关联githup和码云

    1.与已有的本地仓库关联git remote add origin git@github.com:michaelliao/learngit.git然后就可以协作开发push与pull 2.第二种方法直 ...

  3. 上传本地文件到github(码云)上(小乌龟方式,sourcetree方式)

    一:上传文件到 github 1.打开 https://github.com/ 登录github账号(没有的自己创建),点击右上角创建新仓库 在打开的页面中填写  名字 点击 Create repos ...

  4. Linux下dmesg命令处理故障和收集系统信息的7种用法

    目录: <syslog之一:Linux syslog日志系统详解> <syslog之二:syslog协议及rsyslog服务全解析> <syslog之三:建立Window ...

  5. Nginx单向认证的安装配置

    Nginx单向认证的安装配置 首先系统要已经安装了openssl,以下是使用openssl安装配置单向认证的执行步骤与脚本: #------------------------------------ ...

  6. git status的用法

    git status 用于查看工作区与暂存区的已tracked及untracked的所有文件status. 以下为help结果. git help status NAME git-status - S ...

  7. Git for Windows之日志查看与版本切换

    1.查看本地版本库的修改日志 (1).通过log指令查看完整日志 (2).通过 log --pretty=oneline查看简易版日志 2.版本切换 (1).切换到本地版本库最新的版本,通过reset ...

  8. pigz 压缩

    压缩工具--pigz 压缩: tar cvf - 目录名 | pigz -9 -p 24 > file.tgz pigz:用法-9是压缩比率比较大,-p是指定cpu的核数. 解压: pigz - ...

  9. Grape简介

    什么是Grape Grape是Ruby中的一个类REST API框架,被设计用于运行在Rack上或弥补已有的web应用框架(比如Rails或者Sinatra),Grape提供了一个简单的DSL用于方便 ...

  10. Maven内置属性,pom属性

    内置属性(Maven预定义,用户可以直接使用) ${basedir}表示项目根目录,即包含pom.xml文件的目录; ${version}表示项目版本; ${project.basedir}同${ba ...