关于向Excel中输入图片的问题

玥玥有钱花 2014-09-29 06:04:54
程序如下:
protected void Button1_Click(object sender, EventArgs e)
{
object missing = Type.Missing;
Excel.Application excel = new Excel.Application();
string path = @"C:\Users\fengpengfei\Desktop\轴承.xlsx";


Excel.Workbook wb = excel.Workbooks.Open(path, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
Excel.Worksheet ws = wb.Sheets[1];

excel.Visible = true;
InsertPicture("A2", @"C:\Users\fengpengfei\Desktop\轴承.xlsx",30,30);

excel.Workbooks.Close();
excel.Quit();

System.GC.Collect();
System.GC.WaitForPendingFinalizers();

//InsertPicture("excel.Cell[1,1]", "Images\\9.jpg", 594.0f, 154.0f);
}
public void InsertPicture(string Rangename, string PicturePath, float PictuteWidth, float PictureHeight)
{
Excel._Worksheet ws = new Excel.Worksheet();
Excel.Range rng = ws.get_Range(Rangename,Type.Missing);
rng.Select();
float PicLeft, PicTop;
PicLeft = Convert.ToSingle(rng.Left);
PicTop = Convert.ToSingle(rng.Top) + 1;
//PicWidth = Convert.ToSingle(rng.Width);
//PicHeight = Convert.ToSingle(rng.Height);
//参数含义:
//图片路径
//是否链接到文件
//图片插入时是否随文档一起保存
//图片在文档中的坐标位置(单位:points)
//图片显示的宽度和高度(单位:points)
//参数详细信息参见:http://msdn2.microsoft.com/zh-cn/library/aa221765(office.11).aspx
ws.Shapes.AddPicture(PicturePath, Microsoft.Office.Core.MsoTriState.msoFalse,
Microsoft.Office.Core.MsoTriState.msoTrue, PicLeft, PicTop, PictuteWidth, PictureHeight);
...全文
129 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
玥玥有钱花 2014-10-07
  • 打赏
  • 举报
回复
玥玥有钱花 2014-10-02
  • 打赏
  • 举报
回复
引用 5 楼 guwei4037 的回复:
[quote=引用 4 楼 fpf1228 的回复:] 多谢指教,我试试看一下
http://tonyqus.sinaapp.com/archives/221[/quote] 多谢!
玥玥有钱花 2014-10-02
  • 打赏
  • 举报
回复
引用 7 楼 sp1234 的回复:
你应该把 ws 变量做为参数传送给 InsertPicture 方法。 这是方法接口设计问题。不用考虑具体实现,在基本接口设计上就有漏洞。
谢谢指教!
  • 打赏
  • 举报
回复
你应该把 ws 变量做为参数传送给 InsertPicture 方法。 这是方法接口设计问题。不用考虑具体实现,在基本接口设计上就有漏洞。
  • 打赏
  • 举报
回复
引用 1 楼 fpf1228 的回复:
问题如下:
new Worksheet() ? 根本不能new,只能从 Workbook 中查询出 Worksheet。
全栈极简 2014-10-01
  • 打赏
  • 举报
回复
引用 4 楼 fpf1228 的回复:
多谢指教,我试试看一下
http://tonyqus.sinaapp.com/archives/221
玥玥有钱花 2014-10-01
  • 打赏
  • 举报
回复
多谢指教,我试试看一下
我本良人 2014-09-29
  • 打赏
  • 举报
回复
其实我也遇到过相同问题,调用COM ,不过我最后还是没找到解决方法, 只好改变策略了,试了一下NPOI,还不错,你也可以试试,换个方式可能就解决了
玥玥有钱花 2014-09-29
  • 打赏
  • 举报
回复
我用的是VS2010和Excel2007,不知道出了什么问题?请论坛诸位大神不吝指教!感激不尽!
玥玥有钱花 2014-09-29
  • 打赏
  • 举报
回复
问题如下:

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