OFD板式文件创建JAVA工具-EASYOFD 二、创建图形

     JAVA版本的OFD板式文件创建工具easyofd.
     功能包含了图像、 图像、 文字、和模版页功能。同时也支持OFD文件的数字签名及验签,电子签章及验签。
     本JAVA版本的easyofd使用原生方式创建板式文件,不依赖JAVA的SWT库。

     代码地址:https://github.com/11627685/easyofd-java

     项目地址:http://wiki.easyofd.cn/zh/JAVA
     浏览器查看OFD文件控件地址: http://www.easyofd.cn/

 本章节介绍OFD中基础的图形绘制相关操作,主要包括了线、矩形、圆和椭圆。也预留了接口支持特殊图形。

注意:本文中所有的单位都MM。

一、标尺线

  我们先利用easyofd的线功能,绘制一把尺子测量A4纸张。

1.1 绘制方法

1.2 关键代码

  以下代码从 0,100 的开始坐标 到 210 ,100的结束坐标画一条直线

// 1 创建一个OFD文档
OFDocument ofDocument = new OFDocument();
// 2 创建一页
OFDPage page = new OFDPage(ofDocument);
ofDocument.addPage(page);
// 3 增加一条线
page.addLine(0,100,210,100);

// 4 保存
OutputStream os =new FileOutputStream("XML/path/lines.ofd");
ofDocument.save(os);

Copy

  利用本方法就可以快速完成标尺的绘制工作,主要代码如下:

page.addLine(0,100,210,100);
        //X轴刻度
for(int n=0;n<=210/10;n++)
{
    page.addLine(n*10,100,n*10,102);
    page.addText((n*10)+"",n*10,110);
}

page.addLine(50,0,50,300);
        //Y轴刻度
for(int n=0;n<=300/10;n++)
{
    page.addLine(50,n*10,52,n*10);
    page.addText((n*10)+"",55, n*10+1);
}

Copy

1.3 文件效果

  OFD软件展示结果如下图:

标尺.png

  完整代码

二、 绘制线

2.1 线的颜色

  样例代码如下:

//线宽 颜色
CTColor color=new CTColor();
color.setValue("255 0 0");
page.addLine(10,10,100,10,2.0,color);

Copy

2.2 线的宽度

  • addLine
    public CTPageBlock.PathObject addLine(double x1,
                                          double y1,
                                          double x2,
                                          double y2,
                                          java.lang.Double lineWidth,
                                          CTColor color)

    在页面上增加一条直线

    参数:

    x1 - 开始X坐标

    y1 - 开始Y坐标

    x2 - 结束X坐标

    y2 - 结束Y坐标

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    color - 颜色

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

//线宽 颜色
CTColor color=new CTColor();
color.setValue("255 0 0");
page.addLine(10,10,100,10,2.0,color);

Copy

2.3 线的虚线的重复样式

  • addLine
    public CTPageBlock.PathObject addLine(double x1,
                                          double y1,
                                          double x2,
                                          double y2,
                                          java.lang.Double lineWidth,
                                          CTColor color,
                                          java.lang.Double dashOffset,
                                          java.lang.String dashPattern,
                                          java.lang.String cap)

    在页面上增加一条直线

    参数:

    x1 - 开始X坐标

    y1 - 开始Y坐标

    x2 - 结束X坐标

    y2 - 结束Y坐标

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    color - 颜色

    dashOffset - 虚线重复样式开始的位置,默认值为 0。当 DashPattern 不出现时,该参数无效

    dashPattern - 虚线的重复样式。默认值为空。虚线样式的控制效果见表 21

    cap - 线端点样式,枚举值,指定了一条线的端点样式。 可取值为: Butt Round Square 默认值为 Butt

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

//测试 20 线
//虚线
CTColor color2=new CTColor();
color2.setValue("255 0 255");
page.addLine(10,20,100,20,2.0,color2,null,"10 10",null);
//测试 30 线
page.addLine(10,30,100,30,2.0,null,5.0,"10 10",null);

Copy

dashOffset 和 dashPattern 样式可以参考:wiki.easyofd.cn/OFD标准/页面描述#DashPattern

2.4 线端点样式

  绘制方法同2.3线的虚线的重复样式。
  样例代码如下:

//测试 40 线
page.addLine(50,40,70,40,2.0,null,null,null,"Round");
page.addLine(50,50,70,50,2.0,null,null,null,"Square");
page.addLine(50,60,70,60,2.0,null,null,null,null);

Copy

cap 线端点样式样式可以参考: wiki.easyofd.cn/OFD标准/页面描述#Linecap

