• Excel生成报表之解决方案单元格富文本


    先看下单元格设置富文本的效果:

    先来看下微软Excel如何来设置富文本。

    一、微软Excel设置富文本

    1.首先在单元格C3中输入"Hello world".

    2.选中单元格C3中Hello文本,点击右键鼠标,在弹出的窗口中选择"单元格格式", 如图:

    3.在弹出的单元格窗口中,选择要设置的字体名称,大小,粗体等属性。

    4.设置好后点击确定按钮,就能看到Hello文本显示的效果。

    5.选择单元格C3中World文本,按设置Hello文本的方式设置World文本。就能完成单元格整个富文本的设置。

    二、用Acey.ExcelX实现的效果

    首先导出命名空间:

    View Code
     1         /// <summary>
     2         /// 这个例子展示如何设置单元格富文本。
     3      /// </summary>
     4         public void Sample()
     5         {
     6             //创建工作薄对象。
     7             IWorkbook workbook = ExcelxApplication.CreateWorkbook();
     8             //获取指定索引处的工作表对象。
     9             IWorksheet worksheet = workbook.Worksheets[0];
    10             //获取指定名称的单元格对象。
    11             ICell cell = worksheet.Cells["C3"];
    12             //设置单元格值。
    13             cell.Value = "Hello World";
    14             //获取指定开始位置和长度的单元格富文本对象。
    15             ICharacters characters = cell.Characters.SubCharacters(0, 5);
    16             //设置富文本对象的字体属性。
    17             characters.Font.Name = "楷体";
    18             characters.Font.Bold = true;
    19             characters.Font.Size = 18;
    20             characters.Font.Color = Color.Red;
    21 
    22             //获取指定开始位置的单元格富文本对象。
    23             characters = cell.Characters.SubCharacters(6);
    24             //设置富文本对象的字体属性。
    25             characters.Font.Name = "Verdana";
    26             characters.Font.Italic = true;
    27             characters.Font.Size = 16;
    28             characters.Font.Color = Color.Blue;
    29 
    30             //保存该工作薄为指定类型。
    31             workbook.SaveAs(@"d:\book1.xls", FileFormat.Excel97To2003);
    32         }

    其中ICharacters characters = cell.Characters.SubCharacters(0, 5);获取指定开始位置和长度的单元格富文本对象。相当于Excel中选择单元格C3中的Hello文本,

    用代码获取富文本对象后通过设置characters.Font.Name = "楷体"; characters.Font.Bold = true; characters.Font.Size = 18;characters.Font.Color = Color.Red;

    来完成对富文本对象字体的设置,类似在Excel中选择Hello后选择"单元格格式"的窗口中设置对应文本的字体属性。

    获取富文本的也可以用语句characters = cell.Characters.SubCharacters(6);来实现,获取富文本从指定开始位置到文本最后,不同于前一个语句获取富文本指定文本的开始位置和长度。

    三、总结

    无需安装微软Excel,用代码也能很轻松实现单元格富文本的效果。 下载最新版本到www.aceyoffice.com。如果您想对Acey.ExcelX有进一步了解,在网站下载帮助和Demo。

  • 相关阅读:
    location.replace与location.href,location.reload的区别
    JavaScript 中 this 的用法
    setTimeout 的用法
    ngRoute 和 ui.router 的使用方法和区别
    js正则匹配只能输入有效数字可加小数点
    正则表达式
    关于浮动与清除浮动
    当给一个元素的宽度设置为百分比的时候,百分比的计算值是由它的直接父级元素的宽度决定
    内联(行级)元素不能设置margin-top
    JS判断数据是否是JSON类型
  • 原文地址:https://www.cnblogs.com/happyfish78/p/2759519.html
Copyright © 2020-2023  润新知