zoukankan      html  css  js  c++  java
  • 2.4.1 用NPOI操作EXCEL关于HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)的参数

    NPOI教程:http://www.cnblogs.com/atao/archive/2009/11/15/1603528.html

    之所有说NPOI强大,是因为常用的Excel操作她都可以通过编程的方式完成。这节开始,我们开始学习NPOI的画图功能。先从最简单的开始,画一条直线:

    对应的代码为:

    复制代码
    HSSFSheet sheet1 = hssfworkbook.CreateSheet("Sheet1");
    HSSFPatriarch patriarch = sheet1.CreateDrawingPatriarch();
    HSSFClientAnchor a1 = new HSSFClientAnchor(255, 125, 1023, 150, 0, 0,2, 2);
    HSSFSimpleShape line1 = patriarch.CreateSimpleShape(a1);

    line1.ShapeType = HSSFSimpleShape.OBJECT_TYPE_LINE;
    line1.LineStyle = HSSFShape.LINESTYLE_SOLID;
    //在NPOI中线的宽度12700表示1pt,所以这里是0.5pt粗的线条。
    line1.LineWidth = 6350;
    复制代码

    通常,利用NPOI画图主要有以下几个步骤:
    1. 创建一个Patriarch;
    2. 创建一个Anchor,以确定图形的位置;
    3. 调用Patriarch创建图形;
    4. 设置图形类型(直线,矩形,圆形等)及样式(颜色,粗细等)。

    关于HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)的参数,有必要在这里说明一下:
    dx1:起始单元格的x偏移量,如例子中的255表示直线起始位置距A1单元格左侧的距离;
    dy1:起始单元格的y偏移量,如例子中的125表示直线起始位置距A1单元格上侧的距离;
    dx2:终止单元格的x偏移量,如例子中的1023表示直线起始位置距C3单元格左侧的距离;
    dy2:终止单元格的y偏移量,如例子中的150表示直线起始位置距C3单元格上侧的距离;
    col1:起始单元格列序号,从0开始计算;
    row1:起始单元格行序号,从0开始计算,如例子中col1=0,row1=0就表示起始单元格为A1;
    col2:终止单元格列序号,从0开始计算;
    row2:终止单元格行序号,从0开始计算,如例子中col2=2,row2=2就表示起始单元格为C3;

    最后,关于LineStyle属性,有如下一些可选值,对应的效果分别如图所示:

  • 相关阅读:
    android中statusbar高度的问题
    int和short做循环计数器时的效率问题
    解决Rectangle Packing问题【原创】
    10个android开源项目(转)
    自动编译.9.png文件
    通过wifi调试android程序
    HBase 性能优化笔记
    [转载]定制CentOS 6.3 自动安装盘
    region split时metascan出现regioninfo为空
    Google Dremel 原理 如何能3秒分析1PB
  • 原文地址:https://www.cnblogs.com/firstcsharp/p/4896121.html
Copyright © 2011-2022 走看看