2.5 线的连接

  因上述线段都是一个独立的单元,因此线段的连接是不起作用的,
    解决方式一:通过三、绘制矩形解决
    解决方式二:需要使用原始的方法,把需呀连接的线段组合在一个绘制路径内。下面的例子通过指定AbbreviatedData和 boundary来完成线的连接设置。

  方式二样例代码如下:

//线条连接样式 Linejoin
// 因为是独立的两个线段,所有不会有效果,解决路径 一 通过矩形 二 自己设置绘制的path内容,都在一个path内设置有效
CTBoundary boundary=new CTBoundary(0,0,100,100);
//测试 70 线
String  abbreviatedData= "M 65 75 L 70 70 L 75 75" ;
CTPageBlock.PathObject pathObject= page.addPathObject(abbreviatedData,boundary);
pathObject.setJoin("Round");
pathObject.setLineWidth(2.0);

abbreviatedData= "M 75 85 L 80 80 L 85 85" ;
CTPageBlock.PathObject pathObject2= page.addPathObject(abbreviatedData,boundary);
pathObject2.setJoin("Bevel");
pathObject2.setLineWidth(2.0);

Copy

AbbreviatedData的具体内容可以参考: wiki.easyofd.cn/OFD标准/图形

2.6 文件效果

baselines.png

三、绘制矩形

3.1 基本矩形

  基本矩形绘制方法及参数如下:

  样例代码如下:

page.addSquare(20,15,100,10);

Copy

3.2 矩形填充

  设置参数addSquare的fillColor,就可以对矩形内进行填充。矩形填充的绘制方法及参数如下:

  样例代码如下:

CTColor color2=new CTColor();
color2.setValue("255 0 255");
page.addSquare(20,30,100,10,null,color2);

Copy

3.3 矩形线颜色

  设置参数addSquare的strokeColor,就可以对矩形线的颜色进行设置。矩形线颜色绘制方法及参数同3.2:

  样例代码如下:

CTColor color=new CTColor();
color.setValue("255 0 0");
page.addSquare(20,45,100,10,color,null);

Copy

3.4 矩形线样式

  参数fdashOffset 和 dashPattern可以设置矩形线样式。

  • addSquare
    public CTPageBlock.PathObject addSquare(int x,
                                            int y,
                                            int w,
                                            int h,
                                            CTColor strokeColor,
                                            CTColor fillColor,
                                            java.lang.Double lineWidth,
                                            java.lang.Double dashOffset,
                                            java.lang.String dashPattern)

    在页面上增加矩形

    参数:

    x - 开始X坐标

    y - 开始Y坐标

    w - 宽度

    h - 高度

    strokeColor - 颜色

    fillColor - 填充颜色

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    dashOffset - 虚线重复样式开始的位置,默认值为 0。当 DashPattern 不出现时,该参数无效

    dashPattern - 虚线的重复样式。默认值为空。虚线样式的控制效果见表 21

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

page.addSquare(20,60,100,10,color,null,2.5,0.0,"5 5");

Copy

dashOffset 和 dashPattern 样式可以参考:wiki.easyofd.cn/OFD标准/页面描述#DashPattern

3.5 矩形线连接样式

  参数dashOffset和dashPattern可以设置矩形线连接样式。

  • addSquare
    public CTPageBlock.PathObject addSquare(int x,
                                            int y,
                                            int w,
                                            int h,
                                            CTColor strokeColor,
                                            CTColor fillColor,
                                            java.lang.Double lineWidth,
                                            java.lang.Double dashOffset,
                                            java.lang.String dashPattern,
                                            java.lang.String cap,
                                            java.lang.String join,
                                            java.lang.Double miterLimit)

    在页面上增加矩形

    参数:

    x - 开始X坐标

    y - 开始Y坐标

    w - 宽度

    h - 高度

    strokeColor - 颜色

    fillColor - 填充颜色

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    dashOffset - 虚线重复样式开始的位置,默认值为 0。当 DashPattern 不出现时,该参数无效

    dashPattern - 虚线的重复样式。默认值为空。虚线样式的控制效果见表 21

    cap - 线端点样式,枚举值,指定了一条线的端点样式。 可取值为: Butt Round Square 默认值为 Butt

    join - 线条连接样式,指定了两个线的端点结合时采用的样式 可取值为:Miter Round Bevel 默认值为 Miter

    miterLimit - Join 为 Miter 时小角度结合长度点的的截断值,默认值为 3.528。当 Join 不等于 Miter 时该参数无效

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

page.addSquare(20,80,100,10,color,null,3.0,0.0,null,null,"Round",null);
page.addSquare(20,100,100,10,color,null,3.0,0.0,null,null,"Bevel",null);

