0

如何在创建的 excel 文件中使用资源中的图像作为页脚?

这肯定行不通:

xlWorkSheet.PageSetup.CenterFooterPicture = Properties.Resources.stopka;

因为:无法将类型“System.Drawing.Bitmap”隐式转换为 Microsoft.Office.Interop.Excel.Graphic'

好的,这有效:

  xlWorkSheet.PageSetup.CenterFooterPicture.Filename = Application.StartupPath + "\\stopka.png";
  xlWorkSheet.PageSetup.CenterFooterPicture.LockAspectRatio = Microsoft.Office.Core.MsoTriState.msoTrue;
  xlWorkSheet.PageSetup.CenterFooterPicture.Width = 590;
  xlWorkSheet.PageSetup.CenterFooter = "&G";

但这不是我需要的。我想从项目资源而不是从应用程序文件夹中获取图像。

4

2 回答 2

1

这有效:

System.Reflection.Assembly CurrAssembly = System.Reflection.Assembly.LoadFrom(System.Windows.Forms.Application.ExecutablePath);
  System.IO.Stream stream = CurrAssembly.GetManifestResourceStream("Oferty_BMGRP.Resources.stopka.png");
  string temp = Path.GetTempFileName();
  System.Drawing.Image.FromStream(stream).Save(temp);


  xlWorkSheet.PageSetup.CenterFooterPicture.Filename = temp; //Application.StartupPath + "\\Resources\\stopka.png";
  xlWorkSheet.PageSetup.CenterFooterPicture.LockAspectRatio = Microsoft.Office.Core.MsoTriState.msoTrue;
  xlWorkSheet.PageSetup.CenterFooterPicture.Width = 590;
  xlWorkSheet.PageSetup.CenterFooter = "&G";

图像“stopka.png”必须设置为嵌入资源。

于 2013-04-09T13:30:57.430 回答
0

由于微软没有为 CenterFooterPicture 属性提供设置选项

以下是 MSDN 中可用的文档

CenterFooterPicture - 返回一个 Graphic 对象,该对象表示页脚中心部分的图片。用于设置图片的属性。

参考链接

于 2013-04-09T09:06:24.843 回答