Aspose.Cells for .NET(点击下载)是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。
本文将为开发者带来如何使用Aspose.Cells for .NET将Excel工作簿转换为不同的格式,包括XPS格式、MHTML格式、HTML格式、Markdown格式等等。
将Excel工作簿转换为XPS
XPS文档格式由结构化XML标记组成,该标记定义文档的布局和每个页面的可视外观,以及用于分发,存档,呈现,处理和打印文档的呈现规则。
XPS的标记语言是XAML的一个子集,它允许它将矢量图形元素合并到文档中,使用XAML标记Windows Presentation Foundation(WPF)基元。
事实上,XPS文件是使用Open Packaging Conventions的Unicoded ZIP存档,其中包含组成文档的文件。 这些包括每页的XML标记文件,文本,嵌入字体,光栅图像,2D矢量图形以及数字版权管理信息。 只需在支持ZIP文件的应用程序中打开它,即可检查XPS文件的内容。从Aspose.Cells 6.0.0开始,支持Microsoft Excel到XPS转换。
//文档目录的路径 string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //打开Excel文件 Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(dataDir + "Book1.xls"); //获取第一个工作表 Aspose.Cells.Worksheet sheet = workbook.Worksheets[0]; //应用不同的图像和打印选项 Aspose.Cells.Rendering.ImageOrPrintOptions options = new Aspose.Cells.Rendering.ImageOrPrintOptions(); //设置格式 options.SaveFormat = SaveFormat.XPS; //根据指定的打印选项渲染工作表 Aspose.Cells.Rendering.SheetRender sr = new Aspose.Cells.Rendering.SheetRender(sheet, options); //保存 sr.ToImage(0, dataDir + "out_printingxps.out.xps"); //将整个工作簿导出到XPS Aspose.Cells.Rendering.WorkbookRender wr = new Aspose.Cells.Rendering.WorkbookRender(workbook, options); wr.ToImage(dataDir + "out_whole_printingxps.out.xps");
将Excel工作簿转换为MHTML文件
MHTML将普通HTML与外部资源(即通常链接在一起的内容,如图像,动画,音频等)组合到一个文件中。它们用于具有.mht文件扩展名的电子邮件。下面的代码示例显示如何将工作簿另存为MHTML文件。
//文档目录的路径 string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //指定文件路径 string filePath = dataDir + "Book1.xlsx"; //指定HTML保存选项 HtmlSaveOptions sv = new HtmlSaveOptions(SaveFormat.MHtml); //实例化工作簿并打开模板XLSX文件 Workbook wb = new Workbook(filePath); //保存MHT文件 wb.Save(filePath + ".out.mht", sv);
将Excel工作簿转换为HTML
Aspose.Cells使用HtmlSaveOptions 类提供了控制输出HTML的几个方面的灵活性。下面的代码示例演示如何将工作簿另存为HTML文件。
//文档目录的路径 string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //指定文件路径 string filePath = dataDir + "sample.xlsx"; //将示例excel文件加载到工作簿对象中 Workbook wb = new Workbook(filePath); //以HTML格式保存 wb.Save(dataDir + "ConvertingToHTMLFiles_out.html", SaveFormat.Html);
设置HTML的图像首选项
Aspose.Cells为HtmlSaveOptions类公开了ImageOptions,允许开发人员在将电子表格保存为HTML格式时指定图像首选项。
以下是可以应用的一些图像设置的详细信息:
- 图像类型:指定图像类型。 请注意,所有形状(包括图表)都在输出HTML中呈现为图像。
- 平滑模式:指定填充区域的线条,曲线和边缘的消除锯齿。
- 文本渲染:指定文本呈现的质量。
- 质量:当ImageType指定为Jpeg时,指定0到100之间的图像质量。
- 垂直分辨率:获取或设置图像的垂直分辨率,以每英寸点数为单位。
- 水平分辨率:获取或设置图像的水平分辨率,以每英寸点数为单位。
- Tiff Compression:当图像类型指定为Tiff时,获取或设置图像的压缩类型。
- 透明:指示当ImageFormat指定为Png时图像的背景是否应该是透明的。
下面的代码演示了如何使用HtmlSaveOptions.ImageOptions指定不同的首选项。
//文档目录的路径. string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //指定文件路径 string filePath = dataDir + "Book1.xlsx"; //加载要转换的电子表格 Workbook book = new Workbook(filePath); //创建HtmlSaveOptions的实例 HtmlSaveOptions saveOptions = new HtmlSaveOptions(SaveFormat.Html); //将ImageFormat设置为PNG saveOptions.ImageOptions.ImageFormat = System.Drawing.Imaging.ImageFormat.Jpeg; //将SmoothingMode设置为AntiAlias saveOptions.ImageOptions.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; //将TextRenderingHint设置为AntiAlias saveOptions.ImageOptions.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; //在传递HtmlSaveOptions的对象时将电子表格保存到HTML book.Save( dataDir + "output.html", saveOptions);
将Excel工作簿转换为Markdown
要将活动工作表导出到Markdown,请将SaveFormat.Markdown作为Workbook.Save方法的第二个参数传递。您还可以使用MarkdownSaveOptions类指定将工作表导出到Markdown的其他设置。
下面的代码示例演示如何使用SaveFormat.Markdown枚举成员将活动工作表导出到Markdown。
//打开模板文件 Workbook workbook = new Workbook(sourceDir + "Book1.xlsx"); //另存为Markdown workbook.Save(outputDir + "Book1.md", SaveFormat.Markdown);