IExportObjectListener
内容
[
隐藏
]IExportObjectListener interface
允许用户在导出时操作对象。
public interface IExportObjectListener
方法
姓名 | 描述 |
---|---|
ExportObject(ExportObjectEvent) | 导出一个对象。 |
例子
下面的示例创建一个工作簿,在其中打开一个名为designer.xls 的文件,并使工作簿的水平和垂直滚动条不可见。然后,它在电子表格中分别用整数值和字符串值替换两个字符串值,最后将更新后的文件发送到客户端浏览器。
[C#]
//IExportObjectListener的自定义实现
class CustomExportObjectListener : IExportObjectListener
{
private int imgIdx = 0;
public object ExportObject(ExportObjectEvent e)
{
Object source = e.GetSource();
if (source is Shape)
{
Shape shape = (Shape)source;
string url = null;
switch (shape.MsoDrawingType)
{
case MsoDrawingType.Picture:
{
url = SaveImage(((Picture)shape).Data, imgIdx, ((Picture)shape).ImageFormat);
break;
}
}
if (url != null)
{
imgIdx++;
}
return url;
}
return null;
}
private string SaveImage(byte[] data, int imgIdx, ImageFormat format)
{
//这里将图片保存到任意位置,然后返回生成的html可以获取图片的url(相对或绝对)
return "temp1/temp2.png";
}
}
//用自定义监听器保存html文件
HtmlSaveOptions saveOptions = new HtmlSaveOptions();
saveOptions.ExportObjectListener = new CustomExportObjectListener();
Stream stream = File.Create(outfn);
book.Save(stream, saveOptions);
stream.Flush();
stream.Close();
也可以看看
- 命名空间 Aspose.Cells
- 部件 Aspose.Cells