OFD板式文件创建JAVA工具-EASYOFD 五、 模板及页面设置

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

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

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

一、模板

1.1 创建模版

   OFD的模板也是页面,我们使用的页面继承了模板页面。以此我们可以像创建页面一样创建一个模板,该类只要一个参数,就是OFDocument类实例。

// 创建一个OFD文档
OFDocument ofDocument = new OFDocument();
// 创建一个OFD文档的模板
OFDTemplate template = new OFDTemplate(ofDocument);

Copy

1.2 向模版增加绘制元素

   如1.1所述,模板也拥有页面大部分功能:

  •     第二章 图形 Path
  •     第三章 图像 Image
  •     第四章 文字 Text
      可以像page添加上述内容一样,在模板内添加上述元素。示例代码如下:
CTColor gray=new CTColor();
gray.setValue("135 206 250");

template.addSquare(0,0,100,100,null,gray);
template.addText("模版页内容",50,50);
template.addEllipse(50,50,10,10,3.0);

Copy

  上述例子中,我们向页面增加了一个(100*100)的矩形,并且把他的填充颜色设置成了天蓝色。紧接着我们向模板文件内增加了文字和一个原。

1.3 注册模版

   只有向公共资源注册后获取资源ID的模板页面,才可以被其他页面使用。公共数据资源类的注册方法如下:

  • addTemplate
    public int addTemplate(OFDTemplate template)

    参数:

    template - 模板对象

    返回:

    返回模板ID

  示例代码如下:

// 创建一个OFD文档
OFDocument ofDocument = new OFDocument();

// 创建模版页
OFDTemplate template = new OFDTemplate(ofDocument);
CTColor gray=new CTColor();
gray.setValue("135 206 250");
template.addSquare(0,0,100,100,null,gray);
template.addText("模版页内容",50,50);
template.addEllipse(50,50,10,10,3.0);
// 注册模版页
int templateid=ofDocument.getOfdCommonData().addTemplate(template);

Copy

1.4 使用模版

  有了模板资源的ID后,就可以设置页面引用的模板,页面的设置模板方法如下:

  • addTemplatePage
    public void addTemplatePage(long TemplateID,
                                java.lang.String ZOrder)

    设置模板页

    参数:

    TemplateID 注册的模板ID

    ZOrder - - 详细见PageType 默认 Background  背景层 Foreground 前景层

    另请参阅:

    OFD标准指南-基本结构-模板页

  示例代码如下:

OFDPage page = new OFDPage(ofDocument);
page.addTemplatePage(templateid,"Backqround");
ofDocument.addPage(page);

//增加页面本身的元素
//page.addXXX

OFDPage page2 = new OFDPage(ofDocument);
page2.addTemplatePage(templateid,"Backqround");
ofDocument.addPage(page2);

Copy

1.5 文件效果

模板.png

二、页面大小设置

2.1 文档页面默认大小

  OFD板式文件会在公共资源区域设置一个页面默认大小,本软件默认大小为A4纸张(210MM* 297MM),可以在创建OFDocument对象时就设置页面默认大小。
  OFD有以下四种区域:

名称说明备注
PhysicalBox页面物理区域,左上角的坐标为页面空间坐标系的原点必选
ApplicationBox显示区域,页面内容实际显示或打印输出的区域,位于页面物理区域内,包含页眉、页脚、版心等内容。
例外处理如果显示区域不完全位于页面物理区域内,页面物理区域外的部分则被忽略。如果显示区域完全位于页面物理区外,则该页为空白页
可选
ContentBox版心区域,即文件的正文区域,位于显示区域内。左上角的坐标决定了其在显示区域内的位置。
例外处理如果版心区域不完全位于显示区域内,显示区域外的部分则被忽略。如果版心区域完全位于显示区域外,则版心内容不被绘制
可选
BleedBox出血区域,即超出设备物理限制的额外出血区域,位于页面物理区域外。不出现时,默认值为页面物理区域。
例外处理如果出血区域不完全位于页面物理区域外,页面物理区域内的部分则被忽略。如果出血区域完全位于页面物理区域内,出血区域无效
可选

  我们可以公共公共资源类来设置上述区域大小,示例代码如下:

// 创建一个OFD文档
OFDocument ofDocument = new OFDocument();
ofDocument.getOfdCommonData().setPagePhysicaArea(100,100);

Copy

2.2 模板的页面大小设置

  同2.1的文档页面默认大小,模板页可以设置自己的页面大小。但在一般情况下应该与默认一致,这也是在创建模板页面时,本软件会自动继承公共资源区域的页面大小。不过你可以通过页面方法来这是不同与默认的页面大小。

  示例代码如下:

// 创建一个OFD文档
 template.setPhysicalBox(...);

Copy

2.3 页面的页面大小设置

  同2.1的文档页面默认大小,页面页可以设置自己的页面大小。但在一般情况下应该与默认一致,这也是在创建模板页面时,本软件会自动继承公共资源区域的页面大小。不过你可以通过页面方法来这是不同与默认的页面大小。

  示例代码如下:

page.setPhysicalBox(...);

Copy

2.4 文件效果

模板.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值