Copy

join 线条连接样式可以参考: wiki.easyofd.cn/OFD标准/页面描述#Linejoin

cap 线端点样式样式可以参考: wiki.easyofd.cn/OFD标准/页面描述#Linecap

miterLimit 截断值可以参考: wiki.easyofd.cn/OFD标准/页面描述#Miterlimit

3.6 文件效果

squares.png

四、绘制圆和五角星

4.1 绘制基本圆

  绘制圆的基本参数就是圆心和半径。

  样例代码如下:

page.addCircle(45,20,15);

Copy

4.2 圆填充

  参数fillColor可以设置圆的圆填充颜色。

  样例代码如下:

CTColor color=new CTColor();
color.setValue("255 0 0");
page.addCircle(45,100,15,null,color);

Copy

4.3 圆线颜色

  设置参数addCircle的strokeColor,就可以对圆形线的颜色进行设置。矩形线颜色绘制方法及参数同4.2:

  样例代码如下:

CTColor color=new CTColor();
color.setValue("255 0 0");
page.addCircle(45,60,15,color,null);

Copy

4.4 圆线样式

  参数dashOffset和dashPattern可以设置圆的线样式。

  • addCircle
    public CTPageBlock.PathObject addCircle(double x,
                                            double y,
                                            double r,
                                            CTColor strokeColor,
                                            CTColor fillColor,
                                            java.lang.Double lineWidth,
                                            java.lang.Double dashOffset,
                                            java.lang.String dashPattern)

    在页面上增加圆形

    参数:

    x - 原点X坐标

    y - 原点Y坐标

    r - 半径

    strokeColor - 颜色

    fillColor - 填充颜色

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    dashOffset - 虚线重复样式开始的位置,默认值为 0。当 DashPattern 不出现时,该参数无效

    dashPattern - 虚线的重复样式。默认值为空。虚线样式的控制效果见表 21

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

page.addCircle(45,140,15,null,null,2.0,null,"1 1");

Copy

dashOffset 和 dashPattern 样式可以参考:wiki.easyofd.cn/OFD标准/页面描述#DashPattern

4.5 绘制五角星

  只需要调用page的addPentagram方法,就可以很轻松的绘制一个五角星。该方法的参数分别是的圆心位置和半径。

  样例代码如下:

CTColor color=new CTColor();
color.setValue("255 0 0");
page.addCircle(140,50,20);
CTPageBlock.PathObject pathObject=page.addPentagram(140,50,20,color);
pathObject.setStroke(false);

Copy

4.6 文件效果

circle.png

五、绘制椭圆

5.1 绘制基本椭圆

  与圆类似,椭圆也是需要椭圆的圆心 、椭圆的长轴和椭圆的短轴。

  • addEllipse
    public CTPageBlock.PathObject addEllipse(double x,
                                             double y,
                                             double a,
                                             double b,
                                             java.lang.Double lineWidth)

    在页面上增加椭圆

    参数:

    x - 原点X坐标

    y - 原点Y坐标

    a - 表示椭圆的长轴长度,

    b - 表示椭圆的短轴长度。

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

page.addEllipse(45,20,15,15,null);

Copy

5.2 椭圆填充

  参数strokeColor可以设置椭圆填充颜色。

  • addEllipse
    public CTPageBlock.PathObject addEllipse(double x,
                                             double y,
                                             double a,
                                             double b,
                                             java.lang.Double lineWidth,
                                             CTColor strokeColor,
                                             CTColor fillColor)

    在页面上增加椭圆

    参数:

    x - 原点X坐标

    y - 原点Y坐标

    a - 表示椭圆的长轴长度,

    b - 表示椭圆的短轴长度。

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    strokeColor - 颜色

    fillColor - 填充颜色

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

CTColor color=new CTColor();
color.setValue("255 0 0");
page.addEllipse(45,90,30,15,null,null,color);

Copy

5.3 椭圆线颜色

  参数strokeColor可以设置椭圆线颜色。

  样例代码如下:

page.addEllipse(45,60,30,15,null,color,null);

Copy

