EPPlus批量插入图片到Excel
#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的更多相关文章
- Python多线程Threading爬取图片,保存本地,openpyxl批量插入图片到Excel表中
之前用过openpyxl库保存数据到Excel文件写入不了,换用xlsxwriter 批量插入图片到Excel表中 1 import os 2 import requests 3 import re ...
- 【VBA】批量插入图片
解决如下问题: 需要批量导入图片到Excel 图片放在一个文件夹中 图片有严格的顺序关系,即按照:共通名_编号的方式命名. 图片格式统一,即均为同一格式. 有两种方式可以插入图片到Excel中,其一为 ...
- POI插入图片至Excel使用固定的长宽
使用POI在Excel里插入图片,如何使插入的图片使用固定的大小?先介绍原有的两种方式: 一种是指定开始和结尾单元格,然后从头画到尾,相当于平铺 还有一种就是仅指定开始的单元格,图片的大小跟这个单元格 ...
- NPOI插入图片到excel指定单元格
先看效果图 下载NPOI组件(2.0以上支持.xlsx和.xls的excel,2.0以下只支持.xls) NPOI下载官网http://npoi.codeplex.com 下载解压,里面有个dotne ...
- 20170813pptVBA批量插入图片
Sub AddSldIn() Dim Pre As Presentation Dim NewSld As Slide Set Pre = Application.ActivePresentation ...
- Excel催化剂开源第40波-Excel插入图片做到极致的效果
不知道是开发人员的自我要求不高还是用户的使用宽容度足够大,在众多Excel插入图片的版本中,都没有考虑到许多的可大幅度提升用户体验的细节处理. Excel催化剂虽然开发水平有限,但也在有限的能力下,尽 ...
- 个人永久性免费-Excel催化剂功能第89波-批量多图片转PDF
前一篇展示了从PDF中提取到有用信息如图片.文本.表格等功能,部分人可能对自己手中的转PDF格式的保护性有所顾虑,此篇从反向角度,提供数据保护作用,让PDF文件的数据保护更彻底,让文本型的PDF文件彻 ...
- 个人永久性免费-Excel催化剂功能第32波-空行空列批量插入和删除
批量操作永远是效率提升的王道,也是Excel用户们最喜欢能够实现的操作虽说有些批量操作不一定合适Excel的最佳实践操作,但万千世界,无奇不有,特别是在国人眼中领导最大的等级森严的职场环境下.Exce ...
- python 向excel 插入图片
这是工作中一个真实的需求. 要做gt excel 表,表中要插入图片. 1.要把图片resize 基本相同的大小. 2.通过一下脚本插入图片到excel #!/usr/bin/env python3 ...
随机推荐
- 关于等效的物理意义 On the Physical Meaning of Equivalence
当我们谈到两个物理概念是等效的,这意味着: 1.它们拥有同样的属性.例如质量和能量都可以弯曲空间. 2.它们可以在设计实验中无法区分彼此.例如恒星系统中行星的质量与恒星的引力. 3.它们可以互相转化. ...
- python实现Telnet远程登陆到设备并执行命令
#encoding=utf-8 import telnetlib import time def do_telnet(Host, username, password, finish, command ...
- SpringBoot2 配置
一.Properties与Yaml SpringBoot支持properties与yaml两种配置文件application.properties/application.yml yaml简单使用 1 ...
- 百度小程序button去掉默认边框
百度小程序button去掉默认边框: button::after{ border:none; }
- 深度学习:浅谈RNN、LSTM+Kreas实现与应用
主要针对RNN与LSTM的结构及其原理进行详细的介绍,了解什么是RNN,RNN的1对N.N对1的结构,什么是LSTM,以及LSTM中的三门(input.ouput.forget),后续将利用深度学习框 ...
- CS231-Multi-calss SVM的求导
接着上周的更,上周我们更到,在对图像的线性分类中,我们只用multi-class 的svm,然后我们得到以下的损失函数 这里每个数值代表为下: X 是一个 N by D 的矩阵,N 代表 traini ...
- Git-工作区和暂存区的概念
工作区(Working Directory):就是在电脑里能看到的目录,如testcase文件夹就是一个工作区. 版本库(Repository):工作区有一个隐藏目录.git,是Git的版本库. ...
- graphite custom functions
尊重作者的劳动,转载请注明作者及原文地址 http://www.cnblogs.com/txwsqk/p/6522854.html 参考 https://graphite.readthedocs.io ...
- SpringBoot启动过程分析
我们知道,SpringBoot程序的启动很简单,代码如下: @SpringBootApplication public class Application { public static void m ...
- list string 互转
List转字符串,用逗号隔开 List<string> list = new List<string>();list.Add("a");list.Add(& ...