一站式解决方案 :OFD电子证照生成
Posted 源之缘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一站式解决方案 :OFD电子证照生成相关的知识,希望对你有一定的参考价值。
前言 证照的电子化是一个趋势;可以预计,未来几年内,绝大部分证照都会电子化。电子证照的种类越来越多,应用场景也复杂多样;这就给电子证照规范的制定、电子证照的生成提出了更高的要求。电子证照采用的格式有两种:pdf、ofd。pdf为国际标准,生态比较好;ofd为国家标准,具有后发优势,拥有完整自主知识产权,可根据需求灵活修改规范。综合考虑,电子证照采用ofd更合适,也符合国家政策导向。
每一类电子证照外观格式是完全一致的,好像“同一个模子刻出来的”。显然,证照生成系统也要根据“模子“生成,这个模子就是证照模板。 市面上的电子证照的生成系统因此大同小异,就是根据模板生成。我们的生成系统也不例外;但是,我们在生成系统上深耕细作,为用户的每个细节着想,形成了完善的一站式解决方案。目前,市面还没有出现与我们方案类似的系统,我们的系统具有很强的市场竞争力。本文简要描述我们的ofd证照生成系统处理逻辑。
好的电子证照生成系统评判标准
- 生成的文件符合ofd标准;
- 模板设计工具:方便灵活、可视化。能满足特殊需求:标引、元数据、附件、模板等元素。
- 模板的设计、测试、管理一站式处理。
- 接口调用简单、生成速度要快、可提供分布式解决方案。
你所关心的问题,就是我们要解决的问题。我们的系统针对以上种种要求,均给出了合理的解决方案。
全新设计开发的模板制作工具
我们的工具不是oem别人的,不是拿来开源程序修修补补的。是根据ofd规范和证照规范,从新设计开发的。
有如下创新:
- 元素分为标签和值:标签是不变的元素,生成系统会将标签生成模板文件,加快生成速度。
- 元素设置英文名、中文名等属性。客户端可以根据英文名或guid传值。
- 可以设置标引,生成系统直接根据模板生成系统。
- 可对每个元素设置类型信息,方便套打、信息提取。
标引设置
对元素分类,生成ofd时,会设置元素的类型。方便后续对ofd文件的处理。不仅限于套打!
生成的ofd文件,有自定义的属性,方便后续计算机处理
会生成模板参数,可根据此参数快速开发客户端程序;
直接将模板上传到数据库,方便模板管理。
可以直接将模板转成ofd、pdf文件,也可以立即做生成测试。
模板管理,以列表的形式的展示各个模板,显示模板样式、模板参数
接口调用简单,只需传数据即可,所有的规则、显示信息都在模板文件里!
/// <summary>
/// 生成结婚证数据,发送到服务端
/// </summary>
class MarriageCertCreator
{
string TemplateGuid = "5041075d-a3d3-462e-b4b2-c3a9cfb18c8d";
public WebClientInputParam Creat()
{
WebClientInputParam clientParam = new WebClientInputParam();
clientParam.TemplateGuid = TemplateGuid;
clientParam.ClientData = "客户端发送的tag数据";
clientParam.PageGroup = new List<WebClientPage>();
WebClientPage page = CreateFirstPage();
clientParam.PageGroup.Add(page);
return clientParam;
}
string _qrFilePath = "./结婚证二维码.png";
string _photoFilePath = "./结婚证合影.png";
private WebClientPage CreateFirstPage()
{
WebClientPage page = new WebClientPage();
page.TemplatePageIndex = 0;//对于模版文件oft的第一页
//持证人
WebClientTextItem item = new WebClientTextItem()
{ Guid = "*5", DataValue = "周呜呜" };
page.ListPageText.Add(item);
//登记日期
item = new WebClientTextItem()
{ Guid = "*7", DataValue = DateTime.Now.ToString("yyyy-MM-dd") };
page.ListPageText.Add(item);
//结婚证字号
item = new WebClientTextItem()
{ Guid = "*9", DataValue = "J330302-2020-1234567" };
page.ListPageText.Add(item);
//备注
item = new WebClientTextItem()
{ Guid = "*11", DataValue = "民政厅颁发的电子证照,与纸质证照有同等法律效力。" };
page.ListPageText.Add(item);
//男方姓名
item = new WebClientTextItem()
{ Guid = "*15", DataValue = "张一三" };
page.ListPageText.Add(item);
//男方国籍
item = new WebClientTextItem()
{ Guid = "*17", DataValue = "中国籍" };
page.ListPageText.Add(item);
//男方出生日期
item = new WebClientTextItem()
{ Guid = "*19", DataValue = "1998-09-08" };
page.ListPageText.Add(item);
//男方身份证号
item = new WebClientTextItem()
{ Guid = "*21", DataValue = "3700000000002020" };
page.ListPageText.Add(item);
/*********************图片数据*********************/
//合影照片
if (File.Exists(_photoFilePath))
{
string imageData = Convert.ToBase64String(File.ReadAllBytes(_photoFilePath));
WebClientImageItem image = new WebClientImageItem();
image.Guid = "*13";
image.DataValue = imageData;
page.ListPageImage.Add(image);
}
return page;
}
}
自有集群系统,支持分布式处理、负载均衡!每秒可生成几千个证照!
完整的ofd解决方案
本人开发了ofd阅读器、ofd与pdf互转、ofd打印服务、验证服务、数据提取服务等一些列产品,具有完全自主知识产权,可为你提供全方位服务!
以上系统可以在windows、linux、国产操作系统下运行,所有的服务接口完全一样。
获取最新软件请加入QQ群:618168615
以上是关于一站式解决方案 :OFD电子证照生成的主要内容,如果未能解决你的问题,请参考以下文章