5.4 椭圆线样式

  参数dashOffset和dashPattern可以设置椭圆的线样式。

  • addEllipse
    public CTPageBlock.PathObject addEllipse(double x,
                                             double y,
                                             double a,
                                             double b,
                                             CTColor strokeColor,
                                             CTColor fillColor,
                                             java.lang.Double lineWidth,
                                             java.lang.Double dashOffset,
                                             java.lang.String dashPattern)

    在页面上增加椭圆

    参数:

    x - 原点X坐标

    y - 原点Y坐标

    a - 表示椭圆的长轴长度,

    b - 表示椭圆的短轴长度。

    strokeColor - 颜色

    fillColor - 填充颜色

    lineWidth - 线宽,非负浮点数,指定了路径绘制时线的宽度。默认值为 0.353(相当于 1 磅)

    dashOffset - 虚线重复样式开始的位置,默认值为 0。当 DashPattern 不出现时,该参数无效

    dashPattern - 虚线的重复样式。默认值为空。虚线样式的控制效果见表 21

    返回:

    CTPageBlock.PathObject

    另请参阅:

    OFD标准指南-图形-9.1 图形对象 PathObject Text

  样例代码如下:

page.addEllipse(45,120,30,15,null,null,2.0,null,"1 1");

Copy

dashOffset 和 dashPattern 样式可以参考:wiki.easyofd.cn/OFD标准/页面描述#DashPattern

5.5 长轴在Y的椭圆

  样例代码如下:

page.addEllipse(145,40,15,30,null);

Copy

5.6 文件效果

ellipse.png

六、其他特殊图形

6.1 绘制思路

  在2.5 线的连接章节我们其实已经介绍了绘制思路。
需要使用原始的方法,把需呀连接的线段组合在一个绘制路径内。下面的例子通过指定AbbreviatedData和 boundary来完成线的连接设置。

//线条连接样式 Linejoin
// 因为是独立的两个线段,所有不会有效果,解决路径 一 通过矩形 二 自己设置绘制的path内容,都在一个path内设置有效
CTBoundary boundary=new CTBoundary(0,0,100,100);
//测试 70 线
String  abbreviatedData= "M 65 75 L 70 70 L 75 75 C" ;
CTPageBlock.PathObject pathObject= page.addPathObject(abbreviatedData,boundary);
pathObject.setJoin("Round");
pathObject.setLineWidth(2.0);

Copy

6.2 PathObject对象

本章节所有的方法基本都返回一个CTPageBlock.PathObject对象。通过该对象可以重新设置图像的绘制相关信息,主要包括如下:

  • 设置勾边颜色
  • 设置填充验证
  • 设置线段样式
  • 设置线段宽度
  • 设置图形的填充规则
  • 设置图像边界

6.3 绘制一个三角形

CTColor color=new CTColor();
color.setValue("255 0 0");



        CTColor color2=new CTColor();
        color2.setValue("255 0 255");

        CTBoundary boundary=new CTBoundary(0,0,100,100);
        //测试 70 线
        String  abbreviatedData= "M 10 80 L 50 10 L 90 80 L 10 80 C" ;
        CTPageBlock.PathObject pathObject= page.addPathObject(abbreviatedData,boundary);
        pathObject.setJoin("Round");
        pathObject.setLineWidth(2.0);
        pathObject.setStrokeColor(color);
        pathObject.setFillColor(color2);
        pathObject.setDashPattern("2 2");

三角形.png

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
可以使用OFD4J这个Java库来生成OFD文件OFD4J是一个用纯Java编写的开源库,它提供了生成OFD文件的API,可以生成OFD文档、页面、文字、图片、表格等元素。 以下是一个简单的示例代码,用于创建一个OFD文档和一个空白页面: ``` import org.ofdbox.core.OFD; import org.ofdbox.core.versions.OFDVersion; import org.ofdbox.core.xmlobj.base.ofd.NDocBody; import org.ofdbox.core.xmlobj.base.ofd.NDocInfo; import org.ofdbox.core.xmlobj.base.ofd.NDocRoot; import org.ofdbox.core.xmlobj.st.ST_Loc; import java.io.FileOutputStream; import java.io.OutputStream; public class OFDGenerator { public static void main(String[] args) throws Exception { // 创建OFD文档 OFD ofd = new OFD(); // 设置文档信息 NDocInfo info = new NDocInfo(); info.setDocID("123456"); info.setTitle("My OFD Document"); ofd.getDocInfo().add(info); // 创建空白页面 NDocRoot root = new NDocRoot(); NDocBody body = new NDocBody(); root.setDocBody(body); ST_Loc loc = new ST_Loc(); loc.setLoc("Pages/Page_0.xml"); body.addPage(loc); ofd.addDocRoot(root); // 保存OFD文档 OutputStream outputStream = new FileOutputStream("example.ofd"); ofd.write(outputStream); outputStream.close(); } } ``` 在这个示例中,我们首先创建了一个OFD文档,并设置了文档信息。然后创建了一个空白页面,并将其添加到文档中。最后将OFD文档写入到文件中。 当然,OFD4J还提供了许多其他的API,可以用于创建各种类型的OFD元素。具体可以查看OFD4J的文档和示例代